# I25 config three-way-sync allowlist
# ─────────────────────────────────────────────────────────────────────────────
# FORMAT:
#   Tier-1 lines: KEY reason=<category>
#   Tier-2 lines: KEY  (no reason= required, see GRANDFATHERED marker below)
#   Lines starting with # are comments.  Blank lines ignored.
#
# Two tiers:
#   TIER-1  Intentional env-only: secrets, infra-wiring, container paths.
#           Each entry MUST carry reason=<category>.  Valid categories:
#             secret              — credentials/tokens, never persist to yaml
#             infra-wiring        — URL/path differs per deploy target
#             bootstrap-path      — chicken-and-egg (yaml file location itself)
#             deployment-flag     — context marker, not user config
#             downstream-process  — env for a forked subprocess, not yadgar Python
#             dead-env-pending-removal:vX.Y.Z  — cleanup target in named version
#
#   TIER-2  Grandfathered backlog: pre-existing drift between Settings fields
#           and the yaml/registry surfaces as of v5.7.10.
#           These are tracked here so I25 blocks NEW gaps (ratchet), not the
#           existing ones.  Follow-up PRs (v5.7.11+) reduce this list.
#           See docs/ARCHITECTURE_INVARIANTS.md §I25 for the backfill plan.
#
# To remove an entry from the backlog: add the missing yaml/registry entry,
# then delete the line here.  I25 will enforce the new coverage going forward.
# ─────────────────────────────────────────────────────────────────────────────

# ── TIER-1: Intentional env-only (reason= required) ──────────────────────────
YADGAR_MCP_AUTH_TOKEN reason=secret
YADGAR_DB_USER reason=secret
YADGAR_DB_PASS reason=secret
YADGAR_DB_URL reason=infra-wiring
YADGAR_EMBED_URL reason=infra-wiring
YADGAR_IN_CONTAINER reason=deployment-flag
YADGAR_DATA_DIR reason=bootstrap-path
YADGAR_CONFIG_FILE reason=bootstrap-path

