@kenkaiiii/ggcoder 5.69.0 → 5.71.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.
- package/assets/motion/bin/contact-sheet.mjs +9 -3
- package/assets/motion/bin/cues.mjs +337 -0
- package/assets/motion/bin/library.mjs +53 -10
- package/assets/motion/bin/motion-blur.mjs +943 -0
- package/assets/motion/bin/motion-check.mjs +354 -3
- package/assets/motion/bin/music-fit.mjs +436 -0
- package/assets/motion/bin/pdf-extract.mjs +22 -10
- package/assets/motion/bin/reference-study.mjs +346 -0
- package/assets/motion/bin/score-synth.mjs +1052 -93
- package/assets/motion/library/README.md +50 -14
- package/assets/motion/library/kit/moves.js +1981 -0
- package/assets/motion/library/library.json +232 -0
- package/assets/motion/library/pieces/camera-rig/meta.json +13 -0
- package/assets/motion/library/pieces/camera-rig/piece.html +153 -0
- package/assets/motion/library/pieces/camera-rig/preview.jpg +0 -0
- package/assets/motion/library/pieces/chain-knock/meta.json +13 -0
- package/assets/motion/library/pieces/chain-knock/piece.html +195 -0
- package/assets/motion/library/pieces/chain-knock/preview.jpg +0 -0
- package/assets/motion/library/pieces/gather-to-logo/meta.json +13 -0
- package/assets/motion/library/pieces/gather-to-logo/piece.html +159 -0
- package/assets/motion/library/pieces/gather-to-logo/preview.jpg +0 -0
- package/assets/motion/library/pieces/morph-carry/meta.json +13 -0
- package/assets/motion/library/pieces/morph-carry/piece.html +173 -0
- package/assets/motion/library/pieces/morph-carry/preview.jpg +0 -0
- package/assets/motion/library/pieces/one-shape-journey/meta.json +13 -0
- package/assets/motion/library/pieces/one-shape-journey/piece.html +195 -0
- package/assets/motion/library/pieces/one-shape-journey/preview.jpg +0 -0
- package/assets/motion/library/pieces/open-from-subject/meta.json +13 -0
- package/assets/motion/library/pieces/open-from-subject/piece.html +168 -0
- package/assets/motion/library/pieces/open-from-subject/preview.jpg +0 -0
- package/assets/motion/library/pieces/request-to-result/meta.json +13 -0
- package/assets/motion/library/pieces/request-to-result/piece.html +212 -0
- package/assets/motion/library/pieces/request-to-result/preview.jpg +0 -0
- package/assets/motion/library/pieces/scale-dive/meta.json +13 -0
- package/assets/motion/library/pieces/scale-dive/piece.html +321 -0
- package/assets/motion/library/pieces/scale-dive/preview.jpg +0 -0
- package/assets/motion/library/pieces/screen-replica-steps/meta.json +13 -0
- package/assets/motion/library/pieces/screen-replica-steps/piece.html +366 -0
- package/assets/motion/library/pieces/screen-replica-steps/preview.jpg +0 -0
- package/assets/motion/library/pieces/zoom-into-card/meta.json +13 -0
- package/assets/motion/library/pieces/zoom-into-card/piece.html +179 -0
- package/assets/motion/library/pieces/zoom-into-card/preview.jpg +0 -0
- package/assets/motion/library/sheets/diagram.jpg +0 -0
- package/assets/motion/library/sheets/frame.jpg +0 -0
- package/assets/motion/library/sheets/transition.jpg +0 -0
- package/assets/motion/library/sheets/ui.jpg +0 -0
- package/assets/motion/references/build-sheet.md +206 -0
- package/assets/motion/references/runtime/determinism-rules.md +1 -1
- package/assets/motion/references/runtime/gsap-easing-and-stagger.md +29 -29
- package/assets/motion/references/runtime/inputs-and-assets.md +7 -12
- package/assets/motion/references/runtime/lint-validate-inspect.md +3 -3
- package/assets/motion/references/runtime/minimal-composition.md +1 -1
- package/assets/motion/references/runtime/preview-render.md +3 -3
- package/assets/motion/skills/app-walkthrough/SKILL.md +66 -0
- package/assets/motion/skills/before-after/SKILL.md +53 -0
- package/assets/motion/skills/brand-kit/SKILL.md +3 -3
- package/assets/motion/skills/dev-tool-video/SKILL.md +57 -0
- package/assets/motion/skills/launch-video/SKILL.md +62 -0
- package/assets/motion/skills/match-reference/SKILL.md +58 -0
- package/assets/motion/skills/motion/SKILL.md +78 -85
- package/assets/motion/skills/source-ingest/SKILL.md +17 -6
- package/assets/motion/skills/website-video/SKILL.md +59 -0
- package/assets/skills/bulletproof/SKILL.md +36 -11
- package/assets/skills/bulletproof/references/agent-surface.md +19 -9
- package/assets/skills/bulletproof/references/audit-protocol.md +20 -5
- package/assets/skills/bulletproof/references/platform-playbooks.md +5 -4
- package/assets/skills/bulletproof/references/provenance.md +26 -1
- package/assets/skills/bulletproof/references/secure-defaults.md +6 -5
- package/assets/skills/bulletproof/references/supply-chain.md +21 -17
- package/assets/skills/bulletproof/references/threat-landscape.md +28 -26
- package/assets/skills/bulletproof/references/verification.md +2 -0
- package/assets/skills/clarify/SKILL.md +25 -16
- package/assets/skills/code-review/SKILL.md +71 -13
- package/assets/skills/code-review/references/agent-diffs.md +27 -0
- package/assets/skills/code-review/references/tests.md +19 -0
- package/assets/skills/compliance-guard/SKILL.md +20 -5
- package/assets/skills/compliance-guard/references/artifacts.md +1 -1
- package/assets/skills/compliance-guard/references/eu-uk.md +16 -16
- package/assets/skills/compliance-guard/references/lawsuit-vectors.md +5 -5
- package/assets/skills/compliance-guard/references/provenance.md +41 -2
- package/assets/skills/compliance-guard/references/sector-gates.md +3 -3
- package/assets/skills/compliance-guard/references/security-baseline.md +2 -2
- package/assets/skills/compliance-guard/references/trigger-map.md +5 -5
- package/assets/skills/compliance-guard/references/us.md +27 -21
- package/assets/skills/durable/SKILL.md +87 -79
- package/assets/skills/durable/references/agent-db-safety.md +69 -0
- package/assets/skills/durable/references/backups-and-runtime.md +19 -12
- package/assets/skills/durable/references/migrations-and-schema.md +13 -6
- package/assets/skills/evidence-led-ui/SKILL.md +69 -127
- package/assets/skills/evidence-led-ui/references/anti-defaults.md +107 -208
- package/assets/skills/evidence-led-ui/references/direction.md +124 -0
- package/assets/skills/evidence-led-ui/references/production-contract.md +8 -0
- package/assets/skills/evidence-led-ui/references/provenance.md +24 -1
- package/assets/skills/lean/SKILL.md +90 -71
- package/assets/skills/lean/references/memory-and-processes.md +3 -2
- package/assets/skills/lean/references/playbooks.md +37 -12
- package/assets/skills/refactoring/SKILL.md +24 -3
- package/assets/skills/refactoring/references/agent-pitfalls.md +4 -1
- package/assets/skills/refactoring/references/legacy.md +21 -0
- package/assets/skills/root-cause/SKILL.md +20 -10
- package/assets/skills/shared-language/SKILL.md +16 -14
- package/assets/skills/tdd/SKILL.md +27 -15
- package/dist/app-sidecar.js +56 -33
- package/dist/app-sidecar.js.map +1 -1
- package/dist/cli.js +2 -11
- package/dist/cli.js.map +1 -1
- package/dist/core/acceptance-checks.d.ts +48 -0
- package/dist/core/acceptance-checks.js +144 -0
- package/dist/core/acceptance-checks.js.map +1 -0
- package/dist/core/agent-session.d.ts +32 -70
- package/dist/core/agent-session.js +92 -413
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/agents.d.ts +6 -5
- package/dist/core/agents.js.map +1 -1
- package/dist/core/bundled-agents.js +1 -3
- package/dist/core/bundled-agents.js.map +1 -1
- package/dist/core/compaction/compactor.js +78 -48
- package/dist/core/compaction/compactor.js.map +1 -1
- package/dist/core/mcp/content.js +6 -2
- package/dist/core/mcp/content.js.map +1 -1
- package/dist/core/model-unavailable.d.ts +14 -0
- package/dist/core/model-unavailable.js +23 -0
- package/dist/core/model-unavailable.js.map +1 -0
- package/dist/core/node-debugger.d.ts +148 -0
- package/dist/core/node-debugger.js +642 -0
- package/dist/core/node-debugger.js.map +1 -0
- package/dist/core/process-manager.d.ts +14 -0
- package/dist/core/process-manager.js +61 -0
- package/dist/core/process-manager.js.map +1 -1
- package/dist/core/session-history.d.ts +12 -0
- package/dist/core/session-history.js +27 -0
- package/dist/core/session-history.js.map +1 -1
- package/dist/core/settings-manager.d.ts +0 -1
- package/dist/core/settings-manager.js +2 -5
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/skills.js +3 -1
- package/dist/core/skills.js.map +1 -1
- package/dist/core/subagent-manager.d.ts +11 -5
- package/dist/core/subagent-manager.js +15 -7
- package/dist/core/subagent-manager.js.map +1 -1
- package/dist/core/test-impact.d.ts +73 -0
- package/dist/core/test-impact.js +467 -0
- package/dist/core/test-impact.js.map +1 -0
- package/dist/core/thinking-level.d.ts +1 -1
- package/dist/core/thinking-level.js +1 -1
- package/dist/core/thinking-level.js.map +1 -1
- package/dist/core/verification-gate.d.ts +8 -98
- package/dist/core/verification-gate.js +26 -256
- package/dist/core/verification-gate.js.map +1 -1
- package/dist/interactive.js +2 -1
- package/dist/interactive.js.map +1 -1
- package/dist/modes/subagent-worker-mode.js +17 -5
- package/dist/modes/subagent-worker-mode.js.map +1 -1
- package/dist/motion-agent/motion-agent.d.ts +6 -2
- package/dist/motion-agent/motion-agent.js +5 -7
- package/dist/motion-agent/motion-agent.js.map +1 -1
- package/dist/motion-agent/motion-prompt.d.ts +1 -1
- package/dist/motion-agent/motion-prompt.js +14 -19
- package/dist/motion-agent/motion-prompt.js.map +1 -1
- package/dist/motion-agent/motion-review.d.ts +5 -1
- package/dist/motion-agent/motion-review.js +8 -3
- package/dist/motion-agent/motion-review.js.map +1 -1
- package/dist/motion-agent/motion-studio-context.js +1 -1
- package/dist/motion-agent/motion-studio-context.js.map +1 -1
- package/dist/system-prompt.js +3 -1
- package/dist/system-prompt.js.map +1 -1
- package/dist/test-support/keep-alive.d.ts +14 -0
- package/dist/test-support/keep-alive.js +17 -0
- package/dist/test-support/keep-alive.js.map +1 -0
- package/dist/tools/bash-read-evidence.d.ts +10 -0
- package/dist/tools/bash-read-evidence.js +133 -0
- package/dist/tools/bash-read-evidence.js.map +1 -0
- package/dist/tools/bash.d.ts +10 -1
- package/dist/tools/bash.js +66 -3
- package/dist/tools/bash.js.map +1 -1
- package/dist/tools/debug.d.ts +54 -0
- package/dist/tools/debug.js +233 -0
- package/dist/tools/debug.js.map +1 -0
- package/dist/tools/edit.js +12 -4
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/index.d.ts +19 -2
- package/dist/tools/index.js +46 -6
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/prompt-hints.js +2 -0
- package/dist/tools/prompt-hints.js.map +1 -1
- package/dist/tools/read-tracker.d.ts +5 -0
- package/dist/tools/read-tracker.js +19 -9
- package/dist/tools/read-tracker.js.map +1 -1
- package/dist/tools/skill.js +5 -0
- package/dist/tools/skill.js.map +1 -1
- package/dist/tools/steroids.d.ts +1 -1
- package/dist/tools/subagent-control.js +11 -3
- package/dist/tools/subagent-control.js.map +1 -1
- package/dist/tools/subagent-shared.d.ts +16 -8
- package/dist/tools/subagent-shared.js +21 -15
- package/dist/tools/subagent-shared.js.map +1 -1
- package/dist/tools/subagent.d.ts +8 -2
- package/dist/tools/subagent.js +16 -9
- package/dist/tools/subagent.js.map +1 -1
- package/dist/tools/tool-tiers.d.ts +2 -2
- package/dist/tools/tool-tiers.js +3 -2
- package/dist/tools/tool-tiers.js.map +1 -1
- package/dist/ui/App.d.ts +0 -7
- package/dist/ui/App.js +6 -79
- package/dist/ui/App.js.map +1 -1
- package/dist/ui/hooks/useAgentLoop.d.ts +0 -7
- package/dist/ui/hooks/useAgentLoop.js +1 -119
- package/dist/ui/hooks/useAgentLoop.js.map +1 -1
- package/dist/ui/render.d.ts +0 -4
- package/dist/ui/render.js +0 -2
- package/dist/ui/render.js.map +1 -1
- package/dist/utils/image.d.ts +14 -0
- package/dist/utils/image.js +16 -0
- package/dist/utils/image.js.map +1 -1
- package/package.json +4 -4
- package/assets/motion/references/motion-language.md +0 -128
- package/assets/motion/skills/video-qa/SKILL.md +0 -89
- package/dist/core/ideal-review-subagent.d.ts +0 -56
- package/dist/core/ideal-review-subagent.js +0 -112
- package/dist/core/ideal-review-subagent.js.map +0 -1
- package/dist/core/ideal-review.d.ts +0 -82
- package/dist/core/ideal-review.js +0 -242
- package/dist/core/ideal-review.js.map +0 -1
- package/dist/motion-agent/motion-check-tool.d.ts +0 -42
- package/dist/motion-agent/motion-check-tool.js +0 -564
- package/dist/motion-agent/motion-check-tool.js.map +0 -1
|
@@ -1,36 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Verification gate — the turn cannot claim "done" while a promised check is
|
|
3
|
-
* still owed.
|
|
4
|
-
*
|
|
5
|
-
* When a run mutated code files and no test / typecheck / lint / build command
|
|
6
|
-
* completed after the last mutation, the pre-stop hook injects a follow-up
|
|
7
|
-
* demanding the project's verification be run. One initial demand plus at most
|
|
8
|
-
* one post-verification recheck, only when new edits invalidate a completed
|
|
9
|
-
* check. Unchanged work never repeats the demand. If the bounded budget runs
|
|
10
|
-
* out, the demand requires disclosure of what remains unverified.
|
|
11
|
-
* Prompt-only "verify before finishing" instructions can be ignored; this gate
|
|
12
|
-
* is harness-owned bookkeeping on what actually executed.
|
|
13
|
-
*
|
|
14
|
-
* The broad runner-shape classifier below identifies verification attempts.
|
|
15
|
-
* Authoritative success uses the stricter verification-evidence classifier
|
|
16
|
-
* plus host-observed exit status and the revision captured at command start.
|
|
17
|
-
* Missing or rejected evidence cannot clear outstanding verification.
|
|
18
|
-
*
|
|
19
|
-
* Check-integrity review: test/config edits and added suppression markers are
|
|
20
|
-
* review candidates, not proof of tampering. A green check alone cannot tell a
|
|
21
|
-
* legitimate regression test from weakened assertions, so keep these mutations
|
|
22
|
-
* separate and request an internal diff review alongside owed verification.
|
|
23
|
-
* Later test edits retain one standalone review request per run. This bounded
|
|
24
|
-
* prompt gate cannot prove the review happened; it requires disclosure of real
|
|
25
|
-
* weakening or unresolved doubt, not a defense of routine test work.
|
|
26
|
-
*/
|
|
27
|
-
import type { Message } from "@kenkaiiii/gg-ai";
|
|
28
1
|
import type { VerificationEvidence } from "./verification-evidence.js";
|
|
29
2
|
export declare const VERIFICATION_STATE_KIND = "verification_state";
|
|
30
|
-
/** Initial demands per run; at most one separate post-verification recheck is allowed. */
|
|
31
|
-
export declare const MAX_VERIFICATION_INJECTIONS = 1;
|
|
32
|
-
/** Tamper-disclosure demands per run. Same reasoning as above: one is enough. */
|
|
33
|
-
export declare const MAX_TAMPER_INJECTIONS = 1;
|
|
34
3
|
/**
|
|
35
4
|
* True when the command looks like a test/typecheck/lint/build invocation:
|
|
36
5
|
* compound segments considered independently, wrappers stripped, a known runner
|
|
@@ -51,45 +20,19 @@ export declare function isCodeFilePath(filePath: string): boolean;
|
|
|
51
20
|
* miss leaves today's behavior, a false positive costs one disclosure sentence.
|
|
52
21
|
*/
|
|
53
22
|
export declare function isCheckOwnFile(filePath: string): boolean;
|
|
54
|
-
/** The `+` lines of a unified diff, with the marker stripped. */
|
|
55
|
-
export declare function extractAddedLines(diff: string): string;
|
|
56
|
-
/** Suppression/skip markers present in newly added text, de-duplicated. */
|
|
57
|
-
export declare function detectCheckWeakening(addedText: string): string[];
|
|
58
|
-
/** A mutation that changed what a check asserts, and why it looked that way. */
|
|
59
|
-
export interface SuspectMutation {
|
|
60
|
-
filePath: string;
|
|
61
|
-
reason: string;
|
|
62
|
-
}
|
|
63
|
-
export declare function buildTamperDisclosureMessage(suspects: readonly SuspectMutation[]): Message;
|
|
64
|
-
export declare function buildVerificationFollowUpMessage(files: readonly string[], recheck?: boolean, rejectedCheck?: {
|
|
65
|
-
command: string;
|
|
66
|
-
reason: string;
|
|
67
|
-
} | null, invalidationCause?: string | null): Message;
|
|
68
23
|
/**
|
|
69
|
-
* Bookkeeping for "code was edited, nothing proved it since".
|
|
70
|
-
* successful edit/write mutations on code files and
|
|
71
|
-
*
|
|
72
|
-
*
|
|
24
|
+
* Bookkeeping for "code was edited, nothing proved it since".
|
|
25
|
+
* Callers record successful edit/write mutations on code files and
|
|
26
|
+
* host-observed check results. Passive evidence only: run status and
|
|
27
|
+
* autopilot read it; it never forces another model turn.
|
|
73
28
|
*/
|
|
74
29
|
export declare class VerificationGate {
|
|
75
30
|
private seq;
|
|
76
31
|
private lastMutationSeq;
|
|
77
32
|
private lastVerificationSeq;
|
|
78
|
-
private injections;
|
|
79
|
-
private recheckInjections;
|
|
80
|
-
private lastDemandedMutationSeq;
|
|
81
|
-
private tamperInjections;
|
|
82
|
-
private lastSuspectSeq;
|
|
83
|
-
private lastReviewRequestedSeq;
|
|
84
33
|
private failedChecks;
|
|
85
34
|
private passedChecks;
|
|
86
35
|
private unknownVerification;
|
|
87
|
-
/** A check the evidence classifier refused to vouch for, kept so the demand
|
|
88
|
-
* can explain WHY a green run in the transcript did not clear the gate. */
|
|
89
|
-
private lastRejectedCheck;
|
|
90
|
-
/** The file-rewriting command that last invalidated evidence, if any — named
|
|
91
|
-
* in a recheck demand that has no tracked file edits to list instead. */
|
|
92
|
-
private lastInvalidationCause;
|
|
93
36
|
/**
|
|
94
37
|
* Did THIS run touch what the gate guards — a code mutation, or a check that
|
|
95
38
|
* may have rewritten files? Inherited debt alone never re-arms the gate: a
|
|
@@ -100,13 +43,6 @@ export declare class VerificationGate {
|
|
|
100
43
|
private runTouched;
|
|
101
44
|
/** Code files mutated since the last verification — the gate's file list. */
|
|
102
45
|
private mutatedFiles;
|
|
103
|
-
/**
|
|
104
|
-
* Mutations that changed what a check asserts. Keyed by path so repeated edits
|
|
105
|
-
* to one file disclose once. Deliberately NOT cleared by recordVerification():
|
|
106
|
-
* the whole point is that the passing check cannot clear the suspicion that it
|
|
107
|
-
* was the thing edited.
|
|
108
|
-
*/
|
|
109
|
-
private suspects;
|
|
110
46
|
private evidenceRecords;
|
|
111
47
|
private runEvidenceKeys;
|
|
112
48
|
private runVerificationRequested;
|
|
@@ -116,18 +52,13 @@ export declare class VerificationGate {
|
|
|
116
52
|
private rememberEvidence;
|
|
117
53
|
/** The same host-observed results used by the completion gate, not a second transcript verdict. */
|
|
118
54
|
evidence(scope?: "workspace" | "run"): VerificationEvidence[];
|
|
119
|
-
|
|
120
|
-
* @param addedText Text the model ADDED in this mutation (the `+` lines of a
|
|
121
|
-
* diff, or a written file's full content). Scanned for suppression and skip
|
|
122
|
-
* markers; omit it and only the path check applies.
|
|
123
|
-
*/
|
|
124
|
-
recordMutation(filePath: string, addedText?: string): void;
|
|
55
|
+
recordMutation(filePath: string): void;
|
|
125
56
|
get revision(): number;
|
|
126
57
|
recordVerification(revision?: number, command?: string): void;
|
|
127
58
|
recordFailedVerification(command: string, revision?: number): void;
|
|
128
|
-
requireFreshVerification(invalidateRevision?: boolean
|
|
129
|
-
/** Remember a check shape the evidence classifier refused
|
|
130
|
-
*
|
|
59
|
+
requireFreshVerification(invalidateRevision?: boolean): void;
|
|
60
|
+
/** Remember a check shape the evidence classifier refused. Command text is
|
|
61
|
+
* model-authored: capped, never executed. */
|
|
131
62
|
recordRejectedCheck(command: string, reason: string): void;
|
|
132
63
|
verificationProblem(): string | null;
|
|
133
64
|
snapshot(): {
|
|
@@ -142,26 +73,5 @@ export declare class VerificationGate {
|
|
|
142
73
|
restore(value: unknown): void;
|
|
143
74
|
beginRun(): void;
|
|
144
75
|
isOwed(): boolean;
|
|
145
|
-
/**
|
|
146
|
-
* A passing check with test edits not yet covered by a review request. Without
|
|
147
|
-
* a pass, the standard demand includes the review instead of adding a stop.
|
|
148
|
-
* Requesting review is not proof of integrity; this is a bounded prompt gate.
|
|
149
|
-
*/
|
|
150
|
-
isTamperOwed(): boolean;
|
|
151
|
-
/** Suspect mutations recorded this run, sorted for stable output. */
|
|
152
|
-
tamperSuspects(): SuspectMutation[];
|
|
153
|
-
/**
|
|
154
|
-
* Would a stop right now inject? Lets the session arm clients BEFORE the
|
|
155
|
-
* candidate final answer streams, so the draft the injection replaces is held
|
|
156
|
-
* rather than painted and then superseded.
|
|
157
|
-
*/
|
|
158
|
-
willInject(): boolean;
|
|
159
|
-
pendingReason(): "initial" | "recheck" | "tamper" | null;
|
|
160
|
-
/**
|
|
161
|
-
* The blocking message for the pre-stop hook, or null when nothing is owed
|
|
162
|
-
* or its bounded budget is spent. A later edit after the demanded check gets
|
|
163
|
-
* one additional pass; unchanged/unverified work never repeats a reminder.
|
|
164
|
-
*/
|
|
165
|
-
followUp(): Message[] | null;
|
|
166
76
|
reset(): void;
|
|
167
77
|
}
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Verification gate — the turn cannot claim "done" while a promised check is
|
|
3
|
+
* still owed.
|
|
4
|
+
*
|
|
5
|
+
* When a run mutated code files and no test / typecheck / lint / build command
|
|
6
|
+
* completed after the last mutation, the pre-stop hook injects a follow-up
|
|
7
|
+
* demanding the project's verification be run. One initial demand plus at most
|
|
8
|
+
* one post-verification recheck, only when new edits invalidate a completed
|
|
9
|
+
* check. Unchanged work never repeats the demand. If the bounded budget runs
|
|
10
|
+
* out, the demand requires disclosure of what remains unverified.
|
|
11
|
+
* Prompt-only "verify before finishing" instructions can be ignored; this gate
|
|
12
|
+
* is harness-owned bookkeeping on what actually executed.
|
|
13
|
+
*
|
|
14
|
+
* The broad runner-shape classifier below identifies verification attempts.
|
|
15
|
+
* Authoritative success uses the stricter verification-evidence classifier
|
|
16
|
+
* plus host-observed exit status and the revision captured at command start.
|
|
17
|
+
* Missing or rejected evidence cannot clear outstanding verification.
|
|
18
|
+
*/
|
|
1
19
|
import { createHash } from "node:crypto";
|
|
2
20
|
import { z } from "zod";
|
|
3
21
|
export const VERIFICATION_STATE_KIND = "verification_state";
|
|
@@ -18,10 +36,6 @@ const verificationStateSchema = z.object({
|
|
|
18
36
|
unknown: z.boolean(),
|
|
19
37
|
});
|
|
20
38
|
const checkKey = (command) => createHash("sha256").update(command.trim()).digest("hex");
|
|
21
|
-
/** Initial demands per run; at most one separate post-verification recheck is allowed. */
|
|
22
|
-
export const MAX_VERIFICATION_INJECTIONS = 1;
|
|
23
|
-
/** Tamper-disclosure demands per run. Same reasoning as above: one is enough. */
|
|
24
|
-
export const MAX_TAMPER_INJECTIONS = 1;
|
|
25
39
|
/** Words that may precede the real command without changing its shape. */
|
|
26
40
|
const SHELL_WRAPPERS = new Set([
|
|
27
41
|
"env",
|
|
@@ -286,136 +300,18 @@ export function isCheckOwnFile(filePath) {
|
|
|
286
300
|
return false;
|
|
287
301
|
}
|
|
288
302
|
/**
|
|
289
|
-
*
|
|
290
|
-
*
|
|
291
|
-
*
|
|
292
|
-
*
|
|
293
|
-
* Deliberately limited to unambiguous intent (an explicit suppression pragma, a
|
|
294
|
-
* skipped or narrowed test). Judgement calls that are ordinary in real test code
|
|
295
|
-
* — `as any`, a loosened assertion — are NOT matched: at one extra model turn
|
|
296
|
-
* per false positive, a noisy signal costs more than the rare miss.
|
|
297
|
-
*/
|
|
298
|
-
const SUPPRESSION_MARKERS = [
|
|
299
|
-
{ re: /@ts-(?:ignore|expect-error|nocheck)\b/, what: "TypeScript error suppression" },
|
|
300
|
-
{ re: /eslint-disable(?:-next-line|-line)?\b/, what: "ESLint rule suppression" },
|
|
301
|
-
{ re: /#\s*type:\s*ignore\b/, what: "mypy type-ignore" },
|
|
302
|
-
{ re: /#\s*noqa\b/, what: "flake8/ruff noqa" },
|
|
303
|
-
{ re: /#\s*(?:pylint|mypy|ruff):\s*disable\b/, what: "Python linter suppression" },
|
|
304
|
-
{ re: /#\[allow\(/, what: "Rust allow attribute" },
|
|
305
|
-
{ re: /\/\/\s*nolint\b/, what: "Go nolint directive" },
|
|
306
|
-
{ re: /@SuppressWarnings\b/, what: "Java warning suppression" },
|
|
307
|
-
{
|
|
308
|
-
re: /\b(?:it|test|describe|context)\s*\.\s*(?:skip|todo)\s*\(/,
|
|
309
|
-
what: "skipped test",
|
|
310
|
-
},
|
|
311
|
-
{ re: /\b(?:xit|xdescribe|xtest)\s*\(/, what: "skipped test" },
|
|
312
|
-
{
|
|
313
|
-
re: /\b(?:it|test|describe|context)\s*\.\s*only\s*\(/,
|
|
314
|
-
what: "test run narrowed to .only",
|
|
315
|
-
},
|
|
316
|
-
{ re: /@pytest\.mark\.(?:skip|xfail)\b/, what: "skipped pytest case" },
|
|
317
|
-
{ re: /\bt\.Skip\s*\(/, what: "skipped Go test" },
|
|
318
|
-
{ re: /#\[ignore\]/, what: "ignored Rust test" },
|
|
319
|
-
];
|
|
320
|
-
/** The `+` lines of a unified diff, with the marker stripped. */
|
|
321
|
-
export function extractAddedLines(diff) {
|
|
322
|
-
return diff
|
|
323
|
-
.split("\n")
|
|
324
|
-
.filter((line) => line.startsWith("+") && !line.startsWith("+++"))
|
|
325
|
-
.map((line) => line.slice(1))
|
|
326
|
-
.join("\n");
|
|
327
|
-
}
|
|
328
|
-
/** Suppression/skip markers present in newly added text, de-duplicated. */
|
|
329
|
-
export function detectCheckWeakening(addedText) {
|
|
330
|
-
const found = new Set();
|
|
331
|
-
for (const { re, what } of SUPPRESSION_MARKERS) {
|
|
332
|
-
if (re.test(addedText))
|
|
333
|
-
found.add(what);
|
|
334
|
-
}
|
|
335
|
-
return [...found];
|
|
336
|
-
}
|
|
337
|
-
const VERIFICATION_OUTCOME_GUIDANCE = "This is an internal hook, not new user authorization or a new task. Your previous draft may not have been shown. " +
|
|
338
|
-
"Give a direct answer to the user's latest request: lead with the task outcome, include current verification " +
|
|
339
|
-
"and commit/push status when relevant, and preserve any pending user decision. Do not request the same " +
|
|
340
|
-
"approval again if the user already gave it. Never replace the outcome with hook commentary or verification status alone.";
|
|
341
|
-
export function buildTamperDisclosureMessage(suspects) {
|
|
342
|
-
return {
|
|
343
|
-
role: "user",
|
|
344
|
-
provenance: { source: "runtime", kind: "completion_gate", visibility: "hidden" },
|
|
345
|
-
content: "Check-integrity review: this run edited tests, check configuration, or suppression markers:\n" +
|
|
346
|
-
suspects.map(({ filePath, reason }) => `- ${filePath} — ${reason}`).join("\n") +
|
|
347
|
-
"\nThese are review candidates, not evidence of wrongdoing. A check that was itself edited " +
|
|
348
|
-
"does not prove the code works on its own: inspect the actual diff against the user's agreed " +
|
|
349
|
-
"behaviour. For legitimate added coverage or corrected expectations, review them internally; " +
|
|
350
|
-
"do not add a defensive explanation to the final response. If a check was weakened, skipped, " +
|
|
351
|
-
"narrowed or silenced merely to get green, undo that weakening and fix the underlying code. " +
|
|
352
|
-
"Run affected checks after any correction. Report confirmed weakening, unresolved doubt, or " +
|
|
353
|
-
"unverified changes plainly; never claim verification without resolving them. Complete this " +
|
|
354
|
-
"review and required checks before any authorized commit or push that has not happened yet. " +
|
|
355
|
-
VERIFICATION_OUTCOME_GUIDANCE,
|
|
356
|
-
};
|
|
357
|
-
}
|
|
358
|
-
export function buildVerificationFollowUpMessage(files, recheck = false, rejectedCheck, invalidationCause) {
|
|
359
|
-
const noFiles = files.length === 0;
|
|
360
|
-
return {
|
|
361
|
-
role: "user",
|
|
362
|
-
provenance: { source: "runtime", kind: "completion_gate", visibility: "hidden" },
|
|
363
|
-
content: (recheck
|
|
364
|
-
? noFiles
|
|
365
|
-
? "Verification gate: a command that can rewrite files" +
|
|
366
|
-
(invalidationCause ? ` (\`${invalidationCause}\`)` : "") +
|
|
367
|
-
" ran after the earlier verification, so its green check no longer proves the current state:\n"
|
|
368
|
-
: "Verification gate: code changed again after the earlier verification:\n"
|
|
369
|
-
: "Verification gate: current successful verification is missing for this run:\n") +
|
|
370
|
-
files.map((filePath) => `- ${filePath}`).join("\n") +
|
|
371
|
-
(noFiles ? "" : "\n") +
|
|
372
|
-
(recheck
|
|
373
|
-
? noFiles
|
|
374
|
-
? "Re-run the project's checks against the current state and address any failures. "
|
|
375
|
-
: "Re-run the affected checks against these changes and address any failures. "
|
|
376
|
-
: "Run the project's verification now (its test command, or the closest equivalent) and " +
|
|
377
|
-
"address any failures. ") +
|
|
378
|
-
"Do not describe the change as tested or working without having run it. " +
|
|
379
|
-
"There is no repeated reminder for unchanged code: if you cannot run it, say plainly in your final " +
|
|
380
|
-
"response which of these changes went unverified and why, so the user can check them." +
|
|
381
|
-
// Why a green run already in the transcript did not count. Without this,
|
|
382
|
-
// the agent re-ran the same untrusted command shape every turn and the
|
|
383
|
-
// gate never cleared — the user got verification status instead of
|
|
384
|
-
// answers on every prompt.
|
|
385
|
-
(rejectedCheck
|
|
386
|
-
? `\nA check you ran did not count as verification evidence: \`${rejectedCheck.command}\` — ${rejectedCheck.reason}. ` +
|
|
387
|
-
"Green output from that command shape cannot clear this gate; run a bounded check instead " +
|
|
388
|
-
"(the project's test script via pnpm/npm/yarn test, vitest run, jest, pytest, or tsc --noEmit)."
|
|
389
|
-
: "") +
|
|
390
|
-
" " +
|
|
391
|
-
VERIFICATION_OUTCOME_GUIDANCE,
|
|
392
|
-
};
|
|
393
|
-
}
|
|
394
|
-
/**
|
|
395
|
-
* Bookkeeping for "code was edited, nothing proved it since". Callers record
|
|
396
|
-
* successful edit/write mutations on code files and host-observed check results.
|
|
397
|
-
* Approval requires current successful evidence and no unresolved failures;
|
|
398
|
-
* exhausting the reminder budget never clears the underlying problem.
|
|
303
|
+
* Bookkeeping for "code was edited, nothing proved it since".
|
|
304
|
+
* Callers record successful edit/write mutations on code files and
|
|
305
|
+
* host-observed check results. Passive evidence only: run status and
|
|
306
|
+
* autopilot read it; it never forces another model turn.
|
|
399
307
|
*/
|
|
400
308
|
export class VerificationGate {
|
|
401
309
|
seq = 0;
|
|
402
310
|
lastMutationSeq = 0;
|
|
403
311
|
lastVerificationSeq = 0;
|
|
404
|
-
injections = 0;
|
|
405
|
-
recheckInjections = 0;
|
|
406
|
-
lastDemandedMutationSeq = 0;
|
|
407
|
-
tamperInjections = 0;
|
|
408
|
-
lastSuspectSeq = 0;
|
|
409
|
-
lastReviewRequestedSeq = 0;
|
|
410
312
|
failedChecks = new Map(); // checkKey → mutation revision at failure
|
|
411
313
|
passedChecks = new Map();
|
|
412
314
|
unknownVerification = false;
|
|
413
|
-
/** A check the evidence classifier refused to vouch for, kept so the demand
|
|
414
|
-
* can explain WHY a green run in the transcript did not clear the gate. */
|
|
415
|
-
lastRejectedCheck = null;
|
|
416
|
-
/** The file-rewriting command that last invalidated evidence, if any — named
|
|
417
|
-
* in a recheck demand that has no tracked file edits to list instead. */
|
|
418
|
-
lastInvalidationCause = null;
|
|
419
315
|
/**
|
|
420
316
|
* Did THIS run touch what the gate guards — a code mutation, or a check that
|
|
421
317
|
* may have rewritten files? Inherited debt alone never re-arms the gate: a
|
|
@@ -426,13 +322,6 @@ export class VerificationGate {
|
|
|
426
322
|
runTouched = false;
|
|
427
323
|
/** Code files mutated since the last verification — the gate's file list. */
|
|
428
324
|
mutatedFiles = new Set();
|
|
429
|
-
/**
|
|
430
|
-
* Mutations that changed what a check asserts. Keyed by path so repeated edits
|
|
431
|
-
* to one file disclose once. Deliberately NOT cleared by recordVerification():
|
|
432
|
-
* the whole point is that the passing check cannot clear the suspicion that it
|
|
433
|
-
* was the thing edited.
|
|
434
|
-
*/
|
|
435
|
-
suspects = new Map();
|
|
436
325
|
evidenceRecords = new Map();
|
|
437
326
|
runEvidenceKeys = new Set();
|
|
438
327
|
runVerificationRequested = false;
|
|
@@ -475,28 +364,11 @@ export class VerificationGate {
|
|
|
475
364
|
reason: "Superseded: result belongs to an earlier source revision",
|
|
476
365
|
});
|
|
477
366
|
}
|
|
478
|
-
|
|
479
|
-
* @param addedText Text the model ADDED in this mutation (the `+` lines of a
|
|
480
|
-
* diff, or a written file's full content). Scanned for suppression and skip
|
|
481
|
-
* markers; omit it and only the path check applies.
|
|
482
|
-
*/
|
|
483
|
-
recordMutation(filePath, addedText) {
|
|
367
|
+
recordMutation(filePath) {
|
|
484
368
|
this.lastMutationSeq = ++this.seq;
|
|
485
369
|
this.runTouched = true;
|
|
486
370
|
this.passedChecks.clear();
|
|
487
371
|
this.mutatedFiles.add(filePath);
|
|
488
|
-
const reasons = [];
|
|
489
|
-
if (isCheckOwnFile(filePath))
|
|
490
|
-
reasons.push("edits a test or check configuration");
|
|
491
|
-
if (addedText)
|
|
492
|
-
reasons.push(...detectCheckWeakening(addedText).map((what) => `adds ${what}`));
|
|
493
|
-
if (reasons.length === 0)
|
|
494
|
-
return;
|
|
495
|
-
this.lastSuspectSeq = this.lastMutationSeq;
|
|
496
|
-
// Keep the fullest reason seen for this file rather than the newest.
|
|
497
|
-
const existing = this.suspects.get(filePath);
|
|
498
|
-
const merged = [...new Set([...(existing?.split("; ") ?? []), ...reasons])].join("; ");
|
|
499
|
-
this.suspects.set(filePath, merged);
|
|
500
372
|
}
|
|
501
373
|
get revision() {
|
|
502
374
|
return this.lastMutationSeq;
|
|
@@ -541,26 +413,21 @@ export class VerificationGate {
|
|
|
541
413
|
this.failedChecks.set(key, revision);
|
|
542
414
|
this.rememberEvidence(command, "failed", "Host-observed unsuccessful exit", revision);
|
|
543
415
|
}
|
|
544
|
-
requireFreshVerification(invalidateRevision = false
|
|
416
|
+
requireFreshVerification(invalidateRevision = false) {
|
|
545
417
|
this.runVerificationRequested = true;
|
|
546
418
|
this.unknownVerification = true;
|
|
547
419
|
if (invalidateRevision) {
|
|
548
420
|
this.lastMutationSeq = ++this.seq;
|
|
549
421
|
this.passedChecks.clear();
|
|
550
422
|
this.runTouched = true; // the command may have rewritten files
|
|
551
|
-
this.lastInvalidationCause = cause?.trim().slice(0, 200) || null;
|
|
552
423
|
}
|
|
553
424
|
}
|
|
554
|
-
/** Remember a check shape the evidence classifier refused
|
|
555
|
-
*
|
|
425
|
+
/** Remember a check shape the evidence classifier refused. Command text is
|
|
426
|
+
* model-authored: capped, never executed. */
|
|
556
427
|
recordRejectedCheck(command, reason) {
|
|
557
428
|
if (!command.trim() || !reason.trim())
|
|
558
429
|
return;
|
|
559
430
|
this.rememberEvidence(command, "rejected", reason);
|
|
560
|
-
this.lastRejectedCheck = {
|
|
561
|
-
command: command.trim().slice(0, 200),
|
|
562
|
-
reason: reason.trim().slice(0, 200),
|
|
563
|
-
};
|
|
564
431
|
}
|
|
565
432
|
verificationProblem() {
|
|
566
433
|
if (!this.isOwed())
|
|
@@ -611,113 +478,18 @@ export class VerificationGate {
|
|
|
611
478
|
beginRun() {
|
|
612
479
|
this.runEvidenceKeys.clear();
|
|
613
480
|
this.runVerificationRequested = false;
|
|
614
|
-
this.injections = 0;
|
|
615
|
-
this.recheckInjections = 0;
|
|
616
|
-
this.lastDemandedMutationSeq = 0;
|
|
617
|
-
this.tamperInjections = 0;
|
|
618
|
-
this.lastSuspectSeq = 0;
|
|
619
|
-
this.lastReviewRequestedSeq = 0;
|
|
620
|
-
this.suspects.clear();
|
|
621
481
|
this.runTouched = false;
|
|
622
|
-
this.lastRejectedCheck = null;
|
|
623
|
-
this.lastInvalidationCause = null;
|
|
624
482
|
}
|
|
625
483
|
isOwed() {
|
|
626
484
|
return (this.unknownVerification ||
|
|
627
485
|
this.failedChecks.size > 0 ||
|
|
628
486
|
this.lastMutationSeq > this.lastVerificationSeq);
|
|
629
487
|
}
|
|
630
|
-
/**
|
|
631
|
-
* A passing check with test edits not yet covered by a review request. Without
|
|
632
|
-
* a pass, the standard demand includes the review instead of adding a stop.
|
|
633
|
-
* Requesting review is not proof of integrity; this is a bounded prompt gate.
|
|
634
|
-
*/
|
|
635
|
-
isTamperOwed() {
|
|
636
|
-
return this.lastSuspectSeq > this.lastReviewRequestedSeq && this.lastVerificationSeq > 0;
|
|
637
|
-
}
|
|
638
|
-
/** Suspect mutations recorded this run, sorted for stable output. */
|
|
639
|
-
tamperSuspects() {
|
|
640
|
-
return [...this.suspects]
|
|
641
|
-
.map(([filePath, reason]) => ({ filePath, reason }))
|
|
642
|
-
.sort((a, b) => a.filePath.localeCompare(b.filePath));
|
|
643
|
-
}
|
|
644
|
-
/**
|
|
645
|
-
* Would a stop right now inject? Lets the session arm clients BEFORE the
|
|
646
|
-
* candidate final answer streams, so the draft the injection replaces is held
|
|
647
|
-
* rather than painted and then superseded.
|
|
648
|
-
*/
|
|
649
|
-
willInject() {
|
|
650
|
-
return this.pendingReason() !== null;
|
|
651
|
-
}
|
|
652
|
-
pendingReason() {
|
|
653
|
-
// A run that neither edited code nor started a file-rewriting command
|
|
654
|
-
// cannot owe a NEW demand: inherited debt already had its turns, and
|
|
655
|
-
// re-arming here is what turned every later question prompt into a
|
|
656
|
-
// "Hook engaged" hijack. The debt itself stays recorded — the next run
|
|
657
|
-
// that edits code re-arms the demand as usual.
|
|
658
|
-
if (!this.runTouched)
|
|
659
|
-
return null;
|
|
660
|
-
if (this.isOwed()) {
|
|
661
|
-
if (this.injections < MAX_VERIFICATION_INJECTIONS) {
|
|
662
|
-
return this.lastVerificationSeq > 0 && this.lastMutationSeq > this.lastVerificationSeq
|
|
663
|
-
? "recheck"
|
|
664
|
-
: "initial";
|
|
665
|
-
}
|
|
666
|
-
// One extra pass only after the demanded check completed AND code changed
|
|
667
|
-
// again. Ignoring a prompt or editing without checking cannot re-arm it.
|
|
668
|
-
if (this.recheckInjections === 0 &&
|
|
669
|
-
this.lastVerificationSeq > this.lastDemandedMutationSeq &&
|
|
670
|
-
this.lastMutationSeq > this.lastVerificationSeq)
|
|
671
|
-
return "recheck";
|
|
672
|
-
}
|
|
673
|
-
if (this.isTamperOwed() && this.tamperInjections < MAX_TAMPER_INJECTIONS)
|
|
674
|
-
return "tamper";
|
|
675
|
-
return null;
|
|
676
|
-
}
|
|
677
|
-
/**
|
|
678
|
-
* The blocking message for the pre-stop hook, or null when nothing is owed
|
|
679
|
-
* or its bounded budget is spent. A later edit after the demanded check gets
|
|
680
|
-
* one additional pass; unchanged/unverified work never repeats a reminder.
|
|
681
|
-
*/
|
|
682
|
-
followUp() {
|
|
683
|
-
// Missing evidence and test-integrity review share one intervention.
|
|
684
|
-
const reason = this.pendingReason();
|
|
685
|
-
if (reason === "initial" || reason === "recheck") {
|
|
686
|
-
if (this.injections < MAX_VERIFICATION_INJECTIONS)
|
|
687
|
-
this.injections += 1;
|
|
688
|
-
if (reason === "recheck")
|
|
689
|
-
this.recheckInjections += 1;
|
|
690
|
-
this.lastDemandedMutationSeq = this.lastMutationSeq;
|
|
691
|
-
const messages = [
|
|
692
|
-
buildVerificationFollowUpMessage([...this.mutatedFiles].sort(), reason === "recheck", this.lastRejectedCheck, this.lastInvalidationCause),
|
|
693
|
-
];
|
|
694
|
-
// Review the current test edits alongside verification, not in a second
|
|
695
|
-
// stop after it. Later test edits still get the independent review budget.
|
|
696
|
-
if (this.lastSuspectSeq > this.lastReviewRequestedSeq) {
|
|
697
|
-
messages.push(buildTamperDisclosureMessage(this.tamperSuspects()));
|
|
698
|
-
this.lastReviewRequestedSeq = this.lastSuspectSeq;
|
|
699
|
-
}
|
|
700
|
-
return messages;
|
|
701
|
-
}
|
|
702
|
-
if (reason === "tamper") {
|
|
703
|
-
this.tamperInjections += 1;
|
|
704
|
-
this.lastReviewRequestedSeq = this.lastSuspectSeq;
|
|
705
|
-
return [buildTamperDisclosureMessage(this.tamperSuspects())];
|
|
706
|
-
}
|
|
707
|
-
return null;
|
|
708
|
-
}
|
|
709
488
|
reset() {
|
|
710
489
|
this.seq = 0;
|
|
711
490
|
this.lastMutationSeq = 0;
|
|
712
491
|
this.lastVerificationSeq = 0;
|
|
713
|
-
this.injections = 0;
|
|
714
|
-
this.recheckInjections = 0;
|
|
715
|
-
this.lastDemandedMutationSeq = 0;
|
|
716
|
-
this.tamperInjections = 0;
|
|
717
|
-
this.lastSuspectSeq = 0;
|
|
718
|
-
this.lastReviewRequestedSeq = 0;
|
|
719
492
|
this.mutatedFiles.clear();
|
|
720
|
-
this.suspects.clear();
|
|
721
493
|
this.failedChecks.clear();
|
|
722
494
|
this.passedChecks.clear();
|
|
723
495
|
this.evidenceRecords.clear();
|
|
@@ -725,8 +497,6 @@ export class VerificationGate {
|
|
|
725
497
|
this.runVerificationRequested = false;
|
|
726
498
|
this.unknownVerification = false;
|
|
727
499
|
this.runTouched = false;
|
|
728
|
-
this.lastRejectedCheck = null;
|
|
729
|
-
this.lastInvalidationCause = null;
|
|
730
500
|
}
|
|
731
501
|
}
|
|
732
502
|
//# sourceMappingURL=verification-gate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verification-gate.js","sourceRoot":"","sources":["../../src/core/verification-gate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"verification-gate.js","sourceRoot":"","sources":["../../src/core/verification-gate.ts"],"names":[],"mappings":"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"}
|
package/dist/interactive.js
CHANGED
|
@@ -31,7 +31,7 @@ export async function runInteractive(config) {
|
|
|
31
31
|
globalSkillsDir: paths.skillsDir,
|
|
32
32
|
projectDir: cwd,
|
|
33
33
|
});
|
|
34
|
-
const { tools, processManager, lspManager } = await createTools(cwd, {
|
|
34
|
+
const { tools, processManager, lspManager, debugManager } = await createTools(cwd, {
|
|
35
35
|
skills,
|
|
36
36
|
provider,
|
|
37
37
|
model,
|
|
@@ -42,6 +42,7 @@ export async function runInteractive(config) {
|
|
|
42
42
|
process.on("exit", () => {
|
|
43
43
|
processManager.shutdownAll();
|
|
44
44
|
lspManager?.shutdownAll();
|
|
45
|
+
debugManager?.shutdown();
|
|
45
46
|
});
|
|
46
47
|
// Initialize messages and session
|
|
47
48
|
const messages = [];
|