framework:
    cache:
        # Unique name of your app: used to compute stable namespaces for cache keys.
        prefix_seed: 'terraflow_cms'

        # Default cache adapter (filesystem - no external dependencies)
        # To enable Redis, set USE_REDIS_CACHE=true in .env file
        app: cache.adapter.filesystem

        # Namespaced pools for different cache types.
        # Tag-aware adapters for pages, media, system, plugins are defined in config/services.yaml (TagAwareAdapter).
        pools:
            # Page content cache (tag-aware adapter in services.yaml)
            terraflow.cache.pages:
                adapter: cache.adapter.filesystem
                default_lifetime: 3600 # 1 hour

            # Media and assets cache (tag-aware adapter in services.yaml)
            terraflow.cache.media:
                adapter: cache.adapter.filesystem
                default_lifetime: 86400 # 24 hours

            # System settings cache (tag-aware adapter in services.yaml)
            terraflow.cache.system:
                adapter: cache.adapter.filesystem
                default_lifetime: 1800 # 30 minutes

            # Plugin cache (tag-aware adapter in services.yaml)
            terraflow.cache.plugins:
                adapter: cache.adapter.filesystem
                default_lifetime: 7200 # 2 hours

            # Navigation cache
            terraflow.cache.navigation:
                adapter: cache.adapter.filesystem
                tags: false
                default_lifetime: 1800 # 30 minutes
            
            # User session cache
            terraflow.cache.sessions:
                adapter: cache.adapter.filesystem
                default_lifetime: 3600 # 1 hour
            
            # API response cache
            terraflow.cache.api:
                adapter: cache.adapter.filesystem
                default_lifetime: 900 # 15 minutes