# === GRANDFATHERED: Tier-2 backlog (no reason= required, drain in future trains) ===
# Source: v5.7.10 three-way-sync audit (2026-05-27).
# Backfill target: v5.7.11+ (docs/PLAN_V5_7_X_CONFIG_KNOB_BACKFILL.md).
YADGAR_ACTION_LOG_RETENTION_DAYS
YADGAR_ACTION_STREAM_MAX_AGE_DAYS
YADGAR_ALLOWED_ORIGINS
YADGAR_ASGI_SHUTDOWN_TIMEOUT_SEC
YADGAR_ASTROCYTE_PROCESS_RETENTION_DAYS
YADGAR_AUTO_ABSTRACTED_MEMORY_MAX_AGE_DAYS
YADGAR_AUTO_CAPTURE_RATE_LIMIT
YADGAR_AUTO_GENERATED_MEMORY_MAX_AGE_DAYS
YADGAR_BACKEND_HTTP_TIMEOUT_SEC
YADGAR_BACKEND_IMPORT_TIMEOUT_SEC
YADGAR_BRANCH_BOOST_WEIGHT
YADGAR_BRIEF_MODE_DEFAULT
YADGAR_CHECK_INVARIANTS_QUERY_TIMEOUT_SECONDS
YADGAR_CIRCUIT_BREAKER_BACKOFF_FACTOR
YADGAR_CIRCUIT_BREAKER_ENABLED
YADGAR_CIRCUIT_BREAKER_FAILURE_THRESHOLD
YADGAR_CIRCUIT_BREAKER_MAX_OPEN_DURATION_SEC
YADGAR_CIRCUIT_BREAKER_OPEN_DURATION_SEC
YADGAR_CIRCUIT_BREAKER_PROBE_TIMEOUT_SEC
YADGAR_CLS_PATTERN_MAX_CANDIDATES
YADGAR_CONSOLIDATION_COOLDOWN_SECONDS
YADGAR_DB_SIZE_WARNING_BYTES
YADGAR_DERIVED_BELIEF_RETENTION_DAYS
YADGAR_DREAM_INSIGHT_MAX_AGE_DAYS
YADGAR_EPISODE_RETENTION_DAYS
YADGAR_FRACTAL_LEVELS
YADGAR_HEAVY_RERANK_ENABLED
YADGAR_HOPFIELD_BETA
YADGAR_HOPFIELD_MAX_PATTERNS
YADGAR_HOST
YADGAR_LOG_FILE_BACKUP_COUNT
YADGAR_LOG_FILE_MAX_BYTES
YADGAR_LOG_FILE_PATH
YADGAR_LOG_FORMAT
YADGAR_LOG_RATE_LIMIT_BURST
YADGAR_LOG_RATE_LIMIT_ENABLED
YADGAR_LOG_RATE_LIMIT_TOKENS_PER_SEC
YADGAR_MAX_BATCH_BYTES
YADGAR_MAX_BATCH_STATEMENTS
YADGAR_MAX_CAUSED_BY_ROWS
YADGAR_MAX_HASH_BYTES
YADGAR_MAX_SIMILARITY_LINKS_PER_MEMORY
YADGAR_MEMORY_CLUSTER_RETENTION_DAYS
YADGAR_METRICS_ENABLED
YADGAR_MIGRATION_HTTP_TIMEOUT_SEC
YADGAR_NARRATIVE_ENTRY_RETENTION_DAYS
YADGAR_POSTMORTEM_BOOST_FACTOR
YADGAR_POSTMORTEM_BOOST_KEYWORDS
YADGAR_PREDICTIVE_CODING_ENTITY_TTL_SECONDS
YADGAR_PROJECT_INIT_CAP_CHARS
YADGAR_PROSPECTIVE_MEMORY_RETENTION_DAYS
YADGAR_QUEUE_BACKOFF_BASE_S
YADGAR_QUEUE_BACKOFF_MAX_S
YADGAR_QUEUE_DLQ_RETENTION_DAYS
YADGAR_QUEUE_DRAIN_INTERVAL
YADGAR_QUEUE_MAX_PERMANENT_ATTEMPTS
YADGAR_QUEUE_MAX_TRANSIENT_ATTEMPTS
YADGAR_RECALL_BOOST
YADGAR_REINJECT_ON_WRITE
YADGAR_REINJECTION_ENABLED
YADGAR_REINJECTION_MAX_RESULTS
YADGAR_REQUIRE_AUTH
YADGAR_RERANK_BACKEND_TIMEOUT_SEC
YADGAR_RERANK_MAX_CONCURRENCY
YADGAR_RERANK_SEMAPHORE_ACQUIRE_TIMEOUT_SEC
YADGAR_RETRIEVAL_PROFILE
YADGAR_SIMILARITY_LINK_THRESHOLD
YADGAR_SIMILARITY_MATRIX_MAX_CANDIDATES
YADGAR_SR_DISCOUNT
YADGAR_SR_UPDATE_RATE
YADGAR_VACUUM_AUTO_ENABLED
YADGAR_VACUUM_AUTO_THRESHOLD_BYTES
YADGAR_VACUUM_AUTO_WINDOW_END
YADGAR_VACUUM_AUTO_WINDOW_START
YADGAR_VACUUM_SNAPSHOT_RETENTION
YADGAR_VIZ_HEALTH_REFRESH_SEC
YADGAR_WIKI_SLUG_PREFIX

