mustflow 1.31.0 → 2.16.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.
Files changed (66) hide show
  1. package/README.md +23 -9
  2. package/dist/cli/commands/classify.js +61 -6
  3. package/dist/cli/commands/contract-lint.js +13 -4
  4. package/dist/cli/commands/dashboard.js +77 -2
  5. package/dist/cli/commands/explain-verify.js +11 -1
  6. package/dist/cli/commands/index.js +14 -0
  7. package/dist/cli/commands/run.js +4 -1
  8. package/dist/cli/commands/verify.js +986 -43
  9. package/dist/cli/i18n/en.js +61 -10
  10. package/dist/cli/i18n/es.js +61 -10
  11. package/dist/cli/i18n/fr.js +61 -10
  12. package/dist/cli/i18n/hi.js +61 -10
  13. package/dist/cli/i18n/ko.js +61 -10
  14. package/dist/cli/i18n/zh.js +61 -10
  15. package/dist/cli/lib/dashboard-export.js +62 -12
  16. package/dist/cli/lib/dashboard-html/client-script.js +1936 -0
  17. package/dist/cli/lib/dashboard-html/locale-bootstrap.js +8 -0
  18. package/dist/cli/lib/dashboard-html/styles.js +572 -0
  19. package/dist/cli/lib/dashboard-html/template.js +134 -0
  20. package/dist/cli/lib/dashboard-html/types.js +1 -0
  21. package/dist/cli/lib/dashboard-html.js +1 -1907
  22. package/dist/cli/lib/dashboard-locale.js +37 -0
  23. package/dist/cli/lib/local-index/constants.js +48 -0
  24. package/dist/cli/lib/local-index/index.js +2951 -0
  25. package/dist/cli/lib/local-index/sql.js +15 -0
  26. package/dist/cli/lib/local-index/types.js +1 -0
  27. package/dist/cli/lib/local-index.js +1 -1911
  28. package/dist/cli/lib/run-plan.js +76 -1
  29. package/dist/cli/lib/templates.js +18 -1
  30. package/dist/cli/lib/validation/command-intents.js +11 -0
  31. package/dist/cli/lib/validation/constants.js +238 -0
  32. package/dist/cli/lib/validation/index.js +1384 -0
  33. package/dist/cli/lib/validation/primitives.js +198 -0
  34. package/dist/cli/lib/validation/test-selection.js +95 -0
  35. package/dist/cli/lib/validation/types.js +1 -0
  36. package/dist/cli/lib/validation.js +1 -1770
  37. package/dist/core/check-issues.js +6 -0
  38. package/dist/core/completion-verdict.js +341 -0
  39. package/dist/core/contract-lint.js +221 -6
  40. package/dist/core/external-evidence.js +9 -0
  41. package/dist/core/public-json-contracts.js +21 -0
  42. package/dist/core/repeated-failure.js +179 -0
  43. package/dist/core/repro-evidence.js +134 -0
  44. package/dist/core/scope-risk.js +64 -0
  45. package/dist/core/skill-route-alignment.js +20 -0
  46. package/dist/core/source-anchor-status.js +4 -1
  47. package/dist/core/test-selection.js +3 -0
  48. package/dist/core/validation-ratchet.js +196 -0
  49. package/dist/core/verification-evidence.js +249 -0
  50. package/examples/README.md +12 -4
  51. package/package.json +3 -3
  52. package/schemas/README.md +13 -3
  53. package/schemas/change-verification-report.schema.json +16 -2
  54. package/schemas/commands.schema.json +4 -0
  55. package/schemas/contract-lint-report.schema.json +29 -0
  56. package/schemas/dashboard-export.schema.json +310 -0
  57. package/schemas/explain-report.schema.json +173 -1
  58. package/schemas/latest-run-pointer.schema.json +601 -0
  59. package/schemas/run-receipt.schema.json +4 -0
  60. package/schemas/test-selection.schema.json +81 -0
  61. package/schemas/verify-report.schema.json +578 -1
  62. package/schemas/verify-run-manifest.schema.json +627 -0
  63. package/templates/default/i18n.toml +1 -1
  64. package/templates/default/locales/en/.mustflow/skills/INDEX.md +124 -29
  65. package/templates/default/locales/en/.mustflow/skills/routes.toml +289 -0
  66. package/templates/default/manifest.toml +29 -2
@@ -2,7 +2,7 @@
2
2
  mustflow_doc: skills.index
3
3
  locale: en
4
4
  canonical: true
5
- revision: 50
5
+ revision: 54
6
6
  authority: router
7
7
  lifecycle: mustflow-owned
8
8
  ---
@@ -27,12 +27,128 @@ refer to `AGENTS.md` and `.mustflow/config/commands.toml` to implement the most
27
27
  command intents.
28
28
  - Keep the route table compact: each route states the trigger, required input, edit scope, risk,
29
29
  verification intents, and expected output.
