@gobing-ai/spur 0.4.7 → 0.4.9

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 (145) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/config/pipeline-budgets.json +2 -2
  3. package/config/rules/boundary/config-loading-ownership.yaml +1 -0
  4. package/config/rules/boundary/sp-plugin-standalone.yaml +1 -1
  5. package/config/rules/boundary/sp-script-placement.yaml +1 -1
  6. package/config/rules/docs/sourced-api-claims.yaml +45 -7
  7. package/config/rules/strict/runtime-boundaries.yaml +40 -1
  8. package/config/rules/structure/protected-files.yaml +1 -1
  9. package/config/rules/surface/check-cli-surface.yaml +33 -0
  10. package/config/rules/typescript/no-debugger.yaml +3 -0
  11. package/config/workflow-candidates.json +2 -2
  12. package/config/workflows/feature-verification.yaml +6 -11
  13. package/config/workflows/history-anatomy.yaml +14 -28
  14. package/config/workflows/idea-pipeline.yaml +6 -19
  15. package/config/workflows/pr-review.yaml +9 -16
  16. package/config/workflows/task-pipeline.yaml +16 -23
  17. package/config/workflows/wrapup-pipeline.yaml +21 -63
  18. package/package.json +3 -3
  19. package/plugins/sp/README.md +70 -37
  20. package/plugins/sp/agents/super-planner.md +5 -5
  21. package/plugins/sp/agents/super-reviewer.md +2 -2
  22. package/plugins/sp/commands/dev-changelog.md +1 -1
  23. package/plugins/sp/commands/dev-daily.md +1 -1
  24. package/plugins/sp/commands/dev-pr-review.md +1 -1
  25. package/plugins/sp/commands/dev-review-session.md +1 -1
  26. package/plugins/sp/commands/dev-runall.md +4 -4
  27. package/plugins/sp/commands/dev-verify.md +4 -6
  28. package/plugins/sp/commands/dev-verifyall.md +4 -5
  29. package/plugins/sp/hooks/hooks.json +11 -1
  30. package/plugins/sp/lib/context-post-tool.ts +1 -1
  31. package/plugins/sp/lib/context-session-start.ts +1 -1
  32. package/plugins/sp/lib/context-session-stop.ts +1 -1
  33. package/plugins/sp/lib/destructive-policy.ts +65 -1
  34. package/plugins/sp/plugin.json +2 -5
  35. package/plugins/sp/{hooks → scripts/hooks}/agent-lifecycle.ts +1 -1
  36. package/plugins/sp/scripts/hooks/careful-guard.ts +94 -0
  37. package/plugins/sp/{hooks → scripts/hooks}/context-post-tool.ts +2 -2
  38. package/plugins/sp/{hooks → scripts/hooks}/context-session-start.ts +1 -1
  39. package/plugins/sp/{hooks → scripts/hooks}/context-session-stop.ts +1 -1
  40. package/plugins/sp/{hooks → scripts/hooks}/fleet-guest-stop.ts +6 -4
  41. package/plugins/sp/{hooks → scripts/hooks}/task-write-guard.ts +38 -21
  42. package/plugins/sp/skills/code-implementation/SKILL.md +1 -1
  43. package/plugins/sp/skills/code-verification/SKILL.md +8 -8
  44. package/plugins/sp/skills/code-verification/references/secu-review.md +4 -3
  45. package/plugins/sp/skills/code-verification/references/verdict-schema.md +9 -1
  46. package/plugins/sp/skills/daily-summary/SKILL.md +4 -5
  47. package/plugins/sp/skills/dogfood-testing/SKILL.md +9 -9
  48. package/plugins/sp/skills/dogfood-testing/references/report-template.md +1 -1
  49. package/plugins/sp/skills/history-anatomy/references/modes.md +2 -2
  50. package/plugins/sp/skills/next-router/references/routing-table.md +1 -1
  51. package/plugins/sp/skills/parallel-execution/SKILL.md +1 -1
  52. package/plugins/sp/skills/pr-reviewing/SKILL.md +14 -15
  53. package/plugins/sp/skills/session-review/SKILL.md +3 -3
  54. package/plugins/sp/skills/source-driven-development/SKILL.md +7 -4
  55. package/plugins/sp/skills/spur-check/SKILL.md +14 -13
  56. package/plugins/sp/skills/spur-cli/SKILL.md +1 -1
  57. package/plugins/sp/skills/spur-cli/references/agent.md +12 -0
  58. package/plugins/sp/skills/spur-cli/references/builder.md +27 -6
  59. package/plugins/sp/skills/spur-cli/references/features.md +6 -1
  60. package/plugins/sp/skills/spur-cli/references/history.md +3 -0
  61. package/plugins/sp/skills/spur-cli/references/self.md +5 -3
  62. package/plugins/sp/skills/spur-cli/references/tasks/verbs.md +3 -0
  63. package/plugins/sp/skills/spur-cli/references/tasks.md +13 -3
  64. package/plugins/sp/skills/spur-cli/references/workflows.md +36 -1
  65. package/plugins/sp/skills/spur-dev/SKILL.md +1 -1
  66. package/plugins/sp/skills/spur-dev/references/cross-cutting.md +1 -1
  67. package/plugins/sp/skills/spur-dev/references/dev-operations.md +12 -12
  68. package/plugins/sp/skills/spur-dev/references/execution-batch-report.md +10 -11
  69. package/plugins/sp/skills/spur-dev/references/execution-batch.md +16 -17
  70. package/plugins/sp/skills/spur-dev/references/execution-parallel-isolation.md +1 -1
  71. package/plugins/sp/skills/spur-dev/references/execution-worktree-landing.md +8 -11
  72. package/plugins/sp/skills/spur-dev/references/execution-worktree-setup.md +6 -8
  73. package/plugins/sp/skills/spur-dev/references/gate-checklists.md +1 -1
  74. package/plugins/sp/skills/spur-dev/references/inline-pipeline-driver.md +33 -40
  75. package/plugins/sp/skills/spur-dev/references/structured-trace-emission.md +24 -24
  76. package/plugins/sp/skills/spur-doctor/SKILL.md +5 -4
  77. package/spur.js +41901 -30598
  78. package/config/plugin-scripts.json +0 -116
  79. package/config/script-placement-baseline.json +0 -33
  80. package/plugins/sp/hooks/careful-guard.ts +0 -74
  81. package/plugins/sp/hooks/pi/guard-extension.ts +0 -304
  82. package/plugins/sp/lib/dogfood-pipeline.ts +0 -265
  83. package/plugins/sp/lib/dogfood-report.ts +0 -278
  84. package/plugins/sp/lib/history-anatomy.generated.d.mts +0 -112
  85. package/plugins/sp/lib/history-anatomy.generated.mjs +0 -691
  86. package/plugins/sp/lib/idea-handoff.generated.d.mts +0 -17
  87. package/plugins/sp/lib/idea-handoff.generated.mjs +0 -1446
  88. package/plugins/sp/lib/inline-run-app.ts +0 -68
  89. package/plugins/sp/lib/inline-run.generated.d.mts +0 -37
  90. package/plugins/sp/lib/inline-run.generated.mjs +0 -3103
  91. package/plugins/sp/lib/plan-projection.generated.d.mts +0 -197
  92. package/plugins/sp/lib/plan-projection.generated.mjs +0 -982
  93. package/plugins/sp/lib/quality-gate.generated.d.mts +0 -139
  94. package/plugins/sp/lib/quality-gate.generated.mjs +0 -30510
  95. package/plugins/sp/lib/residual-scan.generated.d.mts +0 -93
  96. package/plugins/sp/lib/residual-scan.generated.mjs +0 -383
  97. package/plugins/sp/lib/run-summary-core.ts +0 -225
  98. package/plugins/sp/lib/spur-bin.ts +0 -36
  99. package/plugins/sp/lib/step-profile.generated.d.mts +0 -71
  100. package/plugins/sp/lib/step-profile.generated.mjs +0 -174
  101. package/plugins/sp/lib/transcript.ts +0 -112
  102. package/plugins/sp/scripts/batch-plan.mjs +0 -1096
  103. package/plugins/sp/scripts/batch-plan.ts +0 -145
  104. package/plugins/sp/scripts/batch-preflight.mjs +0 -423
  105. package/plugins/sp/scripts/batch-preflight.ts +0 -270
  106. package/plugins/sp/scripts/commit-guard.mjs +0 -226
  107. package/plugins/sp/scripts/commit-guard.ts +0 -248
  108. package/plugins/sp/scripts/daily-summary/daily-summary.mjs +0 -626
  109. package/plugins/sp/scripts/daily-summary/daily-summary.ts +0 -855
  110. package/plugins/sp/scripts/dogfood-testing/detect-pipeline-driving.mjs +0 -211
  111. package/plugins/sp/scripts/dogfood-testing/detect-pipeline-driving.ts +0 -110
  112. package/plugins/sp/scripts/dogfood-testing/validate-report.mjs +0 -282
  113. package/plugins/sp/scripts/dogfood-testing/validate-report.ts +0 -98
  114. package/plugins/sp/scripts/feature-verification-steps.mjs +0 -82
  115. package/plugins/sp/scripts/feature-verification-steps.ts +0 -164
  116. package/plugins/sp/scripts/history-anatomy-cache.mjs +0 -931
  117. package/plugins/sp/scripts/history-anatomy-cache.ts +0 -247
  118. package/plugins/sp/scripts/idea-handoff.mjs +0 -32
  119. package/plugins/sp/scripts/idea-handoff.ts +0 -47
  120. package/plugins/sp/scripts/inline-run-dispatch.mjs +0 -131
  121. package/plugins/sp/scripts/inline-run-dispatch.ts +0 -115
  122. package/plugins/sp/scripts/inline-run-setup.mjs +0 -746
  123. package/plugins/sp/scripts/inline-run-setup.ts +0 -198
  124. package/plugins/sp/scripts/persist-out-check.mjs +0 -217
  125. package/plugins/sp/scripts/persist-out-check.ts +0 -249
  126. package/plugins/sp/scripts/pr-reviewing.mjs +0 -712
  127. package/plugins/sp/scripts/pr-reviewing.ts +0 -952
  128. package/plugins/sp/scripts/quality-gate.mjs +0 -30491
  129. package/plugins/sp/scripts/quality-gate.ts +0 -80
  130. package/plugins/sp/scripts/residual-scan.mjs +0 -634
  131. package/plugins/sp/scripts/residual-scan.ts +0 -248
  132. package/plugins/sp/scripts/run-summary.mjs +0 -758
  133. package/plugins/sp/scripts/run-summary.ts +0 -107
  134. package/plugins/sp/scripts/script-root.mjs +0 -129
  135. package/plugins/sp/scripts/script-root.ts +0 -199
  136. package/plugins/sp/scripts/session-timeline.mjs +0 -359
  137. package/plugins/sp/scripts/session-timeline.ts +0 -190
  138. package/plugins/sp/scripts/task-diffstat.mjs +0 -181
  139. package/plugins/sp/scripts/task-diffstat.ts +0 -219
  140. package/plugins/sp/scripts/workflow-step-profile.mjs +0 -338
  141. package/plugins/sp/scripts/workflow-step-profile.ts +0 -165
  142. package/plugins/sp/scripts/wrapup-drift-probe.mjs +0 -190
  143. package/plugins/sp/scripts/wrapup-drift-probe.ts +0 -261
  144. package/plugins/sp/scripts/wrapup-steps.mjs +0 -627
  145. package/plugins/sp/scripts/wrapup-steps.ts +0 -891
