Skip to content

TFW Config — Config Sync Workflow

Role: Coordinator Output: verified or approved config/range updates and affected adapter copies

🔒 ROLE LOCK: COORDINATOR Permitted: project_config.yaml, registered workflow/convention ranges, and affected adapter copies. Forbidden: code and task artifacts.

Read Contract

Root instructions are already active. Read this workflow completely, then read in order.

Order Input Checkpoint purpose Authority
1 .tfw/project_config.yaml current source values project config
2 this workflow's Config Sync Registry the one set of inline targets canonical workflow
3 only each registered target file and unique Section Header range compare or update inline copies registered source range
4 .tfw/adapters/manifest.yaml only when a changed range has adapter copies affected copy/check destinations tooling metadata

Full conventions/glossary/workflows, unregistered ranges, task artifacts, and unrelated adapters are not inputs. A missing or duplicate heading/row/target, unresolved source, or incomplete adapter map is a hard stop.

Activation checkpoint

Apply the active root activation/routing contract to the exact /tfw-config request before Edit or Verify Mode. This project-wide command preserves the request's owner-direct or delegated source but creates no task identity, principal, routing carrier, or permission beyond the selected operation.

If the exact config request is task-bound Full work, bind this Coordinator's own native source range and select .tfw/economics/README.md. Project-wide taskless verify/edit creates no economics task.

Edit Mode

  1. Ask what config key and value should change.
  2. Resolve its config value and every registry row. Values with no inline copy remain config-only.
  3. Present one batch preview with old/new values and exact files/headings.
  4. Wait for approval, then update config and every resolved row atomically.
  5. Sync only affected installed adapters through Adapter Sync; verify and report all results.
  6. For task-bound work, validate and return this Coordinator's own bounded economics JSONL or typed capture-failure receipt with resolvable file/ revision/hash. Numeric TRACE changes no config approval rule.

Verify Mode

For /tfw-config verify, resolve all config values and every registry target, then report each exact match/mismatch. Write nothing. A mismatch is reported, never silently repaired. Task-bound verification additionally returns this Coordinator's own validated economics JSONL or typed failure receipt by exact file/revision/hash; project-wide taskless verification does not create a task.

Config Sync Registry

scope_budgets

Config Key Target File Section Header Row Label
scope_budgets.decomposition_trigger_files .tfw/conventions.md Scope Budgets (per Phase) Logical touched VALUE files
scope_budgets.decomposition_trigger_loc .tfw/conventions.md Scope Budgets (per Phase) Touched text LOC
scope_budgets.owner_escalation_multiplier .tfw/conventions.md Decomposition, constraints, and change authority Owner escalation multiplier

For a project that has only the retired four-key block, preview one atomic forward migration before ordinary Edit or Verify Mode: preserve max_files_per_phase as decomposition_trigger_files, preserve max_loc as decomposition_trigger_loc, retire max_new_files and max_modified_files, and add owner_escalation_multiplier: 2. Never reinterpret or rewrite an old approved TS or historical result; the new semantics apply to a TS approved under the introducing release. A mixed old/new block is a mismatch to report, not a basis for guessing which value wins.

research

Config Key Target File Section Header Row Label
research.max_web_queries_per_stage .tfw/workflows/research/base.md Limits Web queries per stage
research.max_files_per_stage .tfw/workflows/research/base.md Limits Project files read per stage
research.max_questions_per_turn .tfw/workflows/research/base.md Limits Questions to user per turn
research.max_passes .tfw/workflows/research/base.md Limits Max passes
research.modes.focused.loops_per_stage .tfw/workflows/research/focused.md Stage Behavior OODA loops per stage
research.modes.deep.loops_per_stage .tfw/workflows/research/deep.md Stage Behavior OODA loops per stage

research.default_mode has no inline copy; the research workflow reads it directly from config.

knowledge

Retired live settings: tfw.knowledge.interval, gate_mode, max_facts_per_topic, max_topic_files and obsolete inventory limits. The pinned migrations/knowledge-lifecycle.md owns preservation and removal; do not sync them into current workflows or recreate a gate.

review

tfw.review.min_verify_ratio is retired migration state. Remove it from active project and template configuration; do not sync or recreate it. Review verification is selected by claim, risk, dependency, environment, oracle, evidence gap and stated limits, not by a changed-file ratio.

content_language

Config Key Target File Section Header Row Label
content_language .tfw/conventions.md Quality Standard (no compromises) Content Language

Adapter Sync

Expand the manifest's exact command records and select only installed adapters affected by this change. For copy, require source-byte equality. For managed_block, replace only the single declared marker range; report and preserve an unmarked file. Reject missing/extra commands, wrong roles, unresolved targets, duplicate blocks, drift, or a second-run diff. Preserve unrelated text. The manifest is copy/check metadata, never runtime authority.

The optional Daily package is outside that exact standard manifest command set. If selected Daily entries exist, resolve their canonical/source map from .tfw/extensions/daily-task/installation.md and verify their byte copies separately. Daily is not a standard command or formal role; an unknown extra route remains a mismatch. Config verification neither opts in nor repairs a custom field skill/template, and creates no new ownership registry.

Economics is a standard manifest row, not an optional discovery check. Verify its canonical workflow, config registration and selected native copies with all exact manifest records. Read the core migration guide for legacy optional aliases; verification preserves custom/ambiguous files and reports the needed repair rather than opts in, retires or overwrites them. Verify tfw.economics.rate_cache: ~/.tfw/rates and quote_fresh_days: 30 as current defaults; changing these config-only values does not rewrite historical task bases or move public quote observations. Keep four formal roles and active-role preservation. Source presence/parity/native use differ.

Anti-patterns

  • changing config or an inline copy alone;
  • reading or editing an unregistered range;
  • applying Edit Mode without approval;
  • claiming adapter sync without exact verification.