30
+ - Keep `.mustflow/skills/routes.toml` aligned with the route table when adding, removing, or
31
+ reclassifying skill routes. The TOML metadata supports strict validation of route category,
32
+ route type, priority, and mutually exclusive route references.
33
+ - When a current `mf classify` report or changed-file validation reason list is already available,
34
+ use it only as a prefilter before scanning the route table. Do not run a new command solely to
35
+ select skills unless the command contract already authorizes that command.
36
+
37
+ ## Selection Convention
38
+
39
+ - Choose one primary skill that best describes the main work. Prefer the most specific matching
40
+ skill over a broad architecture or review skill.
41
+ - Add no more than two adjunct skills for secondary risks such as tests, documentation, security,
42
+ privacy, release, or contract drift.
43
+ - Treat event-triggered skills as inactive until the event occurs. For example, read
44
+ `failure-triage` only after a configured command intent or verification step fails.
45
+ - If several primary skills appear to match, choose the one tied to the files and behavior being
46
+ changed now, then report the skipped plausible skills instead of reading every route.
47
+
48
+ ## Classification Prefilter
49
+
50
+ Use this table only to reduce the first-pass skill categories. The route category gate below remains
51
+ the source for the first routing step.
52
+
53
+ | Classification evidence | First-pass skill category |
54
+ | --- | --- |
55
+ | `docs_change`, `copy_change`, `i18n_change`, `release_risk` | Documentation and Release |
56
+ | `test_change`, `test_policy_change`, `behavior_change` | Tests and Regression |
57
+ | `code_change`, `public_api_change`, `unknown_change` | General Code Change, then Architecture Patterns only when structural pressure is concrete |
58
+ | `mustflow_docs_change`, `mustflow_config_change` | Workflow and Contract Maintenance |
59
+ | Security, privacy, data, or external-system paths | Security and Privacy, or Data and External Systems |
60
+
61
+ ## Route Category Gate
62
+
63
+ Choose one first-pass category before scanning specific routes. This keeps routine docs, bug, and
64
+ test tasks from requiring a full read of architecture-pattern routes. Categories are backed by
65
+ `.mustflow/skills/routes.toml`; keep that metadata aligned with the tables below.
66
+
67
+ | Category | Use When | Next Step |
68
+ | --- | --- | --- |
69
+ | Bug and Failure | Failures, regressions, confusing behavior, or command failures. | Inspect only this category's specific route table first; add adjunct or event routes only when their trigger appears. |
70
+ | General Code Change | Orientation, implementation, review, and ordinary code-change risk. | Inspect only this category's specific route table first; add adjunct or event routes only when their trigger appears. |
71
+ | Tests and Regression | Test design, maintenance, TDD, and requirement coverage. | Inspect only this category's specific route table first; add adjunct or event routes only when their trigger appears. |
72
+ | Documentation and Release | Documentation, release wording, source freshness, and prose review. | Inspect only this category's specific route table first; add adjunct or event routes only when their trigger appears. |
73
+ | Security and Privacy | Secrets, personal data, external prompt text, and security regression risk. | Inspect only this category's specific route table first; add adjunct or event routes only when their trigger appears. |
74
+ | Data and External Systems | Persistence, adapters, dependency boundaries, migrations, and external systems. | Inspect only this category's specific route table first; add adjunct or event routes only when their trigger appears. |
75
+ | UI and Assets | UI surfaces, review artifacts, package artifacts, and web assets. | Inspect only this category's specific route table first; add adjunct or event routes only when their trigger appears. |
76
+ | Architecture Patterns | Pattern-specific routes; use only after concrete structural pressure appears. | Inspect only this category's specific route table first; add adjunct or event routes only when their trigger appears. |
77
+ | Workflow and Contract Maintenance | mustflow workflow, routes, context, contracts, coordination, and metadata. | Inspect only this category's specific route table first; add adjunct or event routes only when their trigger appears. |
78
+
79
+ ## Specific Routes
80
+
81
+ After choosing a category, choose one primary route and at most two adjunct routes. Event routes
82
+ stay inactive until their event occurs.
83
+
84
+ ### Bug and Failure
85
+
86
+ | Trigger | Skill Document | Required Input | Edit Scope | Risk | Verification Intents | Expected Output |
87
+ | --- | --- | --- | --- | --- | --- | --- |
88
+ | A configured command intent or verification step fails | `.mustflow/skills/failure-triage/SKILL.md` | Failing intent and output tail | Failure cause only | misdiagnosis | `mustflow_check`; original failing intent | Root cause, fix, rerun result |
89
+ | A bug or confusing failure needs a fix before the smallest deterministic reproduction or cause is clear | `.mustflow/skills/repro-first-debug/SKILL.md` | Symptom, expected behavior, observed output, failing intent or action, likely changed files, and known flakiness or environment limits | Diagnostic reads, focused reproduction, temporary instrumentation, smallest fix, and symptom-tied regression guard | speculative fix, flaky reproduction, lingering debug output, broad unrelated test, or over-testing | `test_related`, `test_fast`, `mustflow_check` | Symptom, reproduction path or gap, hypotheses, observations, fix, original reproduction rerun, verification, and remaining risk |
90
+
91
+ ### General Code Change
92
+
93
+ | Trigger | Skill Document | Required Input | Edit Scope | Risk | Verification Intents | Expected Output |
94
+ | --- | --- | --- | --- | --- | --- | --- |
95
+ | Code changes need review before report | `.mustflow/skills/code-review/SKILL.md` | Diff and task goal | Changed files | behavior and regression | `test`, `test_related`, `test_audit`, `lint` | Findings or no-issue note |
96
+ | An unfamiliar codebase area needs an evidence-based map before planning, implementation, or reporting | `.mustflow/skills/codebase-orientation/SKILL.md` | User request, target area, relevant instructions, and current source, test, schema, template, configuration, or documentation files | Read-only orientation notes and any smallest follow-up edit chosen from inspected evidence | stale documentation, wrong ownership boundary, or invented architecture claim | `changes_status`, `changes_diff_summary`, `mustflow_check` | Scope inspected, entrypoints, flow map, ownership boundaries, verification options, risks, unknowns, and smallest safe next step |
97
+ | Changed files need risk classification and verification selection | `.mustflow/skills/diff-risk-review/SKILL.md` | Changed-file list, diff summary, and task goal | Changed surfaces and verification report | under- or over-verification | `changes_status`, `changes_diff_summary`, `test`, `test_related`, `test_audit`, `lint`, `build`, `docs_validate`, `mustflow_check` | Risk level, verification choice, rollback notes |
98
+ | Performance budgets, bundle size, page weight, startup time, command duration, memory use, asset size, throughput, latency, benchmark output, or performance claims are planned, edited, reviewed, or reported | `.mustflow/skills/performance-budget-check/SKILL.md` | Performance surface, budget source, measurement method, environment boundary, and command contract entries | Budget checks, thresholds, measurements, dependency tradeoff notes, tests, docs, package metadata, and reports | invented budgets, stale measurements, hidden performance cost, or unverified speed claim | `changes_status`, `changes_diff_summary`, `build`, `test_related`, `docs_validate_fast`, `test_release`, `mustflow_check` | Performance surface, budget source, measurement boundary, synchronized claims, skipped measurements, and remaining performance risk |
99
+ | New feature, module, folder layout, architecture, scaffold, refactor, routing, data model, or external service integration may require hidden structure decisions before coding | `.mustflow/skills/structure-discovery-gate/SKILL.md` | User request, intended capability, hidden assumptions, named technologies or services, and relevant local patterns | Questions, assumptions, proposed file boundaries, and the smallest resulting implementation | brittle structure, vendor-name leakage, over-questioning, or speculative abstraction | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Blocking questions, assumptions, proposed files and responsibilities, dependency direction, local pattern, verification, and remaining structure risk |
100
+
101
+ ### Tests and Regression
102
+
103
+ | Trigger | Skill Document | Required Input | Edit Scope | Risk | Verification Intents | Expected Output |
104
+ | --- | --- | --- | --- | --- | --- | --- |
105
+ | User requirements, acceptance criteria, issue reports, bug reports, product notes, compatibility promises, or examples must be preserved as regression coverage before or during implementation | `.mustflow/skills/requirement-regression-guard/SKILL.md` | Requirement source, observable behavior, existing tests or fixtures, implementation scope, changed files, and command contract entries | Focused tests, fixtures, examples, schemas, docs, and implementation changes directly tied to the requirement | untested requirement, invented acceptance criteria, weakened tests, hidden behavior drift, or unverifiable implementation claim | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `test_audit`, `docs_validate_fast`, `test_release`, `mustflow_check` | Requirement sources, coverage map, guards added or reused, implementation changes, deferred requirements, verification, and remaining regression risk |
106
+ | The user explicitly requests TDD, test-first work, red-green-refactor, RED/GREEN, or one observable behavior slice at a time | `.mustflow/skills/vertical-slice-tdd/SKILL.md` | TDD trigger, first behavior contract, existing tests, expected RED category, baseline status, and command contract entries | One focused test or fixture, the smallest implementation for the current slice, and directly synchronized docs when needed | invalid RED, broad slice, premature refactor, unrelated cleanup, or verification claim without configured command evidence | `changes_status`, `changes_diff_summary`, `test_related`, `test_audit`, `test`, `lint`, `build`, `mustflow_check` | Slice scope, existing coverage, RED category evidence, GREEN verification, refactors after GREEN, deferred slices, and remaining TDD risk |
107
+ | New tests or test cases are designed, TDD RED or GREEN evidence is reported, or test-case choices are made for requirements, bugs, refactors, security boundaries, schemas, templates, or public docs | `.mustflow/skills/test-design-guard/SKILL.md` | Contract source, existing coverage, intended RED evidence, candidate cases, baseline status, and command contract entries | Tests, fixtures, helpers, and directly synchronized contract docs | invalid RED, happy-path-only coverage, speculative edge cases, weak assertions, mock-only confidence, or implementation-detail coupling | `test_related`, `test_audit`, `test`, `lint`, `build`, `test_release`, `mustflow_check` | RED category, selected test shape, evidence-backed cases, rejected speculation, verification objective, commands, and remaining test-design risk |
108
+ | Tests are added, updated, removed, or audited | `.mustflow/skills/test-maintenance/SKILL.md` | Changed behavior or stale-test evidence | Test files and related source | contract drift | `test`, `test_related`, `test_audit`, `snapshot_update`, `lint`, `build` | Test rationale and verification |
109
+
110
+ ### Documentation and Release
111
+
112
+ | Trigger | Skill Document | Required Input | Edit Scope | Risk | Verification Intents | Expected Output |
113
+ | --- | --- | --- | --- | --- | --- | --- |
114
+ | Claims, adoption decisions, research notes, methodology recommendations, tool comparisons, or external summaries depend on current, external, dated, versioned, or otherwise drift-prone sources | `.mustflow/skills/source-freshness-check/SKILL.md` | Stale-sensitive claim or recommendation, source text or page, date or version context, source policy, and intended adoption surface | Source wording, documentation, skill procedures, templates, tests, schemas, and freshness report | stale or unverifiable claim, copied external authority, or unsafe adoption | `changes_status`, `docs_validate_fast`, `mustflow_check` | Checked source boundary, research split, adoption decision, wording changes, skipped refreshes, and stale-source risk |
115
+ | `README.md` is created, restructured, or substantially rewritten | `.mustflow/skills/readme-authoring/SKILL.md` | User request, existing README if any, repository evidence, nearest instructions, and command contracts | `README.md` and directly linked public docs | invented project claims, marketing drift, or loss of human-authored intent | `docs_validate_fast`, `mustflow_check` | Evidence-based README changes, preserved or deferred sections, verification notes |
116
+ | Release notes, changelog entries, public change summaries, release preparation copy, or package release wording are drafted or revised | `.mustflow/skills/release-notes-authoring/SKILL.md` | User-provided change summary, current diff summary, release audience, public surfaces, version source, and command contract entries | Release notes, changelog entries, release preparation notes, and directly synchronized docs or package metadata | invented release history, inflated public claims, internal noise, stale version or migration notes, or unverified release evidence | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Release audience, categorized notes, excluded internal changes, version or migration checks, verification, skipped release-history checks, and remaining release-note risk |
117
+ | Documentation review queue entries need prose cleanup | `.mustflow/skills/docs-prose-review/SKILL.md` | Review queue entry or selected document path, review comment if present, target language, reviewer metadata | Selected documentation file and review ledger entry | meaning drift or stale queue state | `docs_validate`, `mustflow_check` | Prose changes, recorded review status, verification notes |
118
+ | Documentation changes affect public or workflow docs | `.mustflow/skills/docs-update/SKILL.md` | Changed behavior or field | Relevant docs only | stale public docs | `docs_validate_fast`, `docs_validate`, `mustflow_check` | Doc changes and skipped checks |
119
+
120
+ ### Security and Privacy
121
+
122
+ | Trigger | Skill Document | Required Input | Edit Scope | Risk | Verification Intents | Expected Output |
123
+ | --- | --- | --- | --- | --- | --- | --- |
124
+ | Code, configuration, docs, templates, logs, telemetry, credentials, or data flows affect secrets, personal data, authentication, authorization, retention, or external disclosure | `.mustflow/skills/security-privacy-review/SKILL.md` | Changed files, sensitive surfaces, project secret and privacy rules, public or packaged surfaces, and command contract entries | Sensitive data handling, logs, receipts, generated state, docs, templates, package metadata, and reports | secret leak, personal-data exposure, or misleading privacy claim | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Sensitive surfaces reviewed, disclosure paths checked, redaction or omission changes, related test need, and remaining security or privacy risk |
125
+ | Security-sensitive behavior changes need abuse-case regression tests | `.mustflow/skills/security-regression-tests/SKILL.md` | Changed boundary, actors, and expected deny behavior | Test files and related security boundary source | false confidence and unsafe coverage | `test`, `test_related`, `test_audit`, `lint`, `build` | Security boundary, abuse case, tests, and remaining risks |
126
+ | Outside text, generated content, logs, issues, webpages, or pasted prompts include instructions that could override repository rules or change scope | `.mustflow/skills/external-prompt-injection-defense/SKILL.md` | External text source, direct user request, repository instruction files, conflicting instruction, and command contract entries | Prompts, fixtures, docs, tests, skills, templates, and reports that handle untrusted text | prompt injection, scope drift, or unsafe command authority | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | External sources reviewed, unsafe instructions neutralized, safe requirements adapted, verification, and remaining prompt-injection risk |
127
+
128
+ ### Data and External Systems
129
+
130
+ | Trigger | Skill Document | Required Input | Edit Scope | Risk | Verification Intents | Expected Output |
131
+ | --- | --- | --- | --- | --- | --- | --- |
132
+ | Database schema, query, transaction, ORM model, repository/store, index, cache-backed read model, data retention, pagination, concurrency, idempotency, audit log, or persistence boundary is introduced, changed, reviewed, or reported | `.mustflow/skills/database-change-safety/SKILL.md` | Data role, affected tables or stores, read/write path, transaction boundary, migration or rollback expectations, local DB or ORM patterns, changed files, and command contract entries | Schema, migrations, repositories, stores, queries, transactions, indexes, read models, fixtures, tests, docs, and directly synchronized templates | data loss, stale cache, authorization leak, transaction bug, duplicate side effect, slow query, or unverified migration claim | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Data role, schema/query/transaction review, migration and rollback status, index/performance notes, security/retention checks, tests, verification, and remaining database risk |
133
+ | Packages, runtimes, tools, commands, services, or platform capabilities are assumed, added, invoked, or documented | `.mustflow/skills/dependency-reality-check/SKILL.md` | Dependency or capability, repository declarations, version or capability claim, and command contract entries | Dependency declarations, imports, command metadata, tests, and docs | invented or unavailable dependency | `changes_status`, `changes_diff_summary`, `build`, `test_release`, `mustflow_check` | Dependency status, synchronized surfaces, verification, and remaining dependency risk |
134
+ | External systems, protocols, SDKs, databases, webhooks, queues, files, caches, framework requests or responses, AI models, browser storage, or provider data cross the core boundary or need port/adapter translation, error mapping, retry, idempotency, security, or observability handling | `.mustflow/skills/adapter-boundary/SKILL.md` | External system or protocol, inbound/outbound direction, internal use case, local port/adapter patterns, provider risk, changed files, and command contract entries | Ports, adapters, mappers, controllers, workers, stores, gateways, tests, fixtures, assembly wiring, and directly synchronized docs or templates | provider leakage, pass-through wrapper, unclassified external failure, duplicate side effect, unsafe retry, missing timeout, secret or personal-data leak, or untested integration drift | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Boundary classification, internal port, provider containment, validation and mapping, timeout/retry/idempotency handling, security notes, verification, and remaining provider risk |
135
+ | Core or application logic creates, imports, resolves, or hides external dependencies such as databases, SDKs, clocks, random generators, configuration, loggers, framework objects, filesystems, queues, AI clients, or payment/email providers | `.mustflow/skills/dependency-injection/SKILL.md` | Target code area, hidden dependency, intended business capability, layer ownership, local port/adapter patterns, changed files, and command contract entries | Core logic signatures, ports, adapters, assembly roots, tests, and directly synchronized docs or templates | hidden global state, untestable business logic, provider leakage, lifecycle drift, or service-locator coupling | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Dependency boundary, direct dependencies found, injection style, ports/adapters, assembly boundary, tests or fakes, verification, and remaining dependency leakage |
136
+ | Code, data, schema, configuration, file layout, template, or generated-state migrations are planned, edited, documented, or reported | `.mustflow/skills/migration-safety-check/SKILL.md` | Source state, target state, migration surface owner, idempotency, rollback, dry-run, compatibility, and command contract entries | Migration plans, compatibility notes, lock metadata, docs, tests, templates, generated state, and reports | irreversible migration, data loss, or false migration-success claim | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Migration surface, source and target state, idempotency, rollback, metadata updates, verification, and remaining migration risk |
137
+
138
+ ### UI and Assets
30
139
 
