governance: adopt TDD with full unit/integration tests; update system prompt and AGENTS templates\n\nplan: add TDD milestones and test coverage criteria; update proposal accordingly

This commit is contained in:
2025-09-17 10:26:02 -05:00
parent 3859459754
commit de8ce1a4dc
11 changed files with 77 additions and 46 deletions

View File

@@ -2,15 +2,16 @@
- Scope: Phase 1 (Crawl) MVP for `CodexHelper` with subcommands, scaffolding, prompt composition, config precedence, and safety.
- Milestones:
1) CLI skeleton + guardrails
2) Binary detection + pass-through flags
3) new-mode scaffolder (repo-only)
4) new-project scaffolder (outside repo)
5) run: compose prompts + invoke codex
6) Config precedence (YAML+yq)
7) Templates + copies (AGENTS.md, prompts/_mode)
8) Docs: README quickstart + wrapper usage
- Milestones (TDD for each step):
0) Test harness setup (bats-core), tests/ structure, CI script (local)
1) CLI skeleton + guardrails (write failing tests first)
2) Binary detection + pass-through flags (tests first)
3) new-mode scaffolder (repo-only) (tests first)
4) new-project scaffolder (outside repo) (tests first)
5) run: compose prompts + invoke codex (tests first)
6) Config precedence (YAML+yq) (tests first)
7) Templates + copies (AGENTS.md, prompts/_mode) (tests first)
8) Docs: README quickstart + wrapper usage (ensure examples validated by tests where feasible)
- Key rules honored:
- One-way workflow; minimal chat; read `.llm.md`, write both.
@@ -23,6 +24,7 @@
- `templates/project/_shared/AGENTS.md` (copy into project root)
- `templates/project/<ModeName>/...` (optional mode-specific add-ons; start minimal)
- `docs/wrapper.md` and README updates
- Test harness (`bats`), `tests/` with coverage of all CLI paths
- Implementation details:
- Guard where running: inside repo → only `new-mode` allowed.
@@ -38,11 +40,12 @@
- `run` composes prompts and calls detected binary; artifacts under `runs/<ts>/`.
- Precedence: CLI > env > project > mode > global.
- `prompts/global/` used in composition.
- Tests: all features covered by unit/integration tests (bats); TDD observed (tests committed alongside implementation); CI/local test script present.
- Open choices (defaulting now):
- Include empty `prompts/style.md`: Yes.
- Config format: YAML only; tool: yq.
- Project `.gitignore`: include `runs/` and any `*.llm.*` if user prefers later (for now, only `runs/`).
- Test framework: bats-core for bash; simple runner `scripts/test.sh`.
- Next: Implement per milestones; add concise README quickstart.