devflow-kit 3.17.0 → 3.18.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/CHANGELOG.md +9 -0
- package/dist/commands/implement.md +2 -2
- package/dist/commands/plan.md +4 -3
- package/dist/compliance-off/commands/implement.md +2 -2
- package/dist/compliance-off/commands/plan.md +4 -3
- package/dist/curation-compliance-off/commands/implement.md +2 -2
- package/dist/curation-compliance-off/commands/plan.md +4 -3
- package/dist/curation-off/commands/implement.md +2 -2
- package/dist/curation-off/commands/plan.md +4 -3
- package/package.json +1 -1
- package/src/assets/commands/implement.mds +2 -2
- package/src/assets/commands/plan.mds +4 -3
- package/src/assets/skills/agent-references/references/synthesize/planning.md +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,14 @@ All notable changes to Devflow will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [3.18.0] - 2026-11-07
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **`/plan` adds a Size forecast line to the plan** ([#771](https://github.com/dean0x/devflow/issues/771)). The design artifact's Implementation Plan section ends with one plain line, `Size forecast: files a-b, added a-b, removed a-b, commits a-b`: whole-number ranges, a <= b, for the files the change writes, the added and removed diff lines (tests and docs included) and the commits `/implement` makes before review. Gate 2 and the run report show it. `/plan` copies the line only when it has this shape, else leaves it out and says so. It changes no gate, depth or level, and `/implement` does not pass it to its agents. The four `/plan` build ceilings rise by 690 bytes and the four `/implement` ceilings by 39.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
8
16
|
## [3.17.0] - 2026-11-06
|
|
9
17
|
|
|
10
18
|
### Added
|
|
@@ -2513,6 +2521,7 @@ devflow init
|
|
|
2513
2521
|
---
|
|
2514
2522
|
|
|
2515
2523
|
[Unreleased]: https://github.com/dean0x/devflow/compare/v3.8.0...HEAD
|
|
2524
|
+
[3.18.0]: https://github.com/dean0x/devflow/compare/v3.17.0...v3.18.0
|
|
2516
2525
|
[3.17.0]: https://github.com/dean0x/devflow/compare/v3.16.0...v3.17.0
|
|
2517
2526
|
[3.16.0]: https://github.com/dean0x/devflow/compare/v3.15.0...v3.16.0
|
|
2518
2527
|
[3.15.0]: https://github.com/dean0x/devflow/compare/v3.14.0...v3.15.0
|
|
@@ -54,7 +54,7 @@ Set `EVIDENCE_POLICY`, `ISSUE_REQUIRED`, `APPLY_CONVENTIONS` and `REQUIRE_NON_AU
|
|
|
54
54
|
**Plan Document Handling** (when `COMMAND_INPUT` is a path ending in `.md`):
|
|
55
55
|
1. Read the plan document. From its YAML frontmatter, take `execution-strategy` and `issue`.
|
|
56
56
|
2. If the frontmatter `issue` is present and is not `pending`: forward it verbatim as the setup-task `ISSUE_INPUT` (`pending` means /plan's issue step degraded or was declined — treat it as absent)
|
|
57
|
-
3. Extract its Subtask Breakdown, Implementation Plan, Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
57
|
+
3. Extract its Subtask Breakdown, Implementation Plan (without its Size forecast line), Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
58
58
|
|
|
59
59
|
`PR_DESCRIPTION_GUIDANCE` is the full `## PR Description Guidance` section of the plan document. Any other input, empty input included, or a plan without that section, gives `(none)`.
|
|
60
60
|
|
|
@@ -206,7 +206,7 @@ A KB with no Rules section labels its entries `Rules ({section name}):` and give
|
|
|
206
206
|
**Produces:** CODE_AGENT_OUTPUT, FILES_CHANGED
|
|
207
207
|
**Requires:** TASK_ID, BASE_BRANCH, EXECUTION_PLAN
|
|
208
208
|
|
|
209
|
-
Setup context is
|
|
209
|
+
Setup context is EXECUTION_PLAN, else the issue body or conversation.
|
|
210
210
|
|
|
211
211
|
**Strategy Selection**:
|
|
212
212
|
- If plan document provided: use `execution-strategy` from frontmatter (if absent, use the table below)
|
package/dist/commands/plan.md
CHANGED
|
@@ -351,7 +351,7 @@ Combine into: patterns to follow, integration points, reusable code, edge cases"
|
|
|
351
351
|
**Produces:** PLAN_OUTPUTS
|
|
352
352
|
**Requires:** IMPL_EXPLORATION_SYNTHESIS, GAP_SYNTHESIS
|
|
353
353
|
|
|
354
|
-
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.`
|
|
354
|
+
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.` Ask the agent that reports the steps for one plain line right after them, in the message (no bullet, bold or backticks): `Size forecast: files a-b, added a-b, removed a-b, commits a-b`, whole numbers, a <= b, for the whole change with tests and docs: files written (created, changed or deleted), diff lines added and removed, commits `/implement` makes before review. Never drop or shrink a step to fit it.
|
|
355
355
|
|
|
356
356
|
| Focus | Output |
|
|
357
357
|
|-------|--------|
|
|
@@ -396,7 +396,7 @@ Use AskUserQuestion to present:
|
|
|
396
396
|
|
|
397
397
|
1. **Implementation Plan Summary**
|
|
398
398
|
- Execution strategy
|
|
399
|
-
- Key implementation steps with files
|
|
399
|
+
- Key implementation steps with files, and the steps report's Size forecast line if it fits the Phase 10 shape, else its absence
|
|
400
400
|
- Test strategy — the test plan as TP lines, at least one per acceptance criterion (shape below)
|
|
401
401
|
|
|
402
402
|
2. **Design Review Findings**
|
|
@@ -461,7 +461,7 @@ context-risk: LOW
|
|
|
461
461
|
Required sections, in this order, no others:
|
|
462
462
|
1. **Acceptance Criteria** — testable success conditions, numbered AC-1, AC-2, ...: `ACCEPTANCE_CRITERIA` when fetched, refined by exploration + gap analysis
|
|
463
463
|
2. **Subtask Breakdown** — phases with domains, dependencies and a Serves cell (the item-1 ACs it serves); only with more than one subtask
|
|
464
|
-
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung
|
|
464
|
+
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung; last, after a blank line, the one Size forecast line Gate 2 showed (the latest Plan run's), unchanged, and no other copy; none if Gate 2 showed none
|
|
465
465
|
4. **Patterns to Follow** — from exploration synthesis (file:line references)
|
|
466
466
|
5. **Known limits and deferrals** — accepted risks, deferred and excluded items, each with one reason
|
|
467
467
|
6. **PR Description Guidance** — the block below
|
|
@@ -550,6 +550,7 @@ Display completion summary:
|
|
|
550
550
|
- Gap analysis summary (N blocking, M should-address)
|
|
551
551
|
- Design review summary (N anti-patterns found, M mitigated in plan)
|
|
552
552
|
- Gate level: {GATE_LEVEL}, depth {depth from CONFIRMED_SCOPE, else normal}, with any level note
|
|
553
|
+
- Size forecast line, or why it is absent
|
|
553
554
|
- Suggested next step: `/implement {artifact-path}` or `/implement #{issue-number}`
|
|
554
555
|
|
|
555
556
|
## Principles
|
|
@@ -55,7 +55,7 @@ When `EVIDENCE_POLICY` is `required`, record `TRACEABILITY: DEGRADED (compliance
|
|
|
55
55
|
**Plan Document Handling** (when `COMMAND_INPUT` is a path ending in `.md`):
|
|
56
56
|
1. Read the plan document. From its YAML frontmatter, take `execution-strategy` and `issue`.
|
|
57
57
|
2. If the frontmatter `issue` is present and is not `pending`: forward it verbatim as the setup-task `ISSUE_INPUT` (`pending` means /plan's issue step degraded or was declined — treat it as absent)
|
|
58
|
-
3. Extract its Subtask Breakdown, Implementation Plan, Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
58
|
+
3. Extract its Subtask Breakdown, Implementation Plan (without its Size forecast line), Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
59
59
|
|
|
60
60
|
`PR_DESCRIPTION_GUIDANCE` is the full `## PR Description Guidance` section of the plan document. Any other input, empty input included, or a plan without that section, gives `(none)`.
|
|
61
61
|
|
|
@@ -218,7 +218,7 @@ A KB with no Rules section labels its entries `Rules ({section name}):` and give
|
|
|
218
218
|
**Produces:** CODE_AGENT_OUTPUT, FILES_CHANGED
|
|
219
219
|
**Requires:** TASK_ID, BASE_BRANCH, EXECUTION_PLAN
|
|
220
220
|
|
|
221
|
-
Setup context is
|
|
221
|
+
Setup context is EXECUTION_PLAN, else the issue body or conversation.
|
|
222
222
|
|
|
223
223
|
**Strategy Selection**:
|
|
224
224
|
- If plan document provided: use `execution-strategy` from frontmatter (if absent, use the table below)
|
|
@@ -351,7 +351,7 @@ Combine into: patterns to follow, integration points, reusable code, edge cases"
|
|
|
351
351
|
**Produces:** PLAN_OUTPUTS
|
|
352
352
|
**Requires:** IMPL_EXPLORATION_SYNTHESIS, GAP_SYNTHESIS
|
|
353
353
|
|
|
354
|
-
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.`
|
|
354
|
+
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.` Ask the agent that reports the steps for one plain line right after them, in the message (no bullet, bold or backticks): `Size forecast: files a-b, added a-b, removed a-b, commits a-b`, whole numbers, a <= b, for the whole change with tests and docs: files written (created, changed or deleted), diff lines added and removed, commits `/implement` makes before review. Never drop or shrink a step to fit it.
|
|
355
355
|
|
|
356
356
|
| Focus | Output |
|
|
357
357
|
|-------|--------|
|
|
@@ -396,7 +396,7 @@ Use AskUserQuestion to present:
|
|
|
396
396
|
|
|
397
397
|
1. **Implementation Plan Summary**
|
|
398
398
|
- Execution strategy
|
|
399
|
-
- Key implementation steps with files
|
|
399
|
+
- Key implementation steps with files, and the steps report's Size forecast line if it fits the Phase 10 shape, else its absence
|
|
400
400
|
- Test strategy — the test plan as TP lines, at least one per acceptance criterion (shape below)
|
|
401
401
|
|
|
402
402
|
2. **Design Review Findings**
|
|
@@ -461,7 +461,7 @@ context-risk: LOW
|
|
|
461
461
|
Required sections, in this order, no others:
|
|
462
462
|
1. **Acceptance Criteria** — testable success conditions, numbered AC-1, AC-2, ...: `ACCEPTANCE_CRITERIA` when fetched, refined by exploration + gap analysis
|
|
463
463
|
2. **Subtask Breakdown** — phases with domains, dependencies and a Serves cell (the item-1 ACs it serves); only with more than one subtask
|
|
464
|
-
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung
|
|
464
|
+
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung; last, after a blank line, the one Size forecast line Gate 2 showed (the latest Plan run's), unchanged, and no other copy; none if Gate 2 showed none
|
|
465
465
|
4. **Patterns to Follow** — from exploration synthesis (file:line references)
|
|
466
466
|
5. **Known limits and deferrals** — accepted risks, deferred and excluded items, each with one reason
|
|
467
467
|
6. **PR Description Guidance** — the block below
|
|
@@ -545,6 +545,7 @@ Display completion summary:
|
|
|
545
545
|
- Gap analysis summary (N blocking, M should-address)
|
|
546
546
|
- Design review summary (N anti-patterns found, M mitigated in plan)
|
|
547
547
|
- Gate level: {GATE_LEVEL}, depth {depth from CONFIRMED_SCOPE, else normal}, with any level note
|
|
548
|
+
- Size forecast line, or why it is absent
|
|
548
549
|
- Suggested next step: `/implement {artifact-path}` or `/implement #{issue-number}`
|
|
549
550
|
|
|
550
551
|
## Principles
|
|
@@ -55,7 +55,7 @@ When `EVIDENCE_POLICY` is `required`, record `TRACEABILITY: DEGRADED (compliance
|
|
|
55
55
|
**Plan Document Handling** (when `COMMAND_INPUT` is a path ending in `.md`):
|
|
56
56
|
1. Read the plan document. From its YAML frontmatter, take `execution-strategy` and `issue`.
|
|
57
57
|
2. If the frontmatter `issue` is present and is not `pending`: forward it verbatim as the setup-task `ISSUE_INPUT` (`pending` means /plan's issue step degraded or was declined — treat it as absent)
|
|
58
|
-
3. Extract its Subtask Breakdown, Implementation Plan, Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
58
|
+
3. Extract its Subtask Breakdown, Implementation Plan (without its Size forecast line), Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
59
59
|
|
|
60
60
|
`PR_DESCRIPTION_GUIDANCE` is the full `## PR Description Guidance` section of the plan document. Any other input, empty input included, or a plan without that section, gives `(none)`.
|
|
61
61
|
|
|
@@ -192,7 +192,7 @@ A KB with no Rules section labels its entries `Rules ({section name}):` and give
|
|
|
192
192
|
**Produces:** CODE_AGENT_OUTPUT, FILES_CHANGED
|
|
193
193
|
**Requires:** TASK_ID, BASE_BRANCH, EXECUTION_PLAN
|
|
194
194
|
|
|
195
|
-
Setup context is
|
|
195
|
+
Setup context is EXECUTION_PLAN, else the issue body or conversation.
|
|
196
196
|
|
|
197
197
|
**Strategy Selection**:
|
|
198
198
|
- If plan document provided: use `execution-strategy` from frontmatter (if absent, use the table below)
|
|
@@ -323,7 +323,7 @@ Combine into: patterns to follow, integration points, reusable code, edge cases"
|
|
|
323
323
|
**Produces:** PLAN_OUTPUTS
|
|
324
324
|
**Requires:** IMPL_EXPLORATION_SYNTHESIS, GAP_SYNTHESIS
|
|
325
325
|
|
|
326
|
-
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.`
|
|
326
|
+
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.` Ask the agent that reports the steps for one plain line right after them, in the message (no bullet, bold or backticks): `Size forecast: files a-b, added a-b, removed a-b, commits a-b`, whole numbers, a <= b, for the whole change with tests and docs: files written (created, changed or deleted), diff lines added and removed, commits `/implement` makes before review. Never drop or shrink a step to fit it.
|
|
327
327
|
|
|
328
328
|
| Focus | Output |
|
|
329
329
|
|-------|--------|
|
|
@@ -368,7 +368,7 @@ Use AskUserQuestion to present:
|
|
|
368
368
|
|
|
369
369
|
1. **Implementation Plan Summary**
|
|
370
370
|
- Execution strategy
|
|
371
|
-
- Key implementation steps with files
|
|
371
|
+
- Key implementation steps with files, and the steps report's Size forecast line if it fits the Phase 10 shape, else its absence
|
|
372
372
|
- Test strategy — the test plan as TP lines, at least one per acceptance criterion (shape below)
|
|
373
373
|
|
|
374
374
|
2. **Design Review Findings**
|
|
@@ -433,7 +433,7 @@ context-risk: LOW
|
|
|
433
433
|
Required sections, in this order, no others:
|
|
434
434
|
1. **Acceptance Criteria** — testable success conditions, numbered AC-1, AC-2, ...: `ACCEPTANCE_CRITERIA` when fetched, refined by exploration + gap analysis
|
|
435
435
|
2. **Subtask Breakdown** — phases with domains, dependencies and a Serves cell (the item-1 ACs it serves); only with more than one subtask
|
|
436
|
-
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung
|
|
436
|
+
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung; last, after a blank line, the one Size forecast line Gate 2 showed (the latest Plan run's), unchanged, and no other copy; none if Gate 2 showed none
|
|
437
437
|
4. **Patterns to Follow** — from exploration synthesis (file:line references)
|
|
438
438
|
5. **Known limits and deferrals** — accepted risks, deferred and excluded items, each with one reason
|
|
439
439
|
6. **PR Description Guidance** — the block below
|
|
@@ -517,6 +517,7 @@ Display completion summary:
|
|
|
517
517
|
- Gap analysis summary (N blocking, M should-address)
|
|
518
518
|
- Design review summary (N anti-patterns found, M mitigated in plan)
|
|
519
519
|
- Gate level: {GATE_LEVEL}, depth {depth from CONFIRMED_SCOPE, else normal}, with any level note
|
|
520
|
+
- Size forecast line, or why it is absent
|
|
520
521
|
- Suggested next step: `/implement {artifact-path}` or `/implement #{issue-number}`
|
|
521
522
|
|
|
522
523
|
## Principles
|
|
@@ -54,7 +54,7 @@ Set `EVIDENCE_POLICY`, `ISSUE_REQUIRED`, `APPLY_CONVENTIONS` and `REQUIRE_NON_AU
|
|
|
54
54
|
**Plan Document Handling** (when `COMMAND_INPUT` is a path ending in `.md`):
|
|
55
55
|
1. Read the plan document. From its YAML frontmatter, take `execution-strategy` and `issue`.
|
|
56
56
|
2. If the frontmatter `issue` is present and is not `pending`: forward it verbatim as the setup-task `ISSUE_INPUT` (`pending` means /plan's issue step degraded or was declined — treat it as absent)
|
|
57
|
-
3. Extract its Subtask Breakdown, Implementation Plan, Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
57
|
+
3. Extract its Subtask Breakdown, Implementation Plan (without its Size forecast line), Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
58
58
|
|
|
59
59
|
`PR_DESCRIPTION_GUIDANCE` is the full `## PR Description Guidance` section of the plan document. Any other input, empty input included, or a plan without that section, gives `(none)`.
|
|
60
60
|
|
|
@@ -180,7 +180,7 @@ A KB with no Rules section labels its entries `Rules ({section name}):` and give
|
|
|
180
180
|
**Produces:** CODE_AGENT_OUTPUT, FILES_CHANGED
|
|
181
181
|
**Requires:** TASK_ID, BASE_BRANCH, EXECUTION_PLAN
|
|
182
182
|
|
|
183
|
-
Setup context is
|
|
183
|
+
Setup context is EXECUTION_PLAN, else the issue body or conversation.
|
|
184
184
|
|
|
185
185
|
**Strategy Selection**:
|
|
186
186
|
- If plan document provided: use `execution-strategy` from frontmatter (if absent, use the table below)
|
|
@@ -323,7 +323,7 @@ Combine into: patterns to follow, integration points, reusable code, edge cases"
|
|
|
323
323
|
**Produces:** PLAN_OUTPUTS
|
|
324
324
|
**Requires:** IMPL_EXPLORATION_SYNTHESIS, GAP_SYNTHESIS
|
|
325
325
|
|
|
326
|
-
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.`
|
|
326
|
+
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.` Ask the agent that reports the steps for one plain line right after them, in the message (no bullet, bold or backticks): `Size forecast: files a-b, added a-b, removed a-b, commits a-b`, whole numbers, a <= b, for the whole change with tests and docs: files written (created, changed or deleted), diff lines added and removed, commits `/implement` makes before review. Never drop or shrink a step to fit it.
|
|
327
327
|
|
|
328
328
|
| Focus | Output |
|
|
329
329
|
|-------|--------|
|
|
@@ -368,7 +368,7 @@ Use AskUserQuestion to present:
|
|
|
368
368
|
|
|
369
369
|
1. **Implementation Plan Summary**
|
|
370
370
|
- Execution strategy
|
|
371
|
-
- Key implementation steps with files
|
|
371
|
+
- Key implementation steps with files, and the steps report's Size forecast line if it fits the Phase 10 shape, else its absence
|
|
372
372
|
- Test strategy — the test plan as TP lines, at least one per acceptance criterion (shape below)
|
|
373
373
|
|
|
374
374
|
2. **Design Review Findings**
|
|
@@ -433,7 +433,7 @@ context-risk: LOW
|
|
|
433
433
|
Required sections, in this order, no others:
|
|
434
434
|
1. **Acceptance Criteria** — testable success conditions, numbered AC-1, AC-2, ...: `ACCEPTANCE_CRITERIA` when fetched, refined by exploration + gap analysis
|
|
435
435
|
2. **Subtask Breakdown** — phases with domains, dependencies and a Serves cell (the item-1 ACs it serves); only with more than one subtask
|
|
436
|
-
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung
|
|
436
|
+
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung; last, after a blank line, the one Size forecast line Gate 2 showed (the latest Plan run's), unchanged, and no other copy; none if Gate 2 showed none
|
|
437
437
|
4. **Patterns to Follow** — from exploration synthesis (file:line references)
|
|
438
438
|
5. **Known limits and deferrals** — accepted risks, deferred and excluded items, each with one reason
|
|
439
439
|
6. **PR Description Guidance** — the block below
|
|
@@ -522,6 +522,7 @@ Display completion summary:
|
|
|
522
522
|
- Gap analysis summary (N blocking, M should-address)
|
|
523
523
|
- Design review summary (N anti-patterns found, M mitigated in plan)
|
|
524
524
|
- Gate level: {GATE_LEVEL}, depth {depth from CONFIRMED_SCOPE, else normal}, with any level note
|
|
525
|
+
- Size forecast line, or why it is absent
|
|
525
526
|
- Suggested next step: `/implement {artifact-path}` or `/implement #{issue-number}`
|
|
526
527
|
|
|
527
528
|
## Principles
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "devflow-kit",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.18.0",
|
|
4
4
|
"description": "A meta-harness for Claude Code — turns a single coding agent into an engineering team: orchestration, parallel review, persistent memory and curated decisions",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -59,7 +59,7 @@ When `EVIDENCE_POLICY` is `required`, record `TRACEABILITY: DEGRADED (compliance
|
|
|
59
59
|
**Plan Document Handling** (when `COMMAND_INPUT` is a path ending in `.md`):
|
|
60
60
|
1. Read the plan document. From its YAML frontmatter, take `execution-strategy` and `issue`.
|
|
61
61
|
2. If the frontmatter `issue` is present and is not `pending`: forward it verbatim as the setup-task `ISSUE_INPUT` (`pending` means /plan's issue step degraded or was declined — treat it as absent)
|
|
62
|
-
3. Extract its Subtask Breakdown, Implementation Plan, Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
62
|
+
3. Extract its Subtask Breakdown, Implementation Plan (without its Size forecast line), Patterns to Follow, Known limits and Acceptance Criteria as `EXECUTION_PLAN`. Captured values override defaults from Git agent where present.
|
|
63
63
|
|
|
64
64
|
`PR_DESCRIPTION_GUIDANCE` is the full `## PR Description Guidance` section of the plan document. Any other input, empty input included, or a plan without that section, gives `(none)`.
|
|
65
65
|
|
|
@@ -197,7 +197,7 @@ Pass `DECISIONS_CONTEXT` to Code agent (Phase 2) and Harden agent (Phase 4).
|
|
|
197
197
|
**Produces:** CODE_AGENT_OUTPUT, FILES_CHANGED
|
|
198
198
|
**Requires:** TASK_ID, BASE_BRANCH, EXECUTION_PLAN
|
|
199
199
|
|
|
200
|
-
Setup context is
|
|
200
|
+
Setup context is EXECUTION_PLAN, else the issue body or conversation.
|
|
201
201
|
|
|
202
202
|
**Strategy Selection**:
|
|
203
203
|
- If plan document provided: use `execution-strategy` from frontmatter (if absent, use the table below)
|
|
@@ -290,7 +290,7 @@ Combine into: patterns to follow, integration points, reusable code, edge cases"
|
|
|
290
290
|
**Produces:** PLAN_OUTPUTS
|
|
291
291
|
**Requires:** IMPL_EXPLORATION_SYNTHESIS, GAP_SYNTHESIS
|
|
292
292
|
|
|
293
|
-
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.`
|
|
293
|
+
Spawn 3 `Agent(subagent_type="Plan")` agents **in a single message**, each with implementation exploration synthesis and `GAP_SYNTHESIS`. Ask each agent for a final report of at most about 1,500 tokens: the plan itself, not a restatement of the exploration. Add this line to every Plan prompt, at every level: `Per step give its files, the callers and consumers to update, its Must lines (what has to hold) and one rung, the lowest that meets the acceptance criteria: not needed, reuse, standard library, installed dependency, one line, minimum new code. Add Known limits: accepted risks and deferred items of the whole change, each with one reason; a limit of one step goes on its Must line. Never lower or flag a trust-boundary, security, data-loss or fail-closed guard, or its test.` Ask the agent that reports the steps for one plain line right after them, in the message (no bullet, bold or backticks): `Size forecast: files a-b, added a-b, removed a-b, commits a-b`, whole numbers, a <= b, for the whole change with tests and docs: files written (created, changed or deleted), diff lines added and removed, commits `/implement` makes before review. Never drop or shrink a step to fit it.
|
|
294
294
|
|
|
295
295
|
| Focus | Output |
|
|
296
296
|
|-------|--------|
|
|
@@ -335,7 +335,7 @@ Use AskUserQuestion to present:
|
|
|
335
335
|
|
|
336
336
|
1. **Implementation Plan Summary**
|
|
337
337
|
- Execution strategy
|
|
338
|
-
- Key implementation steps with files
|
|
338
|
+
- Key implementation steps with files, and the steps report's Size forecast line if it fits the Phase 10 shape, else its absence
|
|
339
339
|
- Test strategy — the test plan as TP lines, at least one per acceptance criterion (shape below)
|
|
340
340
|
|
|
341
341
|
2. **Design Review Findings**
|
|
@@ -395,7 +395,7 @@ context-risk: LOW
|
|
|
395
395
|
Required sections, in this order, no others:
|
|
396
396
|
1. **Acceptance Criteria** — testable success conditions, numbered AC-1, AC-2, ...: `ACCEPTANCE_CRITERIA` when fetched, refined by exploration + gap analysis
|
|
397
397
|
2. **Subtask Breakdown** — phases with domains, dependencies and a Serves cell (the item-1 ACs it serves); only with more than one subtask
|
|
398
|
-
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung
|
|
398
|
+
3. **Implementation Plan** — ordered steps, each with Files, Callers and consumers to update, Must lines and Rung; last, after a blank line, the one Size forecast line Gate 2 showed (the latest Plan run's), unchanged, and no other copy; none if Gate 2 showed none
|
|
399
399
|
4. **Patterns to Follow** — from exploration synthesis (file:line references)
|
|
400
400
|
5. **Known limits and deferrals** — accepted risks, deferred and excluded items, each with one reason
|
|
401
401
|
6. **PR Description Guidance** — the block below
|
|
@@ -491,6 +491,7 @@ Display completion summary:
|
|
|
491
491
|
- Gap analysis summary (N blocking, M should-address)
|
|
492
492
|
- Design review summary (N anti-patterns found, M mitigated in plan)
|
|
493
493
|
- Gate level: {GATE_LEVEL}, depth {depth from CONFIRMED_SCOPE, else normal}, with any level note
|
|
494
|
+
- Size forecast line, or why it is absent
|
|
494
495
|
- Suggested next step: `/implement {artifact-path}` or `/implement #{issue-number}`
|
|
495
496
|
|
|
496
497
|
## Principles
|
|
@@ -24,7 +24,6 @@ Each phase or subtask names the AC numbers it serves.
|
|
|
24
24
|
### Execution Strategy
|
|
25
25
|
**Type**: {SINGLE_CODE_AGENT | SEQUENTIAL_CODE_AGENTS | PARALLEL_CODE_AGENTS}
|
|
26
26
|
**Context Risk**: {LOW | MEDIUM | HIGH | CRITICAL}
|
|
27
|
-
**File Estimate**: {n} files across {m} modules
|
|
28
27
|
**Reason**: {why this strategy}
|
|
29
28
|
|
|
30
29
|
### Subtask Breakdown (if not SINGLE_CODE_AGENT)
|
|
@@ -39,6 +38,8 @@ Each phase or subtask names the AC numbers it serves.
|
|
|
39
38
|
| 1 | {action} | `file` | `caller` | {what has to hold} | {lowest rung that works} | `test_file` | - |
|
|
40
39
|
| 2 | {action} | `file` | `caller` | {what has to hold} | {lowest rung that works} | `test_file` | Step 1 |
|
|
41
40
|
|
|
41
|
+
{the steps report's Size forecast line, unchanged; no line when it has none}
|
|
42
|
+
|
|
42
43
|
### Known limits and deferrals
|
|
43
44
|
| Limit | Reason |
|
|
44
45
|
|-------|--------|
|