feat(P03): multi-project support, NFR milestone versioning, phase context reset, install scripts (v0.3.0)
This commit is contained in:
@@ -76,6 +76,34 @@ interface ParsedCiCommit {
|
||||
|
||||
Commits without `---ci---` blocks have `ci: null` — these are treated as non-CI commits (e.g., manual edits by the developer).
|
||||
|
||||
## Phase Context Reset
|
||||
|
||||
Between phases, all state is committed to git, then the next phase starts with fresh context from git log — not accumulated conversation history.
|
||||
|
||||
**On opencode (subagent support):** spawn a fresh agent for the next phase. The new agent loads context from git log and `.ci/` files only.
|
||||
|
||||
**On platforms without subagents:** simulated reset — re-read git context from scratch, ignore prior conversation history. Treat the phase boundary as a hard context boundary.
|
||||
|
||||
**Checkpoint sequence:**
|
||||
1. Commit all work from the current phase
|
||||
2. Update `.ci/` files (ROADMAP.md phase status, REQUIREMENTS.md requirement statuses)
|
||||
3. Verify `GitContext.reconstructState()` matches expected state
|
||||
4. Reset context — next phase begins fresh
|
||||
|
||||
The phase context reset ensures that each phase operates on verified git state, preventing context drift across long-running projects.
|
||||
|
||||
## Multi-Project Context
|
||||
|
||||
GitContext supports multi-project mode with optional project scoping:
|
||||
|
||||
| Method | Returns | Purpose |
|
||||
|--------|---------|---------|
|
||||
| `GitContext(projectPath, projectSlug?)` | GitContext | Optional project slug for scoping |
|
||||
| `detectProjectFromCommit()` | string \| null | Detect project from latest commit's `project` field |
|
||||
| `isNfrMilestone()` | boolean | Check if current milestone is NFR-only (no feat phases) |
|
||||
|
||||
In multi-project mode, `detectProjectFromCommit()` reads the `project` field from the latest `---ci---` block to determine which project context to load. `isNfrMilestone()` inspects phase commit types to determine versioning behavior.
|
||||
|
||||
## Context Budget Strategy
|
||||
|
||||
When context is limited:
|
||||
|
||||
Reference in New Issue
Block a user