@mcoda/mswarm 0.1.135-codali.2 → 0.1.135-codali.6

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 (39) hide show
  1. package/dist/vendor/codali/cli/TerminalCommand.d.ts.map +1 -1
  2. package/dist/vendor/codali/cli/TerminalCommand.js +4 -2
  3. package/dist/vendor/codali/cli/TerminalCredentials.js +2 -2
  4. package/dist/vendor/codali/eval/TerminalWorkflowCorpus.d.ts +1 -1
  5. package/dist/vendor/codali/eval/TerminalWorkflowCorpus.js +2 -2
  6. package/dist/vendor/codali/providers/ConfiguredModelScope.d.ts +1 -0
  7. package/dist/vendor/codali/providers/ConfiguredModelScope.d.ts.map +1 -1
  8. package/dist/vendor/codali/providers/ConfiguredModelScope.js +4 -0
  9. package/dist/vendor/codali/providers/ConfiguredProvider.d.ts +2 -0
  10. package/dist/vendor/codali/providers/ConfiguredProvider.d.ts.map +1 -1
  11. package/dist/vendor/codali/providers/ConfiguredProvider.js +16 -3
  12. package/dist/vendor/codali/providers/ProviderTypes.d.ts +2 -0
  13. package/dist/vendor/codali/providers/ProviderTypes.d.ts.map +1 -1
  14. package/dist/vendor/codali/providers/RequestUsage.d.ts +11 -0
  15. package/dist/vendor/codali/providers/RequestUsage.d.ts.map +1 -0
  16. package/dist/vendor/codali/providers/RequestUsage.js +33 -0
  17. package/dist/vendor/codali/runtime/SessionController.d.ts +1 -0
  18. package/dist/vendor/codali/runtime/SessionController.d.ts.map +1 -1
  19. package/dist/vendor/codali/runtime/SessionController.js +121 -20
  20. package/dist/vendor/codali/runtime/UsageReconciliation.d.ts +28 -0
  21. package/dist/vendor/codali/runtime/UsageReconciliation.d.ts.map +1 -0
  22. package/dist/vendor/codali/runtime/UsageReconciliation.js +68 -0
  23. package/dist/vendor/codali/runtime/VerificationCommand.d.ts +2 -0
  24. package/dist/vendor/codali/runtime/VerificationCommand.d.ts.map +1 -1
  25. package/dist/vendor/codali/runtime/VerificationCommand.js +28 -0
  26. package/dist/vendor/codali/session/AtomicState.d.ts.map +1 -1
  27. package/dist/vendor/codali/session/AtomicState.js +15 -1
  28. package/dist/vendor/codali/session/SessionStoragePath.d.ts.map +1 -1
  29. package/dist/vendor/codali/session/SessionStoragePath.js +28 -16
  30. package/dist/vendor/codali/tools/shell/AsyncProcess.d.ts +3 -0
  31. package/dist/vendor/codali/tools/shell/AsyncProcess.d.ts.map +1 -1
  32. package/dist/vendor/codali/tools/shell/AsyncProcess.js +1 -1
  33. package/dist/vendor/codali/tools/shell/HostToolchain.d.ts.map +1 -1
  34. package/dist/vendor/codali/tools/shell/HostToolchain.js +4 -2
  35. package/dist/vendor/codali/tools/shell/IsolatedExecutor.d.ts.map +1 -1
  36. package/dist/vendor/codali/tools/shell/IsolatedExecutor.js +5 -1
  37. package/package.json +3 -3
  38. package/scripts/media_gpu_lock.py +2 -2
  39. package/scripts/native_load_guard.py +257 -0
