@gajae-code/coding-agent 0.15.6 → 0.16.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.
Files changed (270) hide show
  1. package/CHANGELOG.md +99 -0
  2. package/dist/types/async/job-manager.d.ts +32 -1
  3. package/dist/types/browser-backend.d.ts +12 -0
  4. package/dist/types/cli/args.d.ts +2 -0
  5. package/dist/types/cli/root-flags.d.ts +14 -0
  6. package/dist/types/cli/update-cli.d.ts +14 -0
  7. package/dist/types/cli.d.ts +7 -0
  8. package/dist/types/commands/launch.d.ts +10 -0
  9. package/dist/types/commands/sdk.d.ts +2 -0
  10. package/dist/types/config/autorouting-tier-map.d.ts +24 -0
  11. package/dist/types/config/billing-path.d.ts +25 -0
  12. package/dist/types/config/config-schema-version.d.ts +13 -1
  13. package/dist/types/config/file-lock.d.ts +5 -0
  14. package/dist/types/config/model-registry.d.ts +22 -0
  15. package/dist/types/config/settings-schema.d.ts +27 -8
  16. package/dist/types/config/settings.d.ts +2 -0
  17. package/dist/types/coordinator-mcp/projection-scan.d.ts +8 -0
  18. package/dist/types/crash/record-loader.d.ts +15 -0
  19. package/dist/types/extensibility/extensions/types.d.ts +8 -3
  20. package/dist/types/gjc-runtime/launch-worktree-reservation.d.ts +21 -0
  21. package/dist/types/gjc-runtime/launch-worktree.d.ts +25 -1
  22. package/dist/types/gjc-runtime/managed-owner-supervisor.d.ts +2 -0
  23. package/dist/types/gjc-runtime/session-state-lock.d.ts +22 -0
  24. package/dist/types/gjc-runtime/session-state-sidecar.d.ts +66 -1
  25. package/dist/types/gjc-runtime/tmux-owner-isolation.d.ts +1 -0
  26. package/dist/types/gjc-runtime/tmux-sessions.d.ts +27 -0
  27. package/dist/types/main.d.ts +1 -0
  28. package/dist/types/master-mode/context.d.ts +21 -0
  29. package/dist/types/master-mode/first-request.d.ts +34 -0
  30. package/dist/types/master-mode/snapshot.d.ts +32 -0
  31. package/dist/types/modes/acp/acp-agent.d.ts +21 -21
  32. package/dist/types/modes/components/frictionless-onboarding-selector.d.ts +10 -0
  33. package/dist/types/modes/components/model-selector.d.ts +4 -0
  34. package/dist/types/modes/components/oauth-selector.d.ts +1 -0
  35. package/dist/types/modes/components/session-selector.d.ts +1 -1
  36. package/dist/types/modes/components/sessions-dashboard.d.ts +2 -1
  37. package/dist/types/modes/components/status-line/model-name.d.ts +18 -0
  38. package/dist/types/modes/components/status-line/priority-row.d.ts +34 -0
  39. package/dist/types/modes/components/status-line/segments.d.ts +10 -0
  40. package/dist/types/modes/interactive-mode.d.ts +16 -2
  41. package/dist/types/modes/print-mode.d.ts +17 -0
  42. package/dist/types/modes/theme/theme.d.ts +2 -1
  43. package/dist/types/modes/types.d.ts +2 -0
  44. package/dist/types/modes/ui-language.d.ts +7 -1
  45. package/dist/types/sdk/broker/broker.d.ts +79 -2
  46. package/dist/types/sdk/broker/endpoint-authority.d.ts +24 -0
  47. package/dist/types/sdk/broker/ensure.d.ts +3 -0
  48. package/dist/types/sdk/broker/index.d.ts +3 -0
  49. package/dist/types/sdk/broker/lifecycle-ledger.d.ts +6 -0
  50. package/dist/types/sdk/broker/lifecycle.d.ts +40 -0
  51. package/dist/types/sdk/broker/master-capability.d.ts +10 -0
  52. package/dist/types/sdk/broker/session-index.d.ts +40 -11
  53. package/dist/types/sdk/broker/session-scope.d.ts +72 -0
  54. package/dist/types/sdk/broker/spawn-authority.d.ts +201 -0
  55. package/dist/types/sdk/broker/spawn-substrate.d.ts +30 -0
  56. package/dist/types/sdk/broker/startup-budget.d.ts +52 -0
  57. package/dist/types/sdk/broker/state-version.d.ts +21 -1
  58. package/dist/types/sdk/broker/worktree-occupancy.d.ts +28 -0
  59. package/dist/types/sdk/bus/chat-daemon-control.d.ts +3 -0
  60. package/dist/types/sdk/bus/discord-daemon.d.ts +1 -1
  61. package/dist/types/sdk/bus/index.d.ts +9 -1
  62. package/dist/types/sdk/bus/kind-aware-reconciliation.d.ts +1 -1
  63. package/dist/types/sdk/bus/prompt-reconciliation.d.ts +1 -1
  64. package/dist/types/sdk/bus/slack-conversation.d.ts +1 -1
  65. package/dist/types/sdk/bus/slack-daemon.d.ts +1 -1
  66. package/dist/types/sdk/bus/telegram-daemon-contract.d.ts +1 -1
  67. package/dist/types/sdk/cli/index.d.ts +1 -0
  68. package/dist/types/sdk/cli/master-cli.d.ts +63 -0
  69. package/dist/types/sdk/cli/rows.d.ts +12 -5
  70. package/dist/types/sdk/cli/session-cli.d.ts +20 -3
  71. package/dist/types/sdk/client/client.d.ts +3 -2
  72. package/dist/types/sdk/host/control/dispatch.d.ts +10 -0
  73. package/dist/types/sdk/host/control/index.d.ts +1 -1
  74. package/dist/types/sdk/host/control/operations.d.ts +2 -0
  75. package/dist/types/sdk/host/control/runtime-gate.d.ts +21 -7
  76. package/dist/types/sdk/host/events.d.ts +1 -0
  77. package/dist/types/sdk/host/host.d.ts +10 -0
  78. package/dist/types/sdk/host/query/cursor.d.ts +4 -2
  79. package/dist/types/sdk/host/query/handlers.d.ts +1 -0
  80. package/dist/types/sdk/host/query/revision-store.d.ts +1 -0
  81. package/dist/types/sdk/host/session-runtime.d.ts +70 -17
  82. package/dist/types/sdk/lifecycle/broker-client.d.ts +6 -0
  83. package/dist/types/sdk/lifecycle/service.d.ts +15 -3
  84. package/dist/types/sdk/lifecycle-session.d.ts +3 -1
  85. package/dist/types/sdk/prompt-deadline-manager.d.ts +2 -5
  86. package/dist/types/sdk/receipt-state.d.ts +2 -0
  87. package/dist/types/sdk/router/session-router.d.ts +6 -0
  88. package/dist/types/sdk/session.d.ts +16 -0
  89. package/dist/types/sdk/startup-capability.d.ts +2 -1
  90. package/dist/types/sdk/turn-result.d.ts +6 -0
  91. package/dist/types/session/agent-session.d.ts +52 -7
  92. package/dist/types/session/credential-store-errors.d.ts +1 -0
  93. package/dist/types/session/fold-coordinator.d.ts +29 -2
  94. package/dist/types/session/session-manager.d.ts +79 -2
  95. package/dist/types/session/yield-queue.d.ts +5 -4
  96. package/dist/types/setup/frictionless-onboarding.d.ts +1 -0
  97. package/dist/types/tools/ask.d.ts +1 -0
  98. package/dist/types/tools/bash.d.ts +16 -0
  99. package/dist/types/tools/browser/launch.d.ts +10 -0
  100. package/dist/types/tools/browser/registry.d.ts +8 -0
  101. package/dist/types/tools/gh.d.ts +8 -0
  102. package/dist/types/tools/index.d.ts +10 -10
  103. package/dist/types/tools/job.d.ts +3 -1
  104. package/dist/types/utils/external-editor.d.ts +7 -0
  105. package/examples/extensions/README.md +1 -1
  106. package/examples/extensions/pirate.ts +7 -4
  107. package/package.json +7 -7
  108. package/scripts/generate-sdk-operation-inventory.ts +13 -1
  109. package/scripts/verify-gjc-sdk-canonicalization.ts +35 -1
  110. package/src/async/job-manager.ts +107 -9
  111. package/src/browser-backend.ts +29 -0
  112. package/src/cli/accounts-cli.ts +9 -5
  113. package/src/cli/args.ts +17 -0
  114. package/src/cli/fast-help.ts +1 -0
  115. package/src/cli/plugin-cli.ts +29 -0
  116. package/src/cli/root-flags.ts +5 -0
  117. package/src/cli/update-cli.ts +140 -23
  118. package/src/commands/launch.ts +86 -18
  119. package/src/commands/sdk.ts +135 -28
  120. package/src/config/autorouting-tier-map.ts +12 -0
  121. package/src/config/billing-path.ts +42 -0
  122. package/src/config/config-schema-version.ts +18 -1
  123. package/src/config/file-lock.ts +158 -83
  124. package/src/config/model-preset-registry.ts +178 -23
  125. package/src/config/model-profiles.ts +5 -5
  126. package/src/config/model-registry.ts +291 -42
  127. package/src/config/model-resolver.ts +5 -0
  128. package/src/config/settings-schema.ts +27 -8
  129. package/src/config/settings.ts +51 -15
  130. package/src/coordinator-mcp/projection-scan.ts +27 -6
  131. package/src/coordinator-mcp/question-state.ts +9 -11
  132. package/src/coordinator-mcp/server.ts +115 -21
  133. package/src/crash/index-store.ts +2 -0
  134. package/src/crash/record-loader.ts +10 -0
  135. package/src/defaults/gjc/skills/deep-interview/SKILL.md +1 -1
  136. package/src/extensibility/extensions/runner.ts +27 -0
  137. package/src/extensibility/extensions/types.ts +8 -3
  138. package/src/extensibility/gjc-plugins/installer.ts +51 -11
  139. package/src/extensibility/runtime-skill-discovery.ts +110 -3
  140. package/src/extensibility/skills.ts +22 -12
  141. package/src/gjc-runtime/launch-worktree-reservation.ts +242 -0
  142. package/src/gjc-runtime/launch-worktree.ts +285 -4
  143. package/src/gjc-runtime/managed-owner-supervisor.ts +63 -51
  144. package/src/gjc-runtime/session-state-lock.ts +213 -14
  145. package/src/gjc-runtime/session-state-sidecar.ts +938 -39
  146. package/src/gjc-runtime/tmux-owner-isolation-cli.ts +4 -7
  147. package/src/gjc-runtime/tmux-owner-isolation.ts +18 -3
  148. package/src/gjc-runtime/tmux-sessions.ts +252 -13
  149. package/src/hooks/skill-state.ts +6 -0
  150. package/src/internal-urls/docs-index.generated.ts +15 -15
  151. package/src/internal-urls/issue-pr-protocol.ts +4 -2
  152. package/src/main.ts +61 -3
  153. package/src/master-mode/context.ts +50 -0
  154. package/src/master-mode/first-request.ts +65 -0
  155. package/src/master-mode/snapshot.ts +205 -0
  156. package/src/modes/acp/acp-agent.ts +610 -161
  157. package/src/modes/components/footer.ts +4 -2
  158. package/src/modes/components/frictionless-onboarding-selector.ts +48 -2
  159. package/src/modes/components/model-selector.ts +76 -8
  160. package/src/modes/components/oauth-selector.ts +6 -1
  161. package/src/modes/components/session-selector.ts +23 -15
  162. package/src/modes/components/sessions-dashboard.ts +8 -5
  163. package/src/modes/components/settings-selector.ts +1 -0
  164. package/src/modes/components/status-line/model-name.ts +53 -0
  165. package/src/modes/components/status-line/priority-row.ts +107 -0
  166. package/src/modes/components/status-line/segments.ts +23 -9
  167. package/src/modes/components/tool-status-header.ts +151 -15
  168. package/src/modes/controllers/command-controller.ts +1 -1
  169. package/src/modes/controllers/event-controller.ts +30 -4
  170. package/src/modes/controllers/extension-ui-controller.ts +13 -13
  171. package/src/modes/controllers/input-controller.ts +30 -2
  172. package/src/modes/controllers/selector-controller.ts +200 -98
  173. package/src/modes/interactive-mode.ts +36 -12
  174. package/src/modes/print-mode.ts +64 -0
  175. package/src/modes/prompt-action-autocomplete.ts +30 -4
  176. package/src/modes/runtime-init.ts +12 -9
  177. package/src/modes/theme/theme.ts +5 -0
  178. package/src/modes/types.ts +2 -0
  179. package/src/modes/ui-language.ts +49 -2
  180. package/src/modes/utils/ui-helpers.ts +22 -3
  181. package/src/prompts/agent-fragments/browser-aside.md +22 -0
  182. package/src/prompts/system/master-mode.md +28 -0
  183. package/src/prompts/tools/ask.md +1 -1
  184. package/src/prompts/tools/bash.md +1 -0
  185. package/src/prompts/tools/job.md +1 -1
  186. package/src/sdk/acp/adapter.ts +5 -0
  187. package/src/sdk/broker/broker.ts +1646 -27
  188. package/src/sdk/broker/endpoint-authority.ts +86 -0
  189. package/src/sdk/broker/ensure.ts +81 -3
  190. package/src/sdk/broker/index.ts +3 -0
  191. package/src/sdk/broker/lifecycle-ledger.ts +6 -0
  192. package/src/sdk/broker/lifecycle.ts +440 -75
  193. package/src/sdk/broker/master-capability.ts +232 -0
  194. package/src/sdk/broker/session-index.ts +121 -17
  195. package/src/sdk/broker/session-scope.ts +272 -0
  196. package/src/sdk/broker/spawn-authority.ts +1031 -0
  197. package/src/sdk/broker/spawn-substrate.ts +591 -0
  198. package/src/sdk/broker/startup-budget.ts +144 -2
  199. package/src/sdk/broker/state-version.ts +43 -14
  200. package/src/sdk/broker/transport.ts +1 -0
  201. package/src/sdk/broker/worktree-occupancy.ts +90 -0
  202. package/src/sdk/bus/chat-daemon-control.ts +5 -2
  203. package/src/sdk/bus/chat-daemon-runtime.ts +136 -18
  204. package/src/sdk/bus/discord-daemon.ts +50 -10
  205. package/src/sdk/bus/index.ts +84 -7
  206. package/src/sdk/bus/kind-aware-reconciliation.ts +296 -48
  207. package/src/sdk/bus/lifecycle-commands.ts +4 -0
  208. package/src/sdk/bus/notification-service.ts +22 -5
  209. package/src/sdk/bus/prompt-reconciliation.ts +7 -2
  210. package/src/sdk/bus/reconciliation-store.ts +55 -31
  211. package/src/sdk/bus/slack-conversation.ts +1 -1
  212. package/src/sdk/bus/slack-daemon.ts +72 -38
  213. package/src/sdk/bus/telegram-daemon-contract.ts +1 -1
  214. package/src/sdk/cli/index.ts +1 -0
  215. package/src/sdk/cli/master-cli.ts +259 -0
  216. package/src/sdk/cli/rows.ts +41 -15
  217. package/src/sdk/cli/session-cli.ts +297 -26
  218. package/src/sdk/client/client.ts +14 -8
  219. package/src/sdk/host/control/dispatch.ts +101 -40
  220. package/src/sdk/host/control/index.ts +2 -0
  221. package/src/sdk/host/control/operations.ts +2 -0
  222. package/src/sdk/host/control/runtime-gate.ts +203 -11
  223. package/src/sdk/host/events.ts +1 -0
  224. package/src/sdk/host/host.ts +29 -2
  225. package/src/sdk/host/query/cursor.ts +52 -7
  226. package/src/sdk/host/query/handlers.ts +33 -12
  227. package/src/sdk/host/query/revision-store.ts +12 -0
  228. package/src/sdk/host/session-runtime.test.ts +673 -14
  229. package/src/sdk/host/session-runtime.ts +674 -103
  230. package/src/sdk/host/surface-policy.ts +3 -3
  231. package/src/sdk/lifecycle/broker-client.ts +28 -0
  232. package/src/sdk/lifecycle/service.ts +279 -20
  233. package/src/sdk/lifecycle-session.ts +17 -4
  234. package/src/sdk/prompt-deadline-manager.ts +2 -1
  235. package/src/sdk/protocol/operation-inventory.generated.json +105 -3
  236. package/src/sdk/protocol/operation-registry.ts +14 -4
  237. package/src/sdk/receipt-state.ts +10 -0
  238. package/src/sdk/router/session-router.ts +219 -118
  239. package/src/sdk/session.ts +416 -195
  240. package/src/sdk/startup-capability.ts +1 -0
  241. package/src/sdk/turn-result.ts +22 -0
  242. package/src/session/agent-session.ts +1628 -318
  243. package/src/session/blob-store.ts +15 -5
  244. package/src/session/credential-store-errors.ts +2 -0
  245. package/src/session/fold-coordinator.ts +40 -3
  246. package/src/session/internal/managed-session-storage.ts +153 -78
  247. package/src/session/session-manager.ts +850 -97
  248. package/src/session/yield-queue.ts +24 -10
  249. package/src/setup/frictionless-onboarding.ts +2 -0
  250. package/src/slash-commands/builtin-registry.ts +41 -0
  251. package/src/task/executor.ts +9 -4
  252. package/src/telemetry/events.ts +1138 -12
  253. package/src/tools/ask-contract.test.ts +64 -0
  254. package/src/tools/ask-contract.ts +36 -1
  255. package/src/tools/ask.ts +10 -8
  256. package/src/tools/bash-interactive.ts +11 -2
  257. package/src/tools/bash.ts +412 -75
  258. package/src/tools/browser/launch.ts +37 -0
  259. package/src/tools/browser/registry.ts +99 -9
  260. package/src/tools/cron.ts +6 -4
  261. package/src/tools/descriptors.test.ts +15 -0
  262. package/src/tools/descriptors.ts +5 -1
  263. package/src/tools/gh.ts +104 -48
  264. package/src/tools/github-cache.ts +2 -2
  265. package/src/tools/index.ts +10 -6
  266. package/src/tools/job.ts +4 -1
  267. package/src/tools/monitor.ts +12 -9
  268. package/src/tools/resolve.ts +30 -10
  269. package/src/tools/tool-catalog.generated.ts +2 -2
  270. package/src/utils/external-editor.ts +72 -1
