Issue 217: CI efficiency execution plan
CI efficiency execution plan
Authority and current state
Full Delivery is authorized by the user from SPEC.md and the closed grill. Active goal owns #217 / existing PR #223; no merge/publication is authorized. Spec SHA-256: 542d71043465d0971f21bb6423d0f5afda9d8ae8715a1b071844eaa6547a1bc1 at retained commit 3c8cfdd4d51045d23e1fc56fb87930b090f8f295. The first implementation tasks have passed their gates, including final CLI proof, focused owner-lint repairs and T10 documentation. Both bounded review passes are retained; final review is clean. Remaining closeout is the authorized draft PR update. Historical findings are in the issue-217 research report; current inventory is 153 executable test files.
- task_identity_mode: planning-only
- architecture_applicability: architecture-bearing — capability task composition and test entrypoint consumers change; product domain ownership and release semantics do not.
- backlog_sync_skip_reason: existing #217/#223 full-delivery scope has no accepted Linear Initiative/Epic/milestone placement; no new provider hierarchy or task identities are fabricated. This explicit unprojected execution mode is supported by the plan schema. All retained provider mutations so far are the already authorized PR actions.
- Open product decisions: none. The current local-proof instruction refines validation; it does not relax checks.
- Planning skills: create-plan composes grilling (closed frontier reused), parallel-research (three prior lanes refreshed), swarm-planner (dependency graph), codebase-design, tdd and wait-what (plain-language pass). Independent plan-reviewer validates before implementation.
Locked direction
Only 2-vCPU workers; no sharding; no speedup percentage, runtime ceiling, monthly budget or deletion quota. Keep meaningful proof, current PR/main/cancellation/release trust, precise correct invalidation and isolated mutable state. Full historical replay and diagnostic benchmarks are on demand. Prioritize local verification and do not dispatch hosted workflows during development.
Dependency Readiness
Ready. Included parent 4d4b7b71622ee90228143af57f995f0f6de4bff8 is on retained team/stefan/cli-update-quick-fixes. #222 is closed unmerged; code is inherited, not claimed landed in main. Parent-added tests remain in the inventory.
Branch/Base Intent
Keep team/stefan/issue-217-ci-cost / #223 based on team/stefan/cli-update-quick-fixes. No parent rewrite, merge or deletion. The user explicitly authorized the previously requested one-time commit/pre-push hook exception for this delivery. Use a per-command hook override with [skip ci]; leave hook configuration unchanged. Commits/pushes during local work should avoid wasteful CI with [skip ci]; preserve workflow triggers/configured gates. Release classification follows changed changelog paths.
Target ownership and seams
App/package test owners → existing public/application/adapter seams → actual product behavior
CI verification owner → package capability scripts + complete relevant inputs → Turbo
Retained outcomes + reused trusted proof → existing Stable Aggregate Check
Docs owner → measured commands/behavior (no source of new policy)Allowed dependencies stay one-way from tests to owned capabilities and from root orchestration to package task interfaces. Tests may control external process outcomes but cannot fake the safety boundary they claim. No product policy migrates into test fixtures, root scripts or docs. No private export appendage is introduced to justify weak assertions. No new scheduler or test-title ledger. Migration ledger: empty; temporary production seams are forbidden without parent plan update.
| criterion_id | Owner | Observable acceptance | Evidence | due_architecture_wave |
|---|---|---|---|---|
| RAC-1 | Updater | Real file/receipt effects survive with irrelevant resolver work removed; real installer proof retained | T1 focused tests and map | A1 |
| RAC-2 | Release tests | Actual planner/validator accepts/refuses minimal real history; full replay absent default selection | T2 tests and selector readback | A1 |
| RAC-3 | CLI portfolio | Actual exported policy results and focused built composition replace repeated full journeys | T3 tests and map | A1 |
| RAC-4 | App/package owners | Meaningful protocol/auth/DB/browser/wiki proof retained; no-owned-invariant culls explicit | T4–T8 maps and tests | A1 |
| RAC-5 | CI/cache | Complete selected proof, correct relevant/irrelevant misses, existing aggregate authority, no shards/macOS | T9 real task hash/restore and selection tests | A2 |
| RAC-6 | Docs/integration | Final inventory, commands, changed rule routes and measured proof match implementation | T10 checks/review | A3 |
A1 establishes cheaper proof at existing owners. A2 accepts final task/cache consumers after A1 handoffs. A3 consolidates evidence/docs; no unresolved temporary seam or ownership drift may close.
Execution graph and runtime custody
W1: T1 T2 T3 T4 T5 T6 T7 T8 (disjoint test writes)
T9a cache/runner prep (root scripts/workflows only)
W2: T9 final wiring + task gate (consumes T1–T8 and T9a handoffs)
W3: T10 integration/docs → bounded review → affected repair → closeoutWave labels are earliest eligibility, not barriers: T9a implements disjoint root/workflow work; T9 final integration starts only after all predecessor Task Gates pass. The parent transfers T9a paths after its writer stops. T9a focused GREEN is provisional for final graph acceptance. No test worker writes package.json, Turbo or workflow YAML. Each worker returns final selected files, diagnostic entrypoint, source/fixture closure, built-artifact requirement, external capabilities and mutable resources. T4 excludes every reserved CLI hotspot path. Parent owns PLAN/IMPLEMENTATION-NOTES/state only. Docs worker owns final inventory/doc outputs. Generated CLI build and final baseline/after measurement are parent-exclusive; workers request build, never rebuild concurrently. No workspace dependency installs without parent custody. Discovery confirmed Node 24.19.0, Bun 1.4.0, Docker 29.7.2 and 12 logical CPUs; local measured runs use affinity 0,1. This is not a Blacksmith-equivalent host; CI and package-manager pins now use Bun 1.4.0 after local compatibility passes. Record before/after tool identity without changing historical fixtures unnecessarily.
Validation strategy and gates
Before product behavior changes: one meaningful public-result RED, then implementation GREEN. Pure test-only transformations record semantic fingerprints and passing retained behavior; no fabricated RED for culls. Keep per-task output in /tmp/hi-217-local-proof/ and durable summaries in task handoffs. Test transforms cannot weaken assertions to get green. A failing unrelated baseline is recorded and isolated, not hidden.
Task gates: owned diff only; relevant source hashes stable; touched retained tests pass; targeted type/lint/format appropriate to files; fingerprint map accepted by parent. Final gate: all new selectors complete without overlap/omission; real cache perturbation/restore; full reduced CLI suite; affected app/package and necessary browser/DB checks; no source leakage or unsafe shared state. Avoid repeating full suite unless new relevant changes invalidate proof. Run final targeted review under delivery's two-completed-pass policy and preserve lineage. No hosted dispatch is required to begin; record any provider-only proof honestly unresolved.
Risks and mitigations
- Seeds may embed paths/modes/receipts: prove independent relocated copies and preserve real readiness.
- Minimal release fixture can omit authority structure: begin with real one-entry assembly and add meaningful recovery states.
- Broad task inputs can retain invalidation or narrow unsafely: execute actual Turbo key/restore tests with relevant and irrelevant mutations.
- Parallel local tests contend: assign private roots/DBs, bound CPU affinity and measure only with noted load; final measurement owns quiet window.
- Existing lint/hooks have documented baseline failures: no implementation bypass inferred from docs exception; diagnose only relevant changes and report baseline separately.
Tasks
T1: Updater preparation and controlled installation
Acceptance: OUT-002; AC-004–006. Worker: apps-cli.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Parent gate accepted after full scratch65/65 GREEN, final types/lint/format, final workspace3-case seed/readiness/receipt/rollback slice GREEN79.72s. Source input equality inspected; full scratch994.66s is contended local proof, final whole selected suite remains integration-owned. Seed custody/isolation probe and semantic maps reviewed; no production source edits."
],
"files edited/created": [],
"red_evidence": [],
"green_evidence": [
"/tmp/hi-217-local-proof/T1-scratch-final.log",
"/tmp/hi-217-local-proof/T1-workspace-final-slice.log",
"/tmp/hi-217-local-proof/T1-result.md"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A1",
"temporary_seams": "none",
"id": "T1",
"depends_on": [],
"location": [
"apps/cli/src/update/run.test.ts",
"apps/cli/src/update/installation-boundary.test.ts",
"apps/cli/test-fixtures/update-prepared-seeds.ts"
],
"owned_paths": [
"apps/cli/src/update/run.test.ts",
"apps/cli/src/update/installation-boundary.test.ts",
"apps/cli/test-fixtures/update-prepared-seeds.ts"
],
"read_dependencies": [
"apps/cli/src/update/run.ts",
"apps/cli/src/features/commit-gate/**",
"apps/cli/src/scaffold/**"
],
"wave_boundary": "W1",
"description": "Preserve real update/receipt/filesystem outcomes; share immutable prepared seeds; use existing dependencyProcess for incidental installation; reduce repeated traversals; keep real scripts-suppression/hooks/tool installation. No production refactor required.",
"validation": "bun run --cwd apps/cli test src/update/run.test.ts src/features/commit-gate/setup.test.ts src/features/scaffold-state/portability.test.ts --maxWorkers=1",
"assigned_skills": ["make-tsuite", "tdd", "quality-types", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "quality-types",
"applicable_behavior": "Keep typed meaningful fixtures and results; no casts masking invalid test state."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained capability after equivalent test-only transformation",
"red_command": "not_applicable: test-only transformation; product changes require task amendment and actual RED",
"expected_red_failure": "not_applicable",
"green_command": "bun run --cwd apps/cli test src/update/run.test.ts src/features/commit-gate/setup.test.ts src/features/scaffold-state/portability.test.ts --maxWorkers=1",
"reason_not_testable": "Test-only suite/fixture or documentation transformation; no production behavior edit authorized by this task.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "runUpdate/dependencyProcess and completeLocalQualitySetup",
"behavior_owner": "apps-cli",
"integration_surface": "runUpdate/dependencyProcess and completeLocalQualitySetup",
"public_seam": "runUpdate/dependencyProcess and completeLocalQualitySetup",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-1"]
}T2: Minimal recovery history and on-demand replay
Acceptance: OUT-003; AC-007–008. Worker: apps-cli.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Parent gate passed: real production planner/validator over minimal Git/artifacts; mapped exact binding, tamper and resume outcomes retained. 86 release tests pass; routine recovery ~7.6s contended, historical replay compile-only on demand."
],
"files edited/created": [
"apps/cli/src/scripts/release-recovery-publication.test.ts",
"apps/cli/src/scripts/release-recovery-publication.fixture.ts",
"apps/cli/src/scripts/release-recovery-publication.runner.ts (moved)",
"apps/cli/test-fixtures/release-recovery/build.mjs",
"apps/cli/test-fixtures/release-recovery/historical.fixture.ts",
"apps/cli/test-fixtures/release-recovery/historical.runner.ts",
"apps/cli/test-fixtures/release-recovery/README.md"
],
"red_evidence": [],
"green_evidence": [
"/tmp/hi-217-local-proof/T2-result.md",
"/tmp/hi-217-local-proof/T2-release-suite-final.log",
"/tmp/hi-217-local-proof/T2-types-final.log"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A1",
"temporary_seams": "none",
"id": "T2",
"depends_on": [],
"location": [
"apps/cli/src/scripts/release-recovery-publication.test.ts",
"apps/cli/src/scripts/release-recovery-publication.fixture.ts",
"apps/cli/src/scripts/release-recovery-publication.runner.ts",
"apps/cli/test-fixtures/release-recovery/**"
],
"owned_paths": [
"apps/cli/src/scripts/release-recovery-publication.test.ts",
"apps/cli/src/scripts/release-recovery-publication.fixture.ts",
"apps/cli/src/scripts/release-recovery-publication.runner.ts",
"apps/cli/test-fixtures/release-recovery/**"
],
"read_dependencies": [
"apps/cli/scripts/release-publication.mjs",
"apps/cli/scripts/classify-release-impact.mjs",
"apps/cli/scripts/assemble-release-artifacts.mjs"
],
"wave_boundary": "W1",
"description": "Use actual planner/validator and tiny real Git/package/baseline artifacts. Move existing full historical exact/resume replay to non-test diagnostic files under owned fixture directory. No production planner changes. Supply diagnostic command to T9.",
"validation": "bun run --cwd apps/cli test src/scripts/release-recovery-publication.test.ts src/scripts/release-recovery.test.ts src/scripts/release-publication.test.ts --maxWorkers=1",
"assigned_skills": ["make-tsuite", "tdd", "quality-types", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "quality-types",
"applicable_behavior": "Keep typed meaningful fixtures and results; no casts masking invalid test state."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained capability after equivalent test-only transformation",
"red_command": "not_applicable: test-only transformation; product changes require task amendment and actual RED",
"expected_red_failure": "not_applicable",
"green_command": "bun run --cwd apps/cli test src/scripts/release-recovery-publication.test.ts src/scripts/release-recovery.test.ts src/scripts/release-publication.test.ts --maxWorkers=1",
"reason_not_testable": "Test-only suite/fixture or documentation transformation; no production behavior edit authorized by this task.",
"codebase_design_notes": "Owned interface: actual release planner/validator over real Git history. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "actual release planner/validator over real Git history",
"behavior_owner": "apps-cli",
"integration_surface": "actual release planner/validator over real Git history",
"public_seam": "actual release planner/validator over real Git history",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-2"]
}T3: Built CLI policy and diagnostic portfolio
Acceptance: OUT-004; AC-008–011. Worker: apps-cli.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Parent Task Gate passed after inspecting semantic fingerprints, real application fixture and source/built separation. Passing superset: 59 source cases, 8 built cases; final 58 source/6 built preserves same exercised bodies. CLI types/lint/format pass. Exact-catalog repeat merged into retained converged old/missing journeys; four section outcomes retained at real materialization seam. Evidence: /tmp/hi-217-local-proof/T3-result.md."
],
"files edited/created": [],
"red_evidence": [],
"green_evidence": [
"portfolio-source-complete.log: 59/59, 250.89s",
"portfolio-built-final.log: 8/8, 87.65s",
"T3-result.md: focused types/lint/format and semantic mapping"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A1",
"temporary_seams": "none",
"id": "T3",
"depends_on": [],
"location": [
"apps/cli/src/cli/behavioral-portfolio.test.ts",
"apps/cli/src/cli/portfolio-*.test.ts",
"apps/cli/test-fixtures/portfolio/**",
"scripts/behavior-contract/issue-215-update-benchmark.mjs"
],
"owned_paths": [
"apps/cli/src/cli/behavioral-portfolio.test.ts",
"apps/cli/src/cli/portfolio-*.test.ts",
"apps/cli/test-fixtures/portfolio/**",
"scripts/behavior-contract/issue-215-update-benchmark.mjs"
],
"read_dependencies": [
"apps/cli/src/features/scaffold-state/**",
"apps/cli/src/scaffold/**",
"apps/cli/src/runtime/**",
"apps/cli/dist/**"
],
"wave_boundary": "W1",
"description": "Delete weak generic command/registration matrix; move catalog/prepare breadth to actual planner/reconcile/materialization seams with files/receipts; keep focused built dispatch/output/failure/scaffold-update/cache witnesses. Remove full benchmark ordinary test, keep on-demand script. Use existing dist read-only until parent builds once. Align the on-demand benchmark host-version assertion and nonhistorical runtime fixture pins to accepted Bun 1.4.0; prove diagnostic startup locally and report its command to T9.",
"validation": "bun run --cwd apps/cli test src/cli/behavioral-portfolio.test.ts --maxWorkers=1; run each new portfolio test file explicitly",
"assigned_skills": ["make-tsuite", "tdd", "quality-types", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "quality-types",
"applicable_behavior": "Keep typed meaningful fixtures and results; no casts masking invalid test state."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained capability after equivalent test-only transformation",
"red_command": "not_applicable: test-only transformation; product changes require task amendment and actual RED",
"expected_red_failure": "not_applicable",
"green_command": "bun run --cwd apps/cli test src/cli/behavioral-portfolio.test.ts --maxWorkers=1; run each new portfolio test file explicitly",
"reason_not_testable": "Test-only suite/fixture or documentation transformation; no production behavior edit authorized by this task.",
"codebase_design_notes": "Owned interface: built hi/hint plus exported scaffold application seams. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "built hi/hint plus exported scaffold application seams",
"behavior_owner": "apps-cli",
"integration_surface": "built hi/hint plus exported scaffold application seams",
"public_seam": "built hi/hint plus exported scaffold application seams",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-3"]
}T4: Remaining CLI portfolio pruning
Acceptance: OUT-001; AC-001–002. Worker: apps-cli-src.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Parent Task Gate passed after owned diff and complete 67-file semantic-map review. 27 tests/5 changed files pass; focused lint, format and whitespace checks pass. New real linter and authority outcomes replace static/decoder duplication.",
"Bounded repair: newly selected real package-staging witness exposed missing local prepareNestedGitignorePackControl binding; explicitly assigned apps/cli/scripts/package-bundled-gitignore.mjs. Existing failure reproduced before one import fix. Same witness GREEN plus lint/format/Node syntax; T4-repair.md. No API/ownership redesign."
],
"files edited/created": [
"apps/cli/src/cli/update-command.test.ts",
"apps/cli/src/content/finder-entrypoints-catalog-prompts.test.ts",
"apps/cli/src/content/scaffold-guidance.test.ts",
"apps/cli/src/scaffold/output-wiki-plugin-alias.test.ts",
"apps/cli/src/scripts/release-authority.test.ts",
"apps/cli/src/content/improve-mobile-frontend.test.ts",
"apps/cli/src/content/verification-recovery-skills.test.ts",
"apps/cli/src/content/wiki.test.ts",
"apps/cli/src/data/catalog/architect-pipeline-registration.test.ts",
"apps/cli/src/data/catalog/make-tsuite-registration.test.ts",
"apps/cli/src/data/catalog/verification-registration.test.ts",
"apps/cli/src/scripts/release-candidate.test.ts",
"apps/cli/src/scripts/release-guidance-contract.test.ts",
"apps/cli/src/scripts/release-verification-evidence.test.ts",
"apps/cli/src/scripts/sync-skills-repo.test.ts",
"apps/cli/scripts/package-bundled-gitignore.mjs"
],
"red_evidence": [],
"green_evidence": [
"/tmp/hi-217-local-proof/T4-result.md",
"/tmp/hi-217-local-proof/T4-focused.log"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A1",
"temporary_seams": "none",
"id": "T4",
"depends_on": [],
"location": [
"apps/cli/src/**/*.test.ts excluding T1/T2/T3 owned files and new portfolio-* files",
"apps/cli/test-fixtures/issue217-audit/**"
],
"owned_paths": [
"apps/cli/src/**/*.test.ts excluding T1/T2/T3 owned files and new portfolio-* files",
"apps/cli/test-fixtures/issue217-audit/**"
],
"read_dependencies": ["apps/cli/src/**", "apps/cli/scripts/**", "apps/cli/test-fixtures/**"],
"wave_boundary": "W1",
"description": "Reconcile every remaining CLI test file with original inventory and current parent changes. Aggressively cull no-owned-invariant source/prose/registration and redundant assertions. Keep runtime/asset compatibility and parent-added settings/validation tests. Do not alter production or shared fixture helpers; coordinate any file reservation before touching.",
"validation": "bun run --cwd apps/cli test <explicit changed retained files> --maxWorkers=1",
"assigned_skills": ["make-tsuite", "tdd", "quality-types", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "quality-types",
"applicable_behavior": "Keep typed meaningful fixtures and results; no casts masking invalid test state."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained capability after equivalent test-only transformation",
"red_command": "not_applicable: test-only transformation; product changes require task amendment and actual RED",
"expected_red_failure": "not_applicable",
"green_command": "bun run --cwd apps/cli test <explicit changed retained files> --maxWorkers=1",
"reason_not_testable": "Test-only suite/fixture or documentation transformation; no production behavior edit authorized by this task.",
"codebase_design_notes": "Owned interface: owned CLI public/application capabilities. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "owned CLI public/application capabilities",
"behavior_owner": "apps-cli-src",
"integration_surface": "owned CLI public/application capabilities",
"public_seam": "owned CLI public/application capabilities",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-4"]
}T5: API test portfolio pruning
Acceptance: OUT-001; AC-001–002. Worker: apps-api.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Parent Task Gate passed: reviewed test-only diff and semantic mapping; 310 tests/28 files plus API typecheck pass on Bun 1.4.0. Relevant source unchanged; final T9 selector/config acceptance subsequently passed."
],
"files edited/created": [
"apps/api/src/features/public-domain-root-contract.test.ts (deleted)",
"apps/api/src/integrations/persistence/report-repository.test.ts"
],
"red_evidence": [],
"green_evidence": [
"/tmp/hi-217-local-proof/T5-result.md",
"/tmp/hi-217-local-proof/T5-api-tests.log",
"/tmp/hi-217-local-proof/T5-api-types.log"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A1",
"temporary_seams": "none",
"id": "T5",
"depends_on": [],
"location": ["apps/api/**/*.test.ts", "apps/api/test-fixtures/issue217/**"],
"owned_paths": ["apps/api/**/*.test.ts", "apps/api/test-fixtures/issue217/**"],
"read_dependencies": ["apps/api/src/**", "packages/contract/src/**"],
"wave_boundary": "W1",
"description": "Cull fake-service self-test/source transaction-count pins and demonstrate retained real report recovery/authority/auth/error behavior. Full disposition of API inventory; no production changes.",
"validation": "bun run --cwd apps/api test",
"assigned_skills": ["make-tsuite", "tdd", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained capability after equivalent test-only transformation",
"red_command": "not_applicable: test-only transformation; product changes require task amendment and actual RED",
"expected_red_failure": "not_applicable",
"green_command": "bun run --cwd apps/api test",
"reason_not_testable": "Test-only suite/fixture or documentation transformation; no production behavior edit authorized by this task.",
"codebase_design_notes": "Owned interface: owned API service/HTTP/persistence outcomes. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "owned API service/HTTP/persistence outcomes",
"behavior_owner": "apps-api",
"integration_surface": "owned API service/HTTP/persistence outcomes",
"public_seam": "owned API service/HTTP/persistence outcomes",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-4"]
}T6: Backoffice and parked web test pruning
Acceptance: OUT-001; AC-001–002. Worker: apps-backoffice.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Parent gate passed: 71 tests passed, semantic map inspected, orphan JSON removed after no-consumer check. Behavior-contract metadata remaining integration belongs to T9."
],
"files edited/created": [
"apps/backoffice/src/modules/control-plane/cache-tags.test.ts (deleted)",
"apps/backoffice/src/public-routes.test.tsx",
"apps/web/src/public-routes.test.tsx (deleted)",
"apps/web/test-fixtures/public-routes.json (deleted)"
],
"red_evidence": [],
"green_evidence": [
"/tmp/hi-217-local-proof/T6-result.md",
"/tmp/hi-217-local-proof/T6-vitest.log"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A1",
"temporary_seams": "none",
"id": "T6",
"depends_on": [],
"location": [
"apps/backoffice/**/*.test.ts",
"apps/backoffice/**/*.test.tsx",
"apps/backoffice/test-fixtures/issue217/**",
"apps/web/src/public-routes.test.tsx",
"apps/web/test-fixtures/public-routes.json"
],
"owned_paths": [
"apps/backoffice/**/*.test.ts",
"apps/backoffice/**/*.test.tsx",
"apps/backoffice/test-fixtures/issue217/**",
"apps/web/src/public-routes.test.tsx",
"apps/web/test-fixtures/public-routes.json"
],
"read_dependencies": ["apps/backoffice/src/**", "apps/web/src/**"],
"wave_boundary": "W1",
"description": "Remove literal cache tags/copy/source/cosmetic locks; preserve auth/cookie/redirect safety, unavailable-vs-empty and recovery. Keep meaningful browser journeys. Report intentional no-test web state to T9 if sole placeholder removed.",
"validation": "bun run --cwd apps/backoffice test; affected browser proof only if altered",
"assigned_skills": ["make-tsuite", "tdd", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained capability after equivalent test-only transformation",
"red_command": "not_applicable: test-only transformation; product changes require task amendment and actual RED",
"expected_red_failure": "not_applicable",
"green_command": "bun run --cwd apps/backoffice test; affected browser proof only if altered",
"reason_not_testable": "Test-only suite/fixture or documentation transformation; no production behavior edit authorized by this task.",
"codebase_design_notes": "Owned interface: owned operator routes and failure outcomes. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "owned operator routes and failure outcomes",
"behavior_owner": "apps-backoffice",
"integration_surface": "owned operator routes and failure outcomes",
"public_seam": "owned operator routes and failure outcomes",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-4"]
}T7: Shared-package proof and DB preparation
Acceptance: OUT-001,OUT-006; AC-001–002,AC-005,AC-017. Worker: worker.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Parent Task Gate passed after seven-file diff review: real auth/SQL/public compatibility preserved, 129 tests/21 files/seven packages pass, all relevant types and changed-file lint/format pass. Four authority cases have independent migrated DBs in one suite-owned server."
],
"files edited/created": [
"packages/auth/src/auth-email-contract.test.ts",
"packages/config/public-config-contract.test.ts",
"packages/contract/src/api.test.ts",
"packages/db/src/baseline-authority-postgres.test.ts",
"packages/db/src/postgres-contract.test.ts",
"packages/scaffold/src/index.test.ts",
"packages/ui/src/public-ui-contract.test.tsx"
],
"red_evidence": [],
"green_evidence": [
"/tmp/hi-217-local-proof/T7-result.md",
"/tmp/hi-217-local-proof/T7-db-final.log",
"/tmp/hi-217-local-proof/T7-auth-final.log"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A1",
"temporary_seams": "none",
"id": "T7",
"depends_on": [],
"location": [
"packages/{auth,config,contract,db,env,scaffold,ui}/**/*.test.ts",
"packages/ui/**/*.test.tsx",
"packages/db/test-fixtures/issue217/**"
],
"owned_paths": [
"packages/{auth,config,contract,db,env,scaffold,ui}/**/*.test.ts",
"packages/ui/**/*.test.tsx",
"packages/db/test-fixtures/issue217/**"
],
"read_dependencies": ["packages/*/src/**"],
"wave_boundary": "W1",
"description": "Prune no-owned-invariant duplicate/source/shape claims while preserving runtime compatibility, auth and DB proof. Replace four baseline authority PostgreSQL servers with one suite-owned server and isolated per-case DB/migration state. Do not share server across packages.",
"validation": "bun run --cwd packages/db test; bun run --cwd packages/auth test; run affected other package test commands",
"assigned_skills": ["make-tsuite", "tdd", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained capability after equivalent test-only transformation",
"red_command": "not_applicable: test-only transformation; product changes require task amendment and actual RED",
"expected_red_failure": "not_applicable",
"green_command": "bun run --cwd packages/db test; bun run --cwd packages/auth test; run affected other package test commands",
"reason_not_testable": "Test-only suite/fixture or documentation transformation; no production behavior edit authorized by this task.",
"codebase_design_notes": "Owned interface: real package adapters/decoders and PostgreSQL authority. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "real package adapters/decoders and PostgreSQL authority",
"behavior_owner": "worker",
"integration_surface": "real package adapters/decoders and PostgreSQL authority",
"public_seam": "real package adapters/decoders and PostgreSQL authority",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-4"]
}T8: Wiki test runner consolidation
Acceptance: OUT-001,OUT-006; AC-001–002,AC-017. Worker: apps-wiki.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Parent Task Gate passed after diff/semantic-map review: 17 tests in four files pass with real loader/composer and filesystem boundaries. One-runner RED and fixture sensitivity recorded. T9 package command subsequently passed its integration gate."
],
"files edited/created": [
"apps/wiki/scripts/sync-content.test.mjs",
"apps/wiki/scripts/source-page-tree.test.mjs",
"apps/wiki/scripts/public-wiki-contract.test.ts",
"apps/wiki/src/public-routes.test.tsx",
"apps/wiki/vitest.config.ts",
"apps/wiki/test-fixtures/issue217/collections.mjs"
],
"red_evidence": [
"/tmp/hi-217-local-proof/T8-before.log",
"/tmp/hi-217-local-proof/T8-sensitivity.log"
],
"green_evidence": [
"/tmp/hi-217-local-proof/T8-result.md",
"/tmp/hi-217-local-proof/T8-final.log"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A1",
"temporary_seams": "none",
"id": "T8",
"depends_on": [],
"location": [
"apps/wiki/scripts/sync-content.test.mjs",
"apps/wiki/scripts/source-page-tree.test.mjs",
"apps/wiki/scripts/public-wiki-contract.test.ts",
"apps/wiki/src/public-routes.test.tsx",
"apps/wiki/vitest.config.ts",
"apps/wiki/test-fixtures/issue217/**"
],
"owned_paths": [
"apps/wiki/scripts/sync-content.test.mjs",
"apps/wiki/scripts/source-page-tree.test.mjs",
"apps/wiki/scripts/public-wiki-contract.test.ts",
"apps/wiki/src/public-routes.test.tsx",
"apps/wiki/vitest.config.ts",
"apps/wiki/test-fixtures/issue217/**"
],
"read_dependencies": [
"apps/wiki/scripts/sync-content.mjs",
"apps/wiki/src/**",
"apps/wiki/source.config.ts"
],
"wave_boundary": "W1",
"description": "Consolidate Node/Bun/Vitest test startup without weakening actual sync/prune/check-only/navigation/route proof. Cull historical page/prose matrix. Supply final script to T9; no spec/research/runbook edits.",
"validation": "bunx --no-install vitest run scripts/sync-content.test.mjs scripts/source-page-tree.test.mjs scripts/public-wiki-contract.test.ts src/public-routes.test.tsx (cwd apps/wiki)",
"assigned_skills": ["make-tsuite", "tdd", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained capability after equivalent test-only transformation",
"red_command": "not_applicable: test-only transformation; product changes require task amendment and actual RED",
"expected_red_failure": "not_applicable",
"green_command": "bunx --no-install vitest run scripts/sync-content.test.mjs scripts/source-page-tree.test.mjs scripts/public-wiki-contract.test.ts src/public-routes.test.tsx (cwd apps/wiki)",
"reason_not_testable": "Test-only suite/fixture or documentation transformation; no production behavior edit authorized by this task.",
"codebase_design_notes": "Owned interface: sync command and published route behavior. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "sync command and published route behavior",
"behavior_owner": "apps-wiki",
"integration_surface": "sync command and published route behavior",
"public_seam": "sync command and published route behavior",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-4"]
}T9a: Independent cache/runner/operator configuration
Acceptance: OUT-005–007; AC-003,AC-012–016,AC-019. Worker: worker. Final capability selectors remain T9.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Parent Task Gate passed A2-preparation: inspected runner and identity/selection diff, all-eight disposition and exact one-error evidence refusals. 155 tests passed in32.65s;12 workspace contracts/format/diff pass. Final graph/input restoration remains T9, no standalone full acceptance claim. Worker stopped; custody ready for T9 transfer."
],
"files edited/created": [],
"red_evidence": [],
"green_evidence": [
"/tmp/hi-217-local-proof/T9a-result.md",
"/tmp/hi-217-local-proof/T9a-final-suite.json"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "CPUs 8,9, private temporary fixtures/caches. No workspace install, CLI build, repository-wide verification, hosted dispatch or mutation outside owned paths.",
"architecture_wave": "A2-preparation",
"temporary_seams": "none",
"id": "T9a",
"depends_on": [],
"location": [
".github/workflows/**",
"scripts/behavior-contract/** excluding issue-215-update-benchmark.mjs",
"scripts/external-drift/npm-trusted-publisher-oidc-exchange.test.ts",
"scripts/install-git-hooks.test.ts",
"behavior-contract/**"
],
"owned_paths": [
".github/workflows/**",
"scripts/behavior-contract/** excluding issue-215-update-benchmark.mjs",
"scripts/external-drift/npm-trusted-publisher-oidc-exchange.test.ts",
"scripts/install-git-hooks.test.ts",
"behavior-contract/**"
],
"read_dependencies": [
"Existing package manifests/turbo config read-only; record hashes and revalidate changed inputs after T9 integration",
"Completed T2/T4\u2013T8 handoff maps",
"No live reads or edits of unfinished T1/T3 test inputs"
],
"wave_boundary": "W1 after independent split review",
"description": "Implement independent cache capability identity, affected selection/conditional browser preparation, root proof exact-once, 2-vCPU/no-macOS runner changes, current Bun 1.4 root-script/workflow pins, and all-eight operator test reconciliation. Do not change manifests, Turbo, CLI Vitest configuration, or T3 benchmark. Metadata for complete task handoffs may be reconciled now; incomplete T1/T3 witness references wait final integration.",
"validation": "Focused root cache/selection/trust tests and private real Turbo fixtures only. No repository-wide static/affected execution until final T9 integration. Actual final selectors/cache graph remain T9 responsibility.",
"assigned_skills": ["tdd", "turborepo", "architect-pipeline", "make-tsuite", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "turborepo",
"applicable_behavior": "Use explicit actual input closure, package scripts and strict environment/trust identities; validate real keys/outputs."
},
{
"skill": "architect-pipeline",
"applicable_behavior": "Preserve aggregate/trigger/release authority; remove redundant work without sharding or oversized workers."
},
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "required",
"tdd_target": "Actual browser selection and per-capability identities fail before changes, then pass; final graph acceptance remains T9",
"red_command": "bun test scripts/behavior-contract/affected-verification.test.ts scripts/behavior-contract/cache-identity.test.ts",
"expected_red_failure": "New public cache/selection scenario fails before implementation; capture concrete assertion",
"green_command": "bun test scripts/behavior-contract/affected-verification.test.ts scripts/behavior-contract/cache-identity.test.ts scripts/behavior-contract/cache-trust.test.ts",
"reason_not_testable": "not_applicable: behavior-changing CI task uses RED",
"codebase_design_notes": "Owned interface: run-ci-verification/verificationEnvironment/Turbo task graph. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "Root affected-selection and produced capability-identity APIs using isolated fixtures",
"behavior_owner": "worker",
"integration_surface": "run-ci-verification/verificationEnvironment/Turbo task graph",
"public_seam": "run-ci-verification/verificationEnvironment/Turbo task graph",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No package.json/turbo.json/CLI Vitest writes; no T3 benchmark edits; no product release-planner changes; no repo-wide execution while concurrent suites use it.",
"responsibility_acceptance_criteria": ["RAC-5"]
}T9: CI/cache and root proof integration
Acceptance: OUT-001,OUT-005,OUT-006,OUT-007; AC-003,AC-011–016,AC-019. Worker: worker.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"A2 gate passed: complete disjoint 49/1/8/5 CLI groups, actual affected selection, consumed-input/capability cache misses and cross-worktree restoration, preserved signed trust and stable aggregate. 32 cache-policy and 119 operator tests pass; all12 contracts and root static checks pass. Worker stopped."
],
"files edited/created": [],
"red_evidence": [
"/tmp/hi-217-local-proof/T9-selectors-red.log",
"/tmp/hi-217-local-proof/T9-graph-red.log",
"/tmp/hi-217-local-proof/T9-inputs-red.log",
"/tmp/hi-217-local-proof/T9-static-cache-red.log"
],
"green_evidence": [
"VALIDATION.md",
"/tmp/hi-217-local-proof/T9-result.md",
"/tmp/hi-217-local-proof/T9-policy-final.log",
"/tmp/hi-217-local-proof/T9-operators-final.log"
],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A2",
"temporary_seams": "none",
"id": "T9",
"depends_on": ["T1", "T2", "T3", "T4", "T5", "T6", "T7", "T8", "T9a"],
"location": [
"turbo.json",
"package.json",
"apps/*/package.json",
"packages/*/package.json",
".github/workflows/**",
"apps/cli/vitest*.ts",
"apps/cli/scripts/issue217-*.mjs",
"scripts/behavior-contract/** excluding issue-215-update-benchmark.mjs",
"scripts/external-drift/npm-trusted-publisher-oidc-exchange.test.ts",
"scripts/install-git-hooks.test.ts",
"behavior-contract/**"
],
"owned_paths": [
"turbo.json",
"package.json",
"apps/*/package.json",
"packages/*/package.json",
".github/workflows/**",
"apps/cli/vitest*.ts",
"apps/cli/scripts/issue217-*.mjs",
"scripts/behavior-contract/** excluding issue-215-update-benchmark.mjs",
"scripts/external-drift/npm-trusted-publisher-oidc-exchange.test.ts",
"scripts/install-git-hooks.test.ts",
"behavior-contract/**"
],
"read_dependencies": [
"all task handoff selectors",
"all selected workspace source/config inputs"
],
"wave_boundary": "W2 (W1 readonly preparation only)",
"description": "Consume all passed T1\u2013T8/T9a handoffs and finalize package scripts, Turbo input closure/capability graph, CLI Vitest selectors, on-demand commands, repository Bun 1.4 pins. Revalidate T9a identity/selection tests against final manifests and perform complete selector/input/output/aggregate proof with parent runtime custody.",
"validation": "bun test scripts/behavior-contract/affected-verification.test.ts scripts/behavior-contract/cache-identity.test.ts scripts/behavior-contract/cache-trust.test.ts; bun scripts/behavior-contract/run-ci-verification.mjs static; actual Turbo hash/restoration scenarios",
"assigned_skills": ["tdd", "turborepo", "architect-pipeline", "make-tsuite", "codebase-design"],
"implementation_skill_guidance": [
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
},
{
"skill": "turborepo",
"applicable_behavior": "Use explicit actual input closure, package scripts and strict environment/trust identities; validate real keys/outputs."
},
{
"skill": "architect-pipeline",
"applicable_behavior": "Preserve aggregate/trigger/release authority; remove redundant work without sharding or oversized workers."
},
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "codebase-design",
"applicable_behavior": "Use existing owned public seams; preserve locality and avoid private shape assertions."
}
],
"tdd_status": "required",
"tdd_target": "Relevant input causes miss, unrelated docs preserves proof, optional browser selection and root exact-once",
"red_command": "bun test scripts/behavior-contract/affected-verification.test.ts scripts/behavior-contract/cache-identity.test.ts",
"expected_red_failure": "New public cache/selection scenario fails before implementation; capture concrete assertion",
"green_command": "bun test scripts/behavior-contract/affected-verification.test.ts scripts/behavior-contract/cache-identity.test.ts scripts/behavior-contract/cache-trust.test.ts; node scripts/behavior-contract/run-ci-verification.mjs static; actual Turbo hash/restoration scenarios",
"reason_not_testable": "not_applicable: behavior-changing CI task uses RED",
"codebase_design_notes": "Owned interface: run-ci-verification/verificationEnvironment/Turbo task graph. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "run-ci-verification/verificationEnvironment/Turbo task graph",
"behavior_owner": "worker",
"integration_surface": "run-ci-verification/verificationEnvironment/Turbo task graph",
"public_seam": "run-ci-verification/verificationEnvironment/Turbo task graph",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-5"]
}T10: Consolidated proof and implemented documentation
Acceptance: OUT-001,OUT-007; AC-001–002,AC-018–020. Worker: docs.
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"153-file inventory, semantic outcomes, precise commands/rules/runbook projections and local measurement record complete. Content, links/meta, scoped formatting and diff checks pass."
],
"files edited/created": [],
"red_evidence": [],
"green_evidence": ["TEST-PORTFOLIO.md", "VALIDATION.md", "/tmp/hi-217-local-proof/T10-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Read existing dependencies; private temporary roots/caches. No workspace install or CLI build. Baseline on CPUs 0,1 reserved by parent; task tests use the parent-assigned CPU pair outside 0,1 unless parent releases measurement window. Docker containers carry unique task names.",
"architecture_wave": "A3",
"temporary_seams": "none",
"id": "T10",
"depends_on": ["T1", "T2", "T3", "T4", "T5", "T6", "T7", "T8", "T9"],
"location": [
"docs/README.md",
"docs/runbooks/ci-verification-and-publication.md",
"docs/runbooks/hi-cli-scaffolding.md",
".agents/rules/**",
"apps/wiki/content/docs/project/specs/cli/issue-217-ci-efficiency/TEST-PORTFOLIO.md",
"apps/wiki/content/docs/project/specs/cli/issue-217-ci-efficiency/VALIDATION.md",
"apps/wiki/content/docs/project/runbooks/ci-verification-and-publication.md",
"apps/wiki/content/docs/project/runbooks/hi-cli-scaffolding.md"
],
"owned_paths": [
"docs/README.md",
"docs/runbooks/ci-verification-and-publication.md",
"docs/runbooks/hi-cli-scaffolding.md",
".agents/rules/**",
"apps/wiki/content/docs/project/specs/cli/issue-217-ci-efficiency/TEST-PORTFOLIO.md",
"apps/wiki/content/docs/project/specs/cli/issue-217-ci-efficiency/VALIDATION.md",
"apps/wiki/content/docs/project/runbooks/ci-verification-and-publication.md",
"apps/wiki/content/docs/project/runbooks/hi-cli-scaffolding.md"
],
"read_dependencies": ["all task handoffs", "SPEC.md", "PLAN.md", "final diff"],
"wave_boundary": "W3",
"description": "Consolidate whole current inventory and retained invariant map. Parent performs local integration/baseline-after/cached replay and review; docs worker records implemented commands, diagnostic entrypoints, correct capability/runner/reuse behavior and actual evidence. Update rule references for removed test authorities. Do not claim hosted or hardware-equivalent performance.",
"validation": "local complete CLI and affected workspaces; two-CPU before/after; cache input/output proof; wiki content/contracts; git diff --check",
"assigned_skills": ["docs-ingest-phase", "make-tsuite", "tdd"],
"implementation_skill_guidance": [
{
"skill": "docs-ingest-phase",
"applicable_behavior": "Document implemented behavior and evidence only; keep docs source/projection aligned."
},
{
"skill": "make-tsuite",
"applicable_behavior": "Record semantic fingerprints; cull only no-owned-invariant or mapped redundancy; test-only scope."
},
{
"skill": "tdd",
"applicable_behavior": "Capture real RED before any observable production/config selection behavior change; use explicit test-only exception otherwise."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained capability after equivalent test-only transformation",
"red_command": "not_applicable: test-only transformation; product changes require task amendment and actual RED",
"expected_red_failure": "not_applicable",
"green_command": "local complete CLI and affected workspaces; two-CPU before/after; cache input/output proof; wiki content/contracts; git diff --check",
"reason_not_testable": "Test-only suite/fixture or documentation transformation; no production behavior edit authorized by this task.",
"codebase_design_notes": "Owned interface: operator commands and final complete required proof. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "operator commands and final complete required proof",
"behavior_owner": "docs",
"integration_surface": "operator commands and final complete required proof",
"public_seam": "operator commands and final complete required proof",
"topology_delta": "Test and task composition only; product policy stays with existing owner.",
"forbidden_ownership": "No writes outside listed scope, no shared manifest edits except T9, no source behavior changes under make-tsuite.",
"responsibility_acceptance_criteria": ["RAC-6"]
}W4: user-authorized residual pruning
The September 22 follow-up explicitly requests fewer tests. The four-lane research report is the decision basis. W4 tasks are disjoint and depend on the completed first pass. Repeated scenario combinations may be reduced while every named meaningful boundary remains observed. No new product behavior, sharding or weakening of publication/cache trust is authorized. Parent retains PLAN, SPEC, portfolio, validation and notes custody. Each worker records actual before/after test and expensive-operation counts; fewer labels alone are not performance evidence.
T11a — Updater/scaffold representative proof
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Assigned scoped worker: implement_updater",
"Parent gate accepted: retained semantic mapping, focused GREEN, owner checks and exact hashes; inherited lint disclosed for T11f/T11g."
],
"files edited/created": [
"apps/cli/src/update/run.test.ts",
"apps/cli/src/scaffold/output.test.ts",
"apps/cli/src/scaffold/project-verifier-preservation.test.ts"
],
"red_evidence": [],
"green_evidence": ["/tmp/hi-217-local-proof/pruning-research/T11a-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Existing dependencies; private fixture roots; each test process bound to two logical CPUs. Shared host load means correctness timings, not hosted forecasts.",
"architecture_wave": "A4",
"temporary_seams": "none",
"id": "T11a",
"depends_on": ["T10"],
"location": [
"apps/cli/src/update/run.test.ts",
"apps/cli/src/scaffold/output.test.ts",
"apps/cli/src/scaffold/project-verifier-preservation.test.ts"
],
"owned_paths": [
"apps/cli/src/update/run.test.ts",
"apps/cli/src/scaffold/output.test.ts",
"apps/cli/src/scaffold/project-verifier-preservation.test.ts"
],
"read_dependencies": [
"SPEC.md",
"TEST-PORTFOLIO.md",
"issue-217-residual-test-pruning-research-report.md"
],
"wave_boundary": "W4 disjoint test-only writes; no install/build/manifests/provider writes.",
"description": "Remove seven repeated cases using lane A mappings; retain stale scaffold plus tampered/missing updater repair; one cold proof and all converged invalidities. Move unique receipt/hash/healthy-repeat/accepted-proof assertions. Reduce repeated preview/check traversals only with all invalidities/interfaces retained; empty route only if direct selected predicate coverage exists.",
"validation": "Focused changed retained suites; owning lint/type/format; source hashes and semantic mapping in /tmp/hi-217-local-proof/pruning-research/T11a-result.md",
"assigned_skills": ["make-tsuite", "tdd", "simplify"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"guidance": "Delete or migrate only after mapping the retained actor, input class, authority, observable outcome and side effects."
},
{
"skill": "tdd",
"guidance": "Test-only transformation exception; retain meaningful public-result proof and do not fabricate a production RED."
},
{
"skill": "simplify",
"guidance": "Use existing owning seams, remove duplicate setup, and introduce no production export solely for tests."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained owned behavior after test-only pruning",
"red_command": "not_applicable: test-only transformation",
"expected_red_failure": "not_applicable",
"green_command": "Owning focused tests, lint/type/format, git diff --check",
"reason_not_testable": "No production behavior change; use semantic mapping plus focused GREEN.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "apps/cli/src/update/run.test.ts",
"behavior_owner": "implement_updater",
"integration_surface": "apps/cli/src/update/run.test.ts",
"public_seam": "Existing production interfaces exercised by retained tests",
"topology_delta": "None; routine selector coverage remains complete",
"forbidden_ownership": "No files outside owned_paths; parent owns docs and task state; no builds/installs/commits/pushes.",
"responsibility_acceptance_criteria": ["RAC-1"]
}T11b — CLI runtime and cache duplicate proof
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Assigned scoped worker: implement_cli_audit",
"Parent gate accepted: retained semantic mapping, focused GREEN, owner checks and exact hashes; inherited lint disclosed for T11f/T11g."
],
"files edited/created": [
"apps/cli/src/runtime/scripts.test.ts",
"apps/cli/src/features/scaffold-update/validation-cache/cache.test.ts",
"apps/cli/src/platform/feature-application-operations.test.ts"
],
"red_evidence": [],
"green_evidence": ["/tmp/hi-217-local-proof/pruning-research/T11b-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Existing dependencies; private fixture roots; each test process bound to two logical CPUs. Shared host load means correctness timings, not hosted forecasts.",
"architecture_wave": "A4",
"temporary_seams": "none",
"id": "T11b",
"depends_on": ["T10"],
"location": [
"apps/cli/src/runtime/scripts.test.ts",
"apps/cli/src/features/scaffold-update/validation-cache/cache.test.ts",
"apps/cli/src/platform/feature-application-operations.test.ts"
],
"owned_paths": [
"apps/cli/src/runtime/scripts.test.ts",
"apps/cli/src/features/scaffold-update/validation-cache/cache.test.ts",
"apps/cli/src/platform/feature-application-operations.test.ts"
],
"read_dependencies": [
"SPEC.md",
"TEST-PORTFOLIO.md",
"issue-217-residual-test-pruning-research-report.md"
],
"wave_boundary": "W4 disjoint test-only writes; no install/build/manifests/provider writes.",
"description": "Factor six repeated recovery tails into one (36 to16 candidate previews); remove call-order case and two cache cases with closed-input and installation-payload assertion migration. Portfolio-policy follow-up is a separate T11h task.",
"validation": "Focused changed retained suites; owning lint/type/format; source hashes and semantic mapping in /tmp/hi-217-local-proof/pruning-research/T11b-result.md",
"assigned_skills": ["make-tsuite", "tdd", "simplify"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"guidance": "Delete or migrate only after mapping the retained actor, input class, authority, observable outcome and side effects."
},
{
"skill": "tdd",
"guidance": "Test-only transformation exception; retain meaningful public-result proof and do not fabricate a production RED."
},
{
"skill": "simplify",
"guidance": "Use existing owning seams, remove duplicate setup, and introduce no production export solely for tests."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained owned behavior after test-only pruning",
"red_command": "not_applicable: test-only transformation",
"expected_red_failure": "not_applicable",
"green_command": "Owning focused tests, lint/type/format, git diff --check",
"reason_not_testable": "No production behavior change; use semantic mapping plus focused GREEN.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "apps/cli/src/runtime/scripts.test.ts",
"behavior_owner": "implement_cli_audit",
"integration_surface": "apps/cli/src/runtime/scripts.test.ts",
"public_seam": "Existing production interfaces exercised by retained tests",
"topology_delta": "None; routine selector coverage remains complete",
"forbidden_ownership": "No files outside owned_paths; parent owns docs and task state; no builds/installs/commits/pushes.",
"responsibility_acceptance_criteria": ["RAC-3"]
}T11c — Release duplicate proof
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Assigned scoped worker: implement_recovery",
"Parent gate accepted: retained semantic mapping, focused GREEN, owner checks and exact hashes; inherited lint disclosed for T11f/T11g."
],
"files edited/created": [
"apps/cli/src/scripts/release-publication.test.ts",
"apps/cli/src/scripts/release-recovery-publication.test.ts",
"apps/cli/src/scripts/release-authority.test.ts"
],
"red_evidence": [],
"green_evidence": ["/tmp/hi-217-local-proof/pruning-research/T11c-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Existing dependencies; private fixture roots; each test process bound to two logical CPUs. Shared host load means correctness timings, not hosted forecasts.",
"architecture_wave": "A4",
"temporary_seams": "none",
"id": "T11c",
"depends_on": ["T10"],
"location": [
"apps/cli/src/scripts/release-publication.test.ts",
"apps/cli/src/scripts/release-recovery-publication.test.ts",
"apps/cli/src/scripts/release-authority.test.ts"
],
"owned_paths": [
"apps/cli/src/scripts/release-publication.test.ts",
"apps/cli/src/scripts/release-recovery-publication.test.ts",
"apps/cli/src/scripts/release-authority.test.ts"
],
"read_dependencies": [
"SPEC.md",
"TEST-PORTFOLIO.md",
"issue-217-residual-test-pruning-research-report.md"
],
"wave_boundary": "W4 disjoint test-only writes; no install/build/manifests/provider writes.",
"description": "Remove eight lane C duplicate/copied-classifier cases, preserving real planner/validator integration, one product publication witness and all authority refusal dimensions.",
"validation": "Focused changed retained suites; owning lint/type/format; source hashes and semantic mapping in /tmp/hi-217-local-proof/pruning-research/T11c-result.md",
"assigned_skills": ["make-tsuite", "tdd", "simplify"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"guidance": "Delete or migrate only after mapping the retained actor, input class, authority, observable outcome and side effects."
},
{
"skill": "tdd",
"guidance": "Test-only transformation exception; retain meaningful public-result proof and do not fabricate a production RED."
},
{
"skill": "simplify",
"guidance": "Use existing owning seams, remove duplicate setup, and introduce no production export solely for tests."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained owned behavior after test-only pruning",
"red_command": "not_applicable: test-only transformation",
"expected_red_failure": "not_applicable",
"green_command": "Owning focused tests, lint/type/format, git diff --check",
"reason_not_testable": "No production behavior change; use semantic mapping plus focused GREEN.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "apps/cli/src/scripts",
"behavior_owner": "implement_recovery",
"integration_surface": "apps/cli/src/scripts",
"public_seam": "Existing production interfaces exercised by retained tests",
"topology_delta": "None; routine selector coverage remains complete",
"forbidden_ownership": "No files outside owned_paths; parent owns docs and task state; no builds/installs/commits/pushes.",
"responsibility_acceptance_criteria": ["RAC-2"]
}T11d — Root verification duplicate process
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Assigned scoped worker: implement_ci",
"Parent gate accepted: retained semantic mapping, focused GREEN, owner checks and exact hashes; inherited lint disclosed for T11f/T11g."
],
"files edited/created": [
"scripts/behavior-contract/cache-identity.test.ts",
"scripts/behavior-contract/ci-topology.test.ts"
],
"red_evidence": [],
"green_evidence": ["/tmp/hi-217-local-proof/pruning-research/T11d-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Existing dependencies; private fixture roots; each test process bound to two logical CPUs. Shared host load means correctness timings, not hosted forecasts.",
"architecture_wave": "A4",
"temporary_seams": "none",
"id": "T11d",
"depends_on": ["T10"],
"location": [
"scripts/behavior-contract/cache-identity.test.ts",
"scripts/behavior-contract/ci-topology.test.ts"
],
"owned_paths": [
"scripts/behavior-contract/cache-identity.test.ts",
"scripts/behavior-contract/ci-topology.test.ts"
],
"read_dependencies": [
"SPEC.md",
"TEST-PORTFOLIO.md",
"issue-217-residual-test-pruning-research-report.md"
],
"wave_boundary": "W4 disjoint test-only writes; no install/build/manifests/provider writes.",
"description": "Move three cache-policy selection membership assertions into existing topology dry run; delete duplicated test/process; preserve applied ci-cache-001 perturbation repair.",
"validation": "Focused changed retained suites; owning lint/type/format; source hashes and semantic mapping in /tmp/hi-217-local-proof/pruning-research/T11d-result.md",
"assigned_skills": ["make-tsuite", "tdd", "simplify"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"guidance": "Delete or migrate only after mapping the retained actor, input class, authority, observable outcome and side effects."
},
{
"skill": "tdd",
"guidance": "Test-only transformation exception; retain meaningful public-result proof and do not fabricate a production RED."
},
{
"skill": "simplify",
"guidance": "Use existing owning seams, remove duplicate setup, and introduce no production export solely for tests."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained owned behavior after test-only pruning",
"red_command": "not_applicable: test-only transformation",
"expected_red_failure": "not_applicable",
"green_command": "Owning focused tests, lint/type/format, git diff --check",
"reason_not_testable": "No production behavior change; use semantic mapping plus focused GREEN.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "scripts/behavior-contract",
"behavior_owner": "implement_ci",
"integration_surface": "scripts/behavior-contract",
"public_seam": "Existing production interfaces exercised by retained tests",
"topology_delta": "None; routine selector coverage remains complete",
"forbidden_ownership": "No files outside owned_paths; parent owns docs and task state; no builds/installs/commits/pushes.",
"responsibility_acceptance_criteria": ["RAC-5"]
}T11e — Auth policy duplicate proof
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Assigned scoped worker: implement_packages",
"Parent gate accepted: retained semantic mapping, focused GREEN, owner checks and exact hashes; inherited lint disclosed for T11f/T11g."
],
"files edited/created": ["packages/auth/src/public-domain-root-contract.test.ts"],
"red_evidence": [],
"green_evidence": ["/tmp/hi-217-local-proof/pruning-research/T11e-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Existing dependencies; private fixture roots; each test process bound to two logical CPUs. Shared host load means correctness timings, not hosted forecasts.",
"architecture_wave": "A4",
"temporary_seams": "none",
"id": "T11e",
"depends_on": ["T10"],
"location": ["packages/auth/src/public-domain-root-contract.test.ts"],
"owned_paths": ["packages/auth/src/public-domain-root-contract.test.ts"],
"read_dependencies": [
"SPEC.md",
"TEST-PORTFOLIO.md",
"issue-217-residual-test-pruning-research-report.md"
],
"wave_boundary": "W4 disjoint test-only writes; no install/build/manifests/provider writes.",
"description": "Remove sign-in policy row and happy Resend forwarding case; configured OTP callback already proves exact full payload; keep other email types and failures.",
"validation": "Focused changed retained suites; owning lint/type/format; source hashes and semantic mapping in /tmp/hi-217-local-proof/pruning-research/T11e-result.md",
"assigned_skills": ["make-tsuite", "tdd", "simplify"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"guidance": "Delete or migrate only after mapping the retained actor, input class, authority, observable outcome and side effects."
},
{
"skill": "tdd",
"guidance": "Test-only transformation exception; retain meaningful public-result proof and do not fabricate a production RED."
},
{
"skill": "simplify",
"guidance": "Use existing owning seams, remove duplicate setup, and introduce no production export solely for tests."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained owned behavior after test-only pruning",
"red_command": "not_applicable: test-only transformation",
"expected_red_failure": "not_applicable",
"green_command": "Owning focused tests, lint/type/format, git diff --check",
"reason_not_testable": "No production behavior change; use semantic mapping plus focused GREEN.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "packages/auth/src/public-domain-root-contract.test.ts",
"behavior_owner": "implement_packages",
"integration_surface": "packages/auth/src/public-domain-root-contract.test.ts",
"public_seam": "Existing production interfaces exercised by retained tests",
"topology_delta": "None; routine selector coverage remains complete",
"forbidden_ownership": "No files outside owned_paths; parent owns docs and task state; no builds/installs/commits/pushes.",
"responsibility_acceptance_criteria": ["RAC-4"]
}T11f — Backoffice redirect duplicate proof
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Assigned scoped worker: implement_operator_web",
"Parent gate accepted: retained semantic mapping, focused GREEN, owner checks and exact hashes; inherited lint disclosed for T11f/T11g."
],
"files edited/created": ["apps/backoffice/src/public-routes.test.tsx"],
"red_evidence": [],
"green_evidence": ["/tmp/hi-217-local-proof/pruning-research/T11f-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Existing dependencies; private fixture roots; each test process bound to two logical CPUs. Shared host load means correctness timings, not hosted forecasts.",
"architecture_wave": "A4",
"temporary_seams": "none",
"id": "T11f",
"depends_on": ["T10"],
"location": ["apps/backoffice/src/public-routes.test.tsx"],
"owned_paths": ["apps/backoffice/src/public-routes.test.tsx"],
"read_dependencies": [
"SPEC.md",
"TEST-PORTFOLIO.md",
"issue-217-residual-test-pruning-research-report.md"
],
"wave_boundary": "W4 disjoint test-only writes; no install/build/manifests/provider writes.",
"description": "Remove mocked unauthorized redirect case after confirming required browser journey covers /access exact redirect. Keep forbidden and unavailable route outcomes.",
"validation": "Focused changed retained suites; owning lint/type/format; source hashes and semantic mapping in /tmp/hi-217-local-proof/pruning-research/T11f-result.md",
"assigned_skills": ["make-tsuite", "tdd", "simplify"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"guidance": "Delete or migrate only after mapping the retained actor, input class, authority, observable outcome and side effects."
},
{
"skill": "tdd",
"guidance": "Test-only transformation exception; retain meaningful public-result proof and do not fabricate a production RED."
},
{
"skill": "simplify",
"guidance": "Use existing owning seams, remove duplicate setup, and introduce no production export solely for tests."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained owned behavior after test-only pruning",
"red_command": "not_applicable: test-only transformation",
"expected_red_failure": "not_applicable",
"green_command": "Owning focused tests, lint/type/format, git diff --check",
"reason_not_testable": "No production behavior change; use semantic mapping plus focused GREEN.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "apps/backoffice/src/public-routes.test.tsx",
"behavior_owner": "implement_operator_web",
"integration_surface": "apps/backoffice/src/public-routes.test.tsx",
"public_seam": "Existing production interfaces exercised by retained tests",
"topology_delta": "None; routine selector coverage remains complete",
"forbidden_ownership": "No files outside owned_paths; parent owns docs and task state; no builds/installs/commits/pushes.",
"responsibility_acceptance_criteria": ["RAC-4"]
}T11g — Wiki check-only duplicate proof
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Assigned scoped worker: implement_wiki",
"Parent gate accepted: retained semantic mapping, focused GREEN, owner checks and exact hashes; inherited lint disclosed for T11f/T11g."
],
"files edited/created": ["apps/wiki/scripts/sync-content.test.mjs"],
"red_evidence": [],
"green_evidence": ["/tmp/hi-217-local-proof/pruning-research/T11g-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Existing dependencies; private fixture roots; each test process bound to two logical CPUs. Shared host load means correctness timings, not hosted forecasts.",
"architecture_wave": "A4",
"temporary_seams": "none",
"id": "T11g",
"depends_on": ["T10"],
"location": ["apps/wiki/scripts/sync-content.test.mjs"],
"owned_paths": ["apps/wiki/scripts/sync-content.test.mjs"],
"read_dependencies": [
"SPEC.md",
"TEST-PORTFOLIO.md",
"issue-217-residual-test-pruning-research-report.md"
],
"wave_boundary": "W4 disjoint test-only writes; no install/build/manifests/provider writes.",
"description": "Remove duplicate full-projection check-only no-write case; retain public contract whole-tree fingerprint and distinct source-ownership pruning.",
"validation": "Focused changed retained suites; owning lint/type/format; source hashes and semantic mapping in /tmp/hi-217-local-proof/pruning-research/T11g-result.md",
"assigned_skills": ["make-tsuite", "tdd", "simplify"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"guidance": "Delete or migrate only after mapping the retained actor, input class, authority, observable outcome and side effects."
},
{
"skill": "tdd",
"guidance": "Test-only transformation exception; retain meaningful public-result proof and do not fabricate a production RED."
},
{
"skill": "simplify",
"guidance": "Use existing owning seams, remove duplicate setup, and introduce no production export solely for tests."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained owned behavior after test-only pruning",
"red_command": "not_applicable: test-only transformation",
"expected_red_failure": "not_applicable",
"green_command": "Owning focused tests, lint/type/format, git diff --check",
"reason_not_testable": "No production behavior change; use semantic mapping plus focused GREEN.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "apps/wiki/scripts/sync-content.test.mjs",
"behavior_owner": "implement_wiki",
"integration_surface": "apps/wiki/scripts/sync-content.test.mjs",
"public_seam": "Existing production interfaces exercised by retained tests",
"topology_delta": "None; routine selector coverage remains complete",
"forbidden_ownership": "No files outside owned_paths; parent owns docs and task state; no builds/installs/commits/pushes.",
"responsibility_acceptance_criteria": ["RAC-4"]
}T11h — Reduce policy materialization
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Assigned scoped worker: implement_portfolio; follow-up Lane B identified208.108s hotspot and58 static application requests.",
"Parent gate accepted: retained semantic mapping, focused GREEN, owner checks and exact hashes; inherited lint disclosed for T11f/T11g."
],
"files edited/created": [
"apps/cli/src/cli/portfolio-policy.test.ts",
"apps/cli/test-fixtures/portfolio/application.ts"
],
"red_evidence": [],
"green_evidence": ["/tmp/hi-217-local-proof/pruning-research/T11h-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Existing dependencies; private fixture roots; each test process bound to two logical CPUs. Shared host load means correctness timings, not hosted forecasts.",
"architecture_wave": "A4",
"temporary_seams": "none",
"id": "T11h",
"depends_on": ["T10"],
"location": [
"apps/cli/src/cli/portfolio-policy.test.ts",
"apps/cli/test-fixtures/portfolio/application.ts"
],
"owned_paths": [
"apps/cli/src/cli/portfolio-policy.test.ts",
"apps/cli/test-fixtures/portfolio/application.ts"
],
"read_dependencies": [
"SPEC.md",
"TEST-PORTFOLIO.md",
"issue-217-residual-test-pruning-research-report.md"
],
"wave_boundary": "W4 disjoint test-only writes; no install/build/manifests/provider writes.",
"description": "Remove two duplicate catalog cases and one repeated update; migrate eight declaration/refusal cases to the public planning seam. Keep three prepare-receipt mutations because exported reconciliation cannot prove their command/receipt effects without reproducing private policy.",
"validation": "Focused affected portfolio policy + retained cheap reconciliation/catalog witnesses; owning lint/type/format; before/after source identities and real application-call mapping in /tmp/hi-217-local-proof/pruning-research/T11h-result.md",
"assigned_skills": ["make-tsuite", "tdd", "simplify"],
"implementation_skill_guidance": [
{
"skill": "make-tsuite",
"guidance": "Delete or migrate only after mapping the retained actor, input class, authority, observable outcome and side effects."
},
{
"skill": "tdd",
"guidance": "Test-only transformation exception; retain meaningful public-result proof and do not fabricate a production RED."
},
{
"skill": "simplify",
"guidance": "Use existing owning seams, remove duplicate setup, and introduce no production export solely for tests."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained owned behavior after test-only pruning",
"red_command": "not_applicable: test-only transformation",
"expected_red_failure": "not_applicable",
"green_command": "Owning focused tests, lint/type/format, git diff --check",
"reason_not_testable": "No production behavior change; use semantic mapping plus focused GREEN.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "Existing scaffold planning/reconciliation public interfaces",
"behavior_owner": "apps-cli",
"integration_surface": "Existing scaffold planning/reconciliation public interfaces",
"public_seam": "Existing scaffold planning/reconciliation public interfaces",
"topology_delta": "None; routine selector coverage remains complete",
"forbidden_ownership": "No files outside owned_paths; parent owns docs and task state; no builds/installs/commits/pushes.",
"responsibility_acceptance_criteria": ["RAC-3"]
}T12 — Reconcile final operator guidance
{
"task_identity_mode": "planning-only",
"backlog_item_id": "not_applicable",
"backlog_item_url": "not_applicable",
"relation_mode": "unprojected",
"backlog_sync_skip_reason": "Full delivery is explicitly authorized for GitHub issue #217 / PR #223. No accepted Linear initiative/epic/iteration placement exists; do not manufacture an unrelated hierarchy. Existing immutable specification is execution authority; provider projection remains unprojected.",
"status": "Complete",
"log": [
"Assigned worker: prepare_docs; prerequisite T11b and T11d gates pass.",
"Parent gate accepted: retained semantic mapping, focused GREEN, owner checks and exact hashes; inherited lint disclosed for T11f/T11g."
],
"files edited/created": [
"docs/README.md",
"docs/runbooks/ci-verification-and-publication.md",
"apps/wiki/content/docs/project/runbooks/ci-verification-and-publication.md"
],
"red_evidence": [],
"green_evidence": ["/tmp/hi-217-local-proof/pruning-research/T12-result.md"],
"review_mode": "cli",
"runtime_validation": "required",
"runtime_evidence": "Record command, exit, relevant input hash, observable retained behavior and elapsed time in the task handoff; do not claim hosted CI.",
"runtime_cleanup": "Use task-prefixed temp roots/database names; clean only owned resources. No global docker prune or shared cache deletion.",
"relevant_input_set": "Before/after git diff plus SHA-256 of declared source/config inputs; record tool versions and CPU affinity. Final selectors invalidate earlier task proof only if relevant inputs changed.",
"shared_runtime_resources": "Existing dependencies; private fixture roots; each test process bound to two logical CPUs. Shared host load means correctness timings, not hosted forecasts.",
"architecture_wave": "A4",
"temporary_seams": "none",
"id": "T12",
"depends_on": ["T11b", "T11d"],
"location": [
"docs/README.md",
"docs/runbooks/ci-verification-and-publication.md",
"apps/wiki/content/docs/project/runbooks/ci-verification-and-publication.md"
],
"owned_paths": [
"docs/README.md",
"docs/runbooks/ci-verification-and-publication.md",
"apps/wiki/content/docs/project/runbooks/ci-verification-and-publication.md"
],
"read_dependencies": [
"SPEC.md",
"TEST-PORTFOLIO.md",
"issue-217-residual-test-pruning-research-report.md"
],
"wave_boundary": "W4 disjoint test-only writes; no install/build/manifests/provider writes.",
"description": "Reconcile canonical operator docs and projection after residual pruning: describe representative public planning versus materialization proof without universal coverage claims, link residual research and remove stale current macOS observation claim in README. Keep historical evidence labelled; no product policy change.",
"validation": "Owning docs/wiki content and projection check, scoped formatting, diff check",
"assigned_skills": ["docs-ingest-phase", "simplify"],
"implementation_skill_guidance": [
{
"skill": "docs-ingest-phase",
"guidance": "Keep implemented operations in canonical docs and synchronize only their owned wiki projections."
},
{
"skill": "simplify",
"guidance": "Use existing owning seams, remove duplicate setup, and introduce no production export solely for tests."
}
],
"tdd_status": "not_applicable",
"tdd_target": "Retained owned behavior after test-only pruning",
"red_command": "not_applicable: test-only transformation",
"expected_red_failure": "not_applicable",
"green_command": "Owning focused tests, lint/type/format, git diff --check",
"reason_not_testable": "Documentation-only operational reconciliation; content/projection/format checks replace runtime tests.",
"codebase_design_notes": "Owned interface: runUpdate/dependencyProcess and completeLocalQualitySetup. Preserve behavior at this seam; no private helper exposure or cross-owner policy migration.",
"runtime_target": "Operator runbook and projection",
"behavior_owner": "docs",
"integration_surface": "Existing scaffold planning/reconciliation public interfaces",
"public_seam": "Operator commands and recorded validation evidence",
"topology_delta": "None; routine selector coverage remains complete",
"forbidden_ownership": "No files outside owned_paths; parent owns docs and task state; no builds/installs/commits/pushes.",
"responsibility_acceptance_criteria": ["RAC-6"]
}W4/W5 completion: T11a–T11h and T12 gates pass. Twenty-five additional cases and repeated candidate/updater/scaffold/Turbo work were removed; eight policy inputs moved to real public planning. Three prepare-receipt journeys and the empty-route updater traversal remain because no equivalent cheaper public proof was established. These are explicit fallback dispositions, not pending work. Final primary/challenger review is retained and clean; parent owns the authorized draft PR closeout.
Final review authority: second retained report. Both reviewers are clean. Administrative closeout prose does not change the reviewed code.