@hegemonart/get-design-done 1.28.8 → 1.30.5

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 (58) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CHANGELOG.md +116 -0
  4. package/README.de.md +25 -0
  5. package/README.fr.md +25 -0
  6. package/README.it.md +25 -0
  7. package/README.ja.md +25 -0
  8. package/README.ko.md +25 -0
  9. package/README.md +30 -0
  10. package/README.zh-CN.md +25 -0
  11. package/SKILL.md +2 -0
  12. package/agents/design-authority-watcher.md +42 -1
  13. package/agents/design-reflector.md +50 -0
  14. package/package.json +1 -1
  15. package/reference/capability-gap-stage-gate.md +261 -0
  16. package/reference/known-failure-modes.md +521 -0
  17. package/reference/pseudonymization-rules.md +189 -0
  18. package/reference/registry.json +22 -1
  19. package/reference/schemas/events.schema.json +158 -3
  20. package/reference/schemas/generated.d.ts +319 -4
  21. package/scripts/cli/gdd-events.mjs +35 -2
  22. package/scripts/gsd-cleanup-incubator.cjs +367 -0
  23. package/scripts/lib/apply-reflections/incubator-proposals.cjs +455 -0
  24. package/scripts/lib/authority-watcher/index.cjs +201 -0
  25. package/scripts/lib/bandit-router.cjs +92 -9
  26. package/scripts/lib/failure-mode-matcher.cjs +460 -0
  27. package/scripts/lib/gsd-health-mirror/index.cjs +37 -1
  28. package/scripts/lib/incubator-author.cjs +845 -0
  29. package/scripts/lib/install/interactive.cjs +27 -2
  30. package/scripts/lib/issue-reporter/cli-flag-report.cjs +153 -0
  31. package/scripts/lib/issue-reporter/consent-prompt.cjs +231 -0
  32. package/scripts/lib/issue-reporter/dedup.cjs +458 -0
  33. package/scripts/lib/issue-reporter/destination.cjs +37 -0
  34. package/scripts/lib/issue-reporter/draft-writer.cjs +157 -0
  35. package/scripts/lib/issue-reporter/gh-absent-fallback.cjs +220 -0
  36. package/scripts/lib/issue-reporter/gh-submit.cjs +114 -0
  37. package/scripts/lib/issue-reporter/kill-switch.cjs +122 -0
  38. package/scripts/lib/issue-reporter/payload-assembly.cjs +367 -0
  39. package/scripts/lib/issue-reporter/privacy-diff.cjs +385 -0
  40. package/scripts/lib/issue-reporter/report-flow.cjs +269 -0
  41. package/scripts/lib/issue-reporter/triage-matcher.cjs +270 -0
  42. package/scripts/lib/pseudonymize.cjs +444 -0
  43. package/scripts/lib/reflections-cycle-writer.cjs +172 -0
  44. package/scripts/lib/reflector/capability-gap-scan.cjs +751 -0
  45. package/scripts/lib/reflector-capability-gap-aggregator.cjs +352 -0
  46. package/scripts/lib/reflector-kfm-proposer.cjs +468 -0
  47. package/scripts/release-smoke-test.cjs +33 -2
  48. package/scripts/validate-incubator-scope.cjs +133 -0
  49. package/skills/apply-reflections/SKILL.md +20 -1
  50. package/skills/apply-reflections/apply-reflections-procedure.md +106 -4
  51. package/skills/fast/SKILL.md +46 -0
  52. package/skills/reflect/SKILL.md +9 -0
  53. package/skills/reflect/procedures/capability-gap-scan.md +120 -0
  54. package/skills/report-issue/SKILL.md +53 -0
  55. package/skills/report-issue/report-issue-procedure.md +120 -0
  56. package/skills/router/SKILL.md +5 -0
  57. package/skills/router/capability-gap-emitter.md +65 -0
  58. package/skills/update/SKILL.md +3 -2
@@ -8,15 +8,26 @@
8
8
  // Surface:
9
9
  // async getHealthChecks(rootDir) → { checks: HealthCheck[] }
10
10
  //
11
- // The 4 checks (in stable order) are:
11
+ // The 5 checks (in stable order) are:
12
12
  // 1. claude_md — CLAUDE.md presence
13
13
  // 2. planning_dir — .planning/ presence
14
14
  // 3. design_dir — .design/ presence
15
15
  // 4. package_json — package.json present AND parseable
16
+ // 5. issue_reporter — kill-switch state (Plan 30-06 / D-08)
17
+ //
18
+ // Check 5 was added in Plan 30-06 — surfaces the report-issue kill-switch
19
+ // (env or config disable) so users can verify why the command is
20
+ // unavailable. The status line is one of three exact strings:
21
+ // - "issue reporter: enabled"
22
+ // - "issue reporter: disabled by env (GDD_DISABLE_ISSUE_REPORTER=1)"
23
+ // - "issue reporter: disabled by config (.design/config.json: issue_reporter=false)"
24
+ // When both env and config trigger, env wins (matches D-08 display contract).
16
25
 
17
26
  const fs = require('node:fs');
18
27
  const path = require('node:path');
19
28
 
29
+ const { getDisableReason } = require('../issue-reporter/kill-switch.cjs');
30
+
20
31
  function fileExists(p) {
21
32
  try {
22
33
  return fs.statSync(p).isFile();
@@ -99,6 +110,31 @@ async function getHealthChecks(rootDir) {
99
110
  }
100
111
  }
101
112
 
113
+ // 5. issue_reporter — kill-switch state (Plan 30-06, D-08)
114
+ {
115
+ let reason = null;
116
+ try {
117
+ reason = getDisableReason({ cwd: rootDir, env: process.env });
118
+ } catch {
119
+ // Defensive: kill-switch must never throw, but if it ever does we
120
+ // treat the reporter as enabled rather than crash the health probe.
121
+ reason = null;
122
+ }
123
+ let detail;
124
+ if (reason === 'env') {
125
+ detail = 'issue reporter: disabled by env (GDD_DISABLE_ISSUE_REPORTER=1)';
126
+ } else if (reason === 'config') {
127
+ detail = 'issue reporter: disabled by config (.design/config.json: issue_reporter=false)';
128
+ } else {
129
+ detail = 'issue reporter: enabled';
130
+ }
131
+ checks.push({
132
+ name: 'issue_reporter',
133
+ status: 'ok',
134
+ detail,
135
+ });
136
+ }
137
+
102
138
  return { checks };
103
139
  }
104
140