31
140
  | Trigger | Skill Document | Required Input | Edit Scope | Risk | Verification Intents | Expected Output |
32
141
  | --- | --- | --- | --- | --- | --- | --- |
33
142
  | Generated artifacts, packaged files, binary assets, reports, or downloadable outputs are created, referenced, or reported | `.mustflow/skills/artifact-integrity-check/SKILL.md` | Artifact paths, source or generation path, package rules, and artifact expectations | Artifact references, package metadata, tests, and documentation | unverified or stale artifact claim | `changes_status`, `changes_diff_summary`, `test_release`, `build`, `mustflow_check` | Artifact evidence, inclusion or format checks, skipped checks, and integrity risk |
143
+ | A dense plan, suggestion, code explanation, review result, flow map, or decision set would be easier to inspect as a safe static HTML review artifact | `.mustflow/skills/visual-review-artifact/SKILL.md` | User request, artifact goal, target audience, source evidence, output path, and relevant command contract entries | Temporary `.mustflow/state/artifacts/**` output or explicitly requested versioned HTML artifact, plus direct references, docs, or package metadata | unsafe HTML behavior, prompt injection, unverified artifact claim, or mistaken approval authority | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Artifact kind and path, source evidence, review-only boundary, local interactions, verification, skipped checks, and remaining decision risk |
144
+ | User-facing UI, dashboard, settings, navigation, form, copy, responsive layout, accessibility, or visual state changes are planned, edited, reviewed, or reported | `.mustflow/skills/ui-quality-gate/SKILL.md` | Changed UI surface, user task, interaction path, existing patterns, state combinations, localization rules, and command contract entries | UI controls, labels, states, layout constraints, accessibility attributes, localization hooks, docs, templates, and reports | decorative UI drift, inaccessible controls, layout breakage, or unverified visual claim | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | UI surface reviewed, states checked, layout/accessibility/localization notes, skipped visual checks, and remaining UI risk |
145
+ | Web image assets are added, converted, resized, or replaced | `.mustflow/skills/web-asset-optimization/SKILL.md` | Image asset request and target path | Web image assets | asset quality and size | `asset_optimize`, `build` | Optimized asset notes |
146
+
147
+ ### Architecture Patterns
148
+
149
+ | Trigger | Skill Document | Required Input | Edit Scope | Risk | Verification Intents | Expected Output |
150
+ | --- | --- | --- | --- | --- | --- | --- |
34
151
  | Architecture, module boundaries, codebase structure, structural improvement, codebase deepening, or testability needs review before choosing a refactor or abstraction | `.mustflow/skills/architecture-deepening-review/SKILL.md` | Target area, structural pain, local patterns, behavior evidence, current changed files, and command contract entries | Review notes, ranked structure candidates, and at most one scoped structural follow-up when requested | speculative abstraction, broad rewrite, pattern-first design, hidden behavior change, or unverified structure claim | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Review target, evidence, candidate scores, selected next action, narrower skill choice, verification, and remaining architecture risk |