@@ -346,7 +346,7 @@
346
346
  "sourceFile": "packages/coding-agent/src/sdk/protocol/operation-registry.ts",
347
347
  "sourceKind": "registry",
348
348
  "decision": "include",
349
- "sdkId": "queue.interrupt_mode.set",
349
+ "sdkId": "queue.tool_interrupt_policy.set",
350
350
  "adapterMappings": {
351
351
  "telegram": "generic_safe",
352
352
  "discord": "generic_safe",
@@ -1097,6 +1097,24 @@
1097
1097
  "packages/coding-agent/test/sdk-operation-inventory.test.ts"
1098
1098
  ]
1099
1099
  },
1100
+ {
1101
+ "sourceId": "registry:G09",
1102
+ "sourceFile": "packages/coding-agent/src/sdk/protocol/operation-registry.ts",
1103
+ "sourceKind": "registry",
1104
+ "decision": "include",
1105
+ "sdkId": "session.spawn",
1106
+ "adapterMappings": {
1107
+ "telegram": "prohibited",
1108
+ "discord": "prohibited",
1109
+ "slack": "prohibited",
1110
+ "mcp": "prohibited",
1111
+ "acp": "prohibited",
1112
+ "daemonCli": "prohibited"
1113
+ },
1114
+ "testIds": [
1115
+ "packages/coding-agent/test/sdk-operation-inventory.test.ts"
1116
+ ]
1117
+ },
1100
1118
  {
1101
1119
  "sourceId": "registry:Q01",
1102
1120
  "sourceFile": "packages/coding-agent/src/sdk/protocol/operation-registry.ts",
@@ -2297,6 +2315,28 @@
2297
2315
  "testIds": "not_applicable"
2298
2316
  }
