* feat(bmad): add BMad control-plane protocol skill
New standalone methodology skill that lets any agent run the BMad method
(Breakthrough Method of Agile AI-Driven Development) as a harness-agnostic
control-plane protocol: five-field intent contracts, direct/bounded/initiative
classification, review-as-triage, failure routing by layer, and autonomy gating
with machine-readable spec status.
- SKILL.md protocol core with progressive disclosure + When not to use
- README.md human-facing install guide
- 9 references: protocol, classification, spec, lifecycle, project-context,
review-and-failure-routing, autonomy, party-mode, adoption
- 4 templates: SPEC, INTENT, STORY, REVIEW
- scripts/check-spec.py + 16 tests (stdlib, deterministic spec validation)
- evals/evals.json: 9 output-quality cases
- Routing seams from bmad to adjacent skills and back from
spec-driven-development, product-shaping, implementation-planning, neckbeard
- Catalog updates: root README, skill-triggers, marketplace/plugin/llms.txt
Closes#399
* fix(bmad): address droid-review findings
- check-spec.py: skip headings inside fenced/indented code blocks so a spec
cannot PASS on section text that only appears in a code sample
- check-spec.py: catch UnicodeDecodeError on non-UTF-8 files and report FAIL
instead of crashing
- STORY.md template: add created key for resumability/traceability parity
- SPEC.md template: split in-progress and in-review status bullets
- add 2 regression tests (heading-in-fence, non-UTF-8)
* fix(bmad): address droid-review round 2
- check-spec.py: read specs with utf-8-sig so a UTF-8 BOM cannot silently
disable the frontmatter status check
- check-spec.py: handle standard YAML inline comments after status values
(status: draft # pending review) without a false FAIL
- references/protocol.md: make lifecycle phrasing consistent with
lifecycle.md — four phases plus a learning closeout
- add 2 regression tests (BOM, inline comment)
* fix(bmad): tolerate trailing whitespace on frontmatter delimiters
A spec whose --- delimiter lines carry trailing spaces or tabs would silently
disable the status check and let an invalid status PASS. Relax the delimiter
pattern and add a regression test.
* fix(bmad): ignore inline comments in quoted status values
* fix(bmad): tolerate leading blank lines before frontmatter
* fix(bmad): fail closed on unparseable frontmatter, matching fence markers
Address droid-review round 5 and 6 findings as a single closed class:
- Fail closed when a file opens with a --- delimiter that cannot be parsed,
so no whitespace/frontmatter permutation can silently disable the status
check (previously: unparseable frontmatter was treated as 'no status'
warning, letting an invalid status PASS).
- Track fence opener markers in collect_headings so a mismatched fence no
longer closes a code block early (false-PASS on missing sections) and an
unclosed fence no longer swallows real headings.
- Accept empty well-formed frontmatter (---\n---) and closing delimiters
without a trailing newline.
- STORY.md template: parent-spec points at the sibling SPEC.md.
- README: status vocabulary is not a strict linear chain; blocked is a
resumable routing signal.
Whitespace/frontmatter mutation sweep: 9 formatting variants x valid/invalid
status all verdict correctly; malformed delimiters fail closed. 29 tests.
2026-08-24 08:05:43 -04:00
Magnus HedemarkGitHubfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* test(evals): scope claims to harness model fixtures and revision
Append the neckbeard claims-scoping sentence to one representative
expected_output per per-skill manifest so every corpus member states
VAL-EVL-032 scope (harness, model, fixtures, revision under test).
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* test(product-lifecycle): upgrade integrated launch trajectory
Add an explicit launch-decision assertion to the new-product lifecycle
case so the integrated product-launch scenario terminates in a launch
decision recorded as a lifecycle evidence-ledger entry (VAL-CRP-010),
and scope its expected_output claims per VAL-EVL-032.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* test(production-excellence): add integrated migration reconciliation failure case
Add integrated-migration-reconciliation-failure: the production-excellence
gate model returns No-go on a reconciliation mismatch, records the failure
evidence, produces a rollback/roll-forward decision with an accountable
owner, and does not proceed to launch (VAL-CRP-012).
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* test(agent-production-operations): add privacy boundary escalation case
Add integrated-privacy-boundary-escalation (VAL-CRP-015): the runtime
control plan halts a cross-boundary EU PII trace export before any data
processing, names the privacy boundary, and escalates to jurisdiction-
specific legal review and a human operator. Also add a tool-authority-
health handoff assertion to the read-only contract case (VAL-CRP-016).
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* test(lifecycle-evals): add lifecycle evaluation corpus
Add the #204 corpus home: run tooling (run-corpus.sh, fake adapter only),
programmatic coverage validator (validate-corpus-coverage.py), machine-
readable coverage index + human-readable coverage matrix, regression-
detection and fixture/source notes, the bounded discovery brief, and a
one-snapshot committed set of fake-adapter per-trial run artifacts with
harness/model/date scoping fields.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
---------
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-02 20:13:36 -04:00
Magnus HedemarkGitHubusername <username>factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Add a reusable implementation-planning skill for turning approved
requirements or specifications into executable, dependency-aware delivery
plans. Covers work breakdown into vertical slices, dependency mapping with
critical-path analysis, ownership assignment, sequencing and parallelism,
staged rollout strategy with rollback paths, and verification traceability
against the original requirement.
Includes:
- SKILL.md with valid frontmatter, entry gate for prerequisite approval,
progressive-disclosure file map, and handoff table to specialist skills
- README.md with all five required human-facing sections
- references/discovery-brief.md comparing existing planning material and
defining ownership boundaries
- templates/ for implementation plan, dependency record, and risk/decision/
verification sections
- evals/evals.json with six output-quality cases covering ambiguous
requirements, cross-repository dependencies, data migration, risky
rollout, unapproved prerequisite rejection, and multi-team ownership
conflict
- Catalog and routing updates (README, skill-triggers, generated catalogs)
Closes#186
Co-authored-by: username <username>
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>