35
- | Code changes need review before report | `.mustflow/skills/code-review/SKILL.md` | Diff and task goal | Changed files | behavior and regression | `test`, `test_related`, `test_audit`, `lint` | Findings or no-issue note |
36
152
  | Code is being refactored, reorganized, renamed, deduplicated, simplified, or structurally improved while existing behavior should be preserved | `.mustflow/skills/behavior-preserving-refactor/SKILL.md` | Refactoring goal, target area, behavior evidence, local patterns, current changed files, and command contract entries | Small behavior-preserving refactor steps, related tests, and directly synchronized docs or contracts | hidden behavior change, broad cleanup, misleading abstraction, unsafe deduplication, or unverified legacy change | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `docs_validate_fast`, `test_release`, `mustflow_check` | Goal, behavior evidence, structural risks, refactoring ladder, changes made, excluded behavior changes, verification, and remaining risks |
37
153
  | Class inheritance, base classes, abstract classes, template methods, protected state, mixins, framework subclasses, or subtype hierarchies are introduced, reviewed, or refactored, especially for behavior reuse or feature variants | `.mustflow/skills/composition-over-inheritance/SKILL.md` | Inheritance surface, reuse goal, change dimensions, local composition patterns, compatibility constraints, current changed files, and command contract entries | Classes, functions, role interfaces, policies, strategies, adapters, decorators, state machines, tests, wrappers, and directly synchronized docs or templates | fragile parent-child coupling, subclass explosion, broken substitutability, hidden protected state, over-composition, or untested behavior-preserving refactor | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Inheritance review, keep-or-replace decision, change dimensions, composition pattern, tests, verification, and remaining hierarchy risk |
38
154
  | Multiple interchangeable algorithms, policies, calculations, scoring methods, sorting methods, recommendation methods, pricing rules, discount rules, shipping methods, payment methods, notification methods, permission policies, provider choices, feature-flag variants, or repeated branches choose how to do the same kind of work | `.mustflow/skills/strategy-pattern/SKILL.md` | Stable workflow, variants and shared purpose, current branch locations, common input and output shape, selection criteria, local Result, dependency injection, decorator, registry, and test patterns, current changed files, and command contract entries | Strategy function types, interfaces, concrete strategies, selectors, resolvers, registries, decorators, context wiring, tests, and directly synchronized docs or templates | over-abstracted small branch, wrong use-case grouping, context knowing concrete strategies, silent fallback, unsafe user-selected strategy, request-stateful strategy, strategy combination explosion, or untested selector behavior | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Strategy classification, shared contract, strategy registry, selector or resolver, default and unsupported-key behavior, tests, verification, and remaining strategy risk |
@@ -42,42 +158,21 @@ refer to `AGENTS.md` and `.mustflow/config/commands.toml` to implement the most
42
158
  | Domain objects have lifecycle state, status fields, phase or step fields, allowed actions depend on state, transitions are scattered, external results change state, duplicate events are possible, or state changes need transition tables, guards, effects, history, idempotency, or concurrency control | `.mustflow/skills/state-machine-pattern/SKILL.md` | Entity, state field, state list, event list, terminal states, current state-changing code, guards, context facts, effects, history, idempotency, concurrency risks, local Result and outbox patterns, and command contract entries | State unions, event unions, transition tables, guard functions, pure transition functions, dispatch shell, outbox, transition logs, idempotency records, available-action helpers, tests, and directly synchronized docs or templates | direct state assignment, hidden invalid transition, silent no-op, impure guard, external effect before commit, duplicate webhook damage, state explosion, stale concurrent transition, UI/server rule drift, or untested lifecycle | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Lifecycle classification, states and events, transition table, guards and context facts, effects and history, idempotency and concurrency choices, direct assignment cleanup, tests, verification, and remaining state-machine risk |
43
159
  | Expected failures, meaningful absence, null or undefined returns, thrown business errors, boolean success flags, raw string errors, repository lookups, validation, parsing, external adapter errors, or boundary error mapping need explicit value-based handling | `.mustflow/skills/result-option/SKILL.md` | Operation semantics, absence and failure cases, local Result/Option/error conventions, layer ownership, public response rules, sensitive data constraints, changed files, and command contract entries | Result and Option helpers, function signatures, typed errors, boundary mappers, repository/service/controller contracts, tests, and directly synchronized docs or templates | hidden null, swallowed error, thrown business failure, ambiguous boolean result, provider error leakage, public error-shape drift, or over-wrapped total function | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Return shape decision, error codes and categories, absence handling, boundary conversions, preserved throw paths, tests, verification, and remaining exception or null risk |
44
160
  | Repeated null, undefined, None, or nil checks, optional dependencies, disabled integrations, null loggers, null analytics, null caches, optional notifications, no-op collaborators, identity processors, or safe neutral implementations are introduced or refactored | `.mustflow/skills/null-object-pattern/SKILL.md` | Optional collaborator, interface, absence semantics, caller branch needs, neutral output, required side effects, security, money, data, and audit risks, assembly location, local Result, Option, dependency injection, strategy, and test patterns | Interfaces, null, no-op, disabled, identity, empty, deny-all, or failing implementations, assembly wiring, non-null dependency types, tests, and directly synchronized docs or templates | hidden required failure, fake success, authorization bypass, dropped persistence, skipped audit, swallowed initialization error, stateful null object, or caller still nullable | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Absence classification, null object decision, neutral implementation, assembly selection, nullable caller cleanup, tests, verification, and remaining hidden-failure risk |