2299
2317
  },
2318
+ {
2319
+ "sourceId": "slash_command:star",
2320
+ "sourceFile": "packages/coding-agent/src/slash-commands/builtin-registry.ts",
2321
+ "sourceKind": "slash_command",
2322
+ "decision": "exclude",
2323
+ "rationale": "local transcript-discovery metadata command; no SDK operation counterpart or runtime/retention authority",
2324
+ "exclusionMetadata": {
2325
+ "adapterMappings": "not_applicable",
2326
+ "testIds": "not_applicable"
2327
+ }
2328
+ },
2329
+ {
2330
+ "sourceId": "slash_command:unstar",
2331
+ "sourceFile": "packages/coding-agent/src/slash-commands/builtin-registry.ts",
2332
+ "sourceKind": "slash_command",
2333
+ "decision": "exclude",
2334
+ "rationale": "local transcript-discovery metadata command; no SDK operation counterpart or runtime/retention authority",
2335
+ "exclusionMetadata": {
2336
+ "adapterMappings": "not_applicable",
2337
+ "testIds": "not_applicable"
2338
+ }
2339
+ },
2300
2340
  {
2301
2341
  "sourceId": "slash_command:resume",
2302
2342
  "sourceFile": "packages/coding-agent/src/slash-commands/builtin-registry.ts",
@@ -2845,6 +2885,39 @@
2845
2885
  "testIds": "not_applicable"
2846
2886
  }
