pi-shazam 0.9.5 → 0.10.1
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/README.md +11 -4
- package/dist/core/filter.d.ts.map +1 -1
- package/dist/core/filter.js +82 -7
- package/dist/core/filter.js.map +1 -1
- package/dist/core/treesitter.d.ts.map +1 -1
- package/dist/core/treesitter.js +8 -0
- package/dist/core/treesitter.js.map +1 -1
- package/dist/hooks/agent-context-guard.d.ts +19 -0
- package/dist/hooks/agent-context-guard.d.ts.map +1 -0
- package/dist/hooks/agent-context-guard.js +86 -0
- package/dist/hooks/agent-context-guard.js.map +1 -0
- package/dist/hooks/impact-state.d.ts +29 -0
- package/dist/hooks/impact-state.d.ts.map +1 -0
- package/dist/hooks/impact-state.js +38 -0
- package/dist/hooks/impact-state.js.map +1 -0
- package/dist/hooks/issue-guard.d.ts +19 -0
- package/dist/hooks/issue-guard.d.ts.map +1 -0
- package/dist/hooks/issue-guard.js +52 -0
- package/dist/hooks/issue-guard.js.map +1 -0
- package/dist/hooks/pre-edit.d.ts.map +1 -1
- package/dist/hooks/pre-edit.js +9 -0
- package/dist/hooks/pre-edit.js.map +1 -1
- package/dist/hooks/safety.d.ts.map +1 -1
- package/dist/hooks/safety.js +10 -3
- package/dist/hooks/safety.js.map +1 -1
- package/dist/hooks/stop-verify.d.ts.map +1 -1
- package/dist/hooks/stop-verify.js +8 -1
- package/dist/hooks/stop-verify.js.map +1 -1
- package/dist/hooks/verify-state.d.ts +8 -2
- package/dist/hooks/verify-state.d.ts.map +1 -1
- package/dist/hooks/verify-state.js +30 -2
- package/dist/hooks/verify-state.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/entry.js +1 -1
- package/dist/mcp/entry.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +19 -7
- package/dist/mcp/tools.js.map +1 -1
- package/dist/tools/call_chain.d.ts +3 -3
- package/dist/tools/call_chain.d.ts.map +1 -1
- package/dist/tools/call_chain.js +82 -65
- package/dist/tools/call_chain.js.map +1 -1
- package/dist/tools/codesearch.d.ts +1 -1
- package/dist/tools/codesearch.d.ts.map +1 -1
- package/dist/tools/codesearch.js +151 -11
- package/dist/tools/codesearch.js.map +1 -1
- package/dist/tools/definitions.d.ts.map +1 -1
- package/dist/tools/definitions.js +15 -7
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/impact.d.ts.map +1 -1
- package/dist/tools/impact.js +5 -4
- package/dist/tools/impact.js.map +1 -1
- package/dist/tools/verify.d.ts.map +1 -1
- package/dist/tools/verify.js +26 -13
- package/dist/tools/verify.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@ For non-Pi agents, pi-shazam also exposes the same tools via **MCP (Model Contex
|
|
|
16
16
|
|
|
17
17
|
- **Tree-sitter parsing** — 6 programming languages (Python, TypeScript, JavaScript, Go, Rust, JSON), full symbol dependency graph
|
|
18
18
|
- **PageRank ranking** — Identify core files and key symbols
|
|
19
|
-
- **LSP integration** — Type checking, diagnostics, type hierarchy (
|
|
19
|
+
- **LSP integration** — Type checking, diagnostics, type hierarchy (6 languages)
|
|
20
20
|
- **Incremental analysis** — Baseline comparison, focus on changes
|
|
21
21
|
- **Smart verification** — Post-edit verification with PASS/WARN/FAIL verdict
|
|
22
22
|
|
|
@@ -57,7 +57,7 @@ Compatible with any MCP-capable client. Same analysis engine, JSON-based tool in
|
|
|
57
57
|
| ----------------------- | ---------------------------------------------------------------------------------- |
|
|
58
58
|
| `shazam_overview` | Project structure, top-10 core files by PageRank, key dependencies, recent commits |
|
|
59
59
|
| `shazam_impact` | Change impact analysis: affected files, symbols, tests |
|
|
60
|
-
| `shazam_codesearch` | BM25 symbol search — ranked alternative to grep |
|
|
60
|
+
| `shazam_codesearch` | BM25 symbol search + ripgrep full-text search (target=symbol/code) — ranked alternative to grep |
|
|
61
61
|
| `shazam_symbol` | Symbol definition, signature, callers, callees |
|
|
62
62
|
| `shazam_hover` | Type signatures, JSDoc, signatureHelp for function call context |
|
|
63
63
|
| `shazam_file_detail` | File structure: symbols, PageRank, call counts, LSP hierarchy, codeLens refs |
|
|
@@ -88,10 +88,12 @@ Compatible with any MCP-capable client. Same analysis engine, JSON-based tool in
|
|
|
88
88
|
| `failure-recovery` | `tool_result` | Detect consecutive failures (3x/5x) and suggest alternatives |
|
|
89
89
|
| `pre-edit` | `tool_call` | Detect multi-file edits, warn about blast radius |
|
|
90
90
|
| `tool-logger` | `tool_call` + `tool_result` | Log all shazam tool calls to `~/.pi/hooks/audit/shazam-calls.log` |
|
|
91
|
+
| `issue-guard` | `tool_call` (bash) + `tool_result` | Detects `gh issue create`, blocks edits until `shazam_impact` runs |
|
|
92
|
+
| `agent-context-guard` | `tool_call` (agent) | Blocks agent spawn without structural context for review tasks |
|
|
91
93
|
|
|
92
94
|
**Auto-format support**: ruff (Python), prettier (JS/TS/JSON/MD), gofmt (Go), rustfmt (Rust), biome (JS/TS)
|
|
93
95
|
|
|
94
|
-
Additional commands: `/shazam-setup`, `/shazam-doctor`, `/shazam-install-git-hooks`,
|
|
96
|
+
Additional commands: `/shazam-setup`, `/shazam-doctor`, `/shazam-install-git-hooks`, `/shazam-remove-git-hooks`, `/shazam-pre-commit-verify`
|
|
95
97
|
|
|
96
98
|
### MCP Client Support
|
|
97
99
|
|
|
@@ -145,7 +147,11 @@ pi-shazam (npm package)
|
|
|
145
147
|
│ ├── shazam-guide.ts Auto-format + tool usage guidance
|
|
146
148
|
│ ├── stop-verify.ts Turn-end verification reminder
|
|
147
149
|
│ ├── failure-recovery.ts Consecutive failure detection
|
|
148
|
-
│
|
|
150
|
+
│ ├── tool-logger.ts Usage analytics
|
|
151
|
+
│ ├── verify-state.ts Shared verify tracking state for safety + stop-verify
|
|
152
|
+
│ ├── impact-state.ts Shared impact tracking state for issue-guard + pre-edit
|
|
153
|
+
│ ├── issue-guard.ts Detect gh issue create, set pending impact flag
|
|
154
|
+
│ └── agent-context-guard.ts Block agent spawn without structural context
|
|
149
155
|
│
|
|
150
156
|
├── tools/ Pi tool wrappers (tools → core + lsp)
|
|
151
157
|
│ ├── definitions.ts Shared tool definitions (names, descriptions, schemas)
|
|
@@ -205,6 +211,7 @@ npm run build # tsc → dist/
|
|
|
205
211
|
| Go | gopls | Supported |
|
|
206
212
|
| Rust | rust-analyzer | Supported |
|
|
207
213
|
| YAML | yaml-language-server | Supported |
|
|
214
|
+
| JSON | vscode-json-languageserver | Supported |
|
|
208
215
|
|
|
209
216
|
When LSP servers are unavailable, tools automatically fall back to tree-sitter mode.
|
|
210
217
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../core/filter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../core/filter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AA+D5C;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,aA4BpB,CAAC;AAEH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAarE;AA6GD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG;IAC9C,GAAG,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;IACvF,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACvE,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACvE,CAmFA"}
|
package/dist/core/filter.js
CHANGED
|
@@ -63,6 +63,10 @@ const NON_SOURCE_FILE_PATTERNS = [
|
|
|
63
63
|
/(?:^|\/)out(?:\/|$)/,
|
|
64
64
|
/(?:^|\/)target(?:\/|$)/,
|
|
65
65
|
/\.json$/,
|
|
66
|
+
/(?:^|\/)vendor(?:\/|$)/, // vendor directories
|
|
67
|
+
/\.min\.(?:js|css|mjs|cjs)$/, // minified files
|
|
68
|
+
/\.generated\./, // generated files
|
|
69
|
+
/\.bundle\.(?:js|css|mjs)$/, // bundle artifacts
|
|
66
70
|
];
|
|
67
71
|
/**
|
|
68
72
|
* Directories to skip during project scanning and LSP detection.
|
|
@@ -132,10 +136,7 @@ export function isTrackableEditedPath(normalizedPath) {
|
|
|
132
136
|
* Registration functions are typically called dynamically by frameworks.
|
|
133
137
|
*/
|
|
134
138
|
function isRegistrationSymbol(name) {
|
|
135
|
-
return
|
|
136
|
-
name.startsWith("createTool") ||
|
|
137
|
-
name === "execute" ||
|
|
138
|
-
name === "handler");
|
|
139
|
+
return name.startsWith("register") || name.startsWith("createTool") || name === "execute" || name === "handler";
|
|
139
140
|
}
|
|
140
141
|
function isEntryPointSymbol(name, kind) {
|
|
141
142
|
// Python entry points
|
|
@@ -163,17 +164,60 @@ function isEntryPointSymbol(name, kind) {
|
|
|
163
164
|
return true;
|
|
164
165
|
if (name === "Drop" && kind === "trait")
|
|
165
166
|
return true;
|
|
167
|
+
// Rust standard trait implementations — these are dispatched by the
|
|
168
|
+
// compiler or standard library, never called by name in user code.
|
|
169
|
+
// Without this, every `impl Clone for Foo` etc. is a false orphan.
|
|
170
|
+
if (kind === "impl" || kind === "trait") {
|
|
171
|
+
const RUST_STD_TRAITS = new Set([
|
|
172
|
+
"From",
|
|
173
|
+
"Into",
|
|
174
|
+
"TryFrom",
|
|
175
|
+
"TryInto",
|
|
176
|
+
"Display",
|
|
177
|
+
"Debug",
|
|
178
|
+
"Clone",
|
|
179
|
+
"Copy",
|
|
180
|
+
"Hash",
|
|
181
|
+
"Eq",
|
|
182
|
+
"PartialEq",
|
|
183
|
+
"Ord",
|
|
184
|
+
"PartialOrd",
|
|
185
|
+
"Serialize",
|
|
186
|
+
"Deserialize",
|
|
187
|
+
"Iterator",
|
|
188
|
+
"IntoIterator",
|
|
189
|
+
"FromStr",
|
|
190
|
+
"AsRef",
|
|
191
|
+
"AsMut",
|
|
192
|
+
"Deref",
|
|
193
|
+
"DerefMut",
|
|
194
|
+
"Fn",
|
|
195
|
+
"FnMut",
|
|
196
|
+
"FnOnce",
|
|
197
|
+
"Send",
|
|
198
|
+
"Sync",
|
|
199
|
+
"Error",
|
|
200
|
+
"Default",
|
|
201
|
+
"Drop",
|
|
202
|
+
]);
|
|
203
|
+
if (RUST_STD_TRAITS.has(name))
|
|
204
|
+
return true;
|
|
205
|
+
}
|
|
166
206
|
// Go entry points
|
|
167
207
|
if (name === "main" && kind === "function")
|
|
168
208
|
return true;
|
|
169
209
|
if (name === "init" && kind === "function")
|
|
170
210
|
return true;
|
|
211
|
+
// Rust module declarations are structural — they namespace items but
|
|
212
|
+
// are never referenced by name at runtime.
|
|
213
|
+
if (kind === "module")
|
|
214
|
+
return true;
|
|
171
215
|
// Common framework entry points
|
|
172
216
|
if (name.startsWith("test_") || name.startsWith("Test"))
|
|
173
217
|
return true;
|
|
174
218
|
return false;
|
|
175
219
|
}
|
|
176
|
-
function isFrameworkHandler(name) {
|
|
220
|
+
function isFrameworkHandler(name, file, kind) {
|
|
177
221
|
// Flask/FastAPI/Django route handlers and middleware
|
|
178
222
|
if (name.startsWith("test_") || name.startsWith("Test"))
|
|
179
223
|
return true;
|
|
@@ -183,6 +227,23 @@ function isFrameworkHandler(name) {
|
|
|
183
227
|
return true;
|
|
184
228
|
if (name.endsWith("_handler") || name.endsWith("Handler"))
|
|
185
229
|
return true;
|
|
230
|
+
// Rust framework entry points (axum, actix, tower, tonic, etc.)
|
|
231
|
+
// These are called by framework dispatch, not by name in user code.
|
|
232
|
+
if (file?.endsWith(".rs") && kind === "function") {
|
|
233
|
+
const RUST_FRAMEWORK_FNS = new Set([
|
|
234
|
+
"new",
|
|
235
|
+
"run",
|
|
236
|
+
"serve",
|
|
237
|
+
"from_request",
|
|
238
|
+
"into_response",
|
|
239
|
+
"call",
|
|
240
|
+
"poll_ready",
|
|
241
|
+
"handle",
|
|
242
|
+
"next",
|
|
243
|
+
]);
|
|
244
|
+
if (RUST_FRAMEWORK_FNS.has(name))
|
|
245
|
+
return true;
|
|
246
|
+
}
|
|
186
247
|
return false;
|
|
187
248
|
}
|
|
188
249
|
/**
|
|
@@ -265,8 +326,22 @@ export function findOrphans(graph) {
|
|
|
265
326
|
// Skip anonymous functions
|
|
266
327
|
if (sym.kind === "anonymous_function")
|
|
267
328
|
continue;
|
|
329
|
+
// Skip impl blocks — they are structural declarations (impl Foo { ... })
|
|
330
|
+
// and are never referenced by name in the call graph (fixes #252).
|
|
331
|
+
if (sym.kind === "impl")
|
|
332
|
+
continue;
|
|
333
|
+
// Skip TypeScript interfaces and type aliases. These are structural
|
|
334
|
+
// type declarations consumed by the type system (type annotations,
|
|
335
|
+
// extends, implements, generics). They never produce runtime call
|
|
336
|
+
// edges in the symbol graph, so zero incoming refs is expected.
|
|
337
|
+
if (sym.kind === "interface" || sym.kind === "type_alias")
|
|
338
|
+
continue;
|
|
268
339
|
// Skip test files
|
|
269
|
-
if (sym.file.includes("tests/") ||
|
|
340
|
+
if (sym.file.includes("tests/") ||
|
|
341
|
+
sym.file.includes(".test.") ||
|
|
342
|
+
sym.file.includes("test_") ||
|
|
343
|
+
sym.file.includes("_test.") ||
|
|
344
|
+
sym.file.includes("/test/"))
|
|
270
345
|
continue;
|
|
271
346
|
// Skip registration functions called dynamically by frameworks
|
|
272
347
|
if (isRegistrationSymbol(sym.name))
|
|
@@ -275,7 +350,7 @@ export function findOrphans(graph) {
|
|
|
275
350
|
if (isEntryPointSymbol(sym.name, sym.kind))
|
|
276
351
|
continue;
|
|
277
352
|
// Skip framework handler patterns
|
|
278
|
-
if (isFrameworkHandler(sym.name))
|
|
353
|
+
if (isFrameworkHandler(sym.name, sym.file, sym.kind))
|
|
279
354
|
continue;
|
|
280
355
|
const orphan = { name: sym.name, kind: sym.kind, file: sym.file, line: sym.line };
|
|
281
356
|
all.push({ ...orphan, isExported: false });
|
package/dist/core/filter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../core/filter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C;;;;;;;GAOG;AACH,SAAS,iBAAiB,CAAC,UAAkB,EAAE,QAAgB;IAC9D,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,UAAU,CAAC;IACnD,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACzC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxC,qEAAqE;IACrE,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5D,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,cAAsB,EAAE,UAAkB;IACpE,IAAI,cAAc,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC;IAC/C,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACvF,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,cAAc,GAAG,GAAG,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;IACtD,CAAC;IACD,kCAAkC;IAClC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,cAAc,GAAG,QAAQ,GAAG,GAAG,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;IACjE,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,wBAAwB,GAAsB;IACnD,qBAAqB;IACrB,iBAAiB;IACjB,8BAA8B;IAC9B,sBAAsB;IACtB,sBAAsB;IACtB,uBAAuB;IACvB,qBAAqB;IACrB,wBAAwB;IACxB,SAAS;
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../core/filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"treesitter.d.ts","sourceRoot":"","sources":["../../core/treesitter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkBH,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAW1D,UAAU,IAAI;IACb,QAAQ,EAAE,UAAU,CAAC;CACrB;AAED,UAAU,UAAU;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,WAAW,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,iBAAiB,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;CACpD;AAQD,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAc9C,CAAC;AAIF,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,OAAO,CAAiD;IAChE,OAAO,CAAC,GAAG,CAAwB;gBAEvB,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;IAOvC,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,eAAe;IA6BvB,OAAO,CAAC,kBAAkB;IA2B1B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIlC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIxD,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IA6BhD,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAShE,OAAO,CAAC,uBAAuB;IAsF/B,OAAO,CAAC,mBAAmB;IAyC3B,OAAO,CAAC,kBAAkB;IAqC1B,OAAO,CAAC,mBAAmB;IAoC3B,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;IAgC5D,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;IA2BlE,yBAAyB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,EAAE;IAqEtE,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"treesitter.d.ts","sourceRoot":"","sources":["../../core/treesitter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkBH,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAW1D,UAAU,IAAI;IACb,QAAQ,EAAE,UAAU,CAAC;CACrB;AAED,UAAU,UAAU;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,WAAW,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,iBAAiB,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;CACpD;AAQD,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAc9C,CAAC;AAIF,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,OAAO,CAAiD;IAChE,OAAO,CAAC,GAAG,CAAwB;gBAEvB,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;IAOvC,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,eAAe;IA6BvB,OAAO,CAAC,kBAAkB;IA2B1B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIlC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIxD,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IA6BhD,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAShE,OAAO,CAAC,uBAAuB;IAsF/B,OAAO,CAAC,mBAAmB;IAyC3B,OAAO,CAAC,kBAAkB;IAqC1B,OAAO,CAAC,mBAAmB;IAoC3B,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;IAgC5D,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;IA2BlE,yBAAyB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,EAAE;IAqEtE,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,WAAW;IAqBnB,OAAO,CAAC,OAAO;IAYf,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,UAAU;CAKlB"}
|
package/dist/core/treesitter.js
CHANGED
|
@@ -488,6 +488,14 @@ export class TreeSitterAdapter {
|
|
|
488
488
|
if (ancestor.type.includes("export")) {
|
|
489
489
|
return true;
|
|
490
490
|
}
|
|
491
|
+
// Rust: check for visibility_modifier (pub, pub(crate), pub(super), etc.)
|
|
492
|
+
// The visibility_modifier is a sibling/child of the definition node in
|
|
493
|
+
// Rust's tree-sitter grammar, not an ancestor wrapper.
|
|
494
|
+
for (const child of ancestor.children) {
|
|
495
|
+
if (child.type === "visibility_modifier" && child.text.startsWith("pub")) {
|
|
496
|
+
return true;
|
|
497
|
+
}
|
|
498
|
+
}
|
|
491
499
|
ancestor = ancestor.parent;
|
|
492
500
|
}
|
|
493
501
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"treesitter.js","sourceRoot":"","sources":["../../core/treesitter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"treesitter.js","sourceRoot":"","sources":["../../core/treesitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pi-shazam hooks/agent-context-guard — Agent prompt structural context checker.
|
|
3
|
+
*
|
|
4
|
+
* Intercepts agent-like tool calls (agent, agent_swarm, subagent) and checks
|
|
5
|
+
* whether the prompt contains sufficient structural context for the task type.
|
|
6
|
+
*
|
|
7
|
+
* For review/audit tasks: blocks if context score is below threshold.
|
|
8
|
+
* For coding tasks: warns (non-blocking) if context is insufficient.
|
|
9
|
+
* Short prompts (< 30 words) are always skipped.
|
|
10
|
+
*/
|
|
11
|
+
import type { ExtensionAPI } from "../types/pi-extension.js";
|
|
12
|
+
/**
|
|
13
|
+
* Register the agent context guard hook.
|
|
14
|
+
*
|
|
15
|
+
* Blocks review tasks that lack structural context and warns on
|
|
16
|
+
* coding tasks with insufficient context.
|
|
17
|
+
*/
|
|
18
|
+
export declare function registerAgentContextGuard(pi: ExtensionAPI): void;
|
|
19
|
+
//# sourceMappingURL=agent-context-guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-context-guard.d.ts","sourceRoot":"","sources":["../../hooks/agent-context-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAuB,MAAM,0BAA0B,CAAC;AAiDlF;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CAkChE"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pi-shazam hooks/agent-context-guard — Agent prompt structural context checker.
|
|
3
|
+
*
|
|
4
|
+
* Intercepts agent-like tool calls (agent, agent_swarm, subagent) and checks
|
|
5
|
+
* whether the prompt contains sufficient structural context for the task type.
|
|
6
|
+
*
|
|
7
|
+
* For review/audit tasks: blocks if context score is below threshold.
|
|
8
|
+
* For coding tasks: warns (non-blocking) if context is insufficient.
|
|
9
|
+
* Short prompts (< 30 words) are always skipped.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Tool names that represent agent spawning (case-insensitive check).
|
|
13
|
+
*/
|
|
14
|
+
const AGENT_TOOL_NAMES = new Set(["agent", "agent_swarm", "subagent"]);
|
|
15
|
+
/**
|
|
16
|
+
* Patterns that indicate a review/audit task.
|
|
17
|
+
*/
|
|
18
|
+
const REVIEW_PATTERNS = /review|audit|security|integrity/i;
|
|
19
|
+
/**
|
|
20
|
+
* Patterns that indicate a coding/implementation task.
|
|
21
|
+
*/
|
|
22
|
+
const CODING_PATTERNS = /implement|write|edit|create|fix|refactor/i;
|
|
23
|
+
/**
|
|
24
|
+
* Minimum word count for a prompt to be evaluated.
|
|
25
|
+
* Short prompts are typically simple queries that don't need context checks.
|
|
26
|
+
*/
|
|
27
|
+
const MIN_WORD_COUNT = 30;
|
|
28
|
+
/**
|
|
29
|
+
* Minimum context score for review tasks to proceed.
|
|
30
|
+
*/
|
|
31
|
+
const REVIEW_CONTEXT_THRESHOLD = 2;
|
|
32
|
+
/**
|
|
33
|
+
* Minimum context score for coding tasks (below this triggers a warning).
|
|
34
|
+
*/
|
|
35
|
+
const CODING_CONTEXT_THRESHOLD = 1;
|
|
36
|
+
/**
|
|
37
|
+
* Compute a structural context score for a prompt.
|
|
38
|
+
* Each detected context marker adds 1 point:
|
|
39
|
+
* - File paths (e.g., src/foo.ts)
|
|
40
|
+
* - Inline code references (backtick-wrapped symbols)
|
|
41
|
+
* - Line number references (e.g., line 42, :42)
|
|
42
|
+
* - shazam_ tool references
|
|
43
|
+
*/
|
|
44
|
+
function computeContextScore(prompt) {
|
|
45
|
+
const hasFilePaths = /[\w-]+\/[\w-]+|\.\w{1,4}$/.test(prompt);
|
|
46
|
+
const hasSymbols = prompt.includes("`");
|
|
47
|
+
const hasLineNums = /line\s+\d+|:\d+/.test(prompt);
|
|
48
|
+
const hasShazam = /shazam_/i.test(prompt);
|
|
49
|
+
return [hasFilePaths, hasSymbols, hasLineNums, hasShazam].filter(Boolean).length;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Register the agent context guard hook.
|
|
53
|
+
*
|
|
54
|
+
* Blocks review tasks that lack structural context and warns on
|
|
55
|
+
* coding tasks with insufficient context.
|
|
56
|
+
*/
|
|
57
|
+
export function registerAgentContextGuard(pi) {
|
|
58
|
+
pi.on("tool_call", (event, ctx) => {
|
|
59
|
+
const toolName = event.toolName.toLowerCase();
|
|
60
|
+
if (!AGENT_TOOL_NAMES.has(toolName))
|
|
61
|
+
return;
|
|
62
|
+
const input = "input" in event ? event.input : {};
|
|
63
|
+
const prompt = input.prompt;
|
|
64
|
+
if (!prompt)
|
|
65
|
+
return;
|
|
66
|
+
// Skip trivial prompts
|
|
67
|
+
const wordCount = prompt.trim().split(/\s+/).length;
|
|
68
|
+
if (wordCount < MIN_WORD_COUNT)
|
|
69
|
+
return;
|
|
70
|
+
const isReview = REVIEW_PATTERNS.test(prompt);
|
|
71
|
+
const isCoding = CODING_PATTERNS.test(prompt);
|
|
72
|
+
const contextScore = computeContextScore(prompt);
|
|
73
|
+
// Block review tasks without sufficient context
|
|
74
|
+
if (isReview && contextScore < REVIEW_CONTEXT_THRESHOLD) {
|
|
75
|
+
return {
|
|
76
|
+
block: true,
|
|
77
|
+
reason: "Review task lacks structural context. Provide file paths and symbols from shazam_file_detail or shazam_codesearch first.",
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
// Warn coding tasks without context (non-blocking)
|
|
81
|
+
if (isCoding && contextScore < CODING_CONTEXT_THRESHOLD) {
|
|
82
|
+
ctx.ui?.notify?.("[shazam] Coding task lacks structural context. Consider running shazam_overview or shazam_codesearch first for better results.", "warning");
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=agent-context-guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-context-guard.js","sourceRoot":"","sources":["../../hooks/agent-context-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH;;GAEG;AACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,CAAC;AAEvE;;GAEG;AACH,MAAM,eAAe,GAAG,kCAAkC,CAAC;AAE3D;;GAEG;AACH,MAAM,eAAe,GAAG,2CAA2C,CAAC;AAEpE;;;GAGG;AACH,MAAM,cAAc,GAAG,EAAE,CAAC;AAE1B;;GAEG;AACH,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAEnC;;GAEG;AACH,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAEnC;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAAC,MAAc;IAC1C,MAAM,YAAY,GAAG,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;AAClF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,EAAgB;IACzD,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,GAAG,EAA8B,EAAE;QAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC9C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO;QAE5C,MAAM,KAAK,GAAG,OAAO,IAAI,KAAK,CAAC,CAAC,CAAE,KAA4C,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,MAAM,MAAM,GAAI,KAAiC,CAAC,MAAgB,CAAC;QACnE,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,uBAAuB;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QACpD,IAAI,SAAS,GAAG,cAAc;YAAE,OAAO;QAEvC,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAEjD,gDAAgD;QAChD,IAAI,QAAQ,IAAI,YAAY,GAAG,wBAAwB,EAAE,CAAC;YACzD,OAAO;gBACN,KAAK,EAAE,IAAI;gBACX,MAAM,EACL,0HAA0H;aAC3H,CAAC;QACH,CAAC;QAED,mDAAmD;QACnD,IAAI,QAAQ,IAAI,YAAY,GAAG,wBAAwB,EAAE,CAAC;YACzD,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,CACf,gIAAgI,EAChI,SAAS,CACT,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pi-shazam hooks/impact-state — Shared impact tracking state.
|
|
3
|
+
*
|
|
4
|
+
* Single source of truth for "was a GitHub issue created but shazam_impact
|
|
5
|
+
* not yet run?" Used by issue-guard.ts (sets/clears) and pre-edit.ts (checks).
|
|
6
|
+
*
|
|
7
|
+
* State machine:
|
|
8
|
+
* idle → pending (setPendingImpact) → idle (clearPendingImpact or resetImpactState)
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Mark that a GitHub issue was created and impact analysis is needed
|
|
12
|
+
* before any file edits should proceed.
|
|
13
|
+
*/
|
|
14
|
+
export declare function setPendingImpact(): void;
|
|
15
|
+
/**
|
|
16
|
+
* Clear the pending impact flag. Called when shazam_impact completes
|
|
17
|
+
* successfully.
|
|
18
|
+
*/
|
|
19
|
+
export declare function clearPendingImpact(): void;
|
|
20
|
+
/**
|
|
21
|
+
* Check whether a pending impact analysis exists (issue created,
|
|
22
|
+
* shazam_impact not yet run).
|
|
23
|
+
*/
|
|
24
|
+
export declare function hasPendingImpact(): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Reset all state. Called on session_start/session_shutdown and in tests.
|
|
27
|
+
*/
|
|
28
|
+
export declare function resetImpactState(): void;
|
|
29
|
+
//# sourceMappingURL=impact-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"impact-state.d.ts","sourceRoot":"","sources":["../../hooks/impact-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pi-shazam hooks/impact-state — Shared impact tracking state.
|
|
3
|
+
*
|
|
4
|
+
* Single source of truth for "was a GitHub issue created but shazam_impact
|
|
5
|
+
* not yet run?" Used by issue-guard.ts (sets/clears) and pre-edit.ts (checks).
|
|
6
|
+
*
|
|
7
|
+
* State machine:
|
|
8
|
+
* idle → pending (setPendingImpact) → idle (clearPendingImpact or resetImpactState)
|
|
9
|
+
*/
|
|
10
|
+
let _pendingImpact = false;
|
|
11
|
+
/**
|
|
12
|
+
* Mark that a GitHub issue was created and impact analysis is needed
|
|
13
|
+
* before any file edits should proceed.
|
|
14
|
+
*/
|
|
15
|
+
export function setPendingImpact() {
|
|
16
|
+
_pendingImpact = true;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Clear the pending impact flag. Called when shazam_impact completes
|
|
20
|
+
* successfully.
|
|
21
|
+
*/
|
|
22
|
+
export function clearPendingImpact() {
|
|
23
|
+
_pendingImpact = false;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Check whether a pending impact analysis exists (issue created,
|
|
27
|
+
* shazam_impact not yet run).
|
|
28
|
+
*/
|
|
29
|
+
export function hasPendingImpact() {
|
|
30
|
+
return _pendingImpact;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Reset all state. Called on session_start/session_shutdown and in tests.
|
|
34
|
+
*/
|
|
35
|
+
export function resetImpactState() {
|
|
36
|
+
_pendingImpact = false;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=impact-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"impact-state.js","sourceRoot":"","sources":["../../hooks/impact-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,IAAI,cAAc,GAAG,KAAK,CAAC;AAE3B;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC/B,cAAc,GAAG,IAAI,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB;IACjC,cAAc,GAAG,KAAK,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC/B,OAAO,cAAc,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC/B,cAAc,GAAG,KAAK,CAAC;AACxB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pi-shazam hooks/issue-guard — GitHub issue creation detector.
|
|
3
|
+
*
|
|
4
|
+
* Intercepts bash tool_call events to detect `gh issue create` commands.
|
|
5
|
+
* When a serious issue (bug/crash/error) is created, sets a pending impact
|
|
6
|
+
* flag that blocks subsequent file edits until shazam_impact is run.
|
|
7
|
+
*
|
|
8
|
+
* Trivial issues (chore/docs/typo) do not trigger the flag.
|
|
9
|
+
*/
|
|
10
|
+
import type { ExtensionAPI } from "../types/pi-extension.js";
|
|
11
|
+
/**
|
|
12
|
+
* Register the issue guard hook.
|
|
13
|
+
*
|
|
14
|
+
* On bash tool_call: detects `gh issue create` and classifies severity.
|
|
15
|
+
* On shazam_impact tool_result: clears the pending impact flag.
|
|
16
|
+
* On session_start: resets the pending impact flag.
|
|
17
|
+
*/
|
|
18
|
+
export declare function registerIssueGuard(pi: ExtensionAPI): void;
|
|
19
|
+
//# sourceMappingURL=issue-guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"issue-guard.d.ts","sourceRoot":"","sources":["../../hooks/issue-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAa7D;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CA6BzD"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pi-shazam hooks/issue-guard — GitHub issue creation detector.
|
|
3
|
+
*
|
|
4
|
+
* Intercepts bash tool_call events to detect `gh issue create` commands.
|
|
5
|
+
* When a serious issue (bug/crash/error) is created, sets a pending impact
|
|
6
|
+
* flag that blocks subsequent file edits until shazam_impact is run.
|
|
7
|
+
*
|
|
8
|
+
* Trivial issues (chore/docs/typo) do not trigger the flag.
|
|
9
|
+
*/
|
|
10
|
+
import { setPendingImpact, clearPendingImpact } from "./impact-state.js";
|
|
11
|
+
/**
|
|
12
|
+
* Patterns that indicate a serious issue requiring impact analysis.
|
|
13
|
+
*/
|
|
14
|
+
const SERIOUS_PATTERNS = /fix|bug|P0|P1|crash|error|broken|fail/i;
|
|
15
|
+
/**
|
|
16
|
+
* Patterns that indicate a trivial issue not requiring impact analysis.
|
|
17
|
+
*/
|
|
18
|
+
const TRIVIAL_PATTERNS = /chore|docs|typo|readme/i;
|
|
19
|
+
/**
|
|
20
|
+
* Register the issue guard hook.
|
|
21
|
+
*
|
|
22
|
+
* On bash tool_call: detects `gh issue create` and classifies severity.
|
|
23
|
+
* On shazam_impact tool_result: clears the pending impact flag.
|
|
24
|
+
* On session_start: resets the pending impact flag.
|
|
25
|
+
*/
|
|
26
|
+
export function registerIssueGuard(pi) {
|
|
27
|
+
pi.on("tool_call", (event) => {
|
|
28
|
+
if (event.toolName !== "bash")
|
|
29
|
+
return;
|
|
30
|
+
const input = "input" in event ? event.input : {};
|
|
31
|
+
const command = input.command || "";
|
|
32
|
+
if (!command.includes("gh issue create"))
|
|
33
|
+
return;
|
|
34
|
+
// Classify severity from title/body patterns in the command
|
|
35
|
+
const isSerious = SERIOUS_PATTERNS.test(command);
|
|
36
|
+
const isTrivial = TRIVIAL_PATTERNS.test(command);
|
|
37
|
+
if (isSerious && !isTrivial) {
|
|
38
|
+
setPendingImpact();
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
// Clear pending impact when shazam_impact completes
|
|
42
|
+
pi.on("tool_result", (event) => {
|
|
43
|
+
if (event.toolName === "shazam_impact") {
|
|
44
|
+
clearPendingImpact();
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
// Reset pending impact on session start
|
|
48
|
+
pi.on("session_start", () => {
|
|
49
|
+
clearPendingImpact();
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=issue-guard.js.map
|