45
- | User requirements, acceptance criteria, issue reports, bug reports, product notes, compatibility promises, or examples must be preserved as regression coverage before or during implementation | `.mustflow/skills/requirement-regression-guard/SKILL.md` | Requirement source, observable behavior, existing tests or fixtures, implementation scope, changed files, and command contract entries | Focused tests, fixtures, examples, schemas, docs, and implementation changes directly tied to the requirement | untested requirement, invented acceptance criteria, weakened tests, hidden behavior drift, or unverifiable implementation claim | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `test_audit`, `docs_validate_fast`, `test_release`, `mustflow_check` | Requirement sources, coverage map, guards added or reused, implementation changes, deferred requirements, verification, and remaining regression risk |
161
+ | Implementation in an unfamiliar area needs a local precedent before new structure is introduced | `.mustflow/skills/pattern-scout/SKILL.md` | User request, intended file area, nearby examples, and current changed files | Pattern evidence and files needed to follow it | invented parallel structure | `changes_status`, `changes_diff_summary`, `mustflow_check` | Local pattern, applied alignment, intentional deviations, and verification |
162
+
163
+ ### Workflow and Contract Maintenance
164
+
165
+ | Trigger | Skill Document | Required Input | Edit Scope | Risk | Verification Intents | Expected Output |
166
+ | --- | --- | --- | --- | --- | --- | --- |
46
167
  | Multiple AI workers, subagents, external agents, parallel task runners, or worktree-based worker roles are planned or used for one repository task | `.mustflow/skills/multi-agent-work-coordination/SKILL.md` | Task goal, worker roles, write permissions, file ownership, workspace isolation, credential boundary, merge owner, and command contract entries | Coordination plan, worker instructions, ownership boundaries, merge notes, and directly synchronized tests or docs | same-file races, conflicting instructions, leaked credentials, shared auth cache, untrusted worker output, merge drift, or unverified parallel result | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `docs_validate_fast`, `test_release`, `mustflow_check` | Worker limit, role map, write ownership, isolation and credential boundaries, merge owner, verification, skipped checks, and remaining coordination risk |
47
- | An unfamiliar codebase area needs an evidence-based map before planning, implementation, or reporting | `.mustflow/skills/codebase-orientation/SKILL.md` | User request, target area, relevant instructions, and current source, test, schema, template, configuration, or documentation files | Read-only orientation notes and any smallest follow-up edit chosen from inspected evidence | stale documentation, wrong ownership boundary, or invented architecture claim | `changes_status`, `changes_diff_summary`, `mustflow_check` | Scope inspected, entrypoints, flow map, ownership boundaries, verification options, risks, unknowns, and smallest safe next step |
48
168
  | Repository improvement, audit, prioritization, stabilization, polish, onboarding, contributor-readiness, production-readiness, or iterative improvement is requested without a single predetermined edit | `.mustflow/skills/repo-improvement-loop/SKILL.md` | User goal, improvement mode, repository evidence, candidate risks, current changed files, and command contract entries | Repository diagnosis, ranked candidates, and at most one scoped improvement cycle unless the user explicitly requests analysis-only | idea spam, ungrounded prioritization, autonomous loop drift, broad rewrite, or unverified improvement claim | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Mode, evidence inspected, scored candidates, selected improvement, files changed or analysis-only note, verification, next improvement question, and stop reason |
49
- | A dense plan, suggestion, code explanation, review result, flow map, or decision set would be easier to inspect as a safe static HTML review artifact | `.mustflow/skills/visual-review-artifact/SKILL.md` | User request, artifact goal, target audience, source evidence, output path, and relevant command contract entries | Temporary `.mustflow/state/artifacts/**` output or explicitly requested versioned HTML artifact, plus direct references, docs, or package metadata | unsafe HTML behavior, prompt injection, unverified artifact claim, or mistaken approval authority | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Artifact kind and path, source evidence, review-only boundary, local interactions, verification, skipped checks, and remaining decision risk |
50
- | Changed files need risk classification and verification selection | `.mustflow/skills/diff-risk-review/SKILL.md` | Changed-file list, diff summary, and task goal | Changed surfaces and verification report | under- or over-verification | `changes_status`, `changes_diff_summary`, `test`, `test_related`, `test_audit`, `lint`, `build`, `docs_validate`, `mustflow_check` | Risk level, verification choice, rollback notes |
51
169
  | Declared behavior must stay aligned across code, schemas, templates, tests, and docs | `.mustflow/skills/contract-sync-check/SKILL.md` | Changed files, intended behavior, source of truth, derived surfaces, and command contract entries | Contract source and required synchronized surfaces | contract drift | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Contract source, synchronized surfaces, deferred surfaces, verification, and drift risk |
52
170
  | Dates, versions, counts, durations, limits, metrics, benchmarks, prices, percentages, or other numeric facts are created, edited, or reported | `.mustflow/skills/date-number-audit/SKILL.md` | Date or numeric fact, source of truth, dependent surfaces, precision expectation, and command contract entries | Numeric statements, metadata, tests, docs, templates, and reports | invented, stale, or mismatched numeric claim | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Audited values, source of truth, synchronized surfaces, skipped checks, and remaining numeric risk |
53
- | Database schema, query, transaction, ORM model, repository/store, index, cache-backed read model, data retention, pagination, concurrency, idempotency, audit log, or persistence boundary is introduced, changed, reviewed, or reported | `.mustflow/skills/database-change-safety/SKILL.md` | Data role, affected tables or stores, read/write path, transaction boundary, migration or rollback expectations, local DB or ORM patterns, changed files, and command contract entries | Schema, migrations, repositories, stores, queries, transactions, indexes, read models, fixtures, tests, docs, and directly synchronized templates | data loss, stale cache, authorization leak, transaction bug, duplicate side effect, slow query, or unverified migration claim | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Data role, schema/query/transaction review, migration and rollback status, index/performance notes, security/retention checks, tests, verification, and remaining database risk |
54
- | Packages, runtimes, tools, commands, services, or platform capabilities are assumed, added, invoked, or documented | `.mustflow/skills/dependency-reality-check/SKILL.md` | Dependency or capability, repository declarations, version or capability claim, and command contract entries | Dependency declarations, imports, command metadata, tests, and docs | invented or unavailable dependency | `changes_status`, `changes_diff_summary`, `build`, `test_release`, `mustflow_check` | Dependency status, synchronized surfaces, verification, and remaining dependency risk |
55
- | External systems, protocols, SDKs, databases, webhooks, queues, files, caches, framework requests or responses, AI models, browser storage, or provider data cross the core boundary or need port/adapter translation, error mapping, retry, idempotency, security, or observability handling | `.mustflow/skills/adapter-boundary/SKILL.md` | External system or protocol, inbound/outbound direction, internal use case, local port/adapter patterns, provider risk, changed files, and command contract entries | Ports, adapters, mappers, controllers, workers, stores, gateways, tests, fixtures, assembly wiring, and directly synchronized docs or templates | provider leakage, pass-through wrapper, unclassified external failure, duplicate side effect, unsafe retry, missing timeout, secret or personal-data leak, or untested integration drift | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Boundary classification, internal port, provider containment, validation and mapping, timeout/retry/idempotency handling, security notes, verification, and remaining provider risk |
56
- | Core or application logic creates, imports, resolves, or hides external dependencies such as databases, SDKs, clocks, random generators, configuration, loggers, framework objects, filesystems, queues, AI clients, or payment/email providers | `.mustflow/skills/dependency-injection/SKILL.md` | Target code area, hidden dependency, intended business capability, layer ownership, local port/adapter patterns, changed files, and command contract entries | Core logic signatures, ports, adapters, assembly roots, tests, and directly synchronized docs or templates | hidden global state, untestable business logic, provider leakage, lifecycle drift, or service-locator coupling | `changes_status`, `changes_diff_summary`, `test_related`, `test`, `lint`, `build`, `docs_validate_fast`, `test_release`, `mustflow_check` | Dependency boundary, direct dependencies found, injection style, ports/adapters, assembly boundary, tests or fakes, verification, and remaining dependency leakage |
57
171
  | Git reports CRLF/LF warnings or tracked text files may need line-ending normalization | `.mustflow/skills/line-ending-hygiene/SKILL.md` | Warning text or changed-file evidence, line-ending policy, changed-file status, and command contract entries | Line-ending policy files, tracked text files, command metadata, tests, and reports | silent working-tree rewrite or policy drift | `line_endings_check`, `changes_status`, `mustflow_check` | Policy found, drift files, normalization status, verification, and remaining line-ending risk |