2847
2887
  },
2888
+ {
2889
+ "sourceId": "agent_session:queueCoordinatorRuntimeStatePersistForTests",
2890
+ "sourceFile": "packages/coding-agent/src/session/agent-session.ts",
2891
+ "sourceKind": "agent_session",
2892
+ "decision": "exclude",
2893
+ "rationale": "test-only coordinator persistence ordering seam, not a user-facing SDK control seam",
2894
+ "exclusionMetadata": {
2895
+ "adapterMappings": "not_applicable",
2896
+ "testIds": "not_applicable"
2897
+ }
2898
+ },
2899
+ {
2900
+ "sourceId": "agent_session:parkAgentEndForCoordinatorPersistForTests",
2901
+ "sourceFile": "packages/coding-agent/src/session/agent-session.ts",
2902
+ "sourceKind": "agent_session",
2903
+ "decision": "exclude",
2904
+ "rationale": "test-only parked terminal persistence seam, not a user-facing SDK control seam",
2905
+ "exclusionMetadata": {
2906
+ "adapterMappings": "not_applicable",
2907
+ "testIds": "not_applicable"
2908
+ }
2909
+ },
2910
+ {
2911
+ "sourceId": "agent_session:flushParkedAgentEndForCoordinatorPersistForTests",
2912
+ "sourceFile": "packages/coding-agent/src/session/agent-session.ts",
2913
+ "sourceKind": "agent_session",
2914
+ "decision": "exclude",
2915
+ "rationale": "test-only parked terminal flush seam, not a user-facing SDK control seam",
2916
+ "exclusionMetadata": {
2917
+ "adapterMappings": "not_applicable",
2918
+ "testIds": "not_applicable"
2919
+ }
2920
+ },
2848
2921
  {
2849
2922
  "sourceId": "agent_session:drainAsyncJobDeliveriesForAcp",
2850
2923
  "sourceFile": "packages/coding-agent/src/session/agent-session.ts",
@@ -2987,6 +3060,17 @@
2987
3060
  "testIds": "not_applicable"
2988
3061
  }
