feat(RMGR-WP-0001): complete T05 end-to-end vertical slice
Implement observe/reconcile/update-task-status CLI path: workplan parse, JSON projection index, git-backed task status writeback with correlation events, and E2E pytest plus evidence artifacts. Finish foundation workplan.
This commit is contained in:
parent
3cc67a9bd0
commit
8b5634ff2a
15 changed files with 873 additions and 20 deletions
41
docs/evidence/t05-vertical-slice.md
Normal file
41
docs/evidence/t05-vertical-slice.md
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
# RMGR-WP-0001-T05 — vertical slice proof
|
||||
|
||||
**Date:** 2026-08-09
|
||||
**Contract:** `helixforge.repo-manager` 0.1 (subset implemented)
|
||||
|
||||
## Slice steps
|
||||
|
||||
| # | Requirement | Implementation | Proof |
|
||||
| --- | --- | --- | --- |
|
||||
| 1 | Represent a repository | `rmgr observe` / `observe_repository` | Snapshot JSON with slug, classification, revision |
|
||||
| 2 | Index declared work | `rmgr reconcile` → `.repo-manager/index.json` | workplan + task records from `workplans/` |
|
||||
| 3 | Emit normalized change | events on index: `repo.command.applied`, `repo.work.indexed` | event log with `correlation_id` |
|
||||
| 4 | File-backed transition | `rmgr update-task-status` | task `status:` patched in workplan file |
|
||||
| 5 | Git evidence | `gitops.commit_paths` | `evidence.git_sha` required; commit message includes correlation_id |
|
||||
| 6 | Rebuilt projection | re-observe after command | task status + head_sha match evidence |
|
||||
|
||||
## Automated proof
|
||||
|
||||
```bash
|
||||
cd ~/repo-manager && pytest tests/test_e2e_vertical_slice.py -q
|
||||
```
|
||||
|
||||
## Live CLI proof
|
||||
|
||||
Artifacts:
|
||||
|
||||
- `docs/evidence/t05-e2e-proof.json`
|
||||
- `docs/evidence/t05-command-result.json`
|
||||
|
||||
## Hub-core note
|
||||
|
||||
Events are written to the local index event log in contract-shaped JSON. HTTP
|
||||
delivery to hub-core `port.events` is dual-run work (extraction P3 / hub-core
|
||||
ports), not required to prove Git authority + projection rebuild.
|
||||
|
||||
## Limits of this slice (honest)
|
||||
|
||||
- Projection store is **local JSON**, not Postgres yet (ADR-001 production DB still planned).
|
||||
- No FastAPI server in this slice; CLI implements the same commands.
|
||||
- Authz is not enforced (dev path); production requires policy port.
|
||||
- Single command type implemented: `repo.work.update_task_status`.
|
||||
Loading…
Add table
Add a link
Reference in a new issue