58
- | Performance budgets, bundle size, page weight, startup time, command duration, memory use, asset size, throughput, latency, benchmark output, or performance claims are planned, edited, reviewed, or reported | `.mustflow/skills/performance-budget-check/SKILL.md` | Performance surface, budget source, measurement method, environment boundary, and command contract entries | Budget checks, thresholds, measurements, dependency tradeoff notes, tests, docs, package metadata, and reports | invented budgets, stale measurements, hidden performance cost, or unverified speed claim | `changes_status`, `changes_diff_summary`, `build`, `test_related`, `docs_validate_fast`, `test_release`, `mustflow_check` | Performance surface, budget source, measurement boundary, synchronized claims, skipped measurements, and remaining performance risk |
59
- | The user explicitly requests TDD, test-first work, red-green-refactor, RED/GREEN, or one observable behavior slice at a time | `.mustflow/skills/vertical-slice-tdd/SKILL.md` | TDD trigger, first behavior contract, existing tests, expected RED category, baseline status, and command contract entries | One focused test or fixture, the smallest implementation for the current slice, and directly synchronized docs when needed | invalid RED, broad slice, premature refactor, unrelated cleanup, or verification claim without configured command evidence | `changes_status`, `changes_diff_summary`, `test_related`, `test_audit`, `test`, `lint`, `build`, `mustflow_check` | Slice scope, existing coverage, RED category evidence, GREEN verification, refactors after GREEN, deferred slices, and remaining TDD risk |
60
- | New tests or test cases are designed, TDD RED or GREEN evidence is reported, or test-case choices are made for requirements, bugs, refactors, security boundaries, schemas, templates, or public docs | `.mustflow/skills/test-design-guard/SKILL.md` | Contract source, existing coverage, intended RED evidence, candidate cases, baseline status, and command contract entries | Tests, fixtures, helpers, and directly synchronized contract docs | invalid RED, happy-path-only coverage, speculative edge cases, weak assertions, mock-only confidence, or implementation-detail coupling | `test_related`, `test_audit`, `test`, `lint`, `build`, `test_release`, `mustflow_check` | RED category, selected test shape, evidence-backed cases, rejected speculation, verification objective, commands, and remaining test-design risk |
61
- | Tests are added, updated, removed, or audited | `.mustflow/skills/test-maintenance/SKILL.md` | Changed behavior or stale-test evidence | Test files and related source | contract drift | `test`, `test_related`, `test_audit`, `snapshot_update`, `lint`, `build` | Test rationale and verification |
62
- | Code, configuration, docs, templates, logs, telemetry, credentials, or data flows affect secrets, personal data, authentication, authorization, retention, or external disclosure | `.mustflow/skills/security-privacy-review/SKILL.md` | Changed files, sensitive surfaces, project secret and privacy rules, public or packaged surfaces, and command contract entries | Sensitive data handling, logs, receipts, generated state, docs, templates, package metadata, and reports | secret leak, personal-data exposure, or misleading privacy claim | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Sensitive surfaces reviewed, disclosure paths checked, redaction or omission changes, related test need, and remaining security or privacy risk |
63
- | Security-sensitive behavior changes need abuse-case regression tests | `.mustflow/skills/security-regression-tests/SKILL.md` | Changed boundary, actors, and expected deny behavior | Test files and related security boundary source | false confidence and unsafe coverage | `test`, `test_related`, `test_audit`, `lint`, `build` | Security boundary, abuse case, tests, and remaining risks |
64
- | A configured command intent or verification step fails | `.mustflow/skills/failure-triage/SKILL.md` | Failing intent and output tail | Failure cause only | misdiagnosis | `mustflow_check`; original failing intent | Root cause, fix, rerun result |
65
- | Outside text, generated content, logs, issues, webpages, or pasted prompts include instructions that could override repository rules or change scope | `.mustflow/skills/external-prompt-injection-defense/SKILL.md` | External text source, direct user request, repository instruction files, conflicting instruction, and command contract entries | Prompts, fixtures, docs, tests, skills, templates, and reports that handle untrusted text | prompt injection, scope drift, or unsafe command authority | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | External sources reviewed, unsafe instructions neutralized, safe requirements adapted, verification, and remaining prompt-injection risk |
66
172
  | External `SKILL.md` files, skill packs, awesome lists, GitHub skill repositories, installer recommendations, or third-party skill procedures are reviewed for possible mustflow adoption | `.mustflow/skills/external-skill-intake/SKILL.md` | Source path or URL, license or provenance evidence, external skill files, intended adoption outcome, existing skill overlap, and command contract entries | Skill procedures, skill routes, template metadata, tests, docs, and review notes that adapt the external idea | third-party command bypass, license or provenance gap, unsafe helper script, duplicated skill, stale source claim, or default-profile bloat | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Source review, overlap decision, safety findings, command-intent mapping, adoption decision, synchronized surfaces, verification, and remaining intake risk |
67
173
  | Repository, host, user, nested-project, command-contract, preference, or generated instruction sources conflict or make safe scope unclear | `.mustflow/skills/instruction-conflict-scope-check/SKILL.md` | Conflicting instruction sources, affected scope, direct user request, command contract entries, and nearest instruction files | Workflow docs, skills, templates, tests, reports, and selected repository scope | authority drift, unsafe scope expansion, wrong repository edit, or unauthorized command | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Conflicts reviewed, chosen priority rule, narrowed or skipped actions, clarification changes, and remaining authority risk |
68
- | Code, data, schema, configuration, file layout, template, or generated-state migrations are planned, edited, documented, or reported | `.mustflow/skills/migration-safety-check/SKILL.md` | Source state, target state, migration surface owner, idempotency, rollback, dry-run, compatibility, and command contract entries | Migration plans, compatibility notes, lock metadata, docs, tests, templates, generated state, and reports | irreversible migration, data loss, or false migration-success claim | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Migration surface, source and target state, idempotency, rollback, metadata updates, verification, and remaining migration risk |
69
- | User-facing UI, dashboard, settings, navigation, form, copy, responsive layout, accessibility, or visual state changes are planned, edited, reviewed, or reported | `.mustflow/skills/ui-quality-gate/SKILL.md` | Changed UI surface, user task, interaction path, existing patterns, state combinations, localization rules, and command contract entries | UI controls, labels, states, layout constraints, accessibility attributes, localization hooks, docs, templates, and reports | decorative UI drift, inaccessible controls, layout breakage, or unverified visual claim | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | UI surface reviewed, states checked, layout/accessibility/localization notes, skipped visual checks, and remaining UI risk |
70
- | Implementation in an unfamiliar area needs a local precedent before new structure is introduced | `.mustflow/skills/pattern-scout/SKILL.md` | User request, intended file area, nearby examples, and current changed files | Pattern evidence and files needed to follow it | invented parallel structure | `changes_status`, `changes_diff_summary`, `mustflow_check` | Local pattern, applied alignment, intentional deviations, and verification |
71
- | New feature, module, folder layout, architecture, scaffold, refactor, routing, data model, or external service integration may require hidden structure decisions before coding | `.mustflow/skills/structure-discovery-gate/SKILL.md` | User request, intended capability, hidden assumptions, named technologies or services, and relevant local patterns | Questions, assumptions, proposed file boundaries, and the smallest resulting implementation | brittle structure, vendor-name leakage, over-questioning, or speculative abstraction | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Blocking questions, assumptions, proposed files and responsibilities, dependency direction, local pattern, verification, and remaining structure risk |
72
- | A bug or confusing failure needs a fix before the smallest deterministic reproduction or cause is clear | `.mustflow/skills/repro-first-debug/SKILL.md` | Symptom, expected behavior, observed output, failing intent or action, likely changed files, and known flakiness or environment limits | Diagnostic reads, focused reproduction, temporary instrumentation, smallest fix, and symptom-tied regression guard | speculative fix, flaky reproduction, lingering debug output, broad unrelated test, or over-testing | `test_related`, `test_fast`, `mustflow_check` | Symptom, reproduction path or gap, hypotheses, observations, fix, original reproduction rerun, verification, and remaining risk |
73
- | Claims, adoption decisions, research notes, methodology recommendations, tool comparisons, or external summaries depend on current, external, dated, versioned, or otherwise drift-prone sources | `.mustflow/skills/source-freshness-check/SKILL.md` | Stale-sensitive claim or recommendation, source text or page, date or version context, source policy, and intended adoption surface | Source wording, documentation, skill procedures, templates, tests, schemas, and freshness report | stale or unverifiable claim, copied external authority, or unsafe adoption | `changes_status`, `docs_validate_fast`, `mustflow_check` | Checked source boundary, research split, adoption decision, wording changes, skipped refreshes, and stale-source risk |
74
174
  | `.mustflow/context/PROJECT.md` needs cautious project context | `.mustflow/skills/project-context-authoring/SKILL.md` | Supported project facts | `.mustflow/context/PROJECT.md` | authority drift | `mustflow_check` | Updated cautious context |