@@ -1 +1 @@
1
- {"version":3,"file":"TerminalCommand.d.ts","sourceRoot":"","sources":["../../src/cli/TerminalCommand.ts"],"names":[],"mappings":"AAKA,OAAO,EAA2E,KAAK,WAAW,EAA4B,KAAK,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAEzM,OAAO,EAAkB,KAAK,iBAAiB,EAAyB,MAAM,kCAAkC,CAAC;AAMjH,OAAO,EAAkC,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAI1F,OAAO,EAA2D,KAAK,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAOnI,UAAU,SAAS;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,CAAC;IAAC,WAAW,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAC;CAAE;AAC1U,MAAM,WAAW,YAAY;IAAG,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAAE;AAC9E,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,EAAE,KAAG,SAmBvD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAU,aAAa,MAAM,EAAE,UAAS;IAAE,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,sBAAsB,CAAC,CAAA;CAAO,KAAG,OAAO,CAAC,2BAA2B,CAqD5K,CAAC;AAOF,eAAO,MAAM,cAAc,GAAU,aAAa,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuBzF,CAAC;AAEF,qBAAa,eAAe;WACb,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;mBAUnD,OAAO;CAiI7B"}
1
+ {"version":3,"file":"TerminalCommand.d.ts","sourceRoot":"","sources":["../../src/cli/TerminalCommand.ts"],"names":[],"mappings":"AAKA,OAAO,EAA2E,KAAK,WAAW,EAA4B,KAAK,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAEzM,OAAO,EAAkB,KAAK,iBAAiB,EAAyB,MAAM,kCAAkC,CAAC;AAMjH,OAAO,EAAkC,KAAK,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAI1F,OAAO,EAA2D,KAAK,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAOnI,UAAU,SAAS;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,CAAC;IAAC,WAAW,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAC;CAAE;AAC1U,MAAM,WAAW,YAAY;IAAG,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAAE;AAC9E,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,EAAE,KAAG,SAmBvD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAU,aAAa,MAAM,EAAE,UAAS;IAAE,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,sBAAsB,CAAC,CAAA;CAAO,KAAG,OAAO,CAAC,2BAA2B,CAqD5K,CAAC;AAOF,eAAO,MAAM,cAAc,GAAU,aAAa,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuBzF,CAAC;AAEF,qBAAa,eAAe;WACb,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;mBAUnD,OAAO;CAoI7B"}
@@ -378,8 +378,10 @@ export class TerminalCommand {
378
378
  output(HELP);
379
379
  else if (name === "/status")
380
380
  output(controller.status());
381
- else if (name === "/usage")
382
- output({ session: controller.usageSnapshot(), server: await usageFor(resolved) });
381
+ else if (name === "/usage") {
382
+ const reconciliation = await controller.reconcileUsage();
383
+ output({ session: controller.usageSnapshot(), reconciliation, server: await usageFor(resolved) });
384
+ }
383
385
  else if (name === "/permissions") {
384
386
  if (value === "clear")
385
387
  await controller.clearPermissionGrants();
@@ -81,9 +81,9 @@ export const readTerminalCredential = async (fromStdin) => {
81
81
  }
82
82
  }
83
83
  };
84
- process.stderr.write("mSwarm API key: ");
85
84
  process.stdin.setRawMode(true);
86
- process.stdin.resume();
87
85
  process.stdin.on("data", onData);
86
+ process.stdin.resume();
87
+ process.stderr.write("mSwarm API key: ");
88
88
  });
89
89
  };
@@ -1,5 +1,5 @@
1
1
  import type { TerminalCorpusTask } from "./TerminalTaskCorpus.js";
2
- export declare const TERMINAL_WORKFLOW_CORPUS_VERSION = "terminal-workflows-v2";
2
+ export declare const TERMINAL_WORKFLOW_CORPUS_VERSION = "terminal-workflows-v3";
3
3
  export declare function terminalWorkflowCorpus(): TerminalCorpusTask[];
4
4
  export declare const terminalWorkflowCorpusHash: () => string;
