Date: 2026-03-12 Author: Executor (AI) Status: 🟠 ONB — Awaiting answers Parent HL: HL-TFW-9 TS: TS__TFW-9
Add a concrete source-resolution mechanism to tfw-update so agents know where to get upstream files, how to fetch them, and where to stage them locally. This means: (1) tfw.upstream config field in PROJECT_CONFIG.yaml, (2) .tfw/.upstream/ gitignored staging directory, (3) Step 0 in update.md with fetch/cleanup commands, and (4) documentation updates in init.md and glossary.md.
| File | Current state | What changes |
|---|---|---|
.tfw/PROJECT_CONFIG.yaml |
No upstream field (22 lines) |
Add upstream under tfw: after version |
.tfw/workflows/update.md |
Steps 1–8, prereqs reference vague “obtain upstream” (107 lines) | Replace prereqs, add Step 0 (fetch), add Step 9 (cleanup), update references |
.tfw/init.md |
Step 2 config example lacks upstream; no .upstream/ gitignore mention (199 lines) |
Add upstream to YAML example, add gitignore note |
.tfw/glossary.md |
tfw-update entry at line 124-125 is brief (134 lines) |
Expand with source resolution mechanism mention |
.gitignore |
2 lines (digest.txt, digest.md) |
Add .tfw/.upstream/ |
| # | Question | Answer |
|---|---|---|
| — | No blocking questions | — |
The TS is clear and self-contained. All five files are readable, all edit locations are precise.
TS Step 2c says “update all upstream references” but current update.md Steps 1-8 don’t actually contain literal upstream .tfw/VERSION strings — they reference {upstream VERSION} in code blocks and “upstream” in prose within Step 3 categorization tables. I’ll update the prose and template references to point to .tfw/.upstream/.tfw/ where concrete file paths are appropriate, but will leave general category descriptions (like “Copy from upstream directly”) as-is since they describe the concept, not a file path.
Acceptance criterion: grep "Obtain upstream" .tfw/workflows/update.md returns 0. The current file has Obtain upstream on lines 14-15 in Prerequisites. Replacing Prerequisites per TS Step 2a will satisfy this — confirmed.
TS says initial_seq: 9 in PROJECT_CONFIG but step 1 YAML example omits it. The TS Step 1 example shows version, upstream, task_prefix — it omits id_format and initial_seq. This is fine — the example is a snippet showing what to add, not the full file. I’ll insert only the upstream line, preserving all existing fields.
TS line numbers for prerequisites: TS says “lines 13-15” for prerequisites. Actual file has prerequisites at lines 13-15 (counting from line 1 of the file content). Confirmed correct.
| *ONB — TFW-9: Update Source Mechanism | 2026-03-12* |