Requirements: 6 requirement areas covering single build path, unit/ backend/integration test migration, binary discovery, and doc consistency. Design: 6 rounds of independent adversarial review to convergence (2 real technical bugs caught -- unresolved Meson placeholder tokens in CGO flags, invalid unquoted dict-literal keys -- plus a long tail of stale Makefile references across docs/scripts/ source comments, closed by a scope-rule restructure rather than continued line-by-line patching). Tasks: 4 major / 12 sub-tasks, task-graph sanity review passed after one repair round. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XYdtrEWWZfKRRGED7raEYg
26 lines
3.9 KiB
JSON
26 lines
3.9 KiB
JSON
{
|
|
"feature_name": "eliminate-frontend-makefile",
|
|
"created_at": "2026-08-27T00:00:00Z",
|
|
"updated_at": "2026-09-03T13:01:25Z",
|
|
"language": "en",
|
|
"phase": "tasks-generated",
|
|
"description": "Remove src/frontend/Makefile entirely, consolidating Go builds (apiserver, xcecli) and their tests onto Meson's tools/go_build wrapper. Closes a real, already-realized duplicate version-fingerprint-computation risk (roadmap.md backlog item, recorded 2026-08-21). Path C single-scope investigation via /kiro-discovery, 2026-08-27.",
|
|
"approvals": {
|
|
"requirements": {
|
|
"generated": true,
|
|
"approved": true
|
|
},
|
|
"design": {
|
|
"generated": true,
|
|
"approved": true,
|
|
"validation_note": "6 review rounds (1 self-review + 5 independent adversarial subagent reviews, 2026-09-03), run to convergence per explicit user goal ('fix issues found and review again until no new issue found'). Round 6 came back clean (GO, zero new issues) after a category sweep of Python/Nix/YAML/JSON/Cap'n Proto/every other meson.build/remaining skill scripts, a semantic pass beyond literal-keyword grep, and a full cross-artifact consistency check -- self-approved on that basis. Findings across rounds 1-5, all fixed in design.md/research.md: (1) CRITICAL -- the new apiserver-backend Meson test() target's CGO flags contained unresolved @CURRENT_SOURCE_DIR@/@BUILD_ROOT@ placeholder tokens that tools/go_build normally resolves via sed, bypassed entirely by this new test; fixed via Meson's own .replace() at configure time. (2) CRITICAL -- a follow-up fix itself used invalid unquoted Meson dict-literal keys in the test()'s env: argument; fixed to quoted string keys (verified live against a real `meson setup` run). (3) A long tail of live documentation/comment references to the deleted Makefile's targets or fixed paths, discovered by switching file CATEGORY each round rather than re-reading known files (steering docs -> skill docs/scripts -> C testsuite comments -> Go source comments -> root CLAUDE.md): tech.md, testing.md, structure.md, build-deployment.md, frontend/CLAUDE.md, src/docs/deployment.md, xce-deploy-ha/SKILL.md, xce-test-resources/SKILL.md, src/frontend/docs/status.md, src/docs/apiserver-backend-tasks.md (11 doc files total), deploy-ha.sh, run-resource-verify.sh, tests/regression/run.sh (3 scripts), test_ha_bootstrap.c/test_ha_ctrlhello.c (2 C testsuite files), apiserver/xcecli cmd/main.go (2 Go source files), and root CLAUDE.md's Key Files entry. In response to the recurring pattern, the File Structure Plan's doc/script entries were restructured around an explicit SCOPE RULE ('every live reference in this file', not a closed line-number list) and the Testing Strategy's live-reference sweep now runs per-file before Makefile deletion (not only repo-wide after) with named exclusion classes (historical .kiro/specs docs, vendored third-party files, dated historical records, OpenWolf's own logs, one deliberately-retained inert placeholder default)."
|
|
},
|
|
"tasks": {
|
|
"generated": true,
|
|
"approved": true,
|
|
"validation_note": "kiro-spec-tasks 2026-09-03: 4 major tasks / 12 sub-tasks drafted covering all 18 acceptance criteria (1.1-6.3) and every design.md File Structure Plan entry (11 doc files, 4 scripts, 2 C testsuite files, 2 Go source files, 1 meson.build). Task-graph sanity review (fresh subagent, pass 1): NEEDS_FIXES -- task 4.2's completion criteria didn't explicitly re-verify design.md's Testing Strategy 'Discovery-path regression' item after the Makefile is actually deleted, only before. Fixed. Sanity review pass 2 (fresh subagent): PASS -- fix confirmed adequate, no other issues; noted some Phase-3 (P) tasks carry a slightly over-conservative _Depends: 1.1, 2_ (not strictly required by file-locality alone) but this is faithful to design.md's own stated phase gating, not a correctness bug. Auto-approved per -y flag."
|
|
}
|
|
},
|
|
"ready_for_implementation": false,
|
|
"blocked_on": []
|
|
}
|