specky-sdd 3.9.0 → 3.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.
Files changed (46) hide show
  1. package/.apm/instructions/cursor-instructions.instructions.md +59 -10
  2. package/.apm/instructions/opencode-instructions.instructions.md +45 -0
  3. package/.apm/skills/specky-sdd-pipeline/SKILL.md +8 -0
  4. package/CHANGELOG.md +36 -0
  5. package/README.md +10 -5
  6. package/apm.lock.yaml +5 -4
  7. package/apm.yml +1 -1
  8. package/config.yml +1 -1
  9. package/dist/cli/commands/compile.d.ts.map +1 -1
  10. package/dist/cli/commands/compile.js +2 -1
  11. package/dist/cli/commands/compile.js.map +1 -1
  12. package/dist/cli/commands/doctor.d.ts.map +1 -1
  13. package/dist/cli/commands/doctor.js +91 -10
  14. package/dist/cli/commands/doctor.js.map +1 -1
  15. package/dist/cli/lib/apm/lock.js +2 -2
  16. package/dist/cli/lib/apm/lock.js.map +1 -1
  17. package/dist/cli/lib/asset-copier.d.ts.map +1 -1
  18. package/dist/cli/lib/asset-copier.js +2 -2
  19. package/dist/cli/lib/asset-copier.js.map +1 -1
  20. package/dist/cli/lib/harness/compilers/claude.d.ts.map +1 -1
  21. package/dist/cli/lib/harness/compilers/claude.js +2 -2
  22. package/dist/cli/lib/harness/compilers/claude.js.map +1 -1
  23. package/dist/cli/lib/harness/compilers/common.d.ts +2 -0
  24. package/dist/cli/lib/harness/compilers/common.d.ts.map +1 -1
  25. package/dist/cli/lib/harness/compilers/common.js +6 -0
  26. package/dist/cli/lib/harness/compilers/common.js.map +1 -1
  27. package/dist/cli/lib/harness/compilers/cursor.js +2 -2
  28. package/dist/cli/lib/harness/compilers/cursor.js.map +1 -1
  29. package/dist/cli/lib/harness/tool-map.js +2 -2
  30. package/dist/cli/lib/harness/tool-map.js.map +1 -1
  31. package/dist/cli/lib/mcp-writer.d.ts.map +1 -1
  32. package/dist/cli/lib/mcp-writer.js +2 -0
  33. package/dist/cli/lib/mcp-writer.js.map +1 -1
  34. package/dist/services/state-machine.d.ts +22 -1
  35. package/dist/services/state-machine.d.ts.map +1 -1
  36. package/dist/services/state-machine.js +95 -5
  37. package/dist/services/state-machine.js.map +1 -1
  38. package/dist/templates/specification.md +2 -0
  39. package/dist/tools/pipeline.d.ts.map +1 -1
  40. package/dist/tools/pipeline.js +96 -42
  41. package/dist/tools/pipeline.js.map +1 -1
  42. package/dist/tools/tool-enforcement.d.ts.map +1 -1
  43. package/dist/tools/tool-enforcement.js +13 -0
  44. package/dist/tools/tool-enforcement.js.map +1 -1
  45. package/package.json +1 -1
  46. package/templates/specification.md +2 -0