2989
3062
  },
3063
+ {
3064
+ "sourceId": "agent_session:onJobFold",
3065
+ "sourceFile": "packages/coding-agent/src/session/agent-session.ts",
3066
+ "sourceKind": "agent_session",
3067
+ "decision": "exclude",
3068
+ "rationale": "internal fold-event plumbing feeding the bash_folded event frame, not a control seam",
3069
+ "exclusionMetadata": {
3070
+ "adapterMappings": "not_applicable",
3071
+ "testIds": "not_applicable"
3072
+ }
3073
+ },
2990
3074
  {
2991
3075
  "sourceId": "agent_session:requestForegroundBashBackground",
2992
3076
  "sourceFile": "packages/coding-agent/src/session/agent-session.ts",
@@ -2998,6 +3082,24 @@
2998
3082
  "testIds": "not_applicable"
2999
3083
  }
3000
3084
  },
3085
+ {
3086
+ "sourceId": "agent_session:requestForegroundBashBackgroundOutcome",
3087
+ "sourceFile": "packages/coding-agent/src/session/agent-session.ts",
3088
+ "sourceKind": "agent_session",
3089
+ "decision": "include",
3090
+ "sdkId": "bash.background",
3091
+ "adapterMappings": {
3092
+ "telegram": "prohibited",
3093
+ "discord": "prohibited",
3094
+ "slack": "prohibited",
3095
+ "mcp": "generic_safe",
3096
+ "acp": "generic_safe",
3097
+ "daemonCli": "generic_safe"
3098
+ },
3099
+ "testIds": [
3100
+ "packages/coding-agent/test/sdk-operation-inventory.test.ts"
3101
+ ]
3102
+ },
3001
3103
  {
3002
3104
  "sourceId": "agent_session:getAllToolNames",
3003
3105
  "sourceFile": "packages/coding-agent/src/session/agent-session.ts",
@@ -4681,11 +4783,11 @@
4681
4783
  ]