5
5
  export declare const terminalWorkflowCorpusDefinition: () => {
@@ -32,7 +32,7 @@ const coding = [
32
32
  files: { "src/headers.mjs": "export const normalizeHeaders = entries => Object.fromEntries(entries);\n", "src/task.mjs": "export const buildRequest=(entries,body)=>({headers:Object.fromEntries(entries),body});\n" },
33
33
  reference: { "src/headers.mjs": "export function normalizeHeaders(entries){const out=Object.create(null);for(const [raw,value]of entries){if(typeof raw!=='string'||typeof value!=='string')throw new TypeError('strings');const name=raw.replace(/^[ \\t]+|[ \\t]+$/g,'').toLowerCase();if(!/^[!#$%&'*+.^_`|~0-9a-z-]+$/.test(name)||/[\\r\\n]/.test(value))throw new TypeError('header');const v=value.replace(/^[ \\t]+|[ \\t]+$/g,'');out[name]=Object.hasOwn(out,name)?out[name]+', '+v:v;}return out;}\n", "src/task.mjs": "import {normalizeHeaders} from './headers.mjs';\nexport const buildRequest=(entries,body)=>({headers:normalizeHeaders(entries),body});\n" },
34
34
  smoke: "assert.equal(m.buildRequest([['X-Id','a'],[' x-ID ','b']],null).headers['x-id'],'a, b');",
35
- checks: "const {normalizeHeaders}=await import('./src/headers.mjs');const body={};const h=m.buildRequest(Object.freeze([Object.freeze(['__proto__','ok'])]),body);assert.equal(Object.getPrototypeOf(h.headers),null);assert.equal(h.headers.__proto__,'ok');assert.equal(h.body,body);assert.equal(normalizeHeaders([['X',' a\\t'],['x','']]).x,'a, ');for(const name of ['','a:b','a b','é','\\nx'])assert.throws(()=>normalizeHeaders([[name,'x']]),TypeError);for(const v of ['a\\nb','a\\rb'])assert.throws(()=>normalizeHeaders([['x',v]]),TypeError);",
35
+ checks: "const {normalizeHeaders}=await import('./src/headers.mjs');const body={};const h=m.buildRequest(Object.freeze([Object.freeze(['__proto__','ok'])]),body);assert.equal(Object.getPrototypeOf(h.headers),null);assert.equal(h.headers.__proto__,'ok');assert.equal(h.body,body);assert.equal(normalizeHeaders([['X',' a\\t'],['x','']]).x,'a, ');for(const name of ['','a:b','a b','é','\\nx'])assert.throws(()=>normalizeHeaders([[name,'x']]));for(const v of ['a\\nb','a\\rb'])assert.throws(()=>normalizeHeaders([['x',v]]));",
36
36
  },
37
37
  {
38
38
  id: "async-worker-pool",
@@ -81,7 +81,7 @@ const reports = [
81
81
  files: { "src/cache.mjs": "const values=new Map();\nexport const get=(tenant,user)=>values.get(user);\nexport const set=(tenant,user,value)=>values.set(user,value);\n", "src/profile.mjs": "import {get} from './cache.mjs';\nexport const profile=(ctx,user)=>get(ctx.tenant,user);\n", "src/update.mjs": "import {set} from './cache.mjs';\nexport const update=(ctx,user,value)=>set(ctx.tenant,user,value);\n" },
82
82
  expected: { owner: "src/cache.mjs", callers: ["src/profile.mjs", "src/update.mjs"], isolation: "unsafe", cause: "tenant-omitted", remedy: "include-tenant-and-user" } },
83
83
  ];
84
- export const TERMINAL_WORKFLOW_CORPUS_VERSION = "terminal-workflows-v2";
84
+ export const TERMINAL_WORKFLOW_CORPUS_VERSION = "terminal-workflows-v3";
85
85
  export function terminalWorkflowCorpus() {
86
86
  const common = (id) => ({ "package.json": JSON.stringify({ name: `workflow-${id}`, private: true, type: "module", scripts: { test: "node --test test/task.test.mjs" } }, null, 2) + "\n", "USER_NOTES.txt": `User-owned ${id} notes. Preserve byte for byte.\n` });
87
87
  const tasks = coding.map(item => ({ id: item.id, family: "multi-file", variant: 1, split: "held-out",
@@ -33,6 +33,7 @@ export declare class ConfiguredModelScope {
33
33
  private readonly limits;
34
34
  private readonly stop;
35
35
  private readonly pending;
36
+ private readonly invocationIds;
36
37
  private toolCalls;
37
38
  private readonly usage;
38
39
  readonly id: `${string}-${string}-${string}-${string}-${string}`;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfiguredModelScope.d.ts","sourceRoot":"","sources":["../../src/providers/ConfiguredModelScope.ts"],"names":[],"mappings":"AACA,OAAO,EAAwD,KAAK,WAAW,EAAE,KAAK,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC5J,OAAO,EAA4C,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAClI,OAAO,KAAK,EAAE,QAAQ,EAAqC,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAErG,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IACnF,SAAS,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;CAC1C;AACD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;IACzC,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAED,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,GAAI,QAAQ,aAAa,KAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAQ/G,CAAC;AAEF,iFAAiF;AACjF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2L;IACnN,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;IACpD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IACrD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA2H;IACjJ,QAAQ,CAAC,EAAE,sDAAgB;gBAEf,QAAQ,EAAE,2BAA2B,EAAE,OAAO,GAAE;QAC1D,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACrI,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;KAC3C;IAWN,IAAI,MAAM,IAAI,WAAW,CAAmC;IAC5D,IAAI,UAAU,IAAI,MAAM,CAA+B;IACvD,IAAI,MAAM,IAAI,WAAW,CAA4C;IACrE,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO;IAClD,MAAM;;;;;;;;IACN,IAAI,SAAS,IAAI,MAAM,CAA2B;IAClD,WAAW,IAAI,IAAI;IASnB,MAAM,CAAC,OAAO,EAAE,MAAM;;;;IACtB,QAAQ,IAAI,gBAAgB;IAC5B,KAAK,IAAI,IAAI;IAEb,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;YAKrB,QAAQ;CA2CvB"}
1
+ {"version":3,"file":"ConfiguredModelScope.d.ts","sourceRoot":"","sources":["../../src/providers/ConfiguredModelScope.ts"],"names":[],"mappings":"AACA,OAAO,EAAwD,KAAK,WAAW,EAAE,KAAK,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC5J,OAAO,EAA4C,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAClI,OAAO,KAAK,EAAE,QAAQ,EAAqC,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAErG,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IACnF,SAAS,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;CAC1C;AACD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;IACzC,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAED,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,GAAI,QAAQ,aAAa,KAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAQ/G,CAAC;AAEF,iFAAiF;AACjF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2L;IACnN,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;IACpD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IACrD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA2H;IACjJ,QAAQ,CAAC,EAAE,sDAAgB;gBAEf,QAAQ,EAAE,2BAA2B,EAAE,OAAO,GAAE;QAC1D,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACrI,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;KAC3C;IAWN,IAAI,MAAM,IAAI,WAAW,CAAmC;IAC5D,IAAI,UAAU,IAAI,MAAM,CAA+B;IACvD,IAAI,MAAM,IAAI,WAAW,CAA4C;IACrE,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO;IAClD,MAAM;;;;;;;;IACN,IAAI,SAAS,IAAI,MAAM,CAA2B;IAClD,WAAW,IAAI,IAAI;IASnB,MAAM,CAAC,OAAO,EAAE,MAAM;;;;IACtB,QAAQ,IAAI,gBAAgB;IAC5B,KAAK,IAAI,IAAI;IAEb,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;YAKrB,QAAQ;CA4CvB"}
@@ -20,6 +20,7 @@ export class ConfiguredModelScope {
20
20
  constructor(resolved, options = {}) {
21
21
  this.controller = new AbortController();
22
22
  this.pending = new Map();
23
+ this.invocationIds = new Set();
23
24
  this.toolCalls = 0;
24
25
  this.usage = { modelCalls: 0, inputTokens: 0, outputTokens: 0, totalTokens: 0, estimated: false, pendingCalls: 0 };
25
26
  this.id = randomUUID();
@@ -70,10 +71,13 @@ export class ConfiguredModelScope {
70
71
  effort: this.options.effort,
71
72
  beforeRequest: async (route, bounded) => {
72
73
  linked.signal.throwIfAborted();
74
+ if (this.invocationIds.has(route.id))
75
+ throw new Error("Model requestId has already been used in this scope; use a new UUID for each inference attempt");
73
76
  const reservation = Math.ceil(JSON.stringify([bounded.messages, bounded.tools]).length / 3) + (bounded.maxTokens ?? this.limits.maxOutputTokens);
74
77
  if (this.usage.modelCalls >= this.limits.maxModelCalls || this.usage.totalTokens + reservation > this.limits.maxTotalTokens)
75
78
  throw new Error("Shared model budget exhausted");
76
79
  invocation = route;
80
+ this.invocationIds.add(route.id);
77
81
  this.usage.modelCalls++;
78
82
  this.usage.totalTokens += reservation;
79
83
  this.pending.set(route.id, reservation);
@@ -1,4 +1,5 @@
1
1
  import { type OrchestrationProvider, type ResolvedOrchestrationConfig, type ModelOperation, type EffortLevel } from "../config/OrchestrationConfig.js";
2
+ import { type RequestUsageReceipt } from "./RequestUsage.js";
2
3
  import type { Provider, ProviderRequest, ProviderResponse } from "./ProviderTypes.js";
3
4
  export interface CatalogEntry {
4
5
  id: string;
@@ -36,6 +37,7 @@ export declare class ModelServiceClient {
36
37
  }): Promise<unknown>;
37
38
  catalog(signal?: AbortSignal, refresh?: boolean): Promise<CatalogEntry[]>;
38
39
  usage(signal?: AbortSignal): Promise<unknown>;
40
+ requestUsage(requestId: string, signal?: AbortSignal): Promise<RequestUsageReceipt>;
39
41
  /** The proxy and selected node must both advertise this transport contract.
40
42
  * A model's supports_reasoning flag alone says nothing about request forwarding. */
41
43
  requireNativeReasoning(modelId: string, parameters: string[], signal?: AbortSignal): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"ConfiguredProvider.d.ts","sourceRoot":"","sources":["../../src/providers/ConfiguredProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfiguredProvider.d.ts","sourceRoot":"","sources":["../../src/providers/ConfiguredProvider.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,KAAK,qBAAqB,EAAE,KAAK,2BAA2B,EAAE,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAGvK,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtF,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9B;AACD,oFAAoF;AACpF,MAAM,WAAW,kBAAkB;IAAG,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CAAE;AACxF,eAAO,MAAM,oBAAoB,GAAI,SAAQ,kBAAuB,KAAG,kBAMtE,CAAC;AAOF,2FAA2F;AAC3F,qBAAa,6BAA8B,SAAQ,KAAK;gBAC1C,OAAO,EAAE,MAAM;CAC5B;AAED,eAAO,MAAM,kBAAkB,GAAU,UAAU,qBAAqB,KAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAiBpG,CAAC;AAEF,qBAAa,kBAAkB;IAGjB,QAAQ,CAAC,QAAQ,EAAE,qBAAqB;IAAE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAF1F,OAAO,CAAC,KAAK,CAAC,CAA4D;IAC1E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;gBACvB,QAAQ,EAAE,qBAAqB,EAAmB,kBAAkB,CAAC,EAAE,MAAM,YAAA,EAAE,MAAM,CAAC,EAAE,kBAAkB;IAI/H,OAAO,CAAC,UAAU;IAEZ,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAsBhI,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqBvE,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAK7C,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAOzF;wFACoF;IAC9E,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAiBzG;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACrH,sBAAsB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClD;AACD,qBAAa,kBAAmB,YAAW,QAAQ;IAMrC,QAAQ,CAAC,QAAQ,EAAE,2BAA2B;IAAE,QAAQ,CAAC,OAAO;IAAW,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL/G,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,iBAAiB,QAAQ;IAClC,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmC;gBAC1C,QAAQ,EAAE,2BAA2B,EAAW,OAAO,SAAS,EAAmB,OAAO,GAAE;QAC/G,MAAM,CAAC,EAAE,kBAAkB,CAAC;QAC5B,yFAAyF;QACzF,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/C,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,aAAa,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QACzF,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACtF;IASN,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB;IAOxC,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,YAAY,UAAQ;;;;;;IAiB5E,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;CA0BpE"}
@@ -5,6 +5,7 @@ import { resolveCredential } from "../runcontext/CredentialFile.js";
5
5
  import { resolveBinding } from "../config/OrchestrationConfig.js";
6
6
  import { OpenAiCompatibleProvider } from "./OpenAiCompatibleProvider.js";
7
7
  import { ModelServiceError } from "./ModelServiceError.js";
8
+ import { parseRequestUsage } from "./RequestUsage.js";
8
9
  import { registerSecretValue } from "../runtime/SecretRedaction.js";
9
10
  export const normalizeModelCaller = (caller = {}) => {
10
11
  const clientIdentity = caller.clientIdentity?.trim();
@@ -134,6 +135,14 @@ export class ModelServiceClient {
134
135
  return { available: false };
135
136
  return this.json(this.provider.usageUrl ?? new URL("/v1/swarm/runtime/usage-limits", this.provider.baseUrl).toString(), { signal });
136
137
  }
138
+ async requestUsage(requestId, signal) {
139
+ if (this.provider.adapter !== "mswarm")
140
+ throw new Error("Provider has no authenticated request receipt contract");
141
+ if (!/^[a-f0-9]{8}-[a-f0-9]{4}-[1-8][a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$/i.test(requestId))
142
+ throw new Error("Invalid request UUID");
143
+ const url = new URL(`/v1/swarm/self-hosted/requests/${encodeURIComponent(requestId)}/receipts`, this.provider.baseUrl);
144
+ return parseRequestUsage(requestId, await this.json(url.href, { signal, timeoutMs: 10000 }));
145
+ }
137
146
  /** The proxy and selected node must both advertise this transport contract.
138
147
  * A model's supports_reasoning flag alone says nothing about request forwarding. */
139
148
  async requireNativeReasoning(modelId, parameters, signal) {
@@ -212,8 +221,12 @@ export class ConfiguredProvider {
212
221
  }
213
222
  async generate(request) {
214
223
  request.signal?.throwIfAborted();
224
+ const requestId = request.requestId ?? randomUUID();
225
+ if (typeof requestId !== "string" || !/^[a-f0-9]{8}-[a-f0-9]{4}-[1-8][a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$/i.test(requestId)) {
226
+ throw new Error("Model requestId must be a UUID for this inference attempt");
227
+ }
215
228
  const { id, model, provider, actual } = await this.select("chat.completions", request.signal, !!request.tools?.length);
216
- const invocation = { id: randomUUID(), binding: this.binding, configHash: this.resolved.hash, modelId: id, catalogId: model.catalogId, backend: actual.backend, host: model.host };
229
+ const invocation = { id: requestId, binding: this.binding, configHash: this.resolved.hash, modelId: id, catalogId: model.catalogId, backend: actual.backend, host: model.host };
217
230
  const nativeReasoning = this.options.effort ? model.reasoning?.[this.options.effort] : undefined;
218
231
  if (nativeReasoning)
219
232
  invocation.nativeReasoningRequest = { ...nativeReasoning };
@@ -223,12 +236,12 @@ export class ConfiguredProvider {
223
236
  const inputEstimate = Math.ceil(JSON.stringify([request.messages, request.tools]).length / 3);
224
237
  if (inputEstimate + maxTokens > Math.min(model.contextWindow, actual.contextWindow ?? model.contextWindow))
225
238
  throw new Error("Context budget exceeded; checkpoint and compact before continuing");
226
- const bounded = { ...request, maxTokens, stream: request.stream === true && model.supportsStreaming === true };
239
+ const bounded = { ...request, requestId, maxTokens, stream: request.stream === true && model.supportsStreaming === true };
227
240
  await this.options.beforeRequest?.(invocation, bounded);
228
241
  const adapter = new OpenAiCompatibleProvider({
229
242
  model: model.catalogId, baseUrl: provider.baseUrl, apiKey: this.credentials[model.provider] ?? await providerCredential(provider), timeoutMs: 300000,
230
243
  supportsStreaming: model.supportsStreaming ?? true, supportsTools: model.supportsTools,
231
- headers: provider.adapter === "mswarm" ? modelCallerHeaders(this.caller) : undefined, retryTransient: false,
244
+ headers: provider.adapter === "mswarm" ? { ...modelCallerHeaders(this.caller), "x-request-id": requestId } : undefined, retryTransient: false,
232
245
  extraBody: nativeReasoning,
233
246
  });
234
247
  const result = await adapter.generate(bounded);
@@ -52,6 +52,8 @@ export interface ProviderUsage {
52
52
  totalTokens?: number;
53
53
  }
54
54
  export interface ProviderRequest {
55
+ /** Unique UUID for this inference attempt, retained by the caller for accounting. */
56
+ requestId?: string;
55
57
  signal?: AbortSignal;
56
58
  messages: ProviderMessage[];
57
59
  tools?: ProviderToolDefinition[];
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderTypes.d.ts","sourceRoot":"","sources":["../../src/providers/ProviderTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProviderTypes.d.ts","sourceRoot":"","sources":["../../src/providers/ProviderTypes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { ProviderUsage } from "./ProviderTypes.js";
2
+ export interface RequestUsageReceipt {
3
+ requestId: string;
4
+ complete: boolean;
5
+ invocationIds: string[];
6
+ usage?: Required<ProviderUsage>;
7
+ reason?: string;
8
+ }
9
+ /** A partial page, active attempt or absent counter cannot settle a reservation. */
10
+ export declare function parseRequestUsage(requestId: string, payload: unknown): RequestUsageReceipt;
11
+ //# sourceMappingURL=RequestUsage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestUsage.d.ts","sourceRoot":"","sources":["../../src/providers/RequestUsage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,mBAAmB,CAuB1F"}
@@ -0,0 +1,33 @@
1
+ /** A partial page, active attempt or absent counter cannot settle a reservation. */
2
+ export function parseRequestUsage(requestId, payload) {
3
+ const value = payload;
4
+ if (!value || value.schema_version !== 1 || value.client_request_id !== requestId ||
5
+ typeof value.truncated !== "boolean" || !Array.isArray(value.invocations) ||
6
+ value.invocations.length === 0 || value.invocations.length > 16)
7
+ throw new Error("Invalid request usage receipt");
8
+ const ids = new Set();
9
+ let complete = !value.truncated;
10
+ const usage = { inputTokens: 0, outputTokens: 0, totalTokens: 0 };
11
+ const valid = (n) => Number.isSafeInteger(n) && n >= 0;
12
+ for (const item of value.invocations) {
13
+ const row = item;
14
+ if (!row || typeof row.id !== "string" || !row.id || row.id.length > 256 || ids.has(row.id) ||
15
+ row.operation !== "chat.completions" || !["reserved", "queued", "leased", "started", "success", "failed", "timeout"].includes(String(row.status))) {
16
+ throw new Error("Invalid request usage invocation");
17
+ }
18
+ ids.add(row.id);
19
+ const tokens = row.usage;
20
+ if (!["success", "failed", "timeout"].includes(String(row.status)) || !tokens ||
21
+ !valid(tokens.prompt_tokens) || !valid(tokens.completion_tokens) || !valid(tokens.total_tokens) ||
22
+ tokens.total_tokens < tokens.prompt_tokens + tokens.completion_tokens) {
23
+ complete = false;
24
+ continue;
25
+ }
26
+ usage.inputTokens += tokens.prompt_tokens;
27
+ usage.outputTokens += tokens.completion_tokens;
28
+ usage.totalTokens += tokens.total_tokens;
29
+ }
30
+ if (!Object.values(usage).every(valid))
31
+ throw new Error("Request usage exceeds safe accounting bounds");
32
+ return { requestId, complete, invocationIds: [...ids], ...(complete ? { usage } : { reason: "Server receipt is incomplete, active, or has unreported usage" }) };
33
+ }
@@ -102,6 +102,7 @@ export declare class SessionController {
102
102
  get busy(): boolean;
103
103
  status(): Record<string, unknown>;
104
104
  usageSnapshot(): SessionUsage;
105
+ reconcileUsage(): Promise<Record<string, unknown>>;
105
106
  mediaStore(): MediaJobStore;
106
107
  private workspaceLedger;
107
108
  artifacts(): Promise<Record<string, unknown>[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"SessionController.d.ts","sourceRoot":"","sources":["../../src/runtime/SessionController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionController.d.ts","sourceRoot":"","sources":["../../src/runtime/SessionController.ts"],"names":[],"mappings":"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"}