bmad-method 6.10.1-next.20 → 6.10.1-next.22

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "bmad-method",
4
- "version": "6.10.1-next.20",
4
+ "version": "6.10.1-next.22",
5
5
  "description": "Breakthrough Method of Agile AI-driven Development",
6
6
  "keywords": [
7
7
  "agile",
@@ -34,22 +34,16 @@ persistent_facts = [
34
34
  on_complete = ""
35
35
 
36
36
  # Handoff for the implementation subagent in step 03. The whole execution
37
- # recipe — a subagent by default, but an override may run anything (e.g. an
38
- # external coding tool via bash). {spec_file} is substituted at run time.
37
+ # recipe — a subagent by default, but an override may run it any other way
38
+ # (a different model, an external coding tool via bash). {spec_file} is
39
+ # substituted at run time.
39
40
 
40
41
  implementation_handoff = """
41
42
  Launch a subagent with no prior conversation context, with this prompt:
42
43
 
43
- > Read {spec_file} fully and implement it. The spec is the sole source of truth for this change; its Spec Change Log entries are binding constraints, not history.
44
+ > Read {spec_file} fully and implement it the spec is the sole source of truth. Load every file listed in its frontmatter `context:` before you start.
44
45
  >
45
- > Guardrails:
46
- >
47
- > - Work in the current project. Before starting, load every file listed in the spec frontmatter `context:`.
48
- > - Do not edit the spec file itself.
49
- > - Do not revert or overwrite changes unrelated to this spec.
50
- > - Run the verification described in the spec, plus focused checks for the code you touched.
51
- >
52
- > When done, report: files changed with one line each, verification commands run and their outcomes, any files changed beyond the spec's tasks and why each was needed, anything you could not complete and why, and residual risks.
46
+ > When done, report what you changed, how you verified it, and anything left incomplete or risky.
53
47
  """
54
48
 
55
49
  # Review layers for the review step. `instruction` is the layer's whole
@@ -12,8 +12,8 @@ deferred_work_file: '{implementation_artifacts}/deferred-work.md'
12
12
  ## INSTRUCTIONS
13
13
 
14
14
  1. Draft resume check. If `{spec_file}` exists with `status: draft`, read it and capture the verbatim `<intent-contract>...</intent-contract>` block as `preserved_intent_contract`. Otherwise `preserved_intent_contract` is empty.
15
- 2. Investigate codebase. _Read the code yourself for narrow, localized tasks. Isolate deep exploration in synchronous subagents: instruct them to give you distilled summaries only, and plan from those summaries._
16
- 3. Read `./spec-template.md` fully. Fill it out based on the intent and investigation. If `{preserved_intent_contract}` is non-empty, substitute it for the `<intent-contract>` block in your filled spec before writing. Write the result to `{spec_file}`.
15
+ 2. Investigate codebase. _Read the code yourself for narrow, localized tasks. Isolate deep exploration in synchronous subagents: instruct them to give you distilled summaries only, and plan from those summaries._ Decide which findings actually matter for execution — the specific files, symbols/lines, reuse points, and read-only constraints — and carry those forward for the Code Map. This is where the investigation lands: the spec preserves it so it is never re-narrated to the implementer at dispatch time.
16
+ 3. Read `./spec-template.md` fully. Fill it out based on the intent and investigation. Drain the investigation into the `## Code Map` section — annotated paths, symbol/line anchors, reuse pointers, and read-only evidence — so the spec is the implementer's investigation map and the step-03 handoff need only point at it. If `{preserved_intent_contract}` is non-empty, substitute it for the `<intent-contract>` block in your filled spec before writing. Write the result to `{spec_file}`.
17
17
  4. Self-review against READY FOR DEVELOPMENT standard.
18
18
  5. If intent gaps exist, do not fantasize and do not leave open questions. Multiple defensible readings of the intent that lead to observably different outcomes, with nothing in the intent to select between them, are an intent gap — do not resolve one by picking a reading. HALT with status `blocked`, blocking condition `intent gap`, and include the unanswered questions and evidence gathered.
19
19
  6. Warning check. If step-01 carried `multiple-goals`, add it to `{spec_file}` frontmatter `warnings`. If `{spec_file}` exceeds 1600 tokens, add `oversized` to frontmatter `warnings`. Continue either way.
@@ -33,6 +33,19 @@ persistent_facts = [
33
33
 
34
34
  on_complete = ""
35
35
 
36
+ # Handoff for the implementation subagent in step 03. The whole execution
37
+ # recipe — a subagent by default, but an override may run it any other way
38
+ # (a different model, an external coding tool via bash). {spec_file} is
39
+ # substituted at run time.
40
+
41
+ implementation_handoff = """
42
+ Launch a subagent with no prior conversation context, with this prompt:
43
+
44
+ > Read {spec_file} fully and implement it — the spec is the sole source of truth. Load every file listed in its frontmatter `context:` before you start.
45
+ >
46
+ > When done, report what you changed, how you verified it, and anything left incomplete or risky.
47
+ """
48
+
36
49
  # Review layers for the review step. `instruction` is the layer's whole
37
50
  # execution recipe — subagents by default, but an override may run anything
38
51
  # (e.g. an external reviewer via bash). {diff_output} is substituted at run
@@ -8,8 +8,8 @@
8
8
  ## INSTRUCTIONS
9
9
 
10
10
  1. Draft resume check. If `{spec_file}` exists with `status: draft`, read it and capture the verbatim `<frozen-after-approval>...</frozen-after-approval>` block as `preserved_intent`. Otherwise `preserved_intent` is empty.
11
- 2. Investigate codebase. _Isolate deep exploration in synchronous subagents/tasks where available. To prevent context snowballing, instruct subagents to give you distilled summaries only._
12
- 3. Read `./spec-template.md` fully. Fill it out based on the intent and investigation, resolving the template's `date` field to the current system date. If `preserved_intent` is non-empty, replace the `<frozen-after-approval>` block in the spec you just filled out with `preserved_intent`, before writing. Write the result to `{spec_file}`.
11
+ 2. Investigate codebase. _Isolate deep exploration in synchronous subagents/tasks where available. To prevent context snowballing, instruct subagents to give you distilled summaries only._ Decide which findings actually matter for execution — the specific files, symbols/lines, reuse points, and read-only constraints — and carry those forward for the Code Map. This is where the investigation lands: the spec preserves it so it is never re-narrated to the implementer at dispatch time.
12
+ 3. Read `./spec-template.md` fully. Fill it out based on the intent and investigation, resolving the template's `date` field to the current system date. Drain the investigation into the `## Code Map` section — annotated paths, symbol/line anchors, reuse pointers, and read-only evidence — so the spec is the implementer's investigation map and the step-03 handoff need only point at it. If `preserved_intent` is non-empty, replace the `<frozen-after-approval>` block in the spec you just filled out with `preserved_intent`, before writing. Write the result to `{spec_file}`.
13
13
  4. Self-review against READY FOR DEVELOPMENT standard.
14
14
  5. If intent gaps exist, do not fantasize, do not leave open questions, HALT and ask the human.
15
15
  6. Token count check (see SCOPE STANDARD). If spec exceeds 1600 tokens:
@@ -26,9 +26,13 @@ Change `{spec_file}` status to `in-progress` in the frontmatter before starting
26
26
 
27
27
  Follow `./sync-sprint-status.md` with `target_status` = `in-progress`.
28
28
 
29
- If `{spec_file}` has a non-empty `context:` list in its frontmatter, load those files before implementation begins. When handing to a subagent, include them in the subagent prompt so it has access to the referenced context.
29
+ Execute the implementation handoff below: substitute the runtime placeholders (e.g. `{spec_file}`) into it, then follow it verbatim.
30
30
 
31
- Hand `{spec_file}` to a subagent/task and let it implement. If no subagents are available, implement directly. If the platform allows, keep the subagent available for re-engagement after it returns — step-04 may send it review fixes.
31
+ {workflow.implementation_handoff}
32
+
33
+ Do not add goal restatements, file lists, ownership boundaries, investigation detail, acceptance criteria, or CLAUDE.md/house-style rules to the dispatch — the spec is the subagent's sole source of truth, and that material already lives in it (investigation findings in its Code Map, the rest in the spec body). One line of sanctioned hedging belongs in the spec at planning time, not in the dispatch. If no subagents are available, implement directly from the spec. If the platform allows, keep the subagent available for re-engagement after it returns — step-04 may send it review fixes.
34
+
35
+ The handoff directs the subagent to load the spec's `context:` files itself, so never pre-load and paste those files into the dispatch. Only when you implement directly (no subagent available) do you load a non-empty `context:` list yourself before starting.
32
36
 
33
37
  **Path formatting rule:** Any markdown links written into `{spec_file}` must use paths relative to `{spec_file}`'s directory so they are clickable in VS Code. Any file paths displayed in terminal/conversation output must use CWD-relative format with `:line` notation (e.g., `src/path/file.ts:42`) for terminal clickability. No leading `/` in either case.
34
38