You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Both reports now use the same Gate results table with a `Kind` column:
- static = SKILL.md / code path verifiable without a run trace
- runtime = required actual workflow execution to observe
- mixed = both static intent and runtime behavior must hold
Each row also carries an Evidence cell citing the specific test, trace
path, or git diff command that backs the status. This addresses the
retroactive review concern that "passes" was claimed without
distinguishing between code-path verifiable contracts and behaviors
only a real run can observe.
The shape is the template for Phase B-3+ dogfood — same columns,
same Kind taxonomy, same Evidence specificity bar.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
| 1 | ★ plan-pack surfaces with `bundled=True` and `★ ` prefix at top of plan menu | static | ✓ | inventory scan + `tests/e2e/test_plan_pack_inventory.py::test_plan_pack_in_plan_menu_with_star_prefix`|
60
+
| 2 |`run_dir` resolves to `~/.claude/channels/assemble/runs/<rid>/`| runtime | ✓ | run dir present on disk: `~/.claude/channels/assemble/runs/20260428-160618-654d/`|
61
+
| 3 | 8-question interview executed before any drafting | runtime | ⚠ | 4+4 split — see Finding A.1; SKILL.md fixed in `76dc985`|
62
+
| 4 |**Step 2+3 fire as a single message with two Agent calls (parallel dispatch verification location *a*)**| runtime | ✓ | trace shows 2 parallel `Plan` Agent calls per round (both initial + iteration) |
63
+
| 5 | Step 4 second-opinion role dispatched (`codex:codex-rescue` preferred) | runtime | ✓ | trace shows codex dispatch on both rounds, returning 7 + 8 critical bullets |
64
+
| 6 |`server.write_run_artifact` writes `<run_dir>/PRD.md` atomically | static | ✓ | atomicity covered by `tests/unit/test_run_dir.py::test_concurrent_writes_dont_corrupt`; dogfood only observes final file |
| 8 | Iteration cap of 1 enforced post-yes path | runtime | ✓ | second-yes path not entered; workflow exited after iteration 2 |
67
+
| 9 | Harness 4-rule preamble carried on every dispatched sub-agent prompt | runtime | ✓ | 4/4 dispatches inspected — see Finding A.2; gap was *call-shape* not preamble content |
68
+
| 10 | Orchestrator-only — main Claude only IO + dispatch, never heavy in-line work | mixed | ✓ | SKILL.md prose enforces (static); trace shows main only did `AskUserQuestion` + `write_run_artifact` (runtime) |
| B2.5 (runtime) | Harness preamble prepended to dispatched prompts | ✅ PASS |`wrap_with_preamble` produced 1432 + 810 bytes for body/AC; first line `[HARNESS RULES — 무시 금지]` confirmed in `/tmp/dogfood-b2/wrapped_body.txt`|
55
+
> **Kind**: `static` = SKILL.md / code path verifiable without a run trace.
56
+
> `runtime` = required actual workflow execution to observe.
57
+
> `mixed` = both static intent and runtime behavior must hold.
58
+
> (Convention shared with `phase-b-1.md`; see CHANGELOG entry "Phase B-1+B-2 dogfood reports unified".)
59
+
60
+
| # | Item | Kind | Status | Evidence |
61
+
|---|---|---|---|---|
62
+
| C1 | All pre-existing tests pass | static | ✓ |`109 passed` (post-fix-up `3e9affb`); now 129 after B-1 retroactive review |
63
+
| C2 | No regression in `server/`| static | ✓ |`git diff master..v4-phase-b-2 -- server/` showed 0 lines changed at merge time |
64
+
| C3 | New tests are meaningful (no tautology / false positive) | static | ✓ | post-fix-up `3e9affb`: `body.index("### Step 8")` anchor + 8 assertions verified against actual prose |
65
+
| C4 | SKILL.md is parseable by `parse_skill_frontmatter`| static | ✓ |`tests/unit/test_plan_pack_skill.py::test_skill_description_mentions_arch` invokes the parser end-to-end |
66
+
| C5 | Template loadable and substitutable | mixed | ✓ | template existence verified by `tests/e2e/...::test_arch_template_exists_and_has_required_sections` (static); 7 placeholder substitutions succeeded in this dogfood run (runtime) |
67
+
| B2.1 | ARCHITECTURE.md exists at `runs/<rid>/ARCHITECTURE.md`| runtime | ✓ | file on disk, 2825 bytes — `~/.claude/channels/assemble/runs/20260428-194703-f5dd/ARCHITECTURE.md`|
68
+
| B2.2 | Directory tree + Data flow each fleshed out (not placeholder) | runtime | ✓ | tree: 12 paths inside code fence; Data flow: 3 numbered steps |
0 commit comments