75
175
  | Skill procedures or routes are created or maintained | `.mustflow/skills/skill-authoring/SKILL.md` | Repeated task evidence | `.mustflow/skills/**` | overlap and command drift | `mustflow_check`, `docs_validate` | Skill route and procedure changes |
76
- | `README.md` is created, restructured, or substantially rewritten | `.mustflow/skills/readme-authoring/SKILL.md` | User request, existing README if any, repository evidence, nearest instructions, and command contracts | `README.md` and directly linked public docs | invented project claims, marketing drift, or loss of human-authored intent | `docs_validate_fast`, `mustflow_check` | Evidence-based README changes, preserved or deferred sections, verification notes |
77
- | Release notes, changelog entries, public change summaries, release preparation copy, or package release wording are drafted or revised | `.mustflow/skills/release-notes-authoring/SKILL.md` | User-provided change summary, current diff summary, release audience, public surfaces, version source, and command contract entries | Release notes, changelog entries, release preparation notes, and directly synchronized docs or package metadata | invented release history, inflated public claims, internal noise, stale version or migration notes, or unverified release evidence | `changes_status`, `changes_diff_summary`, `docs_validate_fast`, `test_release`, `mustflow_check` | Release audience, categorized notes, excluded internal changes, version or migration checks, verification, skipped release-history checks, and remaining release-note risk |
78
- | Documentation review queue entries need prose cleanup | `.mustflow/skills/docs-prose-review/SKILL.md` | Review queue entry or selected document path, review comment if present, target language, reviewer metadata | Selected documentation file and review ledger entry | meaning drift or stale queue state | `docs_validate`, `mustflow_check` | Prose changes, recorded review status, verification notes |
79
- | Web image assets are added, converted, resized, or replaced | `.mustflow/skills/web-asset-optimization/SKILL.md` | Image asset request and target path | Web image assets | asset quality and size | `asset_optimize`, `build` | Optimized asset notes |
80
- | Documentation changes affect public or workflow docs | `.mustflow/skills/docs-update/SKILL.md` | Changed behavior or field | Relevant docs only | stale public docs | `docs_validate_fast`, `docs_validate`, `mustflow_check` | Doc changes and skipped checks |
81
176
 
82
177
  When introducing a new skill, link it here and define the specific trigger and route fields.
83
178
  Avoid including raw shell commands in skill documents; instead, reference the command intent