@@ -1,68 +0,0 @@
1
- /**
2
- * Stale-bundle guard for inline-run scripts (1120).
3
- *
4
- * WHY: `superskill install sp` stages `lib/*.generated.mjs` bundles that can lag
5
- * the installed scripts after a release refresh; the first missing export then
6
- * surfaces as a bare `app.readInstalledInventory is not a function`. This helper
7
- * names the skew (bundle path, missing exports, both remedies) instead. Covers the
8
- * installed portable bundle only — source entries (`--spur-bin`) keep their exact
9
- * previous behavior (0809 delegate fixtures load minimal partial source modules).
10
- *
11
- * Reciprocal direction (1185, feature A33): a *consumer* requiring an export this
12
- * entry no longer provides is diagnosed app-side in
13
- * `packages/app/src/workflow/consumer-compat.ts`, because both of that failure's hook
14
- * points (the lifecycle denial report and the nested-run composition) live in
15
- * the app layer. The two halves are deliberately separate: this one's remedy is a
16
- * reinstall, that one's is removing the project-layer override or migrating the
17
- * consumer.
18
- */
19
-
20
- import { existsSync } from 'node:fs';
21
- import { dirname, join, resolve } from 'node:path';
22
- import { fileURLToPath } from 'node:url';
23
-
24
- /**
25
- * Resolve the application entry an inline-run script should load (task 1177 R1: one resolution for
26
- * setup and dispatch, which each carried their own copy).
27
- *
28
- * `--spur-bin` pointing at a repo checkout selects the source app entry (`portable: false`, and the
29
- * stale-bundle export check is skipped — source fixtures load partial modules). Anything else uses
30
- * the staged generated bundle and is `portable: true`, so a bundle older than its scripts is named
31
- * instead of failing as a bare `is not a function`.
32
- */
33
- export function resolveAppEntry(spurBin: string): { entry: string; portable: boolean } {
34
- const fallback = fileURLToPath(new URL('../../../apps/cli/src/index.ts', import.meta.url));
35
- const candidates = spurBin !== '' ? [spurBin] : [fallback];
36
- for (const candidate of candidates) {
37
- const tokens = candidate.split(/\s+/).filter(Boolean);
38
- // Main module = last path-like token; only a .ts source entry proves a repo checkout.
39
- const mainModule = [...tokens].reverse().find((t) => t.endsWith('.ts'));
40
- if (mainModule === undefined || !existsSync(mainModule)) continue;
41
- const repoRoot = resolve(dirname(mainModule), '..', '..', '..');
42
- const appEntry = join(repoRoot, 'packages', 'app', 'src', 'index.ts');
43
- if (existsSync(appEntry)) return { entry: appEntry, portable: false };
44
- }
45
- const entry = fileURLToPath(new URL('../lib/inline-run.generated.mjs', import.meta.url));
46
- if (!existsSync(entry)) {
47
- throw new Error('inline application bundle is missing — rebuild/install the sp plugin before running inline');
48
- }
49
- return { entry, portable: true };
50
- }
51
-
52
- export async function loadInlineApp<T extends object>(
53
- spurBin: string,
54
- resolveAppEntry: (spurBin: string) => { entry: string; portable: boolean },
55
- required: readonly (keyof T)[],
56
- ): Promise<{ app: T; portable: boolean }> {
57
- const { entry, portable } = resolveAppEntry(spurBin);
58
- const app = (await import(entry)) as T;
59
- const missing = portable ? required.filter((name) => typeof app[name] !== 'function') : [];
60
- if (missing.length > 0) {
61
- throw new Error(
62
- `inline application bundle ${entry} is older than its scripts — missing ${missing.join(', ')}. ` +
63
- 'Reinstall sp with a superskill release that stages lib/ (commit b42961b), or pass ' +
64
- '--spur-bin <spur checkout>/apps/cli/src/index.ts.',
65
- );
66
- }
67
- return { app, portable };
68
- }
@@ -1,37 +0,0 @@
1
- /** GENERATED by scripts/commands/bundle-plugin-lib.ts — do not edit. Requires Bun for SQLite. */
2
- export declare const appendInlineRunLogLine: typeof import('@gobing-ai/spur-app').appendInlineRunLogLine;
3
- export declare const createOrAttachInlineRun: typeof import('@gobing-ai/spur-app').createOrAttachInlineRun;
4
- export declare const inlineRunRecordLogPath: typeof import('@gobing-ai/spur-app').inlineRunRecordLogPath;
5
- export declare const isInlineRunActionStatus: typeof import('@gobing-ai/spur-app').isInlineRunActionStatus;
6
- export declare const isInlineRunCloseStatus: typeof import('@gobing-ai/spur-app').isInlineRunCloseStatus;
7
- export declare const persistWorktreeRuns: typeof import('@gobing-ai/spur-app').persistWorktreeRuns;
8
- export declare const recordInlineRunAttribution: typeof import('@gobing-ai/spur-app').recordInlineRunAttribution;
9
- export declare const runInlineRunDispatchFailure: typeof import('@gobing-ai/spur-app').runInlineRunDispatchFailure;
10
- export declare const readInstalledInventory: typeof import('@gobing-ai/spur-app').readInstalledInventory;
11
- export declare const runDecideForInlineRun: typeof import('@gobing-ai/spur-app').runDecideForInlineRun;
12
- export declare const runInlineRunTraceBatch: typeof import('@gobing-ai/spur-app').runInlineRunTraceBatch;
13
- export declare const runInlineRunDecide: typeof import('@gobing-ai/spur-app').runInlineRunDecide;
14
- export declare const runInlineRunFingerprint: typeof import('@gobing-ai/spur-app').runInlineRunFingerprint;
15
- export declare const runInlineRunPersistOut: typeof import('@gobing-ai/spur-app').runInlineRunPersistOut;
16
- export declare const runInlineRunSetup: typeof import('@gobing-ai/spur-app').runInlineRunSetup;
17
- export declare const runInlineRunTrace: typeof import('@gobing-ai/spur-app').runInlineRunTrace;
18
- export declare const runInlineRunNodeEnter: typeof import('@gobing-ai/spur-app').runInlineRunNodeEnter;
19
- export declare const runInlineRunTraceMode: typeof import('@gobing-ai/spur-app').runInlineRunTraceMode;
20
- export declare const writeInlineRunOutcome: typeof import('@gobing-ai/spur-app').writeInlineRunOutcome;
21
- export declare const computeProofInputFingerprint: typeof import('@gobing-ai/spur-app').computeProofInputFingerprint;
22
- export declare const readProofInputContents: typeof import('@gobing-ai/spur-app').readProofInputContents;
23
- export declare const createWorkflowActionTraceWriter: typeof import('@gobing-ai/spur-app').createWorkflowActionTraceWriter;
24
- export declare const readHistoryHealth: typeof import('@gobing-ai/spur-app').readHistoryHealth;
25
- export declare function splitLaunchCommand(value: string, label: string): { command: string; leadingArgs: string[] } | { error: string };
26
- export declare const createFeatureLookup: typeof import('@gobing-ai/spur-app').createFeatureLookup;
27
- export declare const runFeatureVerification: typeof import('@gobing-ai/spur-app').runFeatureVerification;
28
- export declare const captureFeatureReceiptDigest: typeof import('@gobing-ai/spur-app').captureFeatureReceiptDigest;
29
- export declare const completeFeatureVerificationReceipt: typeof import('@gobing-ai/spur-app').completeFeatureVerificationReceipt;
30
- export declare const DEFAULT_FEATURE_VERIFICATION_CMD: typeof import('@gobing-ai/spur-app').DEFAULT_FEATURE_VERIFICATION_CMD;
31
- export declare const featureReceiptPaths: typeof import('@gobing-ai/spur-app').featureReceiptPaths;
32
- export declare const startFeatureVerificationReceipt: typeof import('@gobing-ai/spur-app').startFeatureVerificationReceipt;
33
- export declare const validateFeatureVerificationReceipt: typeof import('@gobing-ai/spur-app').validateFeatureVerificationReceipt;
34
- export declare const resolveWorkflowDefinition: typeof import('@gobing-ai/spur-app').resolveWorkflowDefinition;
35
- export declare const resolveDecideDecisionMakerEnabled: typeof import('@gobing-ai/spur-config/loader').resolveDecideDecisionMakerEnabled;
36
- export declare const loadSpurConfig: typeof import('@gobing-ai/spur-config/loader').loadSpurConfig;
37
- export declare const EMBEDDED_SPUR_SCHEMAS: ReadonlyMap<string, string>;