@stigmer/runner 3.0.2-dev.20260609093630 → 3.0.3

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.
@@ -18,55 +18,95 @@
18
18
  *
19
19
  * The script is self-contained (no Node.js required) for portability. It uses
20
20
  * bash + grep/cut for lightweight JSON field extraction. All policy decisions
21
- * are pre-computed by the runner into the state file; the hook only performs
22
- * mechanical field extraction and string lookups — the policy itself is
23
- * authored once in TypeScript (approval-policy.ts / approval-state.ts).
21
+ * are pre-computed by the runner into the state file (and into this generated
22
+ * script); the hook only performs mechanical field extraction and string
23
+ * lookups — the policy itself is authored once in TypeScript (approval-policy.ts
24
+ * / approval-state.ts).
25
+ *
26
+ * Cross-taxonomy identity (the crux):
27
+ * The preToolUse hook and the SDK event stream name the same operation
28
+ * differently — the hook receives PascalCase `tool_name` (`Write` for any file
29
+ * create/edit, `Shell`, `Delete`) while the stream emits lowercase `event.name`
30
+ * (`edit`, `shell`, `delete`). They also name the salient argument differently
31
+ * (`file_path` in the hook input vs `path` in the stream). So the hook and the
32
+ * runner cannot correlate on the raw name. Instead both reduce a tool call to a
33
+ * canonical identity — `base64(category \n salient)` — where `category` is the
34
+ * approval category (`write`/`delete`/`shell`, baked into the case statement
35
+ * below from approval-policy.ts) and `salient` is the resource VALUE (the file
36
+ * path or shell command), which is identical on both sides. The runner mirrors
37
+ * this exactly in approval-state.ts (toolIdentity + grantToken), so a denial
38
+ * recorded here correlates to the streamed tool call, and an approval grant
39
+ * matches the agent's re-attempt on reinvocation.
24
40
  *
25
41
  * Policy evaluation order (first match wins). The model is "gate the dangerous
26
42
  * set, allow the rest" — matching the native harness and avoiding denial of
27
43
  * auto-approved MCP tools (which are absent from mcpToolPolicies):
28
44
  * 1. autoApproveAll → allow
29
- * 2. Matches an approved grant token → allow (reinvocation after approval)
30
- * 3. Tool name in builtInGatedListdeny
31
- * 4. Tool name in mcpToolPolicies (require-approval) → deny
32
- * 5. Everything else (read-only built-ins, auto-approved MCP, unknown) → allow
45
+ * 2. Gated built-in (category non-empty):
46
+ * a. identity token in approvedGrantTokensallow (reinvocation grant)
47
+ * b. otherwise record denial, deny
48
+ * 3. MCP tool present in mcpToolPolicies (require-approval):
49
+ * a. name token in approvedGrantTokens → allow
50
+ * b. otherwise → record denial, deny
51
+ * 4. Everything else (read-only built-ins, auto-approved MCP, unknown) → allow
33
52
  */
34
- import { SALIENT_ARG_FIELDS } from "./approval-policy.js";
53
+ import { SALIENT_ARG_FIELDS, getBuiltInGatedCategories } from "./approval-policy.js";
35
54
  const APPROVAL_REQUIRED_AGENT_MESSAGE = "STIGMER_APPROVAL_REQUIRED: This tool call requires user approval before " +