4682
4784
  },
4683
4785
  {
4684
- "sourceId": "agent_session:setInterruptMode",
4786
+ "sourceId": "agent_session:setToolInterruptPolicy",
4685
4787
  "sourceFile": "packages/coding-agent/src/session/agent-session.ts",
4686
4788
  "sourceKind": "agent_session",
4687
4789
  "decision": "include",
4688
- "sdkId": "queue.interrupt_mode.set",
4790
+ "sdkId": "queue.tool_interrupt_policy.set",
4689
4791
  "adapterMappings": {
4690
4792
  "telegram": "generic_safe",
4691
4793
  "discord": "generic_safe",
@@ -91,7 +91,7 @@ const controls = [
91
91
  ["permission_mode.set", "Set permission mode."],
92
92
  ["queue.steering_mode.set", "Set steering queue mode."],
93
93
  ["queue.follow_up_mode.set", "Set follow-up queue mode."],
94
- ["queue.interrupt_mode.set", "Set interrupt queue mode."],
94
+ ["queue.tool_interrupt_policy.set", "Set whether a steer aborts or finishes in-flight tools."],
95
95
  ["compaction.run", "Run context compaction."],
96
96
  ["compaction.auto.set", "Set automatic compaction."],
97
97
  ["retry.auto.set", "Set automatic retry."],
@@ -136,6 +136,7 @@ const globals = [
136
136
  ["session.close", "Close a saved session."],
137
137
  ["session.delete", "Delete a saved session."],
138
138
  ["session.reconcile_uncertain", "Retire an indexed terminalUncertain create effect after dead-host proof."],
139
+ ["session.spawn", "Spawn a task-seeded background child session (local interactive master only)."],
139
140
  ] as const;
140
141
 
141
142
  const queries = [
@@ -353,9 +354,18 @@ export const OPERATIONS: readonly Operation[] = [
353
354
  acp: "machine_only",
354
355
  daemonCli: "machine_only",
355
356
  })
356
- : ["G03", "G04", "G05", "G06", "G07", "G08"].includes(id)
357
- ? dispositions({ telegram: "prohibited", discord: "prohibited", slack: "prohibited" })
358
- : dispositions(),
357
+ : id === "G09"
358
+ ? dispositions({
359
+ telegram: "prohibited",
360
+ discord: "prohibited",
361
+ slack: "prohibited",
362
+ mcp: "prohibited",
363
+ acp: "prohibited",
364
+ daemonCli: "prohibited",
365
+ })
366
+ : ["G03", "G04", "G05", "G06", "G07", "G08"].includes(id)
367
+ ? dispositions({ telegram: "prohibited", discord: "prohibited", slack: "prohibited" })
368
+ : dispositions(),
359
369
  testIds: ["packages/coding-agent/test/sdk-operation-inventory.test.ts"],
360
370
  };
361
371
  }),
@@ -25,6 +25,16 @@ export function receiptStateForTerminal(source: ReceiptSource): Extract<ReceiptS
25
25
  return reportableReceipt(source) ? "present" : "missing";
26
26
  }
27
27
 
28
+ /** Terminal receipt evidence is monotonic: present > missing > unknown. */
29
+ export function reduceReceiptState(
30
+ existing: Exclude<ReceiptState, "absent"> | undefined,
31
+ incoming: Exclude<ReceiptState, "absent"> | undefined,
32
+ ): Exclude<ReceiptState, "absent"> | undefined {
33
+ if (existing === "present" || incoming === "present") return "present";
34
+ if (existing === "missing" || incoming === "missing") return "missing";
35
+ return existing ?? incoming;
36
+ }
37
+
28
38
  export function reduceTerminalReceiptState(input: TerminalReceiptInput): TerminalReceiptState {
29
39
  switch (input.execution) {
30
40
  case "accepted":