BMAD-METHOD/src/core-skills
Alex Verkhovsky e36f219c81
refactor(catalog): rename after/before to preceded-by/followed-by (#2360)
* refactor(catalog): rename after/before columns to preceded-by/followed-by

The bare prepositions `after` and `before` had no subject anchor, leaving
the dependency direction ambiguous: "X has Y in its `after` column" reads
plausibly as either "Y comes after X" or "X comes after Y". An LLM
catalog consumer just got the direction wrong because of this.

`preceded-by` / `followed-by` are passive-voice participles whose grammar
locks the subject (the skill in this row) and forces a single reading:
"X is preceded by Y" can only mean Y comes first.

Rename applied to:
- module-help.csv headers (bmm-skills, core-skills)
- bmad-help SKILL.md schema doc + descriptions
- installer.js mergeModuleHelpCatalogs header string
- plugin-resolver.js _buildSynthesizedHelpCsv header string
- bmad-manifest.json keys (bmad-product-brief, bmad-prfaq)
- distillate-format-reference.md example manifest

The separate `required` column continues to carry hard-gate semantics;
the renamed columns are pure soft sequencing hints, as already documented
in bmad-help.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* style(installer): wrap long header strings per prettier

* feat(installer): warn on non-canonical module-help.csv headers

mergeModuleHelpCatalogs now compares each per-module file's header
against the canonical schema and emits a one-shot prompts.log.warn per
module on drift, naming both the expected and actual header. Data
continues to load positionally so external modules built against the
old after/before schema still install cleanly — the warning is the
maintainer signal to rename their columns.

Centralize the canonical header in modules/module-help-schema.js so the
merger and the synthesizer (PluginResolver._buildSynthesizedHelpCsv)
read the same source of truth; future column renames are one edit.

Verified by installing all four bmad-org external modules
(bmb, cis, gds, tea) — every one ships the legacy after/before header
today and now fires an advisory warning while still merging cleanly
into _bmad/_config/bmad-help.csv with the canonical column names.

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-01 12:28:50 -07:00
..
bmad-advanced-elicitation refactor(skills): remove bmad-skill-manifest yaml; introduce central config.toml (#2285) 2026-04-19 23:11:44 -05:00
bmad-brainstorming refactor(installer): discover skills by SKILL.md instead of manifest YAML (#2082) 2026-03-21 00:11:23 -06:00
bmad-customize feat(core-skills): add bmad-customize — guided authoring for _bmad/custom overrides (#2289) 2026-04-20 22:14:54 -05:00
bmad-distillator refactor(catalog): rename after/before to preceded-by/followed-by (#2360) 2026-05-01 12:28:50 -07:00
bmad-editorial-review-prose refactor(installer): discover skills by SKILL.md instead of manifest YAML (#2082) 2026-03-21 00:11:23 -06:00
bmad-editorial-review-structure refactor(installer): discover skills by SKILL.md instead of manifest YAML (#2082) 2026-03-21 00:11:23 -06:00
bmad-help refactor(catalog): rename after/before to preceded-by/followed-by (#2360) 2026-05-01 12:28:50 -07:00
bmad-index-docs refactor(installer): discover skills by SKILL.md instead of manifest YAML (#2082) 2026-03-21 00:11:23 -06:00
bmad-party-mode refactor(skills): remove bmad-skill-manifest yaml; introduce central config.toml (#2285) 2026-04-19 23:11:44 -05:00
bmad-review-adversarial-general refactor(installer): discover skills by SKILL.md instead of manifest YAML (#2082) 2026-03-21 00:11:23 -06:00
bmad-review-edge-case-hunter refactor(installer): discover skills by SKILL.md instead of manifest YAML (#2082) 2026-03-21 00:11:23 -06:00
bmad-shard-doc refactor(installer): discover skills by SKILL.md instead of manifest YAML (#2082) 2026-03-21 00:11:23 -06:00
module-help.csv refactor(catalog): rename after/before to preceded-by/followed-by (#2360) 2026-05-01 12:28:50 -07:00
module.yaml fix(config): promote project_name to core (closes #2279) (#2348) 2026-04-27 23:31:59 -05:00