36
- "execution. Do not attempt alternative approaches or workarounds. The " +
37
- "execution will resume after the user reviews and approves this tool call.";
55
+ "execution. Do not attempt alternative approaches or workarounds (including " +
56
+ "shell commands). Stop and wait — the execution will resume after the user " +
57
+ "reviews and approves this tool call.";
58
+ /**
59
+ * Build the bash `case` arms that map an incoming hook `tool_name` to its
60
+ * canonical approval category. Generated from approval-policy.ts so the hook and
61
+ * the runner never disagree on which built-ins are gated or how they categorize.
62
+ */
63
+ function buildCategoryCaseArms() {
64
+ const byCategory = new Map();
65
+ for (const [name, category] of getBuiltInGatedCategories()) {
66
+ const names = byCategory.get(category) ?? [];
67
+ names.push(name);
68
+ byCategory.set(category, names);
69
+ }
70
+ const arms = [];
71
+ for (const [category, names] of byCategory) {
72
+ const pattern = names.map((n) => `"${n}"`).join("|");
73
+ arms.push(` ${pattern}) CATEGORY="${category}" ;;`);
74
+ }
75
+ return arms.join("\n");
76
+ }
38
77
  /**
39
78
  * Generates the bash hook script content.
40
79
  *
41
80
  * The script reads a JSON state file written by the cursor-runner before
42
81
  * each agent.send() call. The state file is the single source of truth
43
- * for all approval decisions.
82
+ * for the dynamic approval inputs (autoApproveAll, mcpToolPolicies,
83
+ * approvedGrantTokens). The static policy (which built-ins are gated and their
84
+ * categories, and which arg fields are salient) is baked into the script at
85
+ * generation time from approval-policy.ts.
44
86
  *
45
- * Approved grants are matched by a base64 token of `toolName \n salientArg`,
46
- * recomputed here from the incoming tool call. The salient-arg field list is
47
- * injected from SALIENT_ARG_FIELDS so the runner and the hook never disagree on
48
- * which argument identifies the resource. The encoding must stay byte-identical
87
+ * The identity token encoding (`base64(key \n salient)`) must stay byte-identical
49
88
  * to grantToken() in approval-state.ts.
50
89
  */