@@ -19,6 +19,36 @@ import { initInputSchema, discoverInputSchema, writeSpecInputSchema, clarifyInpu
19
19
  * these phases unless the caller passes lgtm: true.
20
20
  */
21
21
  const LGTM_GATE_PHASES = [Phase.Specify, Phase.Design, Phase.Tasks];
22
+ function computeEarsScores(requirements, validationIssueCount) {
23
+ const total = requirements.length;
24
+ const validCount = Math.max(0, total - validationIssueCount);
25
+ const testableCount = requirements.filter((r) => r.acceptance_criteria.length > 0).length;
26
+ const ids = requirements.map((r) => r.id);
27
+ const uniqueIds = new Set(ids).size;
28
+ const traceableCount = ids.filter((id) => /^REQ-[A-Z]+-\d{3}$/.test(id)).length;
29
+ return {
30
+ ears_compliance: `${validCount}/${total}`,
31
+ testability_score: `${testableCount}/${total}`,
32
+ traceability_score: `${traceableCount}/${total}`,
33
+ uniqueness_score: `${uniqueIds}/${total}`,
34
+ };
35
+ }
36
+ function formatDiscoveryContext(answers) {
37
+ const entries = Object.entries(answers);
38
+ if (entries.length === 0)
39
+ return "";
40
+ const rows = entries.map(([q, a]) => `- **${q}:** ${a}`).join("\n");
41
+ return `## Discovery Context\n\nAnswers from the structured discovery phase:\n\n${rows}\n\n---\n`;
42
+ }
43
+ function extractRequirementIds(specContent) {
44
+ const ids = [];
45
+ const re = /### (REQ-[A-Z]+-\d{3}):/g;
46
+ let m;
47
+ while ((m = re.exec(specContent)) !== null) {
48
+ ids.push(m[1]);
49
+ }
50
+ return ids;
51
+ }
22
52
  async function shouldOverwriteScaffold(fileManager, featureDir, fileName, force) {
23
53
  if (force)
24
54
  return true;
@@ -33,10 +63,6 @@ async function shouldOverwriteScaffold(fileManager, featureDir, fileName, force)
33
63
  export function registerPipelineTools(server, fileManager, stateMachine, templateEngine, earsValidator) {
34
64
  const featurePackageGenerator = new FeaturePackageGenerator(fileManager);
35
65
  const analysisEngine = new AnalysisEngine(earsValidator);
36
- // Project config (.specky/config.yml) — read from the same workspace root
37
- // the server resolved, so pipeline gating (pipeline.require_lgtm) works
38
- // without changing the registration signature in index.ts.
39
- const config = loadConfig(fileManager.workspaceRoot);
40
66
  // ─── sdd_init ───
41
67
  server.registerTool("sdd_init", {
42
68
  title: "Initialize SDD Pipeline",
@@ -107,7 +133,7 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
107
133
  description: "Returns 7 structured discovery questions tailored to your project idea. Covers: scope, users, constraints, integrations, performance, security, and deployment.",
108
134
  inputSchema: discoverInputSchema,
109
135
  annotations: {
110
- readOnlyHint: true,
136
+ readOnlyHint: false,
111
137
  destructiveHint: false,
112
138
  idempotentHint: true,
113
139
  openWorldHint: false,
@@ -185,6 +211,7 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
185
211
  }
186
212
  // Record discover phase
187
213
  await stateMachine.recordPhaseStart(spec_dir, Phase.Discover);
214
+ await stateMachine.recordPhaseComplete(spec_dir, Phase.Discover);
188
215
  const result = {
189
216
  project_idea,
190
217
  questions,
@@ -211,7 +238,7 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
211
238
  idempotentHint: false,
212
239
  openWorldHint: false,
213
240
  },
214
- }, async ({ feature_name, feature_number, requirements, spec_dir, force }) => {
241
+ }, async ({ feature_name, feature_number, discovery_answers, requirements, spec_dir, force }) => {
215
242
  try {
216
243
  // Phase validation
217
244
  const phaseCheck = await stateMachine.validatePhaseForTool(spec_dir, "sdd_write_spec");
@@ -246,6 +273,19 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
246
273
  validationIssues.push(`${req.id}: ${result.issues.join("; ")}`);
247
274
  }
248
275
  }
276
+ if (validationIssues.length > 0 && !force) {
277
+ return {
278
+ content: [{ type: "text", text: JSON.stringify({
279
+ error: "ears_validation_failed",
280
+ tool: "sdd_write_spec",
281
+ validation_issues: validationIssues,
282
+ message: "One or more requirements failed EARS validation. Fix them or pass force: true to write anyway.",
283
+ }, null, 2) }],
284
+ isError: true,
285
+ };
286
+ }
287
+ const scores = computeEarsScores(requirements, validationIssues.length);
288
+ const discoveryContext = formatDiscoveryContext(discovery_answers);
249
289
  // Build requirement sections
250
290
  const reqSections = requirements.map((req) => {
251
291
  const pattern = earsValidator.detectPattern(req.text);
@@ -265,18 +305,19 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
265
305
  const acTable = requirements
266
306
  .map((req) => `| ${req.id} | ${req.text.slice(0, 60)}... | Acceptance test |`)
267
307
  .join("\n");
308
+ await stateMachine.ensurePhasesThrough(spec_dir, Phase.Specify);
309
+ await stateMachine.recordPhaseStart(spec_dir, Phase.Specify);
310
+ await stateMachine.invalidateGateDecision(spec_dir);
268
311
  const content = await templateEngine.renderWithFrontmatter("specification", {
269
312
  title: `${feature_name} — Specification`,
270
313
  feature_id: featureId,
271
314
  project_name: feature_name,
315
+ discovery_context: discoveryContext,
272
316
  requirements_core: reqSections.join("\n"),
273
317
  requirements_functional: "",
274
318
  requirements_nonfunctional: "",
275
319
  acceptance_criteria_table: acTable,
276
- ears_compliance: `${requirements.length}/${requirements.length}`,
277
- testability_score: `${requirements.length}/${requirements.length}`,
278
- traceability_score: `${requirements.length}/${requirements.length}`,
279
- uniqueness_score: `${requirements.length}/${requirements.length}`,
320
+ ...scores,
280
321
  });
281
322
  const filePath = await fileManager.writeSpecFile(featureDir, "SPECIFICATION.md", content, force);
282
323
  const featurePackage = await featurePackageGenerator.ensureFeaturePackage({
@@ -294,8 +335,6 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
294
335
  state.features.push(featureDir);
295
336
  });
296
337
  }
297
- // Update state
298
- await stateMachine.recordPhaseStart(spec_dir, Phase.Specify);
299
338
  await stateMachine.recordPhaseComplete(spec_dir, Phase.Specify);
300
339
  const result = {
301
340
  status: "specification_written",
@@ -326,7 +365,7 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
326
365
  description: "Reads SPECIFICATION.md and returns up to 5 disambiguation questions targeting ambiguous or incomplete requirements.",
327
366
  inputSchema: clarifyInputSchema,
328
367
  annotations: {
329
- readOnlyHint: true,
368
+ readOnlyHint: false,
330
369
  destructiveHint: false,
331
370
  idempotentHint: true,
332
371
  openWorldHint: false,
@@ -400,7 +439,6 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
400
439
  });
401
440
  }
402
441
  await stateMachine.recordPhaseStart(spec_dir, Phase.Clarify);
403
- await stateMachine.recordPhaseComplete(spec_dir, Phase.Clarify);
404
442
  const result = {
405
443
  status: "clarification_questions",
406
444
  question_count: questions.length,
@@ -408,7 +446,6 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
408
446
  instructions: "Answer the clarification questions, then call sdd_write_design to proceed.",
409
447
  };
410
448
  const enriched = await enrichResponse("sdd_clarify", result, stateMachine, spec_dir, {
411
- completedPhase: Phase.Clarify,
412
449
  nextPhase: Phase.Design,
413
450
  });
414
451
  return { content: [{ type: "text", text: JSON.stringify(enriched, null, 2) }] };
@@ -453,6 +490,17 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
453
490
  if (!feature) {
454
491
  throw new Error(`Feature ${feature_number} not found in ${spec_dir}`);
455
492
  }
493
+ let reqRefs = "[TODO: requirement_references]";
494
+ try {
495
+ const specContent = await fileManager.readSpecFile(feature.directory, "SPECIFICATION.md");
496
+ const reqIds = extractRequirementIds(specContent);
497
+ if (reqIds.length > 0) {
498
+ reqRefs = reqIds.map((id) => `- ${id}`).join("\n");
499
+ }
500
+ }
501
+ catch {
502
+ // SPECIFICATION.md may not exist yet
503
+ }
456
504
  // Build diagrams section
457
505
  const diagramsContent = mermaid_diagrams
458
506
  .map((d) => `### ${d.title}\n\n\`\`\`mermaid\n${d.code}\n\`\`\`\n`)
@@ -469,6 +517,9 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
469
517
  .map((c) => `### ${c.method} ${c.endpoint}\n\n${c.description}\n\n**Request:** ${c.request || "N/A"}\n\n**Response:** ${c.response || "N/A"}\n`)
470
518
  .join("\n---\n\n")
471
519
  : "[TODO: Add API contracts if applicable]";
520
+ await stateMachine.ensurePhasesThrough(spec_dir, Phase.Design);
521
+ await stateMachine.recordPhaseStart(spec_dir, Phase.Design);
522
+ await stateMachine.invalidateGateDecision(spec_dir);
472
523
  const content = await templateEngine.renderWithFrontmatter("design", {
473
524
  title: `${feature.name} — Design`,
474
525
  feature_id: `${feature_number}-${feature.name}`,
@@ -486,7 +537,7 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
486
537
  adrs: adrs ? adrs.map((a) => a.title) : [],
487
538
  error_handling: error_handling || "[TODO: error_handling]",
488
539
  cross_cutting: cross_cutting || "[TODO: cross_cutting]",
489
- requirement_references: "[TODO: requirement_references]",
540
+ requirement_references: reqRefs,
490
541
  });
491
542
  // Replace the template diagram/ADR placeholders with actual content
492
543
  let finalContent = content;
@@ -498,7 +549,6 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
498
549
  finalContent = finalContent.replace(adrSectionRegex, `## 10. Architecture Decision Records\n\n${adrsContent}`);
499
550
  const overwriteDesign = await shouldOverwriteScaffold(fileManager, feature.directory, "DESIGN.md", force);
500
551
  const filePath = await fileManager.writeSpecFile(feature.directory, "DESIGN.md", finalContent, overwriteDesign);
501
- await stateMachine.recordPhaseStart(spec_dir, Phase.Design);
502
552
  await stateMachine.recordPhaseComplete(spec_dir, Phase.Design);
503
553
  const result = {
504
554
  status: "design_written",
@@ -574,9 +624,11 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
574
624
  parallel_tasks: String(parallelCount),
575
625
  total_effort: `${tasks.length} tasks`,
576
626
  });
627
+ await stateMachine.ensurePhasesThrough(spec_dir, Phase.Tasks);
628
+ await stateMachine.recordPhaseStart(spec_dir, Phase.Tasks);
629
+ await stateMachine.invalidateGateDecision(spec_dir);
577
630
  const overwriteTasks = await shouldOverwriteScaffold(fileManager, feature.directory, "TASKS.md", force);
578
631
  const filePath = await fileManager.writeSpecFile(feature.directory, "TASKS.md", content, overwriteTasks);
579
- await stateMachine.recordPhaseStart(spec_dir, Phase.Tasks);
580
632
  await stateMachine.recordPhaseComplete(spec_dir, Phase.Tasks);
581
633
  const result = {
582
634
  status: "tasks_written",
@@ -675,23 +727,26 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
675
727
  orphan_status: orphanCount === 0 ? "✅" : "❌",
676
728
  });
677
729
  const filePath = await fileManager.writeSpecFile(feature.directory, "ANALYSIS.md", content, force);
730
+ await stateMachine.ensurePhasesThrough(spec_dir, Phase.Analyze);
731
+ await stateMachine.recordPhaseStart(spec_dir, Phase.Analyze);
678
732
  // Update state with gate decision
679
733
  await stateMachine.mutateState(spec_dir, (state) => {
680
734
  state.gate_decision = gateDecision;
681
735
  });
682
- await stateMachine.recordPhaseStart(spec_dir, Phase.Analyze);
683
- await stateMachine.recordPhaseComplete(spec_dir, Phase.Analyze);
736
+ if (decision === "APPROVE") {
737
+ await stateMachine.recordPhaseComplete(spec_dir, Phase.Analyze);
738
+ }
684
739
  const result = {
685
740
  status: "analysis_complete",
686
741
  file: filePath,
687
742
  gate_decision: gateDecision,
688
743
  next_action: decision === "APPROVE"
689
- ? "Pipeline complete! Proceed to implementation."
744
+ ? "Gate APPROVE recorded. Proceed to implementation."
690
745
  : `Address the following gaps: ${gaps.join(", ")}`,
691
746
  };
692
747
  const enriched = await enrichResponse("sdd_run_analysis", result, stateMachine, spec_dir, {
693
- completedPhase: Phase.Analyze,
694
- nextPhase: Phase.Implement,
748
+ completedPhase: decision === "APPROVE" ? Phase.Analyze : undefined,
749
+ nextPhase: decision === "APPROVE" ? Phase.Implement : Phase.Analyze,
695
750
  artifactsProduced: ["ANALYSIS.md"],
696
751
  summaryOfWork: `Analysis complete: ${decision}`,
697
752
  });
@@ -722,27 +777,13 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
722
777
  },
723
778
  }, async ({ spec_dir, feature_number, lgtm }) => {
724
779
  try {
725
- // Capture phase before advancing for gate instrumentation
780
+ const config = loadConfig(fileManager.workspaceRoot);
726
781
  const priorState = await stateMachine.loadState(spec_dir);
727
782
  const completedPhase = priorState.current_phase;
728
- // Server-side LGTM gate (opt-in): with pipeline.require_lgtm enabled,
729
- // completing a review-gated phase demands explicit human approval
730
- // instead of relying on the agent-layer "reply LGTM" convention.
731
- if (config.pipeline.require_lgtm &&
732
- LGTM_GATE_PHASES.includes(completedPhase) &&
733
- lgtm !== true) {
734
- return {
735
- content: [{ type: "text", text: JSON.stringify({
736
- error: "lgtm_required",
737
- tool: "sdd_advance_phase",
738
- phase: completedPhase,
739
- message: `Cannot advance: completing the "${completedPhase}" phase is an LGTM quality gate and pipeline.require_lgtm is enabled. Explicit human approval is required.`,
740
- fix: "Review the phase artifact, then call sdd_advance_phase again with lgtm: true to record the approval.",
741
- }, null, 2) }],
742
- isError: true,
743
- };
744
- }
745
- const state = await stateMachine.advancePhase(spec_dir, feature_number);
783
+ const state = await stateMachine.advancePhase(spec_dir, feature_number, {
784
+ lgtm,
785
+ requireLgtm: config.pipeline.require_lgtm,
786
+ });
746
787
  const currentIndex = PHASE_ORDER.indexOf(state.current_phase);
747
788
  const nextPhase = currentIndex < PHASE_ORDER.length - 1
748
789
  ? PHASE_ORDER[currentIndex + 1]
@@ -781,6 +822,19 @@ export function registerPipelineTools(server, fileManager, stateMachine, templat
781
822
  return { content: [{ type: "text", text: JSON.stringify(enriched, null, 2) }] };
782
823
  }
783
824
  catch (error) {
825
+ const message = error instanceof Error ? error.message : String(error);
826
+ if (message.includes("LGTM quality gate") && message.includes("pipeline.require_lgtm")) {
827
+ return {
828
+ content: [{ type: "text", text: JSON.stringify({
829
+ error: "lgtm_required",
830
+ tool: "sdd_advance_phase",
831
+ message,
832
+ fix: "Review the phase artifact, then call sdd_advance_phase again with lgtm: true to record the approval.",
833
+ require_lgtm: true,
834
+ }, null, 2) }],
835
+ isError: true,
836
+ };
837
+ }
784
838
  return {
785
839
  content: [{ type: "text", text: formatError("sdd_advance_phase", error) }],
786
840
  isError: true,
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/tools/pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/tools/pipeline.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tool-enforcement.d.ts","sourceRoot":"","sources":["../../src/tools/tool-enforcement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,KAAK,QAAQ,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AASjE,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,EAAE,IAAI,CAAC;CACf;AAWD;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAuBD,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAIhD;AAwBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,cAAc,CAajE;AAqLD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,sBAAsB,GAC9B,IAAI,CASN"}
1
+ {"version":3,"file":"tool-enforcement.d.ts","sourceRoot":"","sources":["../../src/tools/tool-enforcement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,KAAK,QAAQ,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AASjE,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,EAAE,IAAI,CAAC;CACf;AAWD;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAuBD,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAIhD;AAwBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,cAAc,CAajE;AAsMD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,sBAAsB,GAC9B,IAAI,CASN"}
@@ -176,6 +176,19 @@ function wrapToolHandler(toolName, handler, options) {
176
176
  message,
177
177
  });
178
178
  }
179
+ const gateCheck = await options.stateMachine.validateGateForTool(specDir, toolName);
180
+ if (!gateCheck.allowed) {
181
+ const message = gateCheck.error_message ?? `Tool ${toolName} blocked by analysis gate.`;
182
+ await auditBestEffort(auditError(options.auditLogger, context, message, phaseCheck.current_phase), toolName);
183
+ return buildDeniedResponse({
184
+ error: "gate_blocked",
185
+ tool: toolName,
186
+ current_phase: phaseCheck.current_phase,
187
+ gate_decision: gateCheck.gate_decision ?? null,
188
+ message,
189
+ fix: "Run sdd_run_analysis and obtain APPROVE before proceeding to implementation.",
190
+ });
191
+ }
179
192
  // Fail-closed gate: if the pre-execution audit entry cannot be written,
180
193
  // the tool does not run (no unaudited actions in enterprise mode).
181
194
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-enforcement.js","sourceRoot":"","sources":["../../src/tools/tool-enforcement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-enforcement.js","sourceRoot":"","sources":["../../src/tools/tool-enforcement.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specky-sdd",
3
- "version": "3.9.0",
3
+ "version": "3.10.0",
4
4
  "description": "Specky — Spec-Driven Development CLI toolkit. 58 MCP tools, 13 agents, 22 prompts, 14 skills, 16 hooks. Unified `specky` CLI installs to Claude Code, GitHub Copilot, Cursor, or OpenCode on macOS, Linux, and Windows.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -14,6 +14,8 @@
14
14
 
15
15
  ---
16
16
 
17
+ {{discovery_context}}
18
+
17
19
  ## 1. Core Requirements
18
20
 
19
21
  {{requirements_core}}