5-phase-workflow 3.0.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -101
- package/bin/install.js +168 -176
- package/bin/sync-agents.js +59 -54
- package/docs/workflow-guide.md +35 -79
- package/package.json +2 -2
- package/src/agents/step-executor-agent.md +5 -4
- package/src/agents/step-orchestrator-agent.md +12 -12
- package/src/agents/verification-agent.md +7 -8
- package/src/codex-commands/plan.md +65 -0
- package/src/commands/5/address-review-findings.md +43 -52
- package/src/commands/5/analyze-feature.md +1 -1
- package/src/commands/5/configure.md +75 -179
- package/src/commands/5/eject.md +0 -1
- package/src/commands/5/implement.md +78 -68
- package/src/commands/5/lean-check.md +75 -0
- package/src/commands/5/reconfigure.md +48 -129
- package/src/commands/5/review.md +42 -14
- package/src/commands/5/synchronize-agents.md +1 -1
- package/src/commands/5/update.md +2 -2
- package/src/hooks/dependency-guard.js +150 -0
- package/src/hooks/statusline.js +5 -3
- package/src/references/configure-tables.md +0 -33
- package/src/settings.json +3 -4
- package/src/skills/baseline-conventions/SKILL.md +37 -0
- package/src/skills/cognitive-load/SKILL.md +52 -0
- package/src/skills/configure-agents-md/SKILL.md +72 -0
- package/src/skills/configure-rules/SKILL.md +146 -0
- package/src/skills/documentation-style/SKILL.md +32 -0
- package/src/skills/fowler-code-smells/SKILL.md +25 -0
- package/src/skills/review-style/SKILL.md +142 -0
- package/src/templates/AGENTS.md +31 -31
- package/src/templates/workflow/REVIEW-FINDINGS.md +2 -9
- package/src/workflows/5-implement.js +67 -92
- package/docs/findings.md +0 -361
- package/docs/progress.md +0 -102
- package/src/commands/5/apply-review-findings.md +0 -66
- package/src/commands/5/commit.md +0 -43
- package/src/commands/5/plan.md +0 -189
- package/src/commands/5/reply-pr-comments.md +0 -48
- package/src/commands/5/split.md +0 -86
- package/src/commands/5/triage-pr-comments.md +0 -70
- package/src/hooks/config-guard.js +0 -30
- package/src/skills/configure-docs-index/SKILL.md +0 -243
- package/src/skills/configure-skills/SKILL.md +0 -311
- package/src/skills/generate-readme/EXAMPLES.md +0 -168
- package/src/skills/generate-readme/SKILL.md +0 -122
- package/src/skills/generate-readme/TEMPLATE.md +0 -141
- package/src/skills/use-index/SKILL.md +0 -49
- package/src/templates/ARCHITECTURE.md +0 -33
- package/src/templates/CONCERNS.md +0 -33
- package/src/templates/CONVENTIONS.md +0 -74
- package/src/templates/TESTING.md +0 -24
- package/src/templates/workflow/FIX-PLAN.md +0 -55
- package/src/templates/workflow/PLAN-COMPACT.md +0 -42
- package/src/templates/workflow/PLAN.md +0 -76
- package/src/templates/workflow/REVIEW-SUMMARY.md +0 -53
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
# Module README Template
|
|
2
|
-
|
|
3
|
-
Use this template structure for all module READMEs. Keep them concise and focused.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# [Module Name]
|
|
8
|
-
|
|
9
|
-
## Purpose
|
|
10
|
-
|
|
11
|
-
[1-3 sentences describing what this module does and its role in the system]
|
|
12
|
-
|
|
13
|
-
Example: "This module contains the core Mission domain model, including the Mission aggregate root, Order, UnitOrder,
|
|
14
|
-
and related entities. It provides the MissionFactory for creating and modifying missions according to business rules."
|
|
15
|
-
|
|
16
|
-
## Key Components
|
|
17
|
-
|
|
18
|
-
[List only the 3-5 most important components - not exhaustive]
|
|
19
|
-
|
|
20
|
-
- `EntityName` - Brief description of key entity
|
|
21
|
-
- `EntityFactory` - Key factory operations (create, addX, updateY)
|
|
22
|
-
- `EntityRepository` - Repository interface with implementations
|
|
23
|
-
- Package references for groups: "Validators in `validation/` package"
|
|
24
|
-
|
|
25
|
-
**Guidelines:**
|
|
26
|
-
|
|
27
|
-
- **DO NOT** list every file
|
|
28
|
-
- **DO** use package references for groups of related files
|
|
29
|
-
- **DO** focus on what developers will use most frequently
|
|
30
|
-
- **DO** mention main interfaces/abstractions, not every implementation
|
|
31
|
-
|
|
32
|
-
## Testing
|
|
33
|
-
|
|
34
|
-
[Brief description of test fixtures and key testing patterns]
|
|
35
|
-
|
|
36
|
-
**Only include this section if:**
|
|
37
|
-
|
|
38
|
-
- Module has test fixtures in `src/testFixtures/`
|
|
39
|
-
- Module has a separate `-testing` sibling
|
|
40
|
-
- Testing approach is non-standard or important to document
|
|
41
|
-
|
|
42
|
-
Example:
|
|
43
|
-
|
|
44
|
-
```java
|
|
45
|
-
// Simple example
|
|
46
|
-
var entity = entityTestFixture.create();
|
|
47
|
-
|
|
48
|
-
// Customized example
|
|
49
|
-
var entity = entityTestFixture.createBuilder()
|
|
50
|
-
.withProperty(value)
|
|
51
|
-
.build();
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
---
|
|
55
|
-
|
|
56
|
-
## Optional Sections
|
|
57
|
-
|
|
58
|
-
Include these sections only if they add significant value:
|
|
59
|
-
|
|
60
|
-
### Critical Patterns
|
|
61
|
-
|
|
62
|
-
[List only 3-5 most important patterns specific to this module]
|
|
63
|
-
|
|
64
|
-
Focus on patterns that:
|
|
65
|
-
|
|
66
|
-
- Will break things if not followed
|
|
67
|
-
- Are non-obvious
|
|
68
|
-
- Are critical to understanding the module
|
|
69
|
-
|
|
70
|
-
Examples:
|
|
71
|
-
|
|
72
|
-
1. **Always use MissionFactory** - Never manually create Mission/Order/UnitOrder connections
|
|
73
|
-
2. **Factory manages state** - Offsets, aliases, and IDs are calculated automatically
|
|
74
|
-
3. **Result objects** - Factory operations return result objects with both created entity and updated aggregate
|
|
75
|
-
|
|
76
|
-
**DO NOT include:**
|
|
77
|
-
|
|
78
|
-
- General patterns covered in AGENTS.md
|
|
79
|
-
- Obvious patterns like "use builders for construction"
|
|
80
|
-
- Implementation details
|
|
81
|
-
|
|
82
|
-
### Dependencies
|
|
83
|
-
|
|
84
|
-
**Only include if:**
|
|
85
|
-
|
|
86
|
-
- Dependencies are non-obvious
|
|
87
|
-
- There are critical ordering or version requirements
|
|
88
|
-
- External systems are involved
|
|
89
|
-
|
|
90
|
-
**Depends on:** [Brief list of key dependencies]
|
|
91
|
-
|
|
92
|
-
**Used by:** [Brief list of main consumers]
|
|
93
|
-
|
|
94
|
-
### Related Documentation
|
|
95
|
-
|
|
96
|
-
**Don't include:**
|
|
97
|
-
|
|
98
|
-
- Links to AGENTS.md sections relevant to this module
|
|
99
|
-
- Don't repeat things and patterns already documented in AGENTS.md
|
|
100
|
-
|
|
101
|
-
**Include for:**
|
|
102
|
-
|
|
103
|
-
- Parent or sibling module READMEs
|
|
104
|
-
- External documentation
|
|
105
|
-
- [Related module READMEs](../path/README.md)
|
|
106
|
-
|
|
107
|
-
---
|
|
108
|
-
|
|
109
|
-
## Anti-Patterns in READMEs
|
|
110
|
-
|
|
111
|
-
**DO NOT:**
|
|
112
|
-
|
|
113
|
-
1. List every validator, query, or handler class individually
|
|
114
|
-
2. Document implementation details
|
|
115
|
-
3. Copy content from AGENTS.md
|
|
116
|
-
4. Include exhaustive method signatures
|
|
117
|
-
5. Create walls of text
|
|
118
|
-
6. Document every package
|
|
119
|
-
7. Include obvious information
|
|
120
|
-
|
|
121
|
-
**DO:**
|
|
122
|
-
|
|
123
|
-
1. Focus on top-level overview
|
|
124
|
-
2. List 3-5 key components only
|
|
125
|
-
3. Reference AGENTS.md for patterns
|
|
126
|
-
4. Keep it under 100 lines
|
|
127
|
-
5. Use examples sparingly
|
|
128
|
-
6. Use package references for groups
|
|
129
|
-
7. Document only critical information
|
|
130
|
-
|
|
131
|
-
---
|
|
132
|
-
|
|
133
|
-
## Example README Lengths
|
|
134
|
-
|
|
135
|
-
- **ID module**: 10-30 lines (very simple)
|
|
136
|
-
- **Model module**: 20-80 lines
|
|
137
|
-
- **Handler module**: 20-80 lines
|
|
138
|
-
- **Service module**: 20-80 lines
|
|
139
|
-
- **Testing module**: 20-60 lines
|
|
140
|
-
|
|
141
|
-
If your README exceeds 150 lines, it's too detailed.
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: use-index
|
|
3
|
-
description: Navigate the .5/index/ codebase index to quickly identify target files and understand project structure. Use before running broad Glob/Grep scans when you need to find where a feature lives, where new code should go, which routes exist, or what the data model looks like.
|
|
4
|
-
allowed-tools: Read, Bash
|
|
5
|
-
user-invocable: false
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Use Index
|
|
9
|
-
|
|
10
|
-
Use `.5/index/` to orient in the codebase quickly before resorting to broad file scans.
|
|
11
|
-
|
|
12
|
-
## Step 1: Check existence
|
|
13
|
-
|
|
14
|
-
```bash
|
|
15
|
-
ls .5/index/ 2>/dev/null
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
If the directory is missing or empty, inform the user they can run `/5:reconfigure` to generate it, then fall back to Glob/Grep.
|
|
19
|
-
|
|
20
|
-
## Step 2: Read the manifest
|
|
21
|
-
|
|
22
|
-
Read `.5/index/README.md`. It lists every generated index file, its purpose, and the generation timestamp.
|
|
23
|
-
|
|
24
|
-
## Step 3: Check freshness
|
|
25
|
-
|
|
26
|
-
Look for the `Generated:` timestamp in README.md.
|
|
27
|
-
|
|
28
|
-
- **Fresh (≤ 1 day):** proceed with the index.
|
|
29
|
-
- **Stale (> 1 day):** run `.5/index/rebuild-index.sh` to rebuild it, then proceed with the refreshed index.
|
|
30
|
-
|
|
31
|
-
## Step 4: Read only the relevant file(s)
|
|
32
|
-
|
|
33
|
-
Pick the file that matches the task. Skip unrelated ones.
|
|
34
|
-
|
|
35
|
-
| Task | File |
|
|
36
|
-
|------|------|
|
|
37
|
-
| Where does new code go / what modules exist? | `modules.md` |
|
|
38
|
-
| API surface, HTTP routes, or handlers | `routes.md` |
|
|
39
|
-
| Data models, schemas, or migrations | `models.md` |
|
|
40
|
-
| Shared helpers, utilities, or exported functions | `libraries.md` |
|
|
41
|
-
| Build, run, test, or dev-workflow commands | `commands.md` |
|
|
42
|
-
|
|
43
|
-
## Step 5: Interpret entries
|
|
44
|
-
|
|
45
|
-
Each file has compact entries — path plus a short descriptor (HTTP method, exported name, key field, etc.). Use them to identify target files directly. Do not read the full index file if a handful of entries answer the question.
|
|
46
|
-
|
|
47
|
-
## Step 6: Fall back gracefully
|
|
48
|
-
|
|
49
|
-
If a file is too sparse or an area is missing from the index, note the gap and fall back to a targeted Grep/Glob for that area only. Do not re-scan sections already covered by a fresh index entry.
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
# Architecture
|
|
2
|
-
|
|
3
|
-
## Pattern
|
|
4
|
-
|
|
5
|
-
**Overall:** {Pattern name — e.g., Layered, MVC, Modular Monolith}
|
|
6
|
-
|
|
7
|
-
{1-2 sentences explaining the architectural approach and key design decisions}
|
|
8
|
-
|
|
9
|
-
## Layers & Data Flow
|
|
10
|
-
|
|
11
|
-
| Layer | Location | Depends On | Notes | Skills |
|
|
12
|
-
|-------|----------|------------|-------|--------|
|
|
13
|
-
| {Layer} | `{path}` | {Dependencies} | {Key responsibility or constraint} | {skill links} |
|
|
14
|
-
|
|
15
|
-
## Key Abstractions
|
|
16
|
-
|
|
17
|
-
**{Abstraction Name}:**
|
|
18
|
-
- Purpose: {What it represents}
|
|
19
|
-
- Pattern: {How it's used across the codebase}
|
|
20
|
-
- Examples: `{file paths}`
|
|
21
|
-
|
|
22
|
-
## Non-Obvious Conventions
|
|
23
|
-
|
|
24
|
-
{ONLY conventions not enforced by tooling or visible in config files. Skip anything in .eslintrc, .prettierrc, tsconfig, etc.}
|
|
25
|
-
|
|
26
|
-
- {e.g., "All services must extend BaseService for lifecycle hooks"}
|
|
27
|
-
- {e.g., "Barrel exports required in each module directory"}
|
|
28
|
-
|
|
29
|
-
## Where to Add New Code
|
|
30
|
-
|
|
31
|
-
- New feature: `{path}`
|
|
32
|
-
- New tests: `{path}`
|
|
33
|
-
- Shared utilities: `{path}`
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
# Concerns
|
|
2
|
-
|
|
3
|
-
## Tech Debt
|
|
4
|
-
|
|
5
|
-
**{Area/Component}:**
|
|
6
|
-
- Issue: {What's the shortcut/workaround}
|
|
7
|
-
- Files: `{file paths}`
|
|
8
|
-
- Impact: {What breaks or degrades}
|
|
9
|
-
|
|
10
|
-
## Known Issues
|
|
11
|
-
|
|
12
|
-
**{Issue description}:**
|
|
13
|
-
- Symptoms: {What happens}
|
|
14
|
-
- Files: `{file paths}`
|
|
15
|
-
- Trigger/Workaround: {How to reproduce, how to avoid}
|
|
16
|
-
|
|
17
|
-
## Security Notes
|
|
18
|
-
|
|
19
|
-
**{Area}:**
|
|
20
|
-
- Risk: {What could go wrong}
|
|
21
|
-
- Current mitigation: {What's in place}
|
|
22
|
-
|
|
23
|
-
## Integration Notes
|
|
24
|
-
|
|
25
|
-
**{Service/System}:**
|
|
26
|
-
- {Non-obvious details: auth flows, required env vars, webhook contracts, gotchas with external services}
|
|
27
|
-
|
|
28
|
-
## Performance Notes
|
|
29
|
-
|
|
30
|
-
**{Slow operation or scaling limit}:**
|
|
31
|
-
- Problem: {What's slow or where it breaks}
|
|
32
|
-
- Files: `{file paths}`
|
|
33
|
-
- Improvement path: {How to address}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
# Code Conventions
|
|
2
|
-
|
|
3
|
-
{PROJECT_CONVENTIONS_SUMMARY}
|
|
4
|
-
|
|
5
|
-
## Typing
|
|
6
|
-
|
|
7
|
-
- Never use implicit `any` types; if unavoidable, add a `// reason:` comment explaining why.
|
|
8
|
-
- Enable strict null checks: treat `null` and `undefined` as distinct types.
|
|
9
|
-
- Avoid non-null assertions (`!`) without an explanatory comment.
|
|
10
|
-
- Prefer explicit return types on all public functions and methods.
|
|
11
|
-
- Use typed/domain types for IDs, money, dates, and other value objects; avoid raw primitives.
|
|
12
|
-
|
|
13
|
-
{PROJECT_TYPING}
|
|
14
|
-
|
|
15
|
-
## Code Structure
|
|
16
|
-
|
|
17
|
-
- Maximum function or method body: 40 lines of logic.
|
|
18
|
-
- Maximum file length: 300 lines (excluding generated or vendor code).
|
|
19
|
-
- One primary responsibility per file, class, or module — split when in doubt.
|
|
20
|
-
- No more than three levels of nesting; use early returns to flatten control flow.
|
|
21
|
-
- Extract helpers when logic mixes orchestration, IO, parsing, and mapping in one place.
|
|
22
|
-
|
|
23
|
-
{PROJECT_STRUCTURE}
|
|
24
|
-
|
|
25
|
-
## Naming
|
|
26
|
-
|
|
27
|
-
- Names must express intent; avoid abbreviations (exceptions: `i`, `j`, `err`, `ctx`, `req`, `res`).
|
|
28
|
-
- No magic numbers or strings: extract to named constants with descriptive names.
|
|
29
|
-
- Booleans: prefix with `is`, `has`, `can`, `should`, or `needs`.
|
|
30
|
-
- Collections and arrays: plural noun names (`users`, `errors`, `pendingItems`).
|
|
31
|
-
- Functions and methods: verb phrases that describe the action (`fetchUser`, `validateEmail`, `parseResponse`).
|
|
32
|
-
|
|
33
|
-
{PROJECT_NAMING}
|
|
34
|
-
|
|
35
|
-
## Error Handling
|
|
36
|
-
|
|
37
|
-
- Never silently swallow exceptions or errors — always log, rethrow, or convert to a typed result.
|
|
38
|
-
- Distinguish recoverable errors from unrecoverable ones; do not use exceptions for control flow.
|
|
39
|
-
- All async code must handle error paths: catch rejected promises and wrap `async/await` in `try/catch`.
|
|
40
|
-
- Use typed/structured errors with context, not raw strings.
|
|
41
|
-
|
|
42
|
-
{PROJECT_ERROR_HANDLING}
|
|
43
|
-
|
|
44
|
-
## Testing
|
|
45
|
-
|
|
46
|
-
- Follow AAA structure in each test: **Arrange** (set up state), **Act** (call the subject), **Assert** (verify the outcome).
|
|
47
|
-
- One behavior per test — a single test function must cover exactly one scenario.
|
|
48
|
-
- Test names describe the behavior being tested, not the method: `"returns 404 when user not found"`, not `"test getUserById"`.
|
|
49
|
-
- Assert on meaningful, observable outcomes. Forbidden:
|
|
50
|
-
- `expect(result).toBeDefined()` as the only assertion
|
|
51
|
-
- `expect(true).toBe(true)` or any trivially-passing assertion
|
|
52
|
-
- Empty or body-less tests
|
|
53
|
-
- Mock only at system boundaries: external HTTP, databases, filesystem, and clocks.
|
|
54
|
-
- Never mock internal modules or pure functions — test them directly.
|
|
55
|
-
- Cover all paths: happy path, known error cases, boundary values, and null/empty inputs.
|
|
56
|
-
- No disabled tests (`skip`, `xtest`, `xit`, `@Ignore`) without a linked issue comment.
|
|
57
|
-
- New code must reach ≥ 80% branch coverage; bug fixes must include a regression test.
|
|
58
|
-
- Use factories or builders for test data; avoid inline hardcoded objects duplicated across tests.
|
|
59
|
-
|
|
60
|
-
{PROJECT_TESTING}
|
|
61
|
-
|
|
62
|
-
## Comments and Documentation
|
|
63
|
-
|
|
64
|
-
- Comment the **why**, not the what; well-named code should be self-documenting.
|
|
65
|
-
- Forbidden: comments that restate the code (`// increment counter`, `// call save()`).
|
|
66
|
-
- Document: non-obvious invariants, workarounds, performance trade-offs, and cross-system constraints.
|
|
67
|
-
- All public APIs (functions, classes, interfaces, endpoints) require a docstring or docblock.
|
|
68
|
-
- Never leave commented-out code; use version control history instead.
|
|
69
|
-
|
|
70
|
-
{PROJECT_COMMENTS}
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
*Project-specific conventions above were derived from codebase analysis and supplement the defaults.*
|
package/src/templates/TESTING.md
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
# Testing Patterns
|
|
2
|
-
|
|
3
|
-
## Organization
|
|
4
|
-
|
|
5
|
-
{Co-located with source or separate directory? Naming pattern for test files?}
|
|
6
|
-
|
|
7
|
-
## Patterns
|
|
8
|
-
|
|
9
|
-
{Project-specific test structure — describe how tests are organized within a file, setup/teardown conventions}
|
|
10
|
-
|
|
11
|
-
## Mocking
|
|
12
|
-
|
|
13
|
-
**Approach:**
|
|
14
|
-
- {Mocking framework/tool used}
|
|
15
|
-
|
|
16
|
-
**What to mock:**
|
|
17
|
-
- {Guidelines — e.g., external APIs, database calls}
|
|
18
|
-
|
|
19
|
-
**What NOT to mock:**
|
|
20
|
-
- {Guidelines — e.g., pure business logic, utility functions}
|
|
21
|
-
|
|
22
|
-
## Gotchas
|
|
23
|
-
|
|
24
|
-
{Things that trip people up: setup/teardown quirks, env requirements, flaky areas, test-specific config}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
# Fix Plan: {TICKET-ID}
|
|
2
|
-
|
|
3
|
-
**Feature:** {feature-name}
|
|
4
|
-
**Generated:** {timestamp}
|
|
5
|
-
**Verification Status:** PARTIAL | FAILED
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Infrastructure Fixes
|
|
10
|
-
|
|
11
|
-
{If no infrastructure issues: "No infrastructure issues found."}
|
|
12
|
-
|
|
13
|
-
| # | File | Issue | Fix | Complexity |
|
|
14
|
-
|---|------|-------|-----|------------|
|
|
15
|
-
| 1 | {path} | {description} | {what to do} | simple / moderate / complex |
|
|
16
|
-
|
|
17
|
-
## Feature Gap Fixes
|
|
18
|
-
|
|
19
|
-
{If no feature gaps or Layer 2 was skipped: "No feature gaps found." or "Skipped — no plan.md available."}
|
|
20
|
-
|
|
21
|
-
| # | File | Issue | Fix | Complexity |
|
|
22
|
-
|---|------|-------|-----|------------|
|
|
23
|
-
| 1 | {path} | {criterion or requirement not met} | {what to change} | simple / moderate / complex |
|
|
24
|
-
|
|
25
|
-
## Quality Fixes
|
|
26
|
-
|
|
27
|
-
{If no quality issues: "No quality issues found."}
|
|
28
|
-
|
|
29
|
-
| # | File | Issue | Fix | Complexity |
|
|
30
|
-
|---|------|-------|-----|------------|
|
|
31
|
-
| 1 | {test-file-path} | No test file for {component} | Create test file | simple / moderate |
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## Summary
|
|
36
|
-
|
|
37
|
-
| Category | Count |
|
|
38
|
-
|----------|-------|
|
|
39
|
-
| Infrastructure | {N} |
|
|
40
|
-
| Feature Gaps | {N} |
|
|
41
|
-
| Quality | {N} |
|
|
42
|
-
| **Total** | **{N}** |
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## Results
|
|
47
|
-
|
|
48
|
-
{Populated after fixes are applied}
|
|
49
|
-
|
|
50
|
-
| # | File | Fix | Status |
|
|
51
|
-
|---|------|----|--------|
|
|
52
|
-
| 1 | {path} | {description} | APPLIED / FAILED |
|
|
53
|
-
|
|
54
|
-
**Build after fixes:** {status}
|
|
55
|
-
**Tests after fixes:** {status}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
ticket: {TICKET-ID}
|
|
3
|
-
feature: {feature-name}
|
|
4
|
-
created: {ISO-timestamp}
|
|
5
|
-
planFormat: compact
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
<!-- PLAN RULES:
|
|
9
|
-
- Use only for low-risk changes with 1-2 components.
|
|
10
|
-
- Write requirements and implementation intent, not code.
|
|
11
|
-
- Keep the Component Checklist human-readable. Do not add step/model/pattern/verify columns.
|
|
12
|
-
- Decisions must be labeled [DECIDED], [FLEXIBLE], or [DEFERRED].
|
|
13
|
-
-->
|
|
14
|
-
|
|
15
|
-
# Plan: {TICKET-ID} - {Title}
|
|
16
|
-
|
|
17
|
-
## Overview
|
|
18
|
-
|
|
19
|
-
{Short narrative describing the problem and desired outcome.}
|
|
20
|
-
|
|
21
|
-
## Scope
|
|
22
|
-
|
|
23
|
-
- In: {included work}
|
|
24
|
-
- Out: {excluded work}
|
|
25
|
-
|
|
26
|
-
## Acceptance Criteria
|
|
27
|
-
|
|
28
|
-
- [ ] {Observable success criterion}
|
|
29
|
-
|
|
30
|
-
## Decisions
|
|
31
|
-
|
|
32
|
-
- [DECIDED] {Decision and rationale}
|
|
33
|
-
|
|
34
|
-
## Existing Patterns to Follow
|
|
35
|
-
|
|
36
|
-
- `{path}` - {what pattern this provides}
|
|
37
|
-
|
|
38
|
-
## Component Checklist
|
|
39
|
-
|
|
40
|
-
| Component | Action | Target Path | Intent |
|
|
41
|
-
|-----------|--------|-------------|--------|
|
|
42
|
-
| {component-name} | modify | `{path}` | {one-sentence intent} |
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
ticket: {TICKET-ID}
|
|
3
|
-
feature: {feature-name}
|
|
4
|
-
created: {ISO-timestamp}
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
<!-- PLAN RULES:
|
|
8
|
-
- One planning artifact only: this file.
|
|
9
|
-
- Write requirements and implementation intent, not code.
|
|
10
|
-
- Keep the Component Checklist human-readable. Do not add step/model/pattern/verify columns; step-orchestrator-agent derives those into state.json.
|
|
11
|
-
- Existing Patterns to Follow should name high-value files and conventions so the orchestrator can wire executor prompts cheaply.
|
|
12
|
-
- Decisions must be labeled [DECIDED], [FLEXIBLE], or [DEFERRED].
|
|
13
|
-
- Omit optional sections when they would only contain "none", "n/a", or placeholder content.
|
|
14
|
-
-->
|
|
15
|
-
|
|
16
|
-
# Plan: {TICKET-ID} - {Title}
|
|
17
|
-
|
|
18
|
-
## Overview
|
|
19
|
-
|
|
20
|
-
{Short narrative describing the problem, desired outcome, and why this change is needed.}
|
|
21
|
-
|
|
22
|
-
## What Changes
|
|
23
|
-
|
|
24
|
-
- {Logical behavior or capability that changes}
|
|
25
|
-
- {User-visible or system-visible outcome}
|
|
26
|
-
|
|
27
|
-
## Existing Patterns to Follow
|
|
28
|
-
|
|
29
|
-
- `{path}` - {what pattern this provides}
|
|
30
|
-
- `{path}` - {what convention this establishes}
|
|
31
|
-
|
|
32
|
-
## Constraints
|
|
33
|
-
|
|
34
|
-
- {Technical, product, compatibility, performance, or rollout constraint}
|
|
35
|
-
|
|
36
|
-
## Scope
|
|
37
|
-
|
|
38
|
-
### In
|
|
39
|
-
|
|
40
|
-
- {Included work}
|
|
41
|
-
|
|
42
|
-
### Out
|
|
43
|
-
|
|
44
|
-
- {Explicitly excluded work}
|
|
45
|
-
|
|
46
|
-
## Acceptance Criteria
|
|
47
|
-
|
|
48
|
-
- [ ] {Observable success criterion}
|
|
49
|
-
- [ ] {Observable success criterion}
|
|
50
|
-
|
|
51
|
-
## Decisions
|
|
52
|
-
|
|
53
|
-
- [DECIDED] {Decision and rationale}
|
|
54
|
-
- [FLEXIBLE] {Area where implementation may choose the best local pattern}
|
|
55
|
-
- [DEFERRED] {Work intentionally not included}
|
|
56
|
-
|
|
57
|
-
## Module Impact
|
|
58
|
-
|
|
59
|
-
| Module/Area | Impact |
|
|
60
|
-
|-------------|--------|
|
|
61
|
-
| {module} | {create/modify/delete behavior at a high level} |
|
|
62
|
-
|
|
63
|
-
## Component Checklist
|
|
64
|
-
|
|
65
|
-
| Component | Action | Target Path | Intent |
|
|
66
|
-
|-----------|--------|-------------|--------|
|
|
67
|
-
| {component-name} | create | `{path}` | {one-sentence intent} |
|
|
68
|
-
| {component-name} | modify | `{path}` | {one-sentence intent} |
|
|
69
|
-
|
|
70
|
-
## Technical Notes
|
|
71
|
-
|
|
72
|
-
- {Important implementation context, invariants, or migration notes}
|
|
73
|
-
|
|
74
|
-
## Alternatives Considered
|
|
75
|
-
|
|
76
|
-
- {Alternative}: {why it was not chosen}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
# Code Review Summary
|
|
2
|
-
|
|
3
|
-
**Reviewed:** {scope}
|
|
4
|
-
**Timestamp:** {ISO-timestamp}
|
|
5
|
-
**User Decisions:** {summary of user choices}
|
|
6
|
-
|
|
7
|
-
## Summary
|
|
8
|
-
|
|
9
|
-
- **Total Issues:** {N}
|
|
10
|
-
- **Applied with User Approval:** {N}
|
|
11
|
-
- **User-Resolved Questions:** {N}
|
|
12
|
-
- **Manual Review Needed:** {N}
|
|
13
|
-
- **Skipped by User:** {N}
|
|
14
|
-
- **Deferred by User:** {N}
|
|
15
|
-
|
|
16
|
-
## Applied Fixes (User Approved)
|
|
17
|
-
|
|
18
|
-
- `{file-path}:{line}` - {description of fix}
|
|
19
|
-
- `{file-path}:{line}` - {description of fix}
|
|
20
|
-
|
|
21
|
-
## User-Resolved Questions
|
|
22
|
-
|
|
23
|
-
- `{file-path}:{line}` - {description} (user answered: {answer})
|
|
24
|
-
|
|
25
|
-
## Manual Review Needed
|
|
26
|
-
|
|
27
|
-
- `{file-path}:{line}` - {description}
|
|
28
|
-
|
|
29
|
-
## Skipped Issues
|
|
30
|
-
|
|
31
|
-
- `{file-path}:{line}` - User chose not to apply
|
|
32
|
-
|
|
33
|
-
## Deferred Issues
|
|
34
|
-
|
|
35
|
-
- `{file-path}:{line}` - User chose to wait
|
|
36
|
-
|
|
37
|
-
## Files Modified
|
|
38
|
-
|
|
39
|
-
- {file-path} ({N} fixes applied)
|
|
40
|
-
|
|
41
|
-
## PR Comment Replies
|
|
42
|
-
|
|
43
|
-
- **Posted:** {N}
|
|
44
|
-
- **Failed:** {N}
|
|
45
|
-
- **Skipped:** {N} - {reason}
|
|
46
|
-
- **Errors:** {none-or-summary}
|
|
47
|
-
|
|
48
|
-
## Post-Fix Verification
|
|
49
|
-
|
|
50
|
-
- **Build:** {passed/failed/skipped} - `{command-or-none}` - {one-line summary}
|
|
51
|
-
- **Tests:** {passed/failed/skipped} - `{command-or-none}` - {one-line summary}
|
|
52
|
-
- **E2E:** {passed/failed/skipped} - `{command-or-none}` - {one-line summary}
|
|
53
|
-
- **Lint:** {passed/failed/skipped} - `{command-or-none}` - {one-line summary}
|