@@ -0,0 +1,289 @@
1
+ schema_version = "1"
2
+
3
+ [routes."artifact-integrity-check"]
4
+ category = "ui_assets"
5
+ route_type = "adjunct"
6
+ priority = 80
7
+ applies_to_reasons = ["package_metadata_change", "release_risk"]
8
+
9
+ [routes."architecture-deepening-review"]
10
+ category = "architecture_patterns"
11
+ route_type = "primary"
12
+ priority = 70
13
+ applies_to_reasons = ["code_change", "cross_cutting_code_change"]
14
+
15
+ [routes."code-review"]
16
+ category = "general_code"
17
+ route_type = "primary"
18
+ priority = 50
19
+ applies_to_reasons = ["code_change", "behavior_change"]
20
+
21
+ [routes."behavior-preserving-refactor"]
22
+ category = "architecture_patterns"
23
+ route_type = "primary"
24
+ priority = 40
25
+ applies_to_reasons = ["code_change", "behavior_change"]
26
+
27
+ [routes."composition-over-inheritance"]
28
+ category = "architecture_patterns"
29
+ route_type = "primary"
30
+ priority = 80
31
+ applies_to_reasons = ["code_change"]
32
+
33
+ [routes."strategy-pattern"]
34
+ category = "architecture_patterns"
35
+ route_type = "primary"
36
+ priority = 80
37
+ applies_to_reasons = ["code_change"]
38
+
39
+ [routes."command-pattern"]
40
+ category = "architecture_patterns"
41
+ route_type = "primary"
42
+ priority = 80
43
+ applies_to_reasons = ["code_change", "behavior_change"]
44
+
45
+ [routes."facade-pattern"]
46
+ category = "architecture_patterns"
47
+ route_type = "primary"
48
+ priority = 80
49
+ applies_to_reasons = ["code_change"]
50
+
51
+ [routes."pure-core-imperative-shell"]
52
+ category = "architecture_patterns"
53
+ route_type = "primary"
54
+ priority = 80
55
+ applies_to_reasons = ["code_change", "behavior_change"]
56
+
57
+ [routes."state-machine-pattern"]
58
+ category = "architecture_patterns"
59
+ route_type = "primary"
60
+ priority = 80
61
+ applies_to_reasons = ["code_change", "behavior_change"]
62
+
63
+ [routes."result-option"]
64
+ category = "architecture_patterns"
65
+ route_type = "primary"
66
+ priority = 75
67
+ applies_to_reasons = ["code_change", "public_api_change"]
68
+
69
+ [routes."null-object-pattern"]
70
+ category = "architecture_patterns"
71
+ route_type = "primary"
72
+ priority = 75
73
+ applies_to_reasons = ["code_change"]
74
+
75
+ [routes."requirement-regression-guard"]
76
+ category = "tests"
77
+ route_type = "adjunct"
78
+ priority = 35
79
+ applies_to_reasons = ["behavior_change", "test_change"]
80
+
81
+ [routes."multi-agent-work-coordination"]
82
+ category = "workflow_contracts"
83
+ route_type = "adjunct"
84
+ priority = 90
85
+ applies_to_reasons = ["workflow_change"]
86
+
87
+ [routes."codebase-orientation"]
88
+ category = "general_code"
89
+ route_type = "primary"
90
+ priority = 20
91
+ applies_to_reasons = ["unknown_change", "code_change"]
92
+
93
+ [routes."repo-improvement-loop"]
94
+ category = "workflow_contracts"
95
+ route_type = "primary"
96
+ priority = 45
97
+ applies_to_reasons = ["mustflow_docs_change", "mustflow_config_change"]
98
+
99
+ [routes."visual-review-artifact"]
100
+ category = "ui_assets"
101
+ route_type = "adjunct"
102
+ priority = 75
103
+ applies_to_reasons = ["docs_change"]
104
+
105
+ [routes."diff-risk-review"]
106
+ category = "general_code"
107
+ route_type = "adjunct"
108
+ priority = 30
109
+ applies_to_reasons = ["unknown_change", "code_change"]
110
+
111
+ [routes."contract-sync-check"]
112
+ category = "workflow_contracts"
113
+ route_type = "adjunct"
114
+ priority = 25
115
+ applies_to_reasons = ["public_api_change", "package_metadata_change", "mustflow_config_change"]
116
+
117
+ [routes."date-number-audit"]
118
+ category = "workflow_contracts"
119
+ route_type = "adjunct"
120
+ priority = 25
121
+ applies_to_reasons = ["docs_change", "package_metadata_change"]
122
+
123
+ [routes."database-change-safety"]
124
+ category = "data_external"
125
+ route_type = "primary"
126
+ priority = 55
127
+ applies_to_reasons = ["code_change", "behavior_change"]
128
+
129
+ [routes."dependency-reality-check"]
130
+ category = "data_external"
131
+ route_type = "adjunct"
132
+ priority = 45
133
+ applies_to_reasons = ["code_change", "docs_change"]
134
+
135
+ [routes."adapter-boundary"]
136
+ category = "data_external"
137
+ route_type = "primary"
138
+ priority = 55
139
+ applies_to_reasons = ["code_change", "behavior_change"]
140
+
141
+ [routes."dependency-injection"]
142
+ category = "data_external"
143
+ route_type = "primary"
144
+ priority = 70
145
+ applies_to_reasons = ["code_change"]
146
+
147
+ [routes."line-ending-hygiene"]
148
+ category = "workflow_contracts"
149
+ route_type = "event"
150
+ priority = 70
151
+ applies_to_reasons = ["formatting_change"]
152
+
153
+ [routes."performance-budget-check"]
154
+ category = "general_code"
155
+ route_type = "adjunct"
156
+ priority = 70
157
+ applies_to_reasons = ["performance_change"]
158
+
159
+ [routes."vertical-slice-tdd"]
160
+ category = "tests"
161
+ route_type = "primary"
162
+ priority = 60
163
+ applies_to_reasons = ["test_change", "behavior_change"]
164
+
165
+ [routes."test-design-guard"]
166
+ category = "tests"
167
+ route_type = "adjunct"
168
+ priority = 40
169
+ applies_to_reasons = ["test_change", "behavior_change"]
170
+
171
+ [routes."test-maintenance"]
172
+ category = "tests"
173
+ route_type = "primary"
174
+ priority = 45
175
+ applies_to_reasons = ["test_change"]
176
+
177
+ [routes."security-privacy-review"]
178
+ category = "security_privacy"
179
+ route_type = "adjunct"
180
+ priority = 30
181
+ applies_to_reasons = ["security_change", "privacy_change"]
182
+
183
+ [routes."security-regression-tests"]
184
+ category = "security_privacy"
185
+ route_type = "adjunct"
186
+ priority = 50
187
+ applies_to_reasons = ["security_change", "test_change"]
188
+
189
+ [routes."failure-triage"]
190
+ category = "bug_failure"
191
+ route_type = "event"
192
+ priority = 20
193
+ applies_to_reasons = ["command_failure"]
194
+
195
+ [routes."external-prompt-injection-defense"]
196
+ category = "security_privacy"
197
+ route_type = "adjunct"
198
+ priority = 40
199
+ applies_to_reasons = ["docs_change", "security_change"]
200
+
201
+ [routes."external-skill-intake"]
202
+ category = "workflow_contracts"
203
+ route_type = "authoring"
204
+ priority = 70
205
+ applies_to_reasons = ["mustflow_docs_change"]
206
+
207
+ [routes."instruction-conflict-scope-check"]
208
+ category = "workflow_contracts"
209
+ route_type = "adjunct"
210
+ priority = 35
211
+ applies_to_reasons = ["mustflow_docs_change", "mustflow_config_change"]
212
+
213
+ [routes."migration-safety-check"]
214
+ category = "data_external"
215
+ route_type = "adjunct"
216
+ priority = 60
217
+ applies_to_reasons = ["migration_change"]
218
+
219
+ [routes."ui-quality-gate"]
220
+ category = "ui_assets"
221
+ route_type = "primary"
222
+ priority = 50
223
+ applies_to_reasons = ["ui_change"]
224
+
225
+ [routes."pattern-scout"]
226
+ category = "architecture_patterns"
227
+ route_type = "adjunct"
228
+ priority = 30
229
+ applies_to_reasons = ["code_change"]
230
+
231
+ [routes."structure-discovery-gate"]
232
+ category = "general_code"
233
+ route_type = "primary"
234
+ priority = 35
235
+ applies_to_reasons = ["code_change", "unknown_change"]
236
+
237
+ [routes."repro-first-debug"]
238
+ category = "bug_failure"
239
+ route_type = "primary"
240
+ priority = 25
241
+ applies_to_reasons = ["behavior_change", "unknown_change"]
242
+
243
+ [routes."source-freshness-check"]
244
+ category = "docs_release"
245
+ route_type = "adjunct"
246
+ priority = 65
247
+ applies_to_reasons = ["docs_change"]
248
+
249
+ [routes."project-context-authoring"]
250
+ category = "workflow_contracts"
251
+ route_type = "authoring"
252
+ priority = 65
253
+ applies_to_reasons = ["mustflow_docs_change"]
254
+
255
+ [routes."skill-authoring"]
256
+ category = "workflow_contracts"
257
+ route_type = "authoring"
258
+ priority = 55
259
+ applies_to_reasons = ["mustflow_docs_change"]
260
+
261
+ [routes."readme-authoring"]
262
+ category = "docs_release"
263
+ route_type = "primary"
264
+ priority = 50
265
+ applies_to_reasons = ["docs_change"]
266
+
267
+ [routes."release-notes-authoring"]
268
+ category = "docs_release"
269
+ route_type = "primary"
270
+ priority = 55
271
+ applies_to_reasons = ["release_risk", "docs_change"]
272
+
273
+ [routes."docs-prose-review"]
274
+ category = "docs_release"
275
+ route_type = "adjunct"
276
+ priority = 70
277
+ applies_to_reasons = ["docs_change", "copy_change"]
278
+
279
+ [routes."web-asset-optimization"]
280
+ category = "ui_assets"
281
+ route_type = "adjunct"
282
+ priority = 65
283
+ applies_to_reasons = ["image_asset_change", "web_asset_change"]
284
+
285
+ [routes."docs-update"]
286
+ category = "docs_release"
287
+ route_type = "primary"
288
+ priority = 35
289
+ applies_to_reasons = ["docs_change", "copy_change", "i18n_change"]
@@ -1,6 +1,6 @@
1
1
  id = "default"
2
2
  name = "default"
3
- version = "1.31.0"
3
+ version = "2.16.0"
4
4
  description = "Minimal workflow for LLM agents to read, edit, and verify their work in a repository."
5
5
  common_root = "common"
6
6
  locales_root = "locales"
@@ -10,6 +10,7 @@ creates = [
10
10
  ".mustflow/context/INDEX.md",
11
11
  ".mustflow/context/PROJECT.md",
12
12
  ".mustflow/skills/INDEX.md",
13
+ ".mustflow/skills/routes.toml",
13
14
  ".mustflow/skills/adapter-boundary/SKILL.md",
14
15
  ".mustflow/skills/artifact-integrity-check/SKILL.md",
15
16
  ".mustflow/skills/architecture-deepening-review/SKILL.md",
@@ -81,7 +82,7 @@ after_install = [
81
82
 
82
83
  [profiles]
83
84
  default = "minimal"
84
- available = ["minimal", "oss", "team", "product", "library"]
85
+ available = ["minimal", "patterns", "oss", "team", "product", "library"]
85
86
 
86
87
  [skill_profiles]
87
88
  minimal = [
@@ -89,6 +90,31 @@ minimal = [
89
90
  "behavior-preserving-refactor",
90
91
  "code-review",
91
92
  "codebase-orientation",
93
+ "contract-sync-check",
94
+ "date-number-audit",
95
+ "database-change-safety",
96
+ "dependency-reality-check",
97
+ "diff-risk-review",
98
+ "docs-update",
99
+ "external-prompt-injection-defense",
100
+ "failure-triage",
101
+ "instruction-conflict-scope-check",
102
+ "pattern-scout",
103
+ "requirement-regression-guard",
104
+ "repro-first-debug",
105
+ "security-privacy-review",
106
+ "source-freshness-check",
107
+ "structure-discovery-gate",
108
+ "test-design-guard",
109
+ "test-maintenance",
110
+ "vertical-slice-tdd",
111
+ ]
112
+ patterns = [
113
+ "adapter-boundary",
114
+ "architecture-deepening-review",
115
+ "behavior-preserving-refactor",
116
+ "code-review",
117
+ "codebase-orientation",
92
118
  "command-pattern",
93
119
  "composition-over-inheritance",
94
120
  "contract-sync-check",
@@ -105,6 +131,7 @@ minimal = [
105
131
  "null-object-pattern",
106
132
  "pattern-scout",
107
133
  "pure-core-imperative-shell",
134
+ "repo-improvement-loop",
108
135
  "result-option",
109
136
  "requirement-regression-guard",
110
137
  "repro-first-debug",