# ── TIER-2: Grandfathered backlog (registry gaps only — not yaml gaps) ────────
# These have yaml entries but no _REGISTRY ConfigEntry yet.
# Same backfill target: v5.7.11+.
YADGAR_ACTION_STREAM_COLD_THRESHOLD
YADGAR_ACTION_STREAM_ENABLED
YADGAR_ADVERSARIAL_DETECTION_ENABLED
YADGAR_ADVERSARIAL_DIVERSITY_ENFORCEMENT
YADGAR_ADVERSARIAL_MIN_CONFIDENCE
YADGAR_ADVERSARIAL_SCORE_GAP_THRESHOLD
YADGAR_BELIEF_HIGH_CONFIDENCE_BOOST
YADGAR_BELIEF_MIN_CONFIDENCE
YADGAR_BELIEF_SEARCH_PRIORITY_FOR_OPEN_DOMAIN
YADGAR_CANDIDATE_POOL_MULTIPLIER
YADGAR_CAUSAL_THRESHOLD
YADGAR_CLUSTER_SIMILARITY_THRESHOLD
YADGAR_CODE_KEYWORDS
YADGAR_COGNITIVE_LOAD_LIMIT
YADGAR_COLD_THRESHOLD
YADGAR_COMBMNZ_ENABLED
YADGAR_COMET_ENRICHMENT_ENABLED
YADGAR_COMET_MIN_CONFIDENCE
YADGAR_COMET_MODEL
YADGAR_COMET_NUM_BEAMS
YADGAR_COMET_QUERY_EXPANSION_ENABLED
YADGAR_COMET_RELATIONS
YADGAR_COMET_TOP_K_PER_RELATION
YADGAR_COMPARISON_DUAL_SEARCH_ENABLED
YADGAR_COMPARISON_TOP_K_PER_OPTION
YADGAR_COMPRESSION_GIST_AGE_HOURS
YADGAR_COMPRESSION_TAG_AGE_HOURS
YADGAR_CONCEPTNET_ENRICHMENT_ENABLED
YADGAR_CONCEPTNET_MAX_TERMS
YADGAR_CONCEPTNET_MIN_EDGE_WEIGHT
YADGAR_CONCEPTNET_RELATIONS
YADGAR_CONFIDENCE_FALLBACK_STRATEGY
YADGAR_CONFIDENCE_GATING_ENABLED
YADGAR_CONFIDENCE_MIN_RESULTS
YADGAR_CONFIDENCE_SCORE_SPREAD_THRESHOLD
YADGAR_CONFIDENCE_TOP_SCORE_THRESHOLD
YADGAR_CONTEXTUAL_PREFIX_ENABLED
YADGAR_CRDT_AGENT_ID
YADGAR_CROSS_ENCODER_ENABLED
YADGAR_CROSS_ENCODER_MODEL
YADGAR_CROSS_ENCODER_TOP_K
YADGAR_CROSS_ENCODER_WEIGHT
YADGAR_CURATION_SIMILARITY_THRESHOLD
YADGAR_DECAY_FACTOR
YADGAR_DECISION_AUTO_PROTECT
YADGAR_DERIVED_BELIEFS_ENABLED
YADGAR_DOC2QUERY_ENRICHMENT_ENABLED
YADGAR_DOC2QUERY_MODEL
YADGAR_DOC2QUERY_NUM_QUERIES
YADGAR_DREAM_REPLAY_PAIRS
YADGAR_DUAL_VECTORS_ENABLED
YADGAR_EMBEDDING_CACHE_SIZE
YADGAR_EMOTIONAL_DECAY_RESISTANCE
YADGAR_ENRICHMENT_MIN_CONTENT_LENGTH
YADGAR_EXCITABILITY_BOOST
YADGAR_EXCITABILITY_HALF_LIFE_HOURS
YADGAR_FPA_SIMILARITY_THRESHOLD
YADGAR_FUSION_METHOD
YADGAR_FUSION_NORM
YADGAR_GRAPH_ENTITY_MIN_LENGTH
YADGAR_GRAPH_MAX_HOPS
YADGAR_GRAPH_MIN_EDGE_WEIGHT
YADGAR_GRAPH_SPREADING_DECAY
YADGAR_GRAPH_SPREADING_MAX_DEPTH
YADGAR_GTE_RERANKER_ENABLED
YADGAR_GTE_RERANKER_FALLBACK_TO_FLASHRANK
YADGAR_GTE_RERANKER_MAX_LENGTH
YADGAR_GTE_RERANKER_MODEL
YADGAR_HOT_THRESHOLD
YADGAR_IDLE_THRESHOLD_SECONDS
YADGAR_IMPLICIT_EMBEDDING_MODEL
YADGAR_IMPORTANCE_DECAY_FACTOR
YADGAR_INDEX_ENRICHMENT_ENABLED
YADGAR_LOGIC_ENRICHMENT_ENABLED
YADGAR_MAX_EPISODE_TOKENS
YADGAR_MICRO_CHECKPOINT_COOLDOWN
YADGAR_MICRO_CHECKPOINT_ENABLED
YADGAR_MULTI_PASSAGE_CLUSTER_OVERLAP_THRESHOLD
YADGAR_MULTI_PASSAGE_MAX_CLUSTER_SIZE
YADGAR_MULTI_PASSAGE_RERANKING_ENABLED
YADGAR_NARRATIVE_INTERVAL_HOURS
YADGAR_NLI_MODEL
YADGAR_NLI_ONLY_FOR_OPEN_DOMAIN
YADGAR_NLI_RERANKING_ENABLED
YADGAR_NLI_WEIGHT
YADGAR_NUM_ASTROCYTE_PROCESSES
YADGAR_OVERLAP_TOKENS
YADGAR_PLASTICITY_HALF_LIFE_HOURS
YADGAR_PLASTICITY_SPIKE
YADGAR_PPR_DAMPING
YADGAR_PPR_ITERATIONS
YADGAR_PROFILE_CONFIDENCE_DIRECT
YADGAR_PROFILE_CONFIDENCE_INFERRED
YADGAR_PROFILE_EXTRACTION_ENABLED
YADGAR_PROFILE_SUMMARY_ENABLED
YADGAR_PROJECT_CONTEXT_MIN_HEAT
YADGAR_QUERY_EXPANSION_ENABLED
YADGAR_QUERY_PREFIX
YADGAR_QUERY_ROUTING_ENABLED
YADGAR_RECONSOLIDATION_HIGH_THRESHOLD
YADGAR_RECONSOLIDATION_LOW_THRESHOLD
YADGAR_RELATIONAL_KEYWORDS
YADGAR_REPLAY_ANCHOR_HEAT
YADGAR_REPLAY_CHECKPOINT_AUTO_INTERVAL
YADGAR_REPLAY_MAX_RESTORE_MEMORIES
YADGAR_RERANKER_ENABLED
YADGAR_RERANKER_TOP_K
YADGAR_SESSION_COHERENCE_BONUS
YADGAR_SESSION_COHERENCE_WINDOW_HOURS
YADGAR_STABILITY_INCREMENT
YADGAR_SURPRISE_BOOST
YADGAR_SYNAPTIC_BOOST
YADGAR_SYNAPTIC_WINDOW_MINUTES
YADGAR_TEMPORAL_BOOST_WEIGHT
YADGAR_TEMPORAL_DECAY_DAYS
YADGAR_TEMPORAL_EXACT_MATCH_BOOST
YADGAR_TEMPORAL_KEYWORDS
YADGAR_TEMPORAL_RETRIEVAL_ENABLED
YADGAR_WRITE_GATE_CONTINUITY_DISCOUNT
YADGAR_WRITE_GATE_CONTINUITY_WINDOW
YADGAR_WRITE_GATE_THRESHOLD
YADGAR_WRRF_CANDIDATE_MULTIPLIER
YADGAR_WRRF_FTS_WEIGHT
YADGAR_WRRF_K
YADGAR_WRRF_PPR_WEIGHT
YADGAR_WRRF_SPREADING_WEIGHT
YADGAR_WRRF_VECTOR_WEIGHT
