@provos/ironcurtain 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/README.md +14 -12
  2. package/dist/cli.js +6 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/config/config-command.d.ts +33 -1
  5. package/dist/config/config-command.js +608 -11
  6. package/dist/config/config-command.js.map +1 -1
  7. package/dist/config/openrouter-catalog.d.ts +46 -0
  8. package/dist/config/openrouter-catalog.js +111 -0
  9. package/dist/config/openrouter-catalog.js.map +1 -0
  10. package/dist/config/openrouter-models-fallback.d.ts +15 -0
  11. package/dist/config/openrouter-models-fallback.js +49 -0
  12. package/dist/config/openrouter-models-fallback.js.map +1 -0
  13. package/dist/config/types.d.ts +8 -0
  14. package/dist/config/user-config.d.ts +133 -7
  15. package/dist/config/user-config.js +234 -5
  16. package/dist/config/user-config.js.map +1 -1
  17. package/dist/daemon/daemon-command.js.map +1 -1
  18. package/dist/daemon/ironcurtain-daemon.js +6 -0
  19. package/dist/daemon/ironcurtain-daemon.js.map +1 -1
  20. package/dist/docker/adapters/claude-code.js +109 -1
  21. package/dist/docker/adapters/claude-code.js.map +1 -1
  22. package/dist/docker/adapters/codex.d.ts +10 -1
  23. package/dist/docker/adapters/codex.js +99 -20
  24. package/dist/docker/adapters/codex.js.map +1 -1
  25. package/dist/docker/adapters/goose.js +38 -2
  26. package/dist/docker/adapters/goose.js.map +1 -1
  27. package/dist/docker/agent-adapter.d.ts +29 -5
  28. package/dist/docker/agent-registry.js +1 -1
  29. package/dist/docker/agent-registry.js.map +1 -1
  30. package/dist/docker/apple-container-manager.d.ts +4 -4
  31. package/dist/docker/apple-container-manager.js +44 -22
  32. package/dist/docker/apple-container-manager.js.map +1 -1
  33. package/dist/docker/ca.js +9 -2
  34. package/dist/docker/ca.js.map +1 -1
  35. package/dist/docker/container-lifecycle.js +9 -0
  36. package/dist/docker/container-lifecycle.js.map +1 -1
  37. package/dist/docker/docker-agent-session.d.ts +31 -0
  38. package/dist/docker/docker-agent-session.js +67 -6
  39. package/dist/docker/docker-agent-session.js.map +1 -1
  40. package/dist/docker/docker-infrastructure.d.ts +55 -15
  41. package/dist/docker/docker-infrastructure.js +261 -61
  42. package/dist/docker/docker-infrastructure.js.map +1 -1
  43. package/dist/docker/docker-manager.js +127 -0
  44. package/dist/docker/docker-manager.js.map +1 -1
  45. package/dist/docker/docker-resource-lifecycle.d.ts +71 -0
  46. package/dist/docker/docker-resource-lifecycle.js +454 -0
  47. package/dist/docker/docker-resource-lifecycle.js.map +1 -0
  48. package/dist/docker/gc-command.d.ts +2 -0
  49. package/dist/docker/gc-command.js +37 -0
  50. package/dist/docker/gc-command.js.map +1 -0
  51. package/dist/docker/mitm-proxy.d.ts +6 -4
  52. package/dist/docker/mitm-proxy.js +105 -17
  53. package/dist/docker/mitm-proxy.js.map +1 -1
  54. package/dist/docker/network-topology.d.ts +16 -9
  55. package/dist/docker/network-topology.js +17 -10
  56. package/dist/docker/network-topology.js.map +1 -1
  57. package/dist/docker/openrouter.d.ts +107 -0
  58. package/dist/docker/openrouter.js +236 -0
  59. package/dist/docker/openrouter.js.map +1 -0
  60. package/dist/docker/orientation.js +1 -1
  61. package/dist/docker/orientation.js.map +1 -1
  62. package/dist/docker/platform.d.ts +3 -1
  63. package/dist/docker/platform.js +3 -1
  64. package/dist/docker/platform.js.map +1 -1
  65. package/dist/docker/provider-config.d.ts +6 -0
  66. package/dist/docker/provider-config.js.map +1 -1
  67. package/dist/docker/pty-session.d.ts +7 -0
  68. package/dist/docker/pty-session.js +111 -29
  69. package/dist/docker/pty-session.js.map +1 -1
  70. package/dist/docker/pty-types.d.ts +15 -0
  71. package/dist/docker/pty-types.js +8 -0
  72. package/dist/docker/pty-types.js.map +1 -1
  73. package/dist/docker/sse-extractor.js +55 -5
  74. package/dist/docker/sse-extractor.js.map +1 -1
  75. package/dist/docker/stream-delay.d.ts +86 -0
  76. package/dist/docker/stream-delay.js +218 -0
  77. package/dist/docker/stream-delay.js.map +1 -0
  78. package/dist/docker/token-stream-types.d.ts +15 -0
  79. package/dist/docker/trajectory-reassembler.d.ts +2 -2
  80. package/dist/docker/trajectory-reassembler.js +22 -2
  81. package/dist/docker/trajectory-reassembler.js.map +1 -1
  82. package/dist/docker/trajectory-tap.js +2 -2
  83. package/dist/docker/trajectory-tap.js.map +1 -1
  84. package/dist/docker/types.d.ts +63 -5
  85. package/dist/doctor/checks.d.ts +3 -3
  86. package/dist/doctor/checks.js +28 -11
  87. package/dist/doctor/checks.js.map +1 -1
  88. package/dist/doctor/doctor-command.js +1 -1
  89. package/dist/doctor/doctor-command.js.map +1 -1
  90. package/dist/escalation/escalation-watcher.js +6 -0
  91. package/dist/escalation/escalation-watcher.js.map +1 -1
  92. package/dist/{mux → escalation}/trusted-input.d.ts +7 -4
  93. package/dist/{mux → escalation}/trusted-input.js +8 -5
  94. package/dist/escalation/trusted-input.js.map +1 -0
  95. package/dist/hash.js.map +1 -1
  96. package/dist/index.js +37 -6
  97. package/dist/index.js.map +1 -1
  98. package/dist/mux/mux-app.d.ts +7 -0
  99. package/dist/mux/mux-app.js +17 -16
  100. package/dist/mux/mux-app.js.map +1 -1
  101. package/dist/mux/mux-command.js +8 -3
  102. package/dist/mux/mux-command.js.map +1 -1
  103. package/dist/mux/mux-input-handler.d.ts +26 -2
  104. package/dist/mux/mux-input-handler.js +93 -11
  105. package/dist/mux/mux-input-handler.js.map +1 -1
  106. package/dist/mux/mux-renderer.d.ts +2 -1
  107. package/dist/mux/mux-renderer.js +67 -0
  108. package/dist/mux/mux-renderer.js.map +1 -1
  109. package/dist/mux/provider-profile-snapshot.d.ts +44 -0
  110. package/dist/mux/provider-profile-snapshot.js +56 -0
  111. package/dist/mux/provider-profile-snapshot.js.map +1 -0
  112. package/dist/mux/types.d.ts +3 -2
  113. package/dist/mux/types.js +6 -2
  114. package/dist/mux/types.js.map +1 -1
  115. package/dist/observe/observe-command.js.map +1 -1
  116. package/dist/pipeline/constitution-compiler.js.map +1 -1
  117. package/dist/pipeline/generate-with-repair.js.map +1 -1
  118. package/dist/pipeline/refresh-lists.js.map +1 -1
  119. package/dist/pipeline/scenario-schema-validator.js.map +1 -1
  120. package/dist/{mux → pty}/pty-bridge.d.ts +39 -3
  121. package/dist/{mux → pty}/pty-bridge.js +68 -18
  122. package/dist/pty/pty-bridge.js.map +1 -0
  123. package/dist/pty/resolve-ironcurtain-bin.d.ts +17 -0
  124. package/dist/pty/resolve-ironcurtain-bin.js +22 -0
  125. package/dist/pty/resolve-ironcurtain-bin.js.map +1 -0
  126. package/dist/servers/fetch-server.js +2 -0
  127. package/dist/servers/fetch-server.js.map +1 -1
  128. package/dist/session/index.d.ts +1 -1
  129. package/dist/session/index.js +11 -2
  130. package/dist/session/index.js.map +1 -1
  131. package/dist/session/preflight.d.ts +19 -5
  132. package/dist/session/preflight.js +41 -25
  133. package/dist/session/preflight.js.map +1 -1
  134. package/dist/session/resource-budget-tracker.js +8 -0
  135. package/dist/session/resource-budget-tracker.js.map +1 -1
  136. package/dist/session/session-manager.d.ts +7 -0
  137. package/dist/session/session-manager.js.map +1 -1
  138. package/dist/session/types.d.ts +14 -0
  139. package/dist/signal/signal-bot-daemon.d.ts +1 -0
  140. package/dist/signal/signal-bot-daemon.js +9 -2
  141. package/dist/signal/signal-bot-daemon.js.map +1 -1
  142. package/dist/trusted-process/mcp-error-utils.js +4 -1
  143. package/dist/trusted-process/mcp-error-utils.js.map +1 -1
  144. package/dist/trusted-process/mcp-proxy-server.js +2 -0
  145. package/dist/trusted-process/mcp-proxy-server.js.map +1 -1
  146. package/dist/trusted-process/policy-engine.js.map +1 -1
  147. package/dist/trusted-process/tcp-server-transport.d.ts +7 -0
  148. package/dist/trusted-process/tcp-server-transport.js +48 -10
  149. package/dist/trusted-process/tcp-server-transport.js.map +1 -1
  150. package/dist/utils/preflight-checks.js +1 -3
  151. package/dist/utils/preflight-checks.js.map +1 -1
  152. package/dist/utils/stdio-guard.d.ts +1 -0
  153. package/dist/utils/stdio-guard.js +27 -0
  154. package/dist/utils/stdio-guard.js.map +1 -0
  155. package/dist/web-ui/__tests__/config-dispatch.test.d.ts +13 -0
  156. package/dist/web-ui/__tests__/config-dispatch.test.js +383 -0
  157. package/dist/web-ui/__tests__/config-dispatch.test.js.map +1 -0
  158. package/dist/web-ui/__tests__/json-rpc-dispatch.test.js +6 -0
  159. package/dist/web-ui/__tests__/json-rpc-dispatch.test.js.map +1 -1
  160. package/dist/web-ui/dispatch/config-dispatch.d.ts +15 -0
  161. package/dist/web-ui/dispatch/config-dispatch.js +277 -0
  162. package/dist/web-ui/dispatch/config-dispatch.js.map +1 -0
  163. package/dist/web-ui/dispatch/escalation-dispatch.js +11 -2
  164. package/dist/web-ui/dispatch/escalation-dispatch.js.map +1 -1
  165. package/dist/web-ui/dispatch/pty-dispatch.d.ts +15 -0
  166. package/dist/web-ui/dispatch/pty-dispatch.js +66 -0
  167. package/dist/web-ui/dispatch/pty-dispatch.js.map +1 -0
  168. package/dist/web-ui/dispatch/session-dispatch.js +69 -4
  169. package/dist/web-ui/dispatch/session-dispatch.js.map +1 -1
  170. package/dist/web-ui/dispatch/types.d.ts +12 -0
  171. package/dist/web-ui/dispatch/types.js +38 -1
  172. package/dist/web-ui/dispatch/types.js.map +1 -1
  173. package/dist/web-ui/dispatch/workflow-dispatch.js.map +1 -1
  174. package/dist/web-ui/json-rpc-dispatch.js +3 -0
  175. package/dist/web-ui/json-rpc-dispatch.js.map +1 -1
  176. package/dist/web-ui/pty-session-manager.d.ts +234 -0
  177. package/dist/web-ui/pty-session-manager.js +599 -0
  178. package/dist/web-ui/pty-session-manager.js.map +1 -0
  179. package/dist/web-ui/web-event-bus.d.ts +9 -0
  180. package/dist/web-ui/web-event-bus.js.map +1 -1
  181. package/dist/web-ui/web-session-transport.js.map +1 -1
  182. package/dist/web-ui/web-ui-server.d.ts +8 -0
  183. package/dist/web-ui/web-ui-server.js +25 -0
  184. package/dist/web-ui/web-ui-server.js.map +1 -1
  185. package/dist/web-ui/web-ui-types.d.ts +80 -1
  186. package/dist/web-ui/web-ui-types.js.map +1 -1
  187. package/dist/web-ui-static/assets/index-CCVI4nEK.css +1 -0
  188. package/dist/web-ui-static/assets/index-Dm012gvY.js +114 -0
  189. package/dist/web-ui-static/index.html +2 -2
  190. package/dist/workflow/daemon-gate-commands.js +38 -42
  191. package/dist/workflow/daemon-gate-commands.js.map +1 -1
  192. package/dist/workflow/machine-builder.js.map +1 -1
  193. package/dist/workflow/orchestrator.js +10 -7
  194. package/dist/workflow/orchestrator.js.map +1 -1
  195. package/dist/workflow/shutdown-signals.d.ts +7 -0
  196. package/dist/workflow/shutdown-signals.js +40 -0
  197. package/dist/workflow/shutdown-signals.js.map +1 -0
  198. package/dist/workflow/validate.js.map +1 -1
  199. package/dist/workflow/workflow-command.js +10 -8
  200. package/dist/workflow/workflow-command.js.map +1 -1
  201. package/dist/workflow/workflows/evolve/README.md +66 -0
  202. package/dist/workflow/workflows/vuln-discovery/README.md +54 -0
  203. package/docker/entrypoint-claude-code.sh +22 -0
  204. package/package.json +31 -27
  205. package/src/workflow/workflows/evolve/README.md +66 -0
  206. package/src/workflow/workflows/vuln-discovery/README.md +54 -0
  207. package/dist/mux/pty-bridge.js.map +0 -1
  208. package/dist/mux/trusted-input.js.map +0 -1
  209. package/dist/web-ui-static/assets/index-BD5U6ILh.css +0 -1
  210. package/dist/web-ui-static/assets/index-FMsHWEfK.js +0 -79
  211. package/packages/web-ui/README.md +0 -113