51
90
  export function generateHookScript(stateFilePath, ledgerFilePath) {
52
91
  const salientFields = SALIENT_ARG_FIELDS.join(" ");
92
+ const categoryCaseArms = buildCategoryCaseArms();
53
93
  return `#!/bin/bash
54
94
  # Stigmer HITL approval hook for Cursor preToolUse
55
95
  # Generated by cursor-runner — do not edit manually.
56
96
  #
57
- # Reads tool call from stdin (JSON), checks approval state file,
58
- # returns permission decision on stdout (JSON). On a deny, appends the call's
97
+ # Reads tool call from stdin (JSON), checks approval state file, returns a
98
+ # permission decision on stdout (JSON). On a deny, appends the call's canonical
59
99
  # identity token to the denial ledger so the runner can mark the gated tool call
60
- # as WAITING_APPROVAL.
100
+ # as WAITING_APPROVAL. See hook-script.ts for the cross-taxonomy identity design.
61
101
 
62
102
  set -euo pipefail
63
103
 
64
104
  INPUT=$(cat)
65
105
 
66
- # Extract tool_name from the hook input JSON.
67
- # Cursor sends the actual tool name (e.g. "search_services" for MCP tools).
68
- # Every extraction ends with '|| true': under 'set -e' a non-matching grep would
69
- # otherwise abort the script and emit no decision.
106
+ # Extract tool_name from the hook input JSON. The hook receives PascalCase names
107
+ # (Write/Shell/Delete/Read/...). Every extraction ends with '|| true': under
108
+ # 'set -e' a non-matching grep would otherwise abort the script and emit no
109
+ # decision.
70
110
  TOOL_NAME=$(echo "$INPUT" | grep -o '"tool_name":"[^"]*"' | head -1 | cut -d'"' -f4 || true)
71
111
 
72
112
  STATE_FILE="${stateFilePath}"
@@ -86,66 +126,67 @@ if echo "$STATE" | grep -q '"autoApproveAll":true'; then
86
126
  exit 0
87
127
  fi
88
128
 
89
- # --- 2. Approved grants (reinvocation after SubmitApproval) ---
90
- # Build the same base64 token the runner stored for an approved tool call and
91
- # match it against approvedGrantTokens. Match by (name + salient arg); fall back
92
- # to name-only for grants with no salient arg (MCP tools). Salient-arg field
93
- # order is injected from SALIENT_ARG_FIELDS (single source of truth).
94
- TOKEN_NAME=$(printf '%s\\n' "$TOOL_NAME" | base64 | tr -d '\\n')
95
- if echo "$STATE" | grep -q "\\"$TOKEN_NAME\\""; then
96
- echo '{"permission":"allow"}'
97
- exit 0
98
- fi
129
+ # --- Salient resource value (file path / command), spanning both taxonomies'
130
+ # arg field names (file_path here, path on the stream side). First match wins. ---
99
131
  SALIENT=""
100
132
  for field in ${salientFields}; do
101
133
  v=$(echo "$INPUT" | grep -o "\\"$field\\":\\"[^\\"]*\\"" | head -1 | cut -d'"' -f4 || true)
102
134
  if [ -n "$v" ]; then SALIENT="$v"; break; fi
103
135
  done
104
- if [ -n "$SALIENT" ]; then
105
- TOKEN_SALIENT=$(printf '%s\\n%s' "$TOOL_NAME" "$SALIENT" | base64 | tr -d '\\n')
106
- if echo "$STATE" | grep -q "\\"$TOKEN_SALIENT\\""; then
107
- echo '{"permission":"allow"}'
108
- exit 0
109
- fi
110
- fi
111
136
 
112
- # Identity token recorded on a deny so the runner can correlate the gated call
113
- # back to its streamed tool call. Prefer the salient-arg token (identifies the
114
- # specific resource); fall back to name-only. Byte-identical to grantToken().
115
- if [ -n "$SALIENT" ]; then DENY_TOKEN="$TOKEN_SALIENT"; else DENY_TOKEN="$TOKEN_NAME"; fi
137
+ # --- Canonical approval category for this hook tool_name (baked from
138
+ # approval-policy.ts). Empty for non-gated tools. ---
139
+ CATEGORY=""
140
+ case "$TOOL_NAME" in
141
+ ${categoryCaseArms}
142
+ *) CATEGORY="" ;;
143
+ esac
116
144
 
117
145
  # Append a denial record to the ledger. Best-effort: a ledger write failure must
118
146
  # never abort the decision (the deny still goes out on stdout). toolName is raw
119
147
  # for human-readable debugging; token drives correlation in the runner.
120
148
  record_denial() {
121
- echo '{"toolName":"'"$TOOL_NAME"'","token":"'"$DENY_TOKEN"'"}' >> "$LEDGER_FILE" 2>/dev/null || true
149
+ echo '{"toolName":"'"$TOOL_NAME"'","token":"'"$1"'"}' >> "$LEDGER_FILE" 2>/dev/null || true
122
150
  }
123
151
 
124
- # --- 3. Gated built-in tools (Write, StrReplace, Shell, ...) → deny ---
125
- GATED_LIST=$(echo "$STATE" | grep -o '"builtInGatedList":\\[[^]]*\\]' | head -1 || true)
126
- if [ -n "$GATED_LIST" ] && [ -n "$TOOL_NAME" ] && echo "$GATED_LIST" | grep -q "\\"$TOOL_NAME\\""; then
127
- record_denial
152
+ # --- 2. Gated built-in tools (category non-empty) ---
153
+ if [ -n "$CATEGORY" ]; then
154
+ # Canonical identity token: base64("$CATEGORY\\n$SALIENT").
155
+ TOKEN=$(printf '%s\\n%s' "$CATEGORY" "$SALIENT" | base64 | tr -d '\\n')
156
+ # Reinvocation grant: this exact resource was approved earlier → allow.
157
+ if echo "$STATE" | grep -qF "\\"$TOKEN\\""; then
158
+ echo '{"permission":"allow"}'
159
+ exit 0
160
+ fi
161
+ record_denial "$TOKEN"
128
162
  echo '{"permission":"deny","agent_message":"${APPROVAL_REQUIRED_AGENT_MESSAGE}","user_message":"Tool requires approval: '"$TOOL_NAME"'"}'
129
163
  exit 0
130
164
  fi
131
165
 
132
- # --- 4. MCP tools that require approval → deny ---
166
+ # --- 3. MCP tools that require approval → deny ---
133
167
  # mcpToolPolicies holds only require-approval tools (auto-approved MCP tools are
134
- # absent), so presence means "deny" unless an entry is explicitly false.
168
+ # absent), so presence means "deny" unless an entry is explicitly false. MCP tool
169
+ # names are consistent across the hook and the stream, so the identity token is
170
+ # name-only: base64("$TOOL_NAME\\n").
135
171
  if echo "$STATE" | grep -q "\\"mcpToolPolicies\\"" && [ -n "$TOOL_NAME" ]; then
136
172
  TOOL_POLICY=$(echo "$STATE" | grep -o "\\"$TOOL_NAME\\":{[^}]*}" | head -1 || true)
137
173
  if [ -n "$TOOL_POLICY" ] && ! echo "$TOOL_POLICY" | grep -q '"requiresApproval":false'; then
174
+ MCP_TOKEN=$(printf '%s\\n' "$TOOL_NAME" | base64 | tr -d '\\n')
175
+ if echo "$STATE" | grep -qF "\\"$MCP_TOKEN\\""; then
176
+ echo '{"permission":"allow"}'
177
+ exit 0
178
+ fi
138
179
  MSG=$(echo "$TOOL_POLICY" | grep -o '"message":"[^"]*"' | head -1 | cut -d'"' -f4 || true)
139
180
  if [ -z "$MSG" ]; then
140
181
  MSG="Tool requires approval: $TOOL_NAME"
141
182
  fi
142
- record_denial
183
+ record_denial "$MCP_TOKEN"
143
184
  echo '{"permission":"deny","agent_message":"${APPROVAL_REQUIRED_AGENT_MESSAGE}","user_message":"'"$MSG"'"}'
144
185
  exit 0
145
186
  fi
146
187
  fi
147
188
 
148
- # --- 5. Everything else → allow ---
189
+ # --- 4. Everything else → allow ---
149
190
  # Read-only built-ins, auto-approved MCP tools, and anything not explicitly
150
191
  # gated. Fail-open mirrors the native harness (gate the dangerous set, allow the
151
192
  # rest) and prevents denying auto-approved MCP tools the state cannot enumerate.
@@ -1 +1 @@
1
- {"version":3,"file":"hook-script.js","sourceRoot":"","sources":["../../../src/activities/execute-cursor/hook-script.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,+BAA+B,GACnC,0EAA0E;IAC1E,uEAAuE;IACvE,2EAA2E,CAAC;AAE9E;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,aAAqB,EAAE,cAAsB;IAC9E,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO;;;;;;;;;;;;;;;;;;;cAmBK,aAAa;eACZ,cAAc;;;;gDAImB,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;eAuBhE,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;gDA4BoB,+BAA+B;;;;;;;;;;;;;;;kDAe7B,+BAA+B;;;;;;;;;;;CAWhF,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"hook-script.js","sourceRoot":"","sources":["../../../src/activities/execute-cursor/hook-script.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAErF,MAAM,+BAA+B,GACnC,0EAA0E;IAC1E,6EAA6E;IAC7E,4EAA4E;IAC5E,sCAAsC,CAAC;AAEzC;;;;GAIG;AACH,SAAS,qBAAqB;IAC5B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,yBAAyB,EAAE,EAAE,CAAC;QAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,CAAC,OAAO,OAAO,eAAe,QAAQ,MAAM,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,aAAqB,EAAE,cAAsB;IAC9E,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnD,MAAM,gBAAgB,GAAG,qBAAqB,EAAE,CAAC;IACjD,OAAO;;;;;;;;;;;;;;;;;;;cAmBK,aAAa;eACZ,cAAc;;;;gDAImB,+BAA+B;;;;;;;;;;;;;;;eAehE,aAAa;;;;;;;;;EAS1B,gBAAgB;;;;;;;;;;;;;;;;;;;;;gDAqB8B,+BAA+B;;;;;;;;;;;;;;;;;;;;;;kDAsB7B,+BAA+B;;;;;;;;;;;CAWhF,CAAC;AACF,CAAC"}
@@ -174,7 +174,30 @@ export declare class MessageAccumulator {
174
174
  cancelInProgressSubAgents(): void;
175
175
  processEvent(event: SDKMessage): void;
176
176
  finalize(): void;
177
+ /**
178
+ * Attach a tool call to the current AI message, upserting by `call_id` so a
179
+ * single call maps to at most ONE ToolCall across all messages.
180
+ *
181
+ * The Cursor SDK can emit the lifecycle for one `call_id` more than once —
182
+ * observed in production as two "running" events ~0.5s apart for task/edit
183
+ * tools, which previously appended a duplicate ToolCall (the same call
184
+ * rendered two or three times in the UI). We therefore index by `call_id`
185
+ * and merge subsequent events into the existing proto, mirroring how
186
+ * trackSubAgentExecution() upserts via subAgentMap. The first event for a
187
+ * `call_id` (running or terminal) creates the proto on the last AI message;
188
+ * the index keeps pointing at it even after later assistant text starts a
189
+ * new AI message, so cross-message completions still land on the original.
190
+ */
177
191
  private attachToolCallToLastAi;
192
+ /**
193
+ * Merge a repeated tool_call event into the ToolCall already tracked for this
194
+ * `call_id`. The merge is defensive because a re-emitted event may carry less
195
+ * information than an earlier one (a late "running" after "completed", or a
196
+ * completion with an empty result): status only advances toward terminal,
197
+ * timestamps are stamped once, and a populated result/args is never clobbered
198
+ * by an empty one.
199
+ */
200
+ private mergeToolCallEvent;
178
201
  private findOrCreateLastAiMessage;
179
202
  trackSubAgentExecution(event: Extract<SDKMessage, {
180
203
  type: "tool_call";
@@ -33,8 +33,8 @@ import { create } from "@bufbuild/protobuf";
33
33
  import { AgentMessageSchema, ToolCallSchema } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/message_pb";
34
34
  import { SubAgentExecutionSchema } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/subagent_pb";
35
35
  import { MessageType, ToolCallStatus, SubAgentStatus } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
36
- import { lookupMcpToolPolicy, resolveApprovalMessage, builtInRequiresApproval, getBuiltInApprovalMessage, extractArgKey } from "./approval-policy.js";
37
- import { grantToken } from "./approval-state.js";
36
+ import { lookupMcpToolPolicy, resolveApprovalMessage, builtInRequiresApproval, getBuiltInApprovalMessage } from "./approval-policy.js";
37
+ import { grantToken, toolIdentity } from "./approval-state.js";
38
38
  import { utcTimestamp } from "../../shared/status.js";
39
39
  import { classifyTool } from "../../shared/tool-kind.js";
40
40
  export { utcTimestamp };
@@ -260,6 +260,16 @@ function safeString(obj, key) {
260
260
  }
261
261
  return "";
262
262
  }
263
+ /**
264
+ * Normalize a tool_call event result into a string for the ToolCall proto.
265
+ * Returns "" for an absent result so callers can treat "no result yet" and
266
+ * "empty result" uniformly (e.g. to avoid clobbering a captured result).
267
+ */
268
+ function toResultString(result) {
269
+ if (result == null)
270
+ return "";
271
+ return typeof result === "string" ? result : JSON.stringify(result);
272
+ }
263
273
  /**
264
274
  * Parse the task tool's completed result into AgentMessages.
265
275
  *
@@ -478,49 +488,74 @@ export class MessageAccumulator {
478
488
  this.activeAiByRunId.clear();
479
489
  this.activeThinkingByRunId.clear();
480
490
  }
491
+ /**
492
+ * Attach a tool call to the current AI message, upserting by `call_id` so a
493
+ * single call maps to at most ONE ToolCall across all messages.
494
+ *
495
+ * The Cursor SDK can emit the lifecycle for one `call_id` more than once —
496
+ * observed in production as two "running" events ~0.5s apart for task/edit
497
+ * tools, which previously appended a duplicate ToolCall (the same call
498
+ * rendered two or three times in the UI). We therefore index by `call_id`
499
+ * and merge subsequent events into the existing proto, mirroring how
500
+ * trackSubAgentExecution() upserts via subAgentMap. The first event for a
501
+ * `call_id` (running or terminal) creates the proto on the last AI message;
502
+ * the index keeps pointing at it even after later assistant text starts a
503
+ * new AI message, so cross-message completions still land on the original.
504
+ */
481
505
  attachToolCallToLastAi(event) {
482
506
  if (SUPPRESSED_TOOL_NAMES.has(event.name))
483
507
  return;
484
- const status = mapToolCallStatus(event.status);
485
- if (event.status === "running") {
486
- const aiMsg = this.findOrCreateLastAiMessage();
508
+ const existing = this.toolCallIndex.get(event.call_id);
509
+ if (!existing) {
487
510
  const tc = buildToolCallProto(event, this.mergedPolicies);
488
- aiMsg.toolCalls.push(tc);
511
+ this.findOrCreateLastAiMessage().toolCalls.push(tc);
489
512
  this.toolCallIndex.set(event.call_id, tc);
513
+ return;
490
514
  }
491
- else {
492
- const existing = this.toolCallIndex.get(event.call_id);
493
- if (existing) {
494
- existing.status = status;
495
- if (isTerminalToolStatus(status)) {
496
- existing.completedAt = utcTimestamp();
497
- }
498
- if (event.result != null) {
499
- existing.result = typeof event.result === "string"
500
- ? event.result
501
- : JSON.stringify(event.result);
502
- }
503
- if (status === ToolCallStatus.TOOL_CALL_FAILED) {
504
- existing.error = typeof event.result === "string"
505
- ? event.result
506
- : "Tool call failed";
507
- if (existing.requiresApproval) {
508
- existing.approvalRequestedAt = utcTimestamp();
509
- }
510
- }
511
- if (event.args != null && !existing.argsPreview) {
512
- existing.argsPreview = typeof event.args === "string"
513
- ? event.args
514
- : JSON.stringify(event.args);
515
- }
515
+ this.mergeToolCallEvent(existing, event);
516
+ }
517
+ /**
518
+ * Merge a repeated tool_call event into the ToolCall already tracked for this
519
+ * `call_id`. The merge is defensive because a re-emitted event may carry less
520
+ * information than an earlier one (a late "running" after "completed", or a
521
+ * completion with an empty result): status only advances toward terminal,
522
+ * timestamps are stamped once, and a populated result/args is never clobbered
523
+ * by an empty one.
524
+ */
525
+ mergeToolCallEvent(existing, event) {
526
+ const status = mapToolCallStatus(event.status);
527
+ // Status advances monotonically: once terminal (completed/failed/skipped)
528
+ // a later "running" re-emit must not regress it back to RUNNING.
529
+ if (!isTerminalToolStatus(existing.status)) {
530
+ existing.status = status;
531
+ }
532
+ if (isTerminalToolStatus(status) && !existing.completedAt) {
533
+ existing.completedAt = utcTimestamp();
534
+ }
535
+ if (!existing.startedAt && status === ToolCallStatus.TOOL_CALL_RUNNING) {
536
+ existing.startedAt = utcTimestamp();
537
+ }
538
+ // Only a non-empty incoming result overwrites; a result-less "running"
539
+ // re-emit must not wipe a result captured on completion (or vice versa).
540
+ const incomingResult = toResultString(event.result);
541
+ if (incomingResult) {
542
+ existing.result = incomingResult;
543
+ }
544
+ if (status === ToolCallStatus.TOOL_CALL_FAILED) {
545
+ if (!existing.error) {
546
+ existing.error = typeof event.result === "string"
547
+ ? event.result
548
+ : "Tool call failed";
516
549
  }
517
- else {
518
- const aiMsg = this.findOrCreateLastAiMessage();
519
- const tc = buildToolCallProto(event, this.mergedPolicies);
520
- aiMsg.toolCalls.push(tc);
521
- this.toolCallIndex.set(event.call_id, tc);
550
+ if (existing.requiresApproval && !existing.approvalRequestedAt) {
551
+ existing.approvalRequestedAt = utcTimestamp();
522
552
  }
523
553
  }
554
+ if (event.args != null && !existing.argsPreview) {
555
+ existing.argsPreview = typeof event.args === "string"
556
+ ? event.args
557
+ : JSON.stringify(event.args);
558
+ }
524
559
  }
525
560
  findOrCreateLastAiMessage() {
526
561
  for (let i = this.messages.length - 1; i >= 0; i--) {
@@ -666,13 +701,18 @@ export function reconcileDeniedToolCalls(messages, ledger, mergedPolicies) {
666
701
  }
667
702
  }
668
703
  // 2. Synthesize a tool call for any denial that never produced a stream event.
704
+ // Rare with correct correlation (Cursor emits a tool_call for every attempt),
705
+ // so this is a defensive net that still surfaces the gate rather than letting
706
+ // a denied tool render as a silent success.
669
707
  for (const entry of ledger) {
670
708
  if (matched.has(entry.token))
671
709
  continue;
672
710
  const decoded = decodeIdentityToken(entry.token);
673
- const name = decoded?.name || entry.toolName || "tool";
674
- const argKey = decoded?.argKey ?? "";
675
- const tc = synthesizeWaitingApprovalToolCall(name, argKey, mergedPolicies);
711
+ // Display the hook's raw tool name; carry the decoded salient so the grant
712
+ // rebuilt from this tool call on reinvocation keys on the same resource.
713
+ const displayName = entry.toolName || decoded?.key || "tool";
714
+ const salient = decoded?.salient ?? "";
715
+ const tc = synthesizeWaitingApprovalToolCall(displayName, salient, entry.token, mergedPolicies);
676
716
  appendToolCallToLastAiMessage(messages, tc);
677
717
  matched.add(entry.token);
678
718
  result.push(tc);
@@ -680,23 +720,24 @@ export function reconcileDeniedToolCalls(messages, ledger, mergedPolicies) {
680
720
  return result;
681
721
  }
682
722
  /**
683
- * Compute a tool call's identity token in the same space the preToolUse hook
684
- * uses (grantToken: base64 of `toolName \n salientArg`). Mirrors the hook's
685
- * choice: MCP tools are name-only (no top-level salient arg in the hook input,
686
- * matching the grant convention); built-in tools key on their salient arg.
723
+ * Compute a streamed tool call's identity token in the same canonical space the
724
+ * preToolUse hook records denials in (see {@link toolIdentity} and grantToken).
725
+ * The token keys on the cross-taxonomy category + salient resource, so a stream
726
+ * `edit` (token `base64("write\n/path")`) correlates to the hook's `Write` deny
727
+ * for the same path, even though the two layers name the tool differently.
687
728
  */
688
729
  function toolCallIdentityToken(tc) {
689
- const argKey = tc.mcpServerSlug ? "" : extractArgKey(toolCallArgs(tc));
690
- return grantToken(tc.name, argKey);
730
+ const id = toolIdentity(tc.name, tc.mcpServerSlug, toolCallArgs(tc));
731
+ return grantToken(id.key, id.salient);
691
732
  }
692
- /** Decode a `grantToken` back into its (name, argKey) for synthesis fallback. */
733
+ /** Decode a grantToken back into its (key, salient) for the synthesis fallback. */
693
734
  function decodeIdentityToken(token) {
694
735
  try {
695
736
  const decoded = Buffer.from(token, "base64").toString("utf-8");
696
737
  const nl = decoded.indexOf("\n");
697
738
  if (nl < 0)
698
739
  return undefined;
699
- return { name: decoded.slice(0, nl), argKey: decoded.slice(nl + 1) };
740
+ return { key: decoded.slice(0, nl), salient: decoded.slice(nl + 1) };
700
741
  }
701
742
  catch {
702
743
  return undefined;
@@ -735,19 +776,24 @@ function markWaitingApproval(tc, mergedPolicies) {
735
776
  tc.error = "";
736
777
  tc.result = "";
737
778
  }
738
- function synthesizeWaitingApprovalToolCall(name, argKey, mergedPolicies) {
779
+ function synthesizeWaitingApprovalToolCall(displayName, salient, token, mergedPolicies) {
739
780
  const tc = create(ToolCallSchema, {
740
- id: `approval:${grantToken(name, argKey)}`,
741
- name,
781
+ id: `approval:${token}`,
782
+ name: displayName,
742
783
  status: ToolCallStatus.TOOL_CALL_WAITING_APPROVAL,
743
784
  requiresApproval: true,
744
785
  startedAt: utcTimestamp(),
745
786
  approvalRequestedAt: utcTimestamp(),
746
- toolKind: classifyTool(name),
787
+ toolKind: classifyTool(displayName),
747
788
  });
748
- tc.approvalMessage = argKey
749
- ? `Tool requires approval: ${name} (${argKey})`
750
- : resolveDeniedApprovalMessage(name, "", {}, mergedPolicies);
789
+ // Carry the salient resource so reconstructAdjudicatedApprovals -> the grant
790
+ // builder keys on the same resource the hook will see on the re-attempt.
791
+ if (salient) {
792
+ tc.argsPreview = JSON.stringify({ path: salient });
793
+ }
794
+ tc.approvalMessage = salient
795
+ ? `Tool requires approval: ${displayName} (${salient})`
796
+ : resolveDeniedApprovalMessage(displayName, "", {}, mergedPolicies);
751
797
  return tc;
752
798
  }
753
799
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"message-translator.js","sourceRoot":"","sources":["../../../src/activities/execute-cursor/message-translator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-translator.js","sourceRoot":"","sources":["../../../src/activities/execute-cursor/message-translator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stigmer/runner",
3
- "version": "3.0.2-dev.20260609093630",
3
+ "version": "3.0.3",
4
4
  "description": "Embeddable Temporal worker for the Stigmer AI agent platform — handles agent execution, workflow orchestration, and MCP server management",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -84,7 +84,7 @@
84
84
  "@opentelemetry/resources": "^2.0.0",
85
85
  "@opentelemetry/sdk-trace-base": "^2.0.0",
86
86
  "@opentelemetry/sdk-trace-node": "^2.0.0",
87
- "@stigmer/protos": "3.0.2-dev.20260609093630",
87
+ "@stigmer/protos": "3.0.3",
88
88
  "@temporalio/activity": "^1.11.0",
89
89
  "@temporalio/client": "^1.11.0",
90
90
  "@temporalio/common": "^1.11.0",