instar 1.3.279 → 1.3.280
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/dist/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +16 -1
- package/dist/commands/server.js.map +1 -1
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +7 -3
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/monitoring/PromptGate.d.ts +9 -0
- package/dist/monitoring/PromptGate.d.ts.map +1 -1
- package/dist/monitoring/PromptGate.js +52 -0
- package/dist/monitoring/PromptGate.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +20 -20
- package/src/templates/hooks/grounding-before-messaging.sh +8 -3
- package/upgrades/{1.3.279.md → 1.3.280.md} +49 -0
- package/upgrades/side-effects/gemini-modal-safe-reject.md +86 -0
- package/upgrades/side-effects/hook-block-stderr.md +33 -0
|
@@ -26,6 +26,15 @@ export interface DetectedPrompt {
|
|
|
26
26
|
* SKIP the relay/classify pipeline entirely.
|
|
27
27
|
*/
|
|
28
28
|
autoDismissKey?: string;
|
|
29
|
+
/**
|
|
30
|
+
* Safety disposition for deterministic auto-dismisses. `safe-default`
|
|
31
|
+
* answers a framework-owned non-risky prompt with its known default.
|
|
32
|
+
* `safe-reject` explicitly refuses an execution prompt; it must never
|
|
33
|
+
* approve code execution and must be logged by the consumer.
|
|
34
|
+
*/
|
|
35
|
+
autoDismissDisposition?: 'safe-default' | 'safe-reject';
|
|
36
|
+
/** Command text rejected by an execution-approval safe-reject prompt. */
|
|
37
|
+
autoDismissCommand?: string;
|
|
29
38
|
}
|
|
30
39
|
export interface PromptOption {
|
|
31
40
|
key: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptGate.d.ts","sourceRoot":"","sources":["../../src/monitoring/PromptGate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAK3C,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,cAAc,CAAC;AAE3F,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"PromptGate.d.ts","sourceRoot":"","sources":["../../src/monitoring/PromptGate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAK3C,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,cAAc,CAAC;AAE3F,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC;IACxD,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,sDAAsD;IACtD,oBAAoB,EAAE,MAAM,CAAC;IAC7B,+BAA+B;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,0FAA0F;IAC1F,YAAY,CAAC,EAAE,OAAO,kBAAkB,EAAE,oBAAoB,CAAC;CAChE;AAID;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAY9C;AAwUD,qBAAa,aAAc,SAAQ,YAAY;IAuCjC,OAAO,CAAC,MAAM;IAtC1B,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,cAAc,CAAkC;IAExD,mEAAmE;IACnE,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAQ;IAE3C,8DAA8D;IAC9D,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAU;IAErD,2DAA2D;IAC3D,OAAO,CAAC,mBAAmB,CAAqB;IAEhD;;;;;;;;;;OAUG;IACH,OAAO,CAAC,aAAa,CAA4D;IACjF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAM;IAEjD;;;;;;OAMG;IACH,OAAO,CAAC,eAAe,CAA6B;gBAEhC,MAAM,EAAE,mBAAmB;IAI/C;;;OAGG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI;IAwDxE;;OAEG;IACH,OAAO,CAAC,SAAS;IAoCjB;;;;OAIG;IACH,sFAAsF;IACtF,OAAO,CAAC,kBAAkB,CAA6B;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAW;YAE1C,SAAS;IAkIvB;;;;;;;;OAQG;IACH,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAWtC;;OAEG;IACH,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAKhF;;OAEG;IACH,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAelC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,cAAc;IAkBtB;;OAEG;IACH,aAAa,IAAI,IAAI;IASrB,OAAO,CAAC,WAAW;CAOpB"}
|
|
@@ -64,6 +64,7 @@ function detectGeminiSafeDefaultModal(lines, fullWindow) {
|
|
|
64
64
|
{ key: 'Escape', label: 'Cancel' },
|
|
65
65
|
],
|
|
66
66
|
autoDismissKey: key,
|
|
67
|
+
autoDismissDisposition: 'safe-default',
|
|
67
68
|
};
|
|
68
69
|
}
|
|
69
70
|
const isWorkspaceTrust = (/(?:workspace|folder|directory|project).{0,80}trust|trust.{0,80}(?:workspace|folder|directory|project)/i.test(haystack)
|
|
@@ -78,6 +79,20 @@ function detectGeminiSafeDefaultModal(lines, fullWindow) {
|
|
|
78
79
|
{ key: 'Escape', label: 'Cancel' },
|
|
79
80
|
],
|
|
80
81
|
autoDismissKey: key,
|
|
82
|
+
autoDismissDisposition: 'safe-default',
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
const isNpxInstarPackageInstall = (/Need to install the following packages:\s*\n\s*instar@\d+\.\d+\.\d+(?:[-+.\w]*)?\s*\n\s*Ok to proceed\?\s*\(y\)/i.test(haystack));
|
|
86
|
+
if (isNpxInstarPackageInstall) {
|
|
87
|
+
return {
|
|
88
|
+
type: 'confirmation',
|
|
89
|
+
summary: 'Gemini CLI install-confirm modal (auto-answer: npx instar default)',
|
|
90
|
+
options: [
|
|
91
|
+
{ key: 'Enter', label: 'Use highlighted default' },
|
|
92
|
+
{ key: 'Escape', label: 'Cancel' },
|
|
93
|
+
],
|
|
94
|
+
autoDismissKey: 'Enter',
|
|
95
|
+
autoDismissDisposition: 'safe-default',
|
|
81
96
|
};
|
|
82
97
|
}
|
|
83
98
|
const isGeminiInstallConfirm = (/(?:Gemini|gemini-cli|MCP server|extension|tool).{0,120}(?:install|installation)|(?:install|installation).{0,120}(?:Gemini|gemini-cli|MCP server|extension|tool)/i.test(haystack)
|
|
@@ -91,10 +106,36 @@ function detectGeminiSafeDefaultModal(lines, fullWindow) {
|
|
|
91
106
|
{ key: 'Escape', label: 'Cancel' },
|
|
92
107
|
],
|
|
93
108
|
autoDismissKey: 'Enter',
|
|
109
|
+
autoDismissDisposition: 'safe-default',
|
|
94
110
|
};
|
|
95
111
|
}
|
|
96
112
|
return null;
|
|
97
113
|
}
|
|
114
|
+
function detectExecutionApprovalSafeReject(lines, fullWindow) {
|
|
115
|
+
const windowLines = fullWindow ?? lines;
|
|
116
|
+
const haystack = windowLines.join('\n');
|
|
117
|
+
if (!/Allow execution of:/i.test(haystack))
|
|
118
|
+
return null;
|
|
119
|
+
const options = extractNumberedOptions(windowLines);
|
|
120
|
+
const rejectKey = findOptionKey(options, /\b(no|reject|suggest changes|deny|cancel)\b/i);
|
|
121
|
+
if (!rejectKey)
|
|
122
|
+
return null;
|
|
123
|
+
const commandMatch = haystack.match(/Allow execution of:\s*([\s\S]*?)(?:\n\s*[●○◉]?\s*1[.)]\s+Allow once|\n\s*1[.)]\s+Allow once|$)/i);
|
|
124
|
+
const rejectedCommand = (commandMatch?.[1] ?? '')
|
|
125
|
+
.replace(/\s+/g, ' ')
|
|
126
|
+
.trim()
|
|
127
|
+
.slice(0, 500);
|
|
128
|
+
return {
|
|
129
|
+
type: 'confirmation',
|
|
130
|
+
summary: rejectedCommand
|
|
131
|
+
? `Gemini CLI execution-approval modal (auto-reject): ${rejectedCommand.slice(0, 120)}`
|
|
132
|
+
: 'Gemini CLI execution-approval modal (auto-reject)',
|
|
133
|
+
options,
|
|
134
|
+
autoDismissKey: rejectKey,
|
|
135
|
+
autoDismissDisposition: 'safe-reject',
|
|
136
|
+
autoDismissCommand: rejectedCommand || undefined,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
98
139
|
/**
|
|
99
140
|
* Patterns for detecting interactive prompts in Claude Code terminal output.
|
|
100
141
|
* Each pattern operates on stripped (no-ANSI) text.
|
|
@@ -109,6 +150,15 @@ const PROMPT_PATTERNS = [
|
|
|
109
150
|
return detectGeminiSafeDefaultModal(lines, fullWindow);
|
|
110
151
|
},
|
|
111
152
|
},
|
|
153
|
+
// Gemini CLI execution approval. This is deliberately separate from the
|
|
154
|
+
// safe-default modal detector above: approving here would execute arbitrary
|
|
155
|
+
// model-proposed shell text. The only deterministic action is rejection.
|
|
156
|
+
{
|
|
157
|
+
type: 'confirmation',
|
|
158
|
+
test(lines, fullWindow) {
|
|
159
|
+
return detectExecutionApprovalSafeReject(lines, fullWindow);
|
|
160
|
+
},
|
|
161
|
+
},
|
|
112
162
|
// Claude Code OPTIONAL session feedback survey — non-blocking.
|
|
113
163
|
// Shape: "How is Claude doing this session? (optional)" followed by
|
|
114
164
|
// "1: Bad 2: Fine 3: Good 0: Dismiss" on one line.
|
|
@@ -387,6 +437,8 @@ export class InputDetector extends EventEmitter {
|
|
|
387
437
|
detectedAt: Date.now(),
|
|
388
438
|
id: randomBytes(6).toString('base64url'),
|
|
389
439
|
autoDismissKey: match.autoDismissKey,
|
|
440
|
+
autoDismissDisposition: match.autoDismissDisposition,
|
|
441
|
+
autoDismissCommand: match.autoDismissCommand,
|
|
390
442
|
};
|
|
391
443
|
emitted.add(fingerprint);
|
|
392
444
|
this.emittedPrompts.set(sessionName, emitted);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptGate.js","sourceRoot":"","sources":["../../src/monitoring/PromptGate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PromptGate.js","sourceRoot":"","sources":["../../src/monitoring/PromptGate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-06-05T08:
|
|
5
|
-
"instarVersion": "1.3.
|
|
4
|
+
"generatedAt": "2026-06-05T08:59:51.605Z",
|
|
5
|
+
"instarVersion": "1.3.280",
|
|
6
6
|
"entryCount": 198,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"domain": "identity",
|
|
12
12
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
13
13
|
"installedPath": ".instar/hooks/instar/session-start.sh",
|
|
14
|
-
"contentHash": "
|
|
14
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
15
15
|
"since": "2025-01-01"
|
|
16
16
|
},
|
|
17
17
|
"hook:dangerous-command-guard": {
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"domain": "safety",
|
|
21
21
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
22
22
|
"installedPath": ".instar/hooks/instar/dangerous-command-guard.sh",
|
|
23
|
-
"contentHash": "
|
|
23
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
24
24
|
"since": "2025-01-01"
|
|
25
25
|
},
|
|
26
26
|
"hook:grounding-before-messaging": {
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"domain": "safety",
|
|
30
30
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
31
31
|
"installedPath": ".instar/hooks/instar/grounding-before-messaging.sh",
|
|
32
|
-
"contentHash": "
|
|
32
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
33
33
|
"since": "2025-01-01"
|
|
34
34
|
},
|
|
35
35
|
"hook:compaction-recovery": {
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"domain": "identity",
|
|
39
39
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
40
40
|
"installedPath": ".instar/hooks/instar/compaction-recovery.sh",
|
|
41
|
-
"contentHash": "
|
|
41
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
42
42
|
"since": "2025-01-01"
|
|
43
43
|
},
|
|
44
44
|
"hook:external-operation-gate": {
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"domain": "safety",
|
|
48
48
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
49
49
|
"installedPath": ".instar/hooks/instar/external-operation-gate.js",
|
|
50
|
-
"contentHash": "
|
|
50
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
51
51
|
"since": "2025-01-01"
|
|
52
52
|
},
|
|
53
53
|
"hook:deferral-detector": {
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"domain": "safety",
|
|
57
57
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
58
58
|
"installedPath": ".instar/hooks/instar/deferral-detector.js",
|
|
59
|
-
"contentHash": "
|
|
59
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
60
60
|
"since": "2025-01-01"
|
|
61
61
|
},
|
|
62
62
|
"hook:self-stop-guard": {
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"domain": "coherence",
|
|
66
66
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
67
67
|
"installedPath": ".instar/hooks/instar/self-stop-guard.js",
|
|
68
|
-
"contentHash": "
|
|
68
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
69
69
|
"since": "2025-01-01"
|
|
70
70
|
},
|
|
71
71
|
"hook:post-action-reflection": {
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"domain": "evolution",
|
|
75
75
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
76
76
|
"installedPath": ".instar/hooks/instar/post-action-reflection.js",
|
|
77
|
-
"contentHash": "
|
|
77
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
78
78
|
"since": "2025-01-01"
|
|
79
79
|
},
|
|
80
80
|
"hook:external-communication-guard": {
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
"domain": "safety",
|
|
84
84
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
85
85
|
"installedPath": ".instar/hooks/instar/external-communication-guard.js",
|
|
86
|
-
"contentHash": "
|
|
86
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
87
87
|
"since": "2025-01-01"
|
|
88
88
|
},
|
|
89
89
|
"hook:scope-coherence-collector": {
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
"domain": "coherence",
|
|
93
93
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
94
94
|
"installedPath": ".instar/hooks/instar/scope-coherence-collector.js",
|
|
95
|
-
"contentHash": "
|
|
95
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
96
96
|
"since": "2025-01-01"
|
|
97
97
|
},
|
|
98
98
|
"hook:scope-coherence-checkpoint": {
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
"domain": "coherence",
|
|
102
102
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
103
103
|
"installedPath": ".instar/hooks/instar/scope-coherence-checkpoint.js",
|
|
104
|
-
"contentHash": "
|
|
104
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
105
105
|
"since": "2025-01-01"
|
|
106
106
|
},
|
|
107
107
|
"hook:free-text-guard": {
|
|
@@ -110,7 +110,7 @@
|
|
|
110
110
|
"domain": "safety",
|
|
111
111
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
112
112
|
"installedPath": ".instar/hooks/instar/free-text-guard.sh",
|
|
113
|
-
"contentHash": "
|
|
113
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
114
114
|
"since": "2025-01-01"
|
|
115
115
|
},
|
|
116
116
|
"hook:claim-intercept": {
|
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
"domain": "coherence",
|
|
120
120
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
121
121
|
"installedPath": ".instar/hooks/instar/claim-intercept.js",
|
|
122
|
-
"contentHash": "
|
|
122
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
123
123
|
"since": "2025-01-01"
|
|
124
124
|
},
|
|
125
125
|
"hook:claim-intercept-response": {
|
|
@@ -128,7 +128,7 @@
|
|
|
128
128
|
"domain": "coherence",
|
|
129
129
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
130
130
|
"installedPath": ".instar/hooks/instar/claim-intercept-response.js",
|
|
131
|
-
"contentHash": "
|
|
131
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
132
132
|
"since": "2025-01-01"
|
|
133
133
|
},
|
|
134
134
|
"hook:stop-gate-router": {
|
|
@@ -137,7 +137,7 @@
|
|
|
137
137
|
"domain": "safety",
|
|
138
138
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
139
139
|
"installedPath": ".instar/hooks/instar/stop-gate-router.js",
|
|
140
|
-
"contentHash": "
|
|
140
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
141
141
|
"since": "2025-01-01"
|
|
142
142
|
},
|
|
143
143
|
"hook:auto-approve-permissions": {
|
|
@@ -146,7 +146,7 @@
|
|
|
146
146
|
"domain": "safety",
|
|
147
147
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
148
148
|
"installedPath": ".instar/hooks/instar/auto-approve-permissions.js",
|
|
149
|
-
"contentHash": "
|
|
149
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
150
150
|
"since": "2025-01-01"
|
|
151
151
|
},
|
|
152
152
|
"job:health-check": {
|
|
@@ -1066,7 +1066,7 @@
|
|
|
1066
1066
|
"type": "template",
|
|
1067
1067
|
"domain": "safety",
|
|
1068
1068
|
"sourcePath": "src/templates/hooks/grounding-before-messaging.sh",
|
|
1069
|
-
"contentHash": "
|
|
1069
|
+
"contentHash": "5e148013f2711e88a520ea406bf61105b8c86919fb005871043ab7384df9e965",
|
|
1070
1070
|
"since": "2025-01-01"
|
|
1071
1071
|
},
|
|
1072
1072
|
"template:intercept-imsg-send.js": {
|
|
@@ -1530,7 +1530,7 @@
|
|
|
1530
1530
|
"type": "subsystem",
|
|
1531
1531
|
"domain": "updates",
|
|
1532
1532
|
"sourcePath": "src/core/PostUpdateMigrator.ts",
|
|
1533
|
-
"contentHash": "
|
|
1533
|
+
"contentHash": "2caf095119a50bf4aac5072aa8e579d957d9db1fa1b6e89b7109f3143dfe779d",
|
|
1534
1534
|
"since": "2025-01-01"
|
|
1535
1535
|
},
|
|
1536
1536
|
"subsystem:scheduler": {
|
|
@@ -41,9 +41,14 @@ if echo "$INPUT" | grep -qE "(telegram-reply|send-email|send-message|POST.*/tele
|
|
|
41
41
|
CHECK_EXIT=$?
|
|
42
42
|
|
|
43
43
|
if [ "$CHECK_EXIT" -ne "0" ]; then
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
# BLOCK output goes to STDERR: on a PreToolUse exit-2 block, Claude Code
|
|
45
|
+
# surfaces ONLY stderr to the agent. Writing the reason to stdout rendered
|
|
46
|
+
# every block as an unreadable "hook error ... No stderr output" — the agent
|
|
47
|
+
# saw a malfunction instead of the actual quality findings (2026-06-05 live
|
|
48
|
+
# incident: milestone reports bounced repeatedly with no visible reason).
|
|
49
|
+
echo "$CHECK_RESULT" >&2
|
|
50
|
+
echo "" >&2
|
|
51
|
+
echo "=== MESSAGE BLOCKED — Review and revise before sending. ===" >&2
|
|
47
52
|
exit 2
|
|
48
53
|
fi
|
|
49
54
|
fi
|
|
@@ -5,6 +5,24 @@
|
|
|
5
5
|
|
|
6
6
|
## What Changed
|
|
7
7
|
|
|
8
|
+
Prompt Gate now recognizes the exact Gemini CLI package-runner install prompt
|
|
9
|
+
that blocked the live mentorship cycle: an `instar` package version followed by
|
|
10
|
+
`Ok to proceed? (y)`. That narrow prompt is answered with the highlighted
|
|
11
|
+
default, so the agent can continue through its own Instar CLI command without a
|
|
12
|
+
manual Enter press. Arbitrary package installs are not auto-answered.
|
|
13
|
+
|
|
14
|
+
Prompt Gate also recognizes Gemini CLI execution-approval modals, but with the
|
|
15
|
+
opposite policy. Execution approvals ask whether model-proposed command text may
|
|
16
|
+
run. This change adds no approval path. When the known modal shape includes the
|
|
17
|
+
reject option, Prompt Gate chooses that reject option and records the rejected
|
|
18
|
+
command text in the server log plus an observable Prompt Gate event.
|
|
19
|
+
|
|
20
|
+
Fixed an invisible-verdict bug in the pre-send message-quality gate. When the gate
|
|
21
|
+
blocked an outbound message, it wrote its reasons to the wrong output channel, so
|
|
22
|
+
the agent saw a generic "hook error" instead of the actual findings — and would
|
|
23
|
+
retry blind. The reasons now land on the channel the runtime actually shows, so a
|
|
24
|
+
blocked message comes back with the specific quality findings to fix.
|
|
25
|
+
|
|
8
26
|
Added a Mandates tab to the dashboard — the operator's surface for the coordination
|
|
9
27
|
permission slips. It lists every issued mandate with live authorship verification and
|
|
10
28
|
state, provides PIN-gated forms to issue a new mandate or revoke an existing one, and
|
|
@@ -24,6 +42,16 @@ written to the server log, even if the caller's connection already timed out.
|
|
|
24
42
|
|
|
25
43
|
## What to Tell Your User
|
|
26
44
|
|
|
45
|
+
Gemini can now get past the specific Instar package install prompt that was
|
|
46
|
+
blocking mentor cycles. If Gemini asks to run an arbitrary command, Instar will
|
|
47
|
+
not approve it automatically. It rejects the known approval prompt and leaves a
|
|
48
|
+
visible record of the command it refused, so the mentor can see why the task
|
|
49
|
+
changed course.
|
|
50
|
+
|
|
51
|
+
Your agent's pre-send quality check now explains itself. If it holds a message
|
|
52
|
+
back, the agent sees exactly why and revises, instead of appearing to hit a
|
|
53
|
+
mysterious error.
|
|
54
|
+
|
|
27
55
|
Your dashboard now has a Mandates tab where you manage the permission slips for
|
|
28
56
|
autonomous agent-to-agent work: see every slip and whether its authorship still
|
|
29
57
|
verifies, issue a new one with your PIN, tear one up with your PIN, and read the
|
|
@@ -36,6 +64,16 @@ results always show up in the logs.
|
|
|
36
64
|
|
|
37
65
|
## Summary of New Capabilities
|
|
38
66
|
|
|
67
|
+
- Auto-answer the narrow Gemini package-runner install confirmation for Instar
|
|
68
|
+
package versions.
|
|
69
|
+
- Auto-reject Gemini execution-approval modals with an explicit reject option.
|
|
70
|
+
- Record execution auto-rejects visibly so mentor diagnosis does not depend on
|
|
71
|
+
guessing from a stalled terminal.
|
|
72
|
+
|
|
73
|
+
- Blocked outbound messages surface their quality findings to the agent instead
|
|
74
|
+
of an opaque hook error.
|
|
75
|
+
- Maturity: stable; the gate's judgments are unchanged — only their visibility.
|
|
76
|
+
|
|
39
77
|
- See all coordination mandates with live authorship-verification badges and
|
|
40
78
|
active/revoked/expired state at a glance.
|
|
41
79
|
- Issue a mandate from a form (pre-filled with the standard two-authority shape) —
|
|
@@ -51,3 +89,14 @@ results always show up in the logs.
|
|
|
51
89
|
- Comparison outcomes are always logged server-side, even when the requester's
|
|
52
90
|
connection timed out first.
|
|
53
91
|
- Maturity: stable; no other route's timing changes.
|
|
92
|
+
|
|
93
|
+
## Evidence
|
|
94
|
+
|
|
95
|
+
Not reproducible in a live dev shell without driving Gemini into the exact
|
|
96
|
+
interactive modal, but covered by deterministic unit fixtures from the captured
|
|
97
|
+
terminal shapes:
|
|
98
|
+
|
|
99
|
+
- package-runner install prompt for `instar@1.3.270` auto-dismisses with Enter;
|
|
100
|
+
- arbitrary package-runner install prompt does not auto-dismiss;
|
|
101
|
+
- execution-approval modal with highlighted Allow once still auto-rejects;
|
|
102
|
+
- rejected execution command text is carried in the detected prompt metadata.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Side-effects Review: Gemini Modal Safe Rejects
|
|
2
|
+
|
|
3
|
+
## Change
|
|
4
|
+
|
|
5
|
+
This Tier-1 change extends the existing Prompt Gate deterministic modal path.
|
|
6
|
+
It does not introduce a new policy engine or a new execution surface.
|
|
7
|
+
|
|
8
|
+
Touched surfaces:
|
|
9
|
+
|
|
10
|
+
- `src/monitoring/PromptGate.ts`: adds narrow Gemini CLI matchers for the
|
|
11
|
+
observed `npx instar@... Ok to proceed? (y)` install prompt and for Gemini
|
|
12
|
+
execution-approval modals with an explicit reject option.
|
|
13
|
+
- `src/commands/server.ts`: logs execution auto-rejects before sending the
|
|
14
|
+
reject key, and reports them through `DegradationReporter`.
|
|
15
|
+
- `tests/unit/PromptGate.test.ts`: covers the install-confirm match and
|
|
16
|
+
near-miss, plus the execution-approval reject boundary.
|
|
17
|
+
|
|
18
|
+
## Overreach / Underreach
|
|
19
|
+
|
|
20
|
+
The install matcher is deliberately under-broad. It accepts only the captured
|
|
21
|
+
package-runner shape for `instar@x.y.z`, because the live miss was `instar`
|
|
22
|
+
itself. It does not auto-answer unrelated package installs such as `left-pad`.
|
|
23
|
+
|
|
24
|
+
The execution matcher is also narrow. It only auto-rejects when the terminal
|
|
25
|
+
shows the known `Allow execution of:` modal and a reject option. If the UI shape
|
|
26
|
+
changes or the reject option is missing, normal relay/classification remains the
|
|
27
|
+
fallback. There is no auto-approve path.
|
|
28
|
+
|
|
29
|
+
## Safety Boundary
|
|
30
|
+
|
|
31
|
+
Install confirmations and execution approvals are not the same class.
|
|
32
|
+
|
|
33
|
+
An `npx instar@... Ok to proceed? (y)` prompt confirms the package runner's
|
|
34
|
+
default for an Instar command the agent already invoked. Accepting it unblocks
|
|
35
|
+
the intended tool path.
|
|
36
|
+
|
|
37
|
+
An execution-approval prompt asks whether arbitrary command text may run. The
|
|
38
|
+
command can be malformed, unrelated to the task, or unsafe. The live Gemini
|
|
39
|
+
cycle proved this with a shell-comment command. Auto-approving that class would
|
|
40
|
+
turn model output into code execution. This change therefore only supports
|
|
41
|
+
safe-reject for execution approvals.
|
|
42
|
+
|
|
43
|
+
## Observability
|
|
44
|
+
|
|
45
|
+
Auto-rejects are intentionally visible. Before sending the reject key, the
|
|
46
|
+
server writes a `[PromptGate] Auto-rejected execution approval...` warning with
|
|
47
|
+
the rejected command text and emits a `PromptGate.executionApprovalAutoReject`
|
|
48
|
+
DegradationReporter event.
|
|
49
|
+
|
|
50
|
+
This is not just debugging convenience. It is part of the safety design: when a
|
|
51
|
+
mentee appears to stall or pivot, the mentor can see that the framework rejected
|
|
52
|
+
an execution prompt and why.
|
|
53
|
+
|
|
54
|
+
## Signal vs Authority
|
|
55
|
+
|
|
56
|
+
The new matchers are deterministic authority only for two tightly-scoped UI
|
|
57
|
+
shapes:
|
|
58
|
+
|
|
59
|
+
- safe-default for `instar@...` package-runner install confirmation;
|
|
60
|
+
- safe-reject for Gemini execution approval with an explicit reject option.
|
|
61
|
+
|
|
62
|
+
Everything else remains signal for the existing Prompt Gate relay/classifier
|
|
63
|
+
flow. The change does not add an LLM prompt filter, does not broaden yes/no
|
|
64
|
+
auto-approval, and does not treat generic `Ok to proceed?` text as authority.
|
|
65
|
+
|
|
66
|
+
## Adjacent Systems
|
|
67
|
+
|
|
68
|
+
- Telegram/Slack prompt relay: unchanged for prompts that do not match the new
|
|
69
|
+
exact shapes.
|
|
70
|
+
- AutoApprover: unchanged. Execution safe-reject uses the pre-classifier
|
|
71
|
+
auto-dismiss path, not the auto-approve path.
|
|
72
|
+
- DegradationReporter: receives one observable event per execution auto-reject.
|
|
73
|
+
The event is intentional and mentor-facing; it should not be treated as a
|
|
74
|
+
failure of Prompt Gate.
|
|
75
|
+
|
|
76
|
+
## Rollback
|
|
77
|
+
|
|
78
|
+
Revert the three code/test changes and remove these upgrade artifacts. Runtime
|
|
79
|
+
state does not need migration. Existing agents would return to relaying or
|
|
80
|
+
waiting on these Gemini prompts.
|
|
81
|
+
|
|
82
|
+
## Verification
|
|
83
|
+
|
|
84
|
+
- `npm test -- --run tests/unit/PromptGate.test.ts` passed, 57 tests.
|
|
85
|
+
- `npx tsc --noEmit` passed.
|
|
86
|
+
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Side-effects review — grounding hook block-output → STDERR
|
|
2
|
+
|
|
3
|
+
Live incident (2026-06-05): the message-quality gate (convergence check inside the
|
|
4
|
+
grounding-before-messaging PreToolUse hook) correctly BLOCKED several outbound
|
|
5
|
+
messages — but wrote the findings + block banner to STDOUT. On a PreToolUse exit-2
|
|
6
|
+
block, Claude Code surfaces ONLY STDERR, so every block rendered to the agent as
|
|
7
|
+
"hook error ... No stderr output": a malfunction instead of a verdict. The agent
|
|
8
|
+
(me) retried blind several times before diagnosing via direct hook invocation.
|
|
9
|
+
|
|
10
|
+
## 1. The change
|
|
11
|
+
|
|
12
|
+
Both copies of the hook source (the `src/templates/hooks/` init-time file AND the
|
|
13
|
+
inline `PostUpdateMigrator.getGroundingBeforeMessaging()` that migrateHooks
|
|
14
|
+
always-overwrites onto every agent) now route the block findings + banner to
|
|
15
|
+
STDERR. The pass path (GROUNDED on stdout, exit 0) is unchanged.
|
|
16
|
+
|
|
17
|
+
## 2. Migration parity
|
|
18
|
+
|
|
19
|
+
Built-in hooks in `.instar/hooks/instar/` are ALWAYS overwritten on every
|
|
20
|
+
migration run — the fix reaches every deployed agent automatically on the next
|
|
21
|
+
update; no new migration code needed.
|
|
22
|
+
|
|
23
|
+
## 3. Blast radius
|
|
24
|
+
|
|
25
|
+
Two-line behavioral change inside an existing block branch. The gate's
|
|
26
|
+
DECISIONS are untouched — only where the explanation lands. No config, routes,
|
|
27
|
+
or schema.
|
|
28
|
+
|
|
29
|
+
## 4. Test coverage
|
|
30
|
+
|
|
31
|
+
6 tests (3 × both template copies via describe.each): block → exit 2 + findings
|
|
32
|
+
on STDERR with stdout clean; pass → exit 0 + GROUNDED on stdout; non-messaging
|
|
33
|
+
input untouched. Run against the REAL hook sources with a stubbed quality check.
|