@@ -17,8 +17,10 @@
17
17
  * - Provider-specific credential detection (not Anthropic-only)
18
18
  */
19
19
  import { randomBytes } from 'node:crypto';
20
+ import { DEFAULT_GLM_SLUG, OPENROUTER_HOST } from '../../config/user-config.js';
20
21
  import { anthropicProvider, openaiProvider, googleProvider } from '../provider-config.js';
21
22
  import { buildSystemPrompt } from '../../session/prompts.js';
23
+ import { makeOpenRouterProviderForProfile, openRouterCredential, resolveMappedModel } from '../openrouter.js';
22
24
  import { resolveApiKeyForProvider } from '../../config/model-provider.js';
23
25
  import { buildResizePtyScript, buildCheckPtySizeScript, buildNetworkSection, buildPolicySection, buildAttributionSection, } from './shared-scripts.js';
24
26
  const GOOSE_IMAGE = 'ironcurtain-goose:latest';
@@ -219,12 +221,40 @@ export function createGooseAdapter(userConfig) {
219
221
  return `${codeModePrompt}\n${dockerPrompt}`;
220
222
  },
221
223
  // eslint-disable-next-line @typescript-eslint/no-unused-vars -- interface requires authKind parameter
222
- getProviders(_authKind) {
224
+ getProviders(config, _authKind) {
225
+ const profile = config.activeProviderProfile;
226
+ if (profile?.type === 'openrouter') {
227
+ // OpenRouter routing replaces the single native provider. Goose speaks
228
+ // the OpenAI chat wire format.
229
+ return [makeOpenRouterProviderForProfile('chat', profile, 'goose')];
230
+ }
223
231
  // Goose uses exactly one provider based on user config.
224
232
  // The authKind parameter is ignored because Goose does not support OAuth.
225
233
  return [getProviderConfig(gooseProvider)];
226
234
  },
227
- buildEnv(_config, fakeKeys) {
235
+ buildEnv(config, fakeKeys) {
236
+ const profile = config.activeProviderProfile;
237
+ if (profile?.type === 'openrouter') {
238
+ // OpenRouter mode: Goose's native OpenRouter provider. The provider
239
+ // union used inside the adapter widens to 'openrouter' (the config-level
240
+ // GOOSE_PROVIDERS enum is unchanged — routing is driven by the active
241
+ // profile, not gooseProvider). GOOSE_MODEL is the resolved slug (D2):
242
+ // perAgent.goose ?? glob-map(gooseModel) ?? DEFAULT_GLM_SLUG.
243
+ const fakeKey = fakeKeys.get(OPENROUTER_HOST);
244
+ if (!fakeKey) {
245
+ throw new Error(`No fake key generated for ${OPENROUTER_HOST}`);
246
+ }
247
+ const gooseSlug = profile.perAgent.goose ?? resolveMappedModel(gooseModel, profile.modelMap) ?? DEFAULT_GLM_SLUG;
248
+ return {
249
+ GOOSE_PROVIDER: 'openrouter',
250
+ GOOSE_MODEL: gooseSlug,
251
+ GOOSE_MODE: 'auto',
252
+ GOOSE_MAX_TURNS: '200',
253
+ OPENROUTER_API_KEY: fakeKey,
254
+ SSL_CERT_FILE: '/etc/ssl/certs/ca-certificates.crt',
255
+ SSL_CERT_DIR: '/etc/ssl/certs',
256
+ };
257
+ }
228
258
  const env = {
229
259
  GOOSE_PROVIDER: gooseProvider,
230
260
  GOOSE_MODEL: gooseModel,
@@ -292,6 +322,12 @@ export function createGooseAdapter(userConfig) {
292
322
  return ['socat', listenArg, 'EXEC:/etc/ironcurtain/start-goose.sh,pty,setsid,ctty,stderr,rawer'];
293
323
  },
294
324
  detectCredential(config) {
325
+ // OpenRouter mode: credential presence is the profile's non-empty apiKey;
326
+ // empty ⇒ 'none' (feeds m5). Native ⇒ undefined, so fall through to the
327
+ // goose provider's API-key detection.
328
+ const openRouter = openRouterCredential(config);
329
+ if (openRouter)
330
+ return openRouter;
295
331
  const key = resolveApiKeyForProvider(gooseProvider, config.userConfig);
296
332
  if (key)
297
333
  return { kind: 'apikey', key };
@@ -1 +1 @@
1
- {"version":3,"file":"goose.js","sourceRoot":"","sources":["../../../src/docker/adapters/goose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"goose.js","sourceRoot":"","sources":["../../../src/docker/adapters/goose.ts"],"names":[],"mappings":"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"}
@@ -192,13 +192,25 @@ export interface AgentAdapter {
192
192
  * May trigger a build if the image doesn't exist yet.
193
193
  */
194
194
  getImage(): Promise<string>;
195
+ /**
196
+ * Command that prints the installed agent CLI version, run against the built
197
+ * image via {@link ContainerRuntime.probeImageVersion} (e.g.
198
+ * `['claude', '--version']`). The agent CLI is installed UNPINNED in the image,
199
+ * so infra prep logs the resolved version to surface silent drift on rebuild
200
+ * (issue #367). Omit to skip version logging for this adapter.
201
+ */
202
+ readonly versionProbe?: readonly string[];
195
203
  /**
196
204
  * Generates the MCP client configuration file that tells
197
205
  * the agent how to connect to IronCurtain's proxy.
198
206
  *
199
207
  * @param socketPath - container-side UDS path (e.g., /run/ironcurtain/proxy.sock)
208
+ * @param config - per-session config. Codex reads `config.activeProviderProfile`
209
+ * to decide whether to emit the OpenRouter TOML root keys + provider table
210
+ * (§9.2). The profile MUST come from the per-session stamped `config`, never
211
+ * from a factory-captured value (§9 F1).
200
212
  */
201
- generateMcpConfig(socketPath: string): AgentConfigFile[];
213
+ generateMcpConfig(socketPath: string, config: IronCurtainConfig): AgentConfigFile[];
202
214
  /**
203
215
  * Generates orientation documents that teach the agent about
204
216
  * the MCP-mediated environment.
@@ -235,10 +247,14 @@ export interface AgentAdapter {
235
247
  * The MITM proxy uses these to build the host allowlist,
236
248
  * generate fake API keys, swap keys in requests, and filter endpoints.
237
249
  *
250
+ * @param config - per-session config. Adapters read `config.activeProviderProfile`
251
+ * to decide whether to return the OpenRouter provider or the native providers.
252
+ * The profile MUST come from the per-session stamped `config`, never from a
253
+ * factory-captured value (§9 F1).
238
254
  * @param authKind - When 'oauth', returns providers configured for bearer
239
255
  * token injection instead of header-based API key injection.
240
256
  */
241
- getProviders(authKind?: DockerAuthKind): readonly ProviderConfig[];
257
+ getProviders(config: IronCurtainConfig, authKind?: DockerAuthKind): readonly ProviderConfig[];
242
258
  /**
243
259
  * Constructs environment variables for the container.
244
260
  * Receives fake keys instead of real keys -- the real keys never
@@ -280,10 +296,18 @@ export interface AgentAdapter {
280
296
  buildPtyCommand?(systemPrompt: string, ptySockPath: string | undefined, ptyPort: number | undefined): readonly string[];
281
297
  /**
282
298
  * Detects available credentials for this agent.
283
- * When not implemented, prepareDockerInfrastructure() falls back to
284
- * detectAuthMethod() (Anthropic OAuth + API key detection).
299
+ *
300
+ * When not implemented OR when it returns `undefined` —
301
+ * prepareDockerInfrastructure() falls back to detectAuthMethod()
302
+ * (Anthropic OAuth + API key detection). Returning `undefined` lets an
303
+ * adapter handle only a subset of cases (e.g. Claude Code returns an
304
+ * api-key AuthMethod for an OpenRouter-only profile via B2a, but returns
305
+ * `undefined` for a native profile to preserve today's OAuth+API-key
306
+ * detection path). Returning `{ kind: 'none' }` is a DEFINITIVE "no
307
+ * credentials" that makes infra prep throw — distinct from the
308
+ * fall-through `undefined`.
285
309
  */
286
- detectCredential?(config: IronCurtainConfig): AuthMethod;
310
+ detectCredential?(config: IronCurtainConfig): AuthMethod | undefined;
287
311
  /**
288
312
  * Error message to show when no credentials are detected.
289
313
  * When not set, the default Anthropic-oriented message is used.
@@ -43,7 +43,7 @@ export async function registerBuiltinAdapters(userConfig) {
43
43
  }
44
44
  if (!registry.has('codex')) {
45
45
  const { createCodexAdapter } = await import('./adapters/codex.js');
46
- const codexAdapter = createCodexAdapter();
46
+ const codexAdapter = createCodexAdapter(userConfig);
47
47
  registry.set(codexAdapter.id, codexAdapter);
48
48
  }
49
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-registry.js","sourceRoot":"","sources":["../../src/docker/agent-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;AAElD,MAAM,UAAU,aAAa,CAAC,OAAqB;IACjD,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EAAW;IAClC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,kBAAkB,EAAE,gBAAgB,SAAS,IAAI,MAAM,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAA+B;IAC3E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAwB,CAAC,EAAE,CAAC;QAC5C,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAC9E,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAC9D,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAkB,CAAC,EAAE,CAAC;QACtC,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACpD,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAkB,CAAC,EAAE,CAAC;QACtC,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;QAC1C,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"agent-registry.js","sourceRoot":"","sources":["../../src/docker/agent-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;AAElD,MAAM,UAAU,aAAa,CAAC,OAAqB;IACjD,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EAAW;IAClC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,kBAAkB,EAAE,gBAAgB,SAAS,IAAI,MAAM,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAA+B;IAC3E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAwB,CAAC,EAAE,CAAC;QAC5C,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAC9E,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAC9D,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAkB,CAAC,EAAE,CAAC;QACtC,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACpD,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAkB,CAAC,EAAE,CAAC;QACtC,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACpD,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC"}
@@ -40,10 +40,10 @@ export declare function checkAppleContainerAvailable(execFileFn?: ExecFileFn, ho
40
40
  * Builds the `container create` argument list from a container config.
41
41
  * Exported for testing.
42
42
  *
43
- * Configs that encode Docker-only mechanisms (`extraHosts`, `restartPolicy`,
44
- * `network: 'none'`) throw rather than being silently dropped: they only
45
- * occur on the Docker-specific topologies, and reaching here with one set
46
- * means a wiring bug, not a portable request.
43
+ * Configs that encode Docker-only mechanisms (`extraHosts`, `restartPolicy`)
44
+ * throw rather than being silently dropped: they only occur on the
45
+ * Docker-specific topologies, and reaching here with one set means a
46
+ * wiring bug, not a portable request.
47
47
  */
48
48
  export declare function buildAppleCreateArgs(config: DockerContainerConfig): string[];
49
49
  export declare function createAppleContainerManager(execFileFn?: ExecFileFn, availabilityProbe?: (execFileFn?: ExecFileFn) => Promise<DockerAvailability>, spawnOpts?: CreateDockerManagerOptions): ContainerRuntime;
@@ -28,8 +28,15 @@ import { defaultExecFile, DEFAULT_EXEC_TIMEOUT_MS, PULL_IDLE_TIMEOUT_MS, BUILD_I
28
28
  import { createDockerProgressSink } from './docker-progress-sink.js';
29
29
  /** Grace period for `container stop` before the runtime kills the VM. */
30
30
  const STOP_TIMEOUT_SECONDS = 10;
31
- /** Minimum supported `container` CLI major version (1.0.0 stability line). */
31
+ /**
32
+ * Minimum supported `container` CLI version. 1.1.0 is the floor for the
33
+ * `uds` topology this backend now uses: it adds working per-file UDS
34
+ * relays via `-v <host.sock>:<guest.sock>` (host-listens / guest-connects
35
+ * over vsock) and a functional `--network none`. 1.0.x lacks both and
36
+ * would need the retired `tcp-hostonly` topology.
37
+ */
32
38
  const MIN_MAJOR_VERSION = 1;
39
+ const MIN_MINOR_VERSION = 1;
33
40
  /**
34
41
  * Minimum Darwin kernel major for macOS 26. The `container network`
35
42
  * commands this backend depends on do not function on macOS 15 (Darwin 24).
@@ -86,11 +93,13 @@ export async function checkAppleContainerAvailable(execFileFn = defaultExecFile,
86
93
  }
87
94
  const match = /version\s+(\d+)\.(\d+)\.(\d+)/.exec(versionLine);
88
95
  const major = match ? Number.parseInt(match[1], 10) : 0;
89
- if (!match || major < MIN_MAJOR_VERSION) {
96
+ const minor = match ? Number.parseInt(match[2], 10) : 0;
97
+ if (!match || major < MIN_MAJOR_VERSION || (major === MIN_MAJOR_VERSION && minor < MIN_MINOR_VERSION)) {
90
98
  return {
91
99
  available: false,
92
- reason: `container CLI too old (need >= ${MIN_MAJOR_VERSION}.0.0)`,
93
- detailedMessage: `Found "${versionLine}" but IronCurtain requires the ${MIN_MAJOR_VERSION}.0.0 stability line. ` +
100
+ reason: `container CLI too old (need >= ${MIN_MAJOR_VERSION}.${MIN_MINOR_VERSION}.0)`,
101
+ detailedMessage: `Found "${versionLine}" but IronCurtain requires >= ${MIN_MAJOR_VERSION}.${MIN_MINOR_VERSION}.0 ` +
102
+ '(Unix-domain-socket relays and `--network none` for the UDS topology). ' +
94
103
  'Upgrade from https://github.com/apple/container/releases.',
95
104
  };
96
105
  }
@@ -110,21 +119,18 @@ export async function checkAppleContainerAvailable(execFileFn = defaultExecFile,
110
119
  * Builds the `container create` argument list from a container config.
111
120
  * Exported for testing.
112
121
  *
113
- * Configs that encode Docker-only mechanisms (`extraHosts`, `restartPolicy`,
114
- * `network: 'none'`) throw rather than being silently dropped: they only
115
- * occur on the Docker-specific topologies, and reaching here with one set
116
- * means a wiring bug, not a portable request.
122
+ * Configs that encode Docker-only mechanisms (`extraHosts`, `restartPolicy`)
123
+ * throw rather than being silently dropped: they only occur on the
124
+ * Docker-specific topologies, and reaching here with one set means a
125
+ * wiring bug, not a portable request.
117
126
  */
118
127
  export function buildAppleCreateArgs(config) {
119
128
  if (config.extraHosts && config.extraHosts.length > 0) {
120
- throw new Error('apple-container does not support extra host mappings (--add-host); use a host-only network');
129
+ throw new Error('apple-container does not support extra host mappings (--add-host)');
121
130
  }
122
131
  if (config.restartPolicy) {
123
132
  throw new Error('apple-container does not support restart policies');
124
133
  }
125
- if (config.network === 'none') {
126
- throw new Error("apple-container has no '--network=none'; use an --internal (host-only) network");
127
- }
128
134
  const args = ['create'];
129
135
  args.push('--name', config.name);
130
136
  args.push('--network', config.network);
@@ -158,14 +164,27 @@ export function buildAppleCreateArgs(config) {
158
164
  args.push('--cpus', String(config.resources.cpus));
159
165
  }
160
166
  for (const mount of config.mounts) {
161
- // `--mount` is the only syntax with an explicit readonly option. Its
162
- // comma/equals-separated format has no escaping, so reject paths that
163
- // would corrupt it rather than emit a wrong mount.
164
- if (/[,=]/.test(mount.source) || /[,=]/.test(mount.target)) {
165
- throw new Error(`mount path contains ',' or '=' which the --mount format cannot escape: ${mount.source}`);
167
+ // `-v` is the only mount syntax that handles directories, single
168
+ // files, AND Unix-domain sockets uniformly on 1.1.0+: a socket
169
+ // source becomes a vsock relay (host-listens / guest-connects), a
170
+ // file source is a virtiofs single-file share, a directory source
171
+ // is a virtiofs share. `--mount` still rejects non-directory
172
+ // sources, so we do not use it. The colon-separated format has no
173
+ // escaping — reject paths that would corrupt it rather than emit a
174
+ // wrong mount.
175
+ if (mount.source.includes(':') || mount.target.includes(':')) {
176
+ throw new Error(`mount path contains ':' which the -v format cannot escape (source=${mount.source}, target=${mount.target})`);
166
177
  }
167
- const readonlySuffix = mount.readonly ? ',readonly' : '';
168
- args.push('--mount', `source=${mount.source},target=${mount.target}${readonlySuffix}`);
178
+ const readonlySuffix = mount.readonly ? ':ro' : '';
179
+ args.push('-v', `${mount.source}:${mount.target}${readonlySuffix}`);
180
+ }
181
+ for (const publish of config.publishSockets ?? []) {
182
+ // Same colon-separated format as -v; same escaping rule.
183
+ if (publish.hostPath.includes(':') || publish.containerPath.includes(':')) {
184
+ throw new Error(`publish-socket path contains ':' which the format cannot escape ` +
185
+ `(hostPath=${publish.hostPath}, containerPath=${publish.containerPath})`);
186
+ }
187
+ args.push('--publish-socket', `${publish.hostPath}:${publish.containerPath}`);
169
188
  }
170
189
  for (const [key, value] of Object.entries(config.env)) {
171
190
  args.push('-e', `${key}=${value}`);
@@ -197,6 +216,7 @@ export function createAppleContainerManager(execFileFn, availabilityProbe = chec
197
216
  return firstInspectEntry(stdout);
198
217
  };
199
218
  return {
219
+ supportsImageSnapshots: false,
200
220
  async preflight(image) {
201
221
  const status = await availabilityProbe(execFileFn);
202
222
  if (!status.available) {
@@ -323,9 +343,8 @@ export function createAppleContainerManager(execFileFn, availabilityProbe = chec
323
343
  }
324
344
  },
325
345
  // Workflow snapshot/image management (commit, removeImage, listImages,
326
- // inspectImage) is Docker-only. The orchestrator's snapshot paths call
327
- // createDockerManager() directly, so these are never reached on the
328
- // apple-container backend; reject loudly rather than degrade silently.
346
+ // inspectImage) is runtime-capability gated. Reject loudly if these methods
347
+ // are reached on the apple-container backend instead of degrading silently.
329
348
  commit: () => unsupported('image commit (workflow snapshots)'),
330
349
  removeImage: () => unsupported('image removal'),
331
350
  listImages: () => unsupported('image listing'),
@@ -343,6 +362,9 @@ export function createAppleContainerManager(execFileFn, availabilityProbe = chec
343
362
  if (options?.gateway) {
344
363
  throw new Error('apple-container networks do not support an explicit gateway; the runtime assigns it');
345
364
  }
365
+ if (options?.labels && Object.keys(options.labels).length > 0) {
366
+ throw new Error('apple-container networks do not support labels');
367
+ }
346
368
  try {
347
369
  const args = ['network', 'create'];
348
370
  if (options?.internal)
@@ -1 +1 @@
1
- {"version":3,"file":"apple-container-manager.js","sourceRoot":"","sources":["../../src/docker/apple-container-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apple-container-manager.js","sourceRoot":"","sources":["../../src/docker/apple-container-manager.ts"],"names":[],"mappings":"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"}
package/dist/docker/ca.js CHANGED
@@ -71,7 +71,14 @@ function generateCA(certPath, keyPath) {
71
71
  }
72
72
  /** Generates a random serial number as a hex string. */
73
73
  export function randomSerialNumber() {
74
- const bytes = forge.random.getBytesSync(16);
75
- return forge.util.bytesToHex(bytes);
74
+ const hex = forge.util.bytesToHex(forge.random.getBytesSync(16));
75
+ // node-forge encodes the serial's bytes verbatim with no sign pad; a leading
76
+ // byte >= 0x80 becomes a NEGATIVE DER INTEGER, which strict OpenSSL (Node 22 /
77
+ // OpenSSL 3.0.x) rejects at cert-load with "asn1 …::illegal padding". Clear the
78
+ // high bit for a positive serial, and avoid a 0x00 leading byte (redundant pad).
79
+ let first = parseInt(hex.slice(0, 2), 16) & 0x7f;
80
+ if (first === 0)
81
+ first = 0x01;
82
+ return first.toString(16).padStart(2, '0') + hex.slice(2);
76
83
  }
77
84
  //# sourceMappingURL=ca.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ca.js","sourceRoot":"","sources":["../../src/docker/ca.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ca.js","sourceRoot":"","sources":["../../src/docker/ca.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * Shared container lifecycle helpers used by both DockerAgentSession and
3
3
  * runPtySession to avoid duplicating stop/remove/network-cleanup logic.
4
4
  */
5
+ import * as logger from '../logger.js';
5
6
  /**
6
7
  * Stop and remove Docker containers and their per-session network in parallel.
7
8
  * Best-effort: individual failures are swallowed so one broken container
@@ -24,9 +25,17 @@ export async function cleanupContainers(docker, opts) {
24
25
  .catch(() => { }));
25
26
  }
26
27
  await Promise.all(cleanups);
28
+ for (const id of [opts.containerId, opts.sidecarContainerId]) {
29
+ if (id && (await docker.containerExists(id))) {
30
+ logger.warn(`cleanupContainers: container ${id} still exists after removal`);
31
+ }
32
+ }
27
33
  // Remove per-session internal network after both containers are gone
28
34
  if (opts.networkName !== null) {
29
35
  await docker.removeNetwork(opts.networkName).catch(() => { });
36
+ if (docker.networkExists && (await docker.networkExists(opts.networkName))) {
37
+ logger.warn(`cleanupContainers: network ${opts.networkName} still exists after removal`);
38
+ }
30
39
  }
31
40
  }
32
41
  //# sourceMappingURL=container-lifecycle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"container-lifecycle.js","sourceRoot":"","sources":["../../src/docker/container-lifecycle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAwB,EACxB,IAIC;IAED,MAAM,QAAQ,GAAoB,EAAE,CAAC;IAErC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7B,QAAQ,CAAC,IAAI,CACX,MAAM;aACH,IAAI,CAAC,GAAG,CAAC;aACT,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC9B,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CACnB,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACpC,QAAQ,CAAC,IAAI,CACX,MAAM;aACH,IAAI,CAAC,GAAG,CAAC;aACT,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC9B,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CACnB,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE5B,qEAAqE;IACrE,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAC9B,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"container-lifecycle.js","sourceRoot":"","sources":["../../src/docker/container-lifecycle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AAEvC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAwB,EACxB,IAIC;IAED,MAAM,QAAQ,GAAoB,EAAE,CAAC;IAErC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7B,QAAQ,CAAC,IAAI,CACX,MAAM;aACH,IAAI,CAAC,GAAG,CAAC;aACT,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC9B,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CACnB,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC;QACpC,QAAQ,CAAC,IAAI,CACX,MAAM;aACH,IAAI,CAAC,GAAG,CAAC;aACT,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC9B,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CACnB,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE5B,KAAK,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC7D,IAAI,EAAE,IAAI,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,6BAA6B,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;QAC9B,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC7D,IAAI,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YAC3E,MAAM,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,WAAW,6BAA6B,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -115,6 +115,19 @@ export declare class DockerAgentSession implements Session {
115
115
  private auditTailer;
116
116
  private cumulativeActiveMs;
117
117
  private cumulativeCostUsd;
118
+ /**
119
+ * Cumulative authoritative USD cost, summed from OpenRouter `usage.cost`
120
+ * values surfaced on the token-stream bus (`message_end` events) for this
121
+ * session id (§10, D6). This is ground truth for the Anthropic-skin path:
122
+ * Claude Code's own `total_cost_usd` self-report is wrong when routed to a
123
+ * non-Anthropic model. Preferred over the CLI self-report only when the
124
+ * active profile is openrouter-type AND this sum is > 0 (see
125
+ * `resolveCostUsd`). Populated by the token-stream subscription installed in
126
+ * `initialize()`.
127
+ */
128
+ private authoritativeCostUsd;
129
+ /** Unsubscribe handle for the token-stream cost subscription. */
130
+ private unsubscribeCostStream;
118
131
  private readonly onEscalation?;
119
132
  private readonly onEscalationExpired?;
120
133
  private readonly onEscalationResolved?;
@@ -162,6 +175,24 @@ export declare class DockerAgentSession implements Session {
162
175
  whitelistSelection?: number;
163
176
  }): Promise<void>;
164
177
  close(): Promise<void>;
178
+ /**
179
+ * Resolve the cumulative session cost, applying the D6 fallback order
180
+ * (§10): authoritative summed `usage.cost` → CLI self-reported `costUsd`
181
+ * → static estimate.
182
+ *
183
+ * The authoritative sum (from OpenRouter `usage.cost` on the token-stream
184
+ * bus) is ground truth and is preferred ONLY when the active profile is
185
+ * openrouter-type AND the sum is > 0 — Claude Code's `total_cost_usd` is
186
+ * wrong when routed to a non-Anthropic model. For native profiles, or when
187
+ * no authoritative cost was observed, the CLI self-report is used. When
188
+ * neither is available, the prior cumulative value is retained (the Docker
189
+ * session has no per-turn token counts to compute a fresh static estimate).
190
+ *
191
+ * Both the authoritative sum and the CLI `costUsd` are cumulative session
192
+ * totals, so this returns the value to *assign* (not add) to
193
+ * `cumulativeCostUsd`.
194
+ */
195
+ private resolveCostUsd;
165
196
  private emitDiagnostic;
166
197
  private writeUserContext;
167
198
  }