bms-speckit-plugin 6.9.0 → 6.10.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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bms-speckit",
3
- "version": "6.9.0",
3
+ "version": "6.10.0",
4
4
  "description": "Chain-orchestrated development pipeline with 12-step autonomous workflow (brainstorm → research → constitution → specify → plan → tasks → analyze → implement with rolling QC → final quality gate → merge) and 9-dimension QC agent (code errors, security incl. SQL parameterization, deps, UX/UI, accessibility, deployment artifacts, cross-DB compatibility, real-DB integration testing, HOSxP business logic validation, brand/layout polish). Runs autonomously — never prompts for clarification.",
5
5
  "author": {
6
6
  "name": "manoirx"
@@ -250,17 +250,7 @@ chain_sequence:
250
250
 
251
251
  # ── Phase 2: Implementation (main context) ────────────────────────────────
252
252
 
253
- - step_id: step_9_compact
254
- skill_id: internal.compact
255
- action: execute
256
- phase: 2
257
- description: Free context window before implementation
258
- timeout_seconds: 30
259
- error_handling:
260
- on_failure: continue
261
- max_retries: 0
262
-
263
- - step_id: step_10_implement_with_rolling_qc
253
+ - step_id: step_9_implement_with_rolling_qc
264
254
  skill_id: speckit.implement
265
255
  action: execute_loop
266
256
  phase: 2
@@ -320,7 +310,7 @@ chain_sequence:
320
310
  validation pass. Apply improvements, re-run all tests, confirm zero
321
311
  regression. Only output FINISHED after everything is validated.
322
312
 
323
- - step_id: step_11_final_quality_gate
313
+ - step_id: step_10_final_quality_gate
324
314
  agent_id: bms-speckit:quality-control
325
315
  action: dispatch_agent
326
316
  phase: 2
@@ -355,7 +345,7 @@ chain_sequence:
355
345
  Proceed to merge unless unfixed build errors, test failures, or
356
346
  critical security vulnerabilities remain.
357
347
 
358
- - step_id: step_12_merge
348
+ - step_id: step_11_merge
359
349
  skill_id: internal.git_merge_to_main
360
350
  action: execute
361
351
  phase: 2
@@ -396,6 +386,6 @@ metadata:
396
386
  reason: Preserve main context window for implementation
397
387
  phase_2:
398
388
  name: Implementation & Verification & Merge
399
- steps: [step_9 through step_12]
389
+ steps: [step_9 through step_11]
400
390
  execution: main_context
401
391
  reason: Implementation needs full tool access and ralph-loop
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bms-speckit-plugin",
3
- "version": "6.9.0",
3
+ "version": "6.10.0",
4
4
  "description": "Chain-orchestrated development pipeline: /bms-speckit takes requirements and runs brainstorm → constitution → specify → plan → tasks → analyze → implement → verify with per-step error handling",
5
5
  "files": [
6
6
  ".claude-plugin/",
@@ -48,10 +48,9 @@ TaskCreate: "Step 5: Specify — feature specification"
48
48
  TaskCreate: "Step 6: Plan — implementation plan"
49
49
  TaskCreate: "Step 7: Tasks — task list"
50
50
  TaskCreate: "Step 8: Analyze — consistency check"
51
- TaskCreate: "Step 9: Compact context"
52
- TaskCreate: "Step 10: Implement with rolling QC"
53
- TaskCreate: "Step 11: Final quality gate"
54
- TaskCreate: "Step 12: Merge to main"
51
+ TaskCreate: "Step 9: Implement with rolling QC"
52
+ TaskCreate: "Step 10: Final quality gate"
53
+ TaskCreate: "Step 11: Merge to main"
55
54
  ```
56
55
 
57
56
  Then output a message to the user:
@@ -74,14 +73,14 @@ You are running the BMS Speckit specification and planning chain. Execute each s
74
73
 
75
74
  **IMPORTANT — Progress reporting:** Before starting each step, output a progress message to the user in this format:
76
75
 
77
- `[Step N/12] step_name — description...`
76
+ `[Step N/11] step_name — description...`
78
77
 
79
78
  After completing each step, output:
80
79
 
81
- `[Step N/12] DONE — brief result summary`
80
+ `[Step N/11] DONE — brief result summary`
82
81
 
83
82
  ### Step 1 — Brainstorm `[on_failure: STOP]`
84
- - **Progress:** Output `[Step 1/12] Brainstorm — exploring requirements and design...`
83
+ - **Progress:** Output `[Step 1/11] Brainstorm — exploring requirements and design...`
85
84
  - **Skill:** `superpowers.brainstorm`
86
85
  - **Input:** "$ARGUMENTS"
87
86
  - **Purpose:** Explore intent, requirements, design alternatives, and edge cases
@@ -89,10 +88,10 @@ After completing each step, output:
89
88
  - **Output:** Detailed specification document
90
89
  - **Timeout:** 300s
91
90
  - **Post-action:** Commit all files and push. Message: `feat(speckit): brainstorm — explore requirements and design`
92
- - **Done:** Output `[Step 1/12] DONE — brainstorm complete`
91
+ - **Done:** Output `[Step 1/11] DONE — brainstorm complete`
93
92
 
94
93
  ### Step 2 — Research `[on_failure: CONTINUE]`
95
- - **Progress:** Output `[Step 2/12] Research — surveying best practices and technologies...`
94
+ - **Progress:** Output `[Step 2/11] Research — surveying best practices and technologies...`
96
95
  - **Purpose:** Research external best practices, proven patterns, recommended libraries/frameworks, and informative reference material relevant to the user's requirement. This grounds the pipeline in current industry knowledge before specification begins.
97
96
  - **Tools:** Use `WebSearch` and `mcp__plugin_context7_context7__resolve-library-id` + `mcp__plugin_context7_context7__query-docs` for library documentation
98
97
  - **Timeout:** 300s
@@ -111,25 +110,25 @@ After completing each step, output:
111
110
  - **Security/compliance notes** — standards to adhere to (if applicable)
112
111
  - **Prior art** — reference implementations or architectures found
113
112
  - **Post-action:** Commit all files and push. Message: `feat(speckit): research — best practices and technology survey`
114
- - **Done:** Output `[Step 2/12] DONE — research brief created (N topics researched)`
113
+ - **Done:** Output `[Step 2/11] DONE — research brief created (N topics researched)`
115
114
 
116
115
  ### Step 3 — Constitution `[on_failure: STOP]`
117
- - **Progress:** Output `[Step 3/12] Constitution — establishing engineering principles...`
116
+ - **Progress:** Output `[Step 3/11] Constitution — establishing engineering principles...`
118
117
  - **Skill:** `speckit.constitution`
119
118
  - **Input:** "Establish and enforce a comprehensive set of engineering principles that prioritize high code quality, strict adherence to Test-Driven Development (TDD) practices, and well-defined testing standards across unit, component, integration, and API levels to ensure system reliability and maintainability, maintain a consistent, user-friendly, and professional user interface aligned with strong user experience (UX) guidelines, optimize application performance through efficient architecture and resource management; enforce disciplined version control practices with frequent, atomic commits to minimize risk and improve traceability, promote the development and reuse of modular components and functions while centralizing business logic to avoid duplication and ensure consistency, provide clear, informative user feedback and progress reporting throughout system interactions, and leverage all available tools, frameworks, and domain-specific expertise to support developers in delivering robust, scalable, and high-quality applications."
120
119
  - **Output:** `specs/constitution.md`
121
120
  - **Timeout:** 300s
122
- - **Done:** Output `[Step 3/12] DONE — constitution created`
121
+ - **Done:** Output `[Step 3/11] DONE — constitution created`
123
122
 
124
123
  ### Step 4 — CLAUDE.md Sync `[on_failure: CONTINUE]`
125
- - **Progress:** Output `[Step 4/12] CLAUDE.md Sync — verifying compliance...`
124
+ - **Progress:** Output `[Step 4/11] CLAUDE.md Sync — verifying compliance...`
126
125
  - **Action:** Read CLAUDE.md and verify it complies with the constitution in `specs/constitution.md`. Update CLAUDE.md if it conflicts with or is missing constitution rules.
127
126
  - **Timeout:** 120s
128
127
  - **Post-action:** Commit all files and push. Message: `feat(speckit): add constitution and sync CLAUDE.md`
129
- - **Done:** Output `[Step 4/12] DONE — CLAUDE.md synced`
128
+ - **Done:** Output `[Step 4/11] DONE — CLAUDE.md synced`
130
129
 
131
130
  ### Step 5 — Specify `[on_failure: STOP]`
132
- - **Progress:** Output `[Step 5/12] Specify — creating feature specification...`
131
+ - **Progress:** Output `[Step 5/11] Specify — creating feature specification...`
133
132
  - **Skill:** `speckit.specify`
134
133
  - **Input:** Use the detailed specification output from Step 1 (brainstorm) **enriched with the research findings from Step 2**. Include recommended libraries, best practices, and compliance requirements from the research brief in the specification input.
135
134
  - **Knowledge lookup:** Use `mcp__bms-knowledge-mcp__search_knowledge` to search the `hosxp` collection for exact table names, field names, data types, and relationships needed by this feature. Reference actual HOSxP data structures in the spec.
@@ -139,35 +138,35 @@ After completing each step, output:
139
138
  - **Timeout:** 300s
140
139
  - **Retry:** up to 2 attempts
141
140
  - **Post-action:** Commit all files and push. Message: `feat(speckit): add feature specification`
142
- - **Done:** Output `[Step 5/12] DONE — specification created`
141
+ - **Done:** Output `[Step 5/11] DONE — specification created`
143
142
 
144
143
  ### Step 6 — Plan `[on_failure: STOP]`
145
- - **Progress:** Output `[Step 6/12] Plan — generating implementation plan...`
144
+ - **Progress:** Output `[Step 6/11] Plan — generating implementation plan...`
146
145
  - **Skill:** `speckit.plan`
147
146
  - **Input:** reads from step 5 artifacts
148
147
  - **Output:** `specs/*/plan.md`
149
148
  - **Timeout:** 300s
150
149
  - **Retry:** up to 2 attempts
151
150
  - **Post-action:** Commit all files and push. Message: `feat(speckit): add implementation plan`
152
- - **Done:** Output `[Step 6/12] DONE — plan created`
151
+ - **Done:** Output `[Step 6/11] DONE — plan created`
153
152
 
154
153
  ### Step 7 — Tasks `[on_failure: STOP]`
155
- - **Progress:** Output `[Step 7/12] Tasks — generating task list...`
154
+ - **Progress:** Output `[Step 7/11] Tasks — generating task list...`
156
155
  - **Skill:** `speckit.tasks`
157
156
  - **Input:** reads from step 6 artifacts
158
157
  - **Output:** `specs/*/tasks.md`
159
158
  - **Timeout:** 300s
160
159
  - **Retry:** up to 2 attempts
161
160
  - **Post-action:** Commit all files and push. Message: `feat(speckit): add task list`
162
- - **Done:** Output `[Step 7/12] DONE — N tasks created`
161
+ - **Done:** Output `[Step 7/11] DONE — N tasks created`
163
162
 
164
163
  ### Step 8 — Analyze `[on_failure: CONTINUE]`
165
- - **Progress:** Output `[Step 8/12] Analyze — cross-artifact consistency check...`
164
+ - **Progress:** Output `[Step 8/11] Analyze — cross-artifact consistency check...`
166
165
  - **Skill:** `speckit.analyze`
167
166
  - **Purpose:** Cross-artifact consistency check (spec ↔ plan ↔ tasks ↔ research). Non-destructive — report only.
168
167
  - **Timeout:** 300s
169
168
  - **Post-action:** Commit all files and push. Message: `feat(speckit): add cross-artifact analysis report`
170
- - **Done:** Output `[Step 8/12] DONE — analysis complete`
169
+ - **Done:** Output `[Step 8/11] DONE — analysis complete`
171
170
 
172
171
  ### Completion Contract — DO NOT RETURN UNTIL THIS IS SATISFIED
173
172
 
@@ -267,13 +266,8 @@ Only after the Verification Gate passes (`GATE=OK`), update tasks 1–8 as compl
267
266
 
268
267
  > **Execution context:** Runs in main context after subagent completes.
269
268
 
270
- ### Step 9 — Compact `[on_failure: CONTINUE]`
271
- - **Progress:** Output `[Step 9/12] Compactfreeing context window...`
272
- - **Action:** Run `/compact` to free context window before implementation.
273
- - **Done:** Update task 9 as completed.
274
-
275
- ### Step 10 — Implement with Rolling QC `[on_failure: CONTINUE | max_retries: 3]`
276
- - **Progress:** Output `[Step 10/12] Implement — starting rolling QC loop (N tasks)...`
269
+ ### Step 9 — Implement with Rolling QC `[on_failure: CONTINUE | max_retries: 3]`
270
+ - **Progress:** Output `[Step 9/11] Implementstarting rolling QC loop (N tasks)...`
277
271
  - **Engine:** ralph-loop
278
272
  - **Input:** Use the **tasks.md path returned by the Phase 1 subagent** (e.g. `specs/my-feature/tasks.md`). Replace `{TASKS_PATH}` below with the actual path.
279
273
  - **Completion promise:** `FINISHED`
@@ -304,10 +298,10 @@ Only after the Verification Gate passes (`GATE=OK`), update tasks 1–8 as compl
304
298
 
305
299
  `/ralph-loop:ralph-loop "systematically execute speckit.implement via the Skill tool to complete every task defined in {TASKS_PATH} with strict adherence to specification requirements. IMPORTANT: apply rolling QC after EACH task — after implementing a task run build and fix build errors, run linter and fix lint errors, run ALL tests (not just new ones) and fix failures, check for hardcoded secrets and injection vulnerabilities in code you just wrote, verify UI code has actionable error messages and loading states. RUNTIME SAFETY: always add explicit return type annotations on data transformation functions, never spread or iterate a function return value without verifying it returns the expected collection type, use strict equality and null guards for external data, write tests that execute data transformers and verify output type and shape. SQL VALIDATION: before writing any SQL statement verify exact table and column names exist via bms-session-mcp-server list_tables/describe_table or bms-knowledge-mcp search_knowledge with hosxp collection, never guess column names, after writing test each query with EXPLAIN or LIMIT 0 via the query tool to confirm it executes without error. INTEGRATION TESTING: for every task that touches database or data-dependent logic run an integration test using the real bms-session-mcp-server query tool to execute the feature's SQL against the real HOSxP database (not mocks), flow the result through the actual code path, assert on concrete properties (row count, columns populated, types match, masked fields handled), use small LIMIT to avoid large result sets. If integration test fails investigate the real cause and fix it — do not relax the assertion. BUSINESS LOGIC: before writing any SQL state the business question it answers then consult bms-knowledge-mcp search_knowledge on hosxp collection to verify canonical table selection, soft-delete filters, correct date columns, join keys (hn/vn/an); use graph_search for multi-table relationships; for reporting queries also check moph or nhso collections for regulatory rules; cite the HOSxP convention in a code comment next to the query. Only commit when build plus lint plus tests all pass with zero errors then proceed to next task. Report progress to the user after each task: output [Task N/total] DONE — task_name. Do NOT batch QC at the end. Maintain atomic commits after each successful task with clear traceability, avoid requesting confirmation and proceed autonomously, once all tasks are implemented invoke speckit.analyze via the Skill tool to perform a full validation pass, automatically apply all recommended improvements or corrections, re-run all tests to confirm stability and zero regression, and only output <promise>FINISHED</promise> after every task is fully completed, validated, and aligned with production-grade quality standards" --completion-promise "FINISHED" --max-iterations 10`
306
300
 
307
- - **Done:** Update task 10 as completed. Output `[Step 10/12] DONE — all tasks implemented and verified`
301
+ - **Done:** Update task 9 as completed. Output `[Step 9/11] DONE — all tasks implemented and verified`
308
302
 
309
- ### Step 11 — Final Quality Gate `[on_failure: STOP | max_retries: 3]`
310
- - **Progress:** Output `[Step 11/12] Final QC — running comprehensive quality audit...`
303
+ ### Step 10 — Final Quality Gate `[on_failure: STOP | max_retries: 3]`
304
+ - **Progress:** Output `[Step 10/11] Final QC — running comprehensive quality audit...`
311
305
  - **Agent:** Dispatch `bms-speckit:quality-control` agent
312
306
  - **Purpose:** Final comprehensive sweep. Since inline QC already caught per-task issues, this focuses on **cross-cutting concerns** that can only be detected across the full codebase.
313
307
  - **Timeout:** 900s
@@ -324,15 +318,15 @@ Only after the Verification Gate passes (`GATE=OK`), update tasks 1–8 as compl
324
318
  - **H. Integration testing (real database, end-to-end)** — run actual integration tests against the real HOSxP database via `bms-session-mcp-server`. For every DB-touching feature verify there's an integration test that: executes the feature's real SQL via the `query` tool, flows real data through the actual code path (transformers, filters, UI components), asserts on concrete properties (row count range, column presence, type correctness, masked field handling, Thai encoding). Create missing integration tests. Never fix failures by mocking responses, skipping tests, or loosening assertions. Flag slow queries for user review. (skipped if bms-session-mcp-server is not available)
325
319
  - **I. Business logic semantic validation** — verify every SQL statement actually retrieves the correct data per the user's intent and HOSxP conventions, not just that it runs without error. For each SQL: state the business question it should answer, cross-reference `mcp__bms-knowledge-mcp__search_knowledge` on `hosxp` collection for canonical table selection, soft-delete/status filters, correct date columns, join keys (hn/vn/an), code system usage (ICD-10/LOINC/TMT). Use `graph_search` for multi-table relationship questions. Check regulatory compliance via `moph` and `nhso` collections (43 files reporting, reimbursement rules). Verify Thai conventions (Buddhist calendar, CID validation, pre-masked fields). Fix semantic mismatches with code comments citing the HOSxP convention. Flag ambiguous intent for user review. (skipped if bms-knowledge-mcp is not available)
326
320
  - The agent fixes everything it can. Major dependency updates are flagged for user review.
327
- - **Completion rule:** When the QC agent returns its report, proceed to Step 12 **unless** the report contains unfixed build errors, unfixed test failures, or unfixed critical security vulnerabilities. Informational findings, flagged-for-review items, and already-fixed issues do NOT block progression. If uncertain, proceed — the QC agent already fixed what it could.
321
+ - **Completion rule:** When the QC agent returns its report, proceed to Step 11 **unless** the report contains unfixed build errors, unfixed test failures, or unfixed critical security vulnerabilities. Informational findings, flagged-for-review items, and already-fixed issues do NOT block progression. If uncertain, proceed — the QC agent already fixed what it could.
328
322
  - **Post-action:** Commit all fixes and push. Message: `fix(speckit): final QC — security, deps, UX consistency, accessibility`
329
- - **Done:** Update task 11 as completed. Output `[Step 11/12] DONE — quality gate passed`
323
+ - **Done:** Update task 10 as completed. Output `[Step 10/11] DONE — quality gate passed`
330
324
 
331
- ### Step 12 — Merge to Main `[on_failure: STOP]`
332
- - **Progress:** Output `[Step 12/12] Merge — merging to main branch...`
325
+ ### Step 11 — Merge to Main `[on_failure: STOP]`
326
+ - **Progress:** Output `[Step 11/11] Merge — merging to main branch...`
333
327
  - **Action:** Switch to main branch, merge the feature branch (fast-forward if possible), push main to remote, then clean up the feature branch.
334
328
  - **Timeout:** 120s
335
- - **Done:** Update task 12 as completed. Output:
329
+ - **Done:** Update task 11 as completed. Output:
336
330
 
337
331
  > Pipeline complete! Feature merged to main.
338
332
 
@@ -343,15 +337,15 @@ Only after the Verification Gate passes (`GATE=OK`), update tasks 1–8 as compl
343
337
  ```
344
338
  Phase 1 (subagent) Phase 2 (main context)
345
339
  ────────────────────────────── ──────────────────────────────
346
- Step 1: brainstorm ──STOP── commit Step 9: compact
347
- + knowledge search (hosxp) Step 10: implement + rolling QC
348
- Step 2: research ────────── commit ┌─ implement task ─┐
349
- + WebSearch + context7 │ inline QC
350
- Step 3: constitution ─STOP─┐ │ fix commit │
351
- Step 4: CLAUDE.md sync ───┘ commit └─ next task ──────┘
352
- Step 5: specify ──────STOP── commit Step 11: final QC agent ── commit
353
- + knowledge search (hosxp) (security/deps/UX/a11y/deploy)
354
- Step 6: plan ─────────STOP── commit Step 12: merge to main + push
340
+ Step 1: brainstorm ──STOP── commit Step 9: implement + rolling QC
341
+ + knowledge search (hosxp) ┌─ implement task ─┐
342
+ Step 2: research ────────── commit │ inline QC │
343
+ + WebSearch + context7 │ fix → commit
344
+ Step 3: constitution ─STOP─┐ └─ next task ──────┘
345
+ Step 4: CLAUDE.md sync ───┘ commit Step 10: final QC agent ── commit
346
+ Step 5: specify ──────STOP── commit (security/deps/UX/a11y/deploy)
347
+ + knowledge search (hosxp) Step 11: merge to main + push
348
+ Step 6: plan ─────────STOP── commit
355
349
  Step 7: tasks ────────STOP── commit
356
350
  Step 8: analyze ──────────── commit
357
351
  ```