@sentropic/llm-mesh 0.37.0 → 0.38.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 (50) hide show
  1. package/README.md +45 -0
  2. package/dist/decision/adapter-result.js +1 -1
  3. package/dist/decision/adapter-result.js.map +1 -1
  4. package/dist/decision/descriptor-validation.js +1 -1
  5. package/dist/decision/descriptor-validation.js.map +1 -1
  6. package/dist/decision/descriptor.d.ts +1 -1
  7. package/dist/decision/descriptor.d.ts.map +1 -1
  8. package/dist/decision/dispatch.js +1 -1
  9. package/dist/decision/dispatch.js.map +1 -1
  10. package/dist/decision/gemini-adapter.d.ts +46 -0
  11. package/dist/decision/gemini-adapter.d.ts.map +1 -0
  12. package/dist/decision/gemini-adapter.js +67 -0
  13. package/dist/decision/gemini-adapter.js.map +1 -0
  14. package/dist/decision/gemini-codec.d.ts +27 -0
  15. package/dist/decision/gemini-codec.d.ts.map +1 -0
  16. package/dist/decision/gemini-codec.js +92 -0
  17. package/dist/decision/gemini-codec.js.map +1 -0
  18. package/dist/decision/gemini-descriptor.d.ts +6 -0
  19. package/dist/decision/gemini-descriptor.d.ts.map +1 -0
  20. package/dist/decision/gemini-descriptor.js +30 -0
  21. package/dist/decision/gemini-descriptor.js.map +1 -0
  22. package/dist/decision/host.d.ts +5 -0
  23. package/dist/decision/host.d.ts.map +1 -1
  24. package/dist/decision/host.js +3 -0
  25. package/dist/decision/host.js.map +1 -1
  26. package/dist/decision/policy.d.ts.map +1 -1
  27. package/dist/decision/policy.js +3 -1
  28. package/dist/decision/policy.js.map +1 -1
  29. package/dist/decision/pricing.d.ts.map +1 -1
  30. package/dist/decision/pricing.js +2 -1
  31. package/dist/decision/pricing.js.map +1 -1
  32. package/dist/decision/service.d.ts.map +1 -1
  33. package/dist/decision/service.js +2 -1
  34. package/dist/decision/service.js.map +1 -1
  35. package/dist/enrollment/cloud-code.d.ts +9 -1
  36. package/dist/enrollment/cloud-code.d.ts.map +1 -1
  37. package/dist/enrollment/cloud-code.js +10 -2
  38. package/dist/enrollment/cloud-code.js.map +1 -1
  39. package/dist/transport/cloud-code-runtime-client.d.ts.map +1 -1
  40. package/dist/transport/cloud-code-runtime-client.js +3 -1
  41. package/dist/transport/cloud-code-runtime-client.js.map +1 -1
  42. package/dist/transport/cloud-code-transport.d.ts +2 -1
  43. package/dist/transport/cloud-code-transport.d.ts.map +1 -1
  44. package/dist/transport/cloud-code-transport.js +2 -1
  45. package/dist/transport/cloud-code-transport.js.map +1 -1
  46. package/dist/transport/gemini-decisions.d.ts +23 -0
  47. package/dist/transport/gemini-decisions.d.ts.map +1 -0
  48. package/dist/transport/gemini-decisions.js +111 -0
  49. package/dist/transport/gemini-decisions.js.map +1 -0
  50. package/package.json +1 -1
package/README.md CHANGED
@@ -439,6 +439,51 @@ authority escalation and lineage conflicts. Package enrollment keeps existing id
439
439
 
440
440
  ## Generic Decision Capability
441
441
 
442
+ ### Gemini Decisions (explicit evaluator opt-in)
443
+
444
+ The host subpath also exports `createGeminiDecisionsAdapter`,
445
+ `createGeminiDecisionsTransport`, `geminiDecisionsDescriptor` and `geminiDecisionsPrice`.
446
+ Register this adapter separately and allowlist its exact evaluator reference;
447
+ ordinary Gemini chat adapters never acquire this capability. Credentials must use
448
+ the host's `environment-token` source named `GEMINI_API_KEY` or `GOOGLE_API_KEY`.
449
+ Only developer API keys are supported; consumer OAuth and agy/Antigravity logins
450
+ must never be used. Gemini remains disabled for immo in preprod and production
451
+ following the Google ToS incident; this adapter does not change that policy.
452
+ Google AI Studio is outside Canada and does not guarantee Canadian residency.
453
+ Enable this evaluator only where its data processing is explicitly permitted;
454
+ it is never a default evaluator or a fallback.
455
+
456
+ The [official REST reference](https://aistudio.google.com/docs/decisions-api#request)
457
+ documents `POST https://generativelanguage.googleapis.com/v1beta/decisions`,
458
+ `gemini-decision-1`, an `input` string/content block and a named `questions` map.
459
+ This adapter serializes the existing mesh `inputs` as JSON text and sends one
460
+ `verdict` question per `DecisionRequest`. Native media blocks and batching up to
461
+ 1,000 questions are not exposed by this single-decision contract. Binary, choice
462
+ and graded criteria map to `noul`, `choice` and `score`; binary criteria use
463
+ `true_description`/`false_description`. The existing mesh rubric limit is 10 levels.
464
+ The provider supports a 262,144-token context; local JSON/byte admission limits
465
+ remain smaller. Explanations and provider-generated decisions are unsupported.
466
+
467
+ Binary results preserve P(true); the provider's confidence is validated against
468
+ `max(P(true), 1-P(true))` before projection into the existing score-only binary
469
+ contract. Choice and rubric results retain provider confidence and distributions;
470
+ rubric scores must equal the probability-weighted level index. Calibration claims
471
+ come from the provider; calibration on application traffic remains unqualified.
472
+ Usage maps `total_input_tokens`, `total_output_tokens` and modality counts. Pricing
473
+ is $0.10 per million input tokens and $0 output, billed through the host price row.
474
+ The transport makes one attempt, bounds response bytes, respects cancellation and
475
+ deadlines, refuses redirects and sanitizes errors without exposing provider bodies.
476
+
477
+ The shipped descriptor remains **unqualified**, matching the existing native
478
+ decision qualification policy. The documented response has no served model ID;
479
+ the adapter never substitutes the requested ID as evidence. Without independently
480
+ qualified served identity, the host returns `SERVED_IDENTITY_MISMATCH` and keeps
481
+ liability pending. Synthetic routing tests supply explicit identity evidence;
482
+ they do not qualify live service behavior. No live calls run in CI.
483
+
484
+ Sources: [launch announcement](https://blog.google/innovation-and-ai/technology/developers-tools/gemini-decisions-api/),
485
+ [question types and confidence](https://aistudio.google.com/docs/decisions-api#question-types).
486
+
442
487
  `@sentropic/llm-mesh` provides strict decision evaluation contracts, portable client execution, and native JEV/OpenAI Decisions adapters via three distinct export subpaths:
443
488
 
444
489
  - `@sentropic/llm-mesh/decision`: Consumer contracts (`EvaluatorRef`, `DecisionRequest`, `DecisionResult`, `DecisionVerdict`, `DecisionReceipt`) and portable remote client (`createRemoteDecisionClient`).
@@ -105,7 +105,7 @@ export function parseDecisionAdapterResult(candidate, request, descriptor, secre
105
105
  score: structuredClone(verdict.score), decision: structuredClone(verdict.decision), label: structuredClone(verdict.label),
106
106
  rationale: null, confidence: structuredClone(verdict.confidence), distribution: structuredClone(verdict.distribution) }, ...evidence };
107
107
  }
108
- if ((descriptor.protocol ?? 'jev-native') !== 'jev-native') {
108
+ if ((descriptor.protocol ?? 'jev-native') !== 'jev-native' && descriptor.protocol !== 'gemini-decisions') {
109
109
  const closed = parseStructuredHostVerdict(value.verdict, request, descriptor);
110
110
  if (!closed)
111
111
  return failed('VERDICT_INVALID');
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-result.js","sourceRoot":"","sources":["../../src/decision/adapter-result.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-result.js","sourceRoot":"","sources":["../../src/decision/adapter-result.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export function freezeDecisionData(value) {
10
10
  }
11
11
  return value;
12
12
  }
13
- const PROTOCOLS = new Set(['jev-native', 'openai-decisions', 'systemone-local', 'structured-llm']);
13
+ const PROTOCOLS = new Set(['jev-native', 'openai-decisions', 'gemini-decisions', 'systemone-local', 'structured-llm']);
14
14
  export function parseDecisionEvaluatorDescriptor(candidate) {
15
15
  const snapshot = snapshotBoundedJson(candidate);
16
16
  if (!snapshot.ok || !isRecord(snapshot.value))
@@ -1 +1 @@
1
- {"version":3,"file":"descriptor-validation.js","sourceRoot":"","sources":["../../src/decision/descriptor-validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"descriptor-validation.js","sourceRoot":"","sources":["../../src/decision/descriptor-validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtG,qEAAqE;AACrE,MAAM,UAAU,kBAAkB,CAAI,KAAQ;IAC5C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACpE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AACD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,CAAC;AACvH,MAAM,UAAU,gCAAgC,CAAC,SAAkB;IACjE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3D,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC7B,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,WAAW,EAAE,wBAAwB,EAAE,eAAe,EAAE,wBAAwB;QACpJ,yBAAyB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;WAClP,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;WACtG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,QAAkB,CAAC,CAAC,CAAC;WAChG,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC;WAC5E,CAAC,KAAK,CAAC,gBAAgB,KAAK,SAAS,IAAI,KAAK,CAAC,gBAAgB,KAAK,YAAY,IAAI,KAAK,CAAC,gBAAgB,KAAK,eAAe,CAAC;WAC/H,CAAC,WAAW,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,gBAAgB,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;WACrF,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,KAAK,WAAW,IAAI,KAAK,CAAC,aAAa,CAAC,cAAc,KAAK,aAAa,CAAC;WAC5G,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,KAAK,WAAW,IAAI,KAAK,CAAC,aAAa,CAAC,YAAY,KAAK,aAAa,CAAC;WACxG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;WACnG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;WACvH,IAAI,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,sBAAsB,CAAC,MAAM;QACrF,oGAAoG;WACjG,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,KAAK,WAAW,IAAI,KAAK,CAAC,sBAAsB,CAAC,MAAM,KAAK,CAAC,CAAC;WACjG,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,KAAK,WAAW,IAAI,KAAK,CAAC,aAAa,CAAC,YAAY,KAAK,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC;WACtJ,OAAO,KAAK,CAAC,sBAAsB,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,sBAAsB,CAAC,IAAI,KAAK,CAAC,sBAAsB,GAAG,CAAC;WAC3I,OAAO,KAAK,CAAC,uBAAuB,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,uBAAuB,CAAC,IAAI,KAAK,CAAC,uBAAuB,GAAG,CAAC;WAC9I,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC;eACrE,CAAC,WAAW,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;eAC7D,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;WACrF,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,eAAe,GAAG,CAAC,IAAI,KAAK,CAAC,eAAe,GAAG,GAAG,GAAG,IAAI;WAC5J,OAAO,KAAK,CAAC,qBAAqB,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,qBAAqB,GAAG,CAAC,IAAI,KAAK,CAAC,qBAAqB,GAAG,KAAK,CAAC,eAAe;WAC/L,OAAO,KAAK,CAAC,oBAAoB,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CAAC,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,IAAI,KAAK,CAAC,oBAAoB,GAAG,IAAI;WACrK,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,YAAY;YACjE,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,KAAK,UAAU,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;mBAC9E,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,WAAW,KAAK,KAAK,CAAC,SAAS;mBAC/F,KAAK,CAAC,eAAe,KAAK,cAAc,IAAI,KAAK,CAAC,cAAc,KAAK,KAAK;mBAC1E,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;mBACtG,KAAK,CAAC,UAAU,CAAC,OAAO,KAAK,qBAAqB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC;mBAC1F,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,SAAS,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC;mBACnF,OAAO,KAAK,CAAC,SAAS,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC;mBACvF,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI;mBAC9E,CAAC,KAAK,CAAC,eAAe,KAAK,cAAc,IAAI,KAAK,CAAC,eAAe,KAAK,QAAQ,CAAC;mBAChF,OAAO,KAAK,CAAC,cAAc,KAAK,SAAS;mBACzC,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;mBACtG,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC;mBACzE,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,QAAQ;mBACpF,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;mBAChF,KAAK,CAAC,UAAU,CAAC,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;WACjD,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,gBAAgB,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;WAC9G,OAAO,KAAK,CAAC,WAAW,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,cAAc,CAAC;WAChH,OAAO,KAAK,CAAC,WAAW,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC;WAC5G,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC;WAClC,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;WAC9F,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC;WAC/E,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,EAC7D,CAAC,mBAAmB,EAAE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,cAAc,CAAC,CAAC;WACzF,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC;WAC7C,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;WACxE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC;WAC1G,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;WAC7E,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;eAC/G,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;eAC/E,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;WACtF,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAc,EAAE,EAAE,CAAE,KAA0B,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM;WAChI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,KAAK,CAAC;WAC3G,CAAC,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC;WACpD,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM;WACpG,OAAO,KAAK,CAAC,UAAU,CAAC,eAAe,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC;WAChH,OAAO,KAAK,CAAC,UAAU,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;WAC1G,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC;WACtE,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;WAC1F,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,eAAe,CAAC;WAC5H,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,kBAAkB,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,KAAK,MAAM,CAAC;WAClF,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;WAC3F,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,sBAAsB,CAAC;WACrF,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,CAAC,SAAS,CAAC,aAAa,KAAK,QAAQ;eAC3F,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAChH,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;eAC/E,CAAC,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC;eACtE,CAAC,mBAAmB,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,YAAY;YAAE,OAAO,IAAI,CAAC;QACjG,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/D,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,kBAAkB,CAAC,KAA+C,CAAC,CAAC;AAC7E,CAAC"}
@@ -3,7 +3,7 @@ import type { RetentionReceipt } from './receipt.js';
3
3
  export type ResolvedDecisionCriterion = Exclude<DecisionCriterion, {
4
4
  kind: 'registered';
5
5
  }>;
6
- export type DecisionBackendProtocol = 'jev-native' | 'openai-decisions' | 'systemone-local' | 'structured-llm';
6
+ export type DecisionBackendProtocol = 'jev-native' | 'openai-decisions' | 'gemini-decisions' | 'systemone-local' | 'structured-llm';
7
7
  export interface DecisionEvaluatorDescriptor {
8
8
  /**
9
9
  * Complete definition binding (§3.2): the versioned validation profile the
@@ -1 +1 @@
1
- {"version":3,"file":"descriptor.d.ts","sourceRoot":"","sources":["../../src/decision/descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGrD,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,iBAAiB,EAAE;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC,CAAC;AAC3F,MAAM,MAAM,uBAAuB,GAAG,YAAY,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;AAC/G,MAAM,WAAW,2BAA2B;IAC1C;;;;;OAKG;IACH,UAAU,EAAE;QACV,iBAAiB,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;QACxD,KAAK,EAAE,SAAS;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,YAAY,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QACzD,oBAAoB,EAAE,SAAS,MAAM,EAAE,CAAC;QACxC,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAS,EAAE,YAAY,CAAC;IACxB,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,YAAY,GAAG,eAAe,CAAC;IAClD,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,aAAa,EAAE;QAAE,cAAc,EAAE,WAAW,GAAG,aAAa,CAAC;QAC3D,YAAY,EAAE,WAAW,GAAG,aAAa,CAAC;QAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC;IAC/E,sBAAsB,EAAE,MAAM,CAAC;IAC/B;;;wBAGoB;IACpB,uBAAuB,EAAE,MAAM,CAAC;IAChC;;yEAEqE;IACrE,cAAc,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACzD,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,cAAc,GAAG,QAAQ,CAAC;IAC3C,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9E;4DACwD;IACxD,WAAW,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/E,2FAA2F;IAC3F,aAAa,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD,kBAAkB,EAAE,SAAS;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,yBAAyB,CAAA;KAAE,EAAE,CAAC;IAC9G,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAUD,sFAAsF;AACtF,eAAO,MAAM,aAAa,EAAE,2BA0B3B,CAAC"}
1
+ {"version":3,"file":"descriptor.d.ts","sourceRoot":"","sources":["../../src/decision/descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGrD,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,iBAAiB,EAAE;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC,CAAC;AAC3F,MAAM,MAAM,uBAAuB,GAAG,YAAY,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;AACpI,MAAM,WAAW,2BAA2B;IAC1C;;;;;OAKG;IACH,UAAU,EAAE;QACV,iBAAiB,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;QACxD,KAAK,EAAE,SAAS;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,YAAY,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QACzD,oBAAoB,EAAE,SAAS,MAAM,EAAE,CAAC;QACxC,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAS,EAAE,YAAY,CAAC;IACxB,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,YAAY,GAAG,eAAe,CAAC;IAClD,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,aAAa,EAAE;QAAE,cAAc,EAAE,WAAW,GAAG,aAAa,CAAC;QAC3D,YAAY,EAAE,WAAW,GAAG,aAAa,CAAC;QAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC;IAC/E,sBAAsB,EAAE,MAAM,CAAC;IAC/B;;;wBAGoB;IACpB,uBAAuB,EAAE,MAAM,CAAC;IAChC;;yEAEqE;IACrE,cAAc,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACzD,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,cAAc,GAAG,QAAQ,CAAC;IAC3C,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9E;4DACwD;IACxD,WAAW,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/E,2FAA2F;IAC3F,aAAa,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD,kBAAkB,EAAE,SAAS;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,yBAAyB,CAAA;KAAE,EAAE,CAAC;IAC9G,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAUD,sFAAsF;AACtF,eAAO,MAAM,aAAa,EAAE,2BA0B3B,CAAC"}
@@ -45,7 +45,7 @@ export async function dispatchDecision(execution, selection, admitted, options)
45
45
  }
46
46
  closeDecisionReceipt(execution, error);
47
47
  // Invalid native usage cannot release the admitted hold through settlement.
48
- const retainHold = selection.descriptor.protocol === 'openai-decisions' && !result.ok && result.error.code === 'USAGE_INVALID';
48
+ const retainHold = ['openai-decisions', 'gemini-decisions'].includes(selection.descriptor.protocol ?? '') && !result.ok && result.error.code === 'USAGE_INVALID';
49
49
  try {
50
50
  if (!retainHold)
51
51
  await options.budget.settle({ holdId: admitted.holdId, receipt: copyDecisionReceipt(receipt), boundViolated: priced.overrun });
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../../src/decision/dispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../../src/decision/dispatch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import type { ProviderAdapter, ProviderRuntimeContext } from '../registry.js';
2
+ import type { GenerateRequest, GenerateResponse, StreamRequest, StreamResult } from '../generation.js';
3
+ import type { AuthInput } from '../auth.js';
4
+ import type { DecisionRequest } from './request.js';
5
+ import type { DecisionAdapterResult } from './adapter.js';
6
+ import type { DecisionEvaluatorDescriptor } from './descriptor.js';
7
+ import type { GeminiDecisionsTransport } from '../transport/gemini-decisions.js';
8
+ export interface GeminiDecisionsAdapterOptions {
9
+ transport: GeminiDecisionsTransport;
10
+ descriptor?: DecisionEvaluatorDescriptor;
11
+ }
12
+ /** Explicit native registration; ordinary OpenAI chat composition never acquires it. */
13
+ export declare class GeminiDecisionsAdapter implements ProviderAdapter {
14
+ private readonly options;
15
+ readonly provider: {
16
+ providerId: "gemini";
17
+ family: "google";
18
+ label: string;
19
+ decisionOnly: true;
20
+ status: import("../providers.js").ProviderStatus;
21
+ capabilities: import("../capabilities.js").ProviderCapabilities;
22
+ };
23
+ readonly descriptor: DecisionEvaluatorDescriptor;
24
+ constructor(options: GeminiDecisionsAdapterOptions);
25
+ listModels(): never[];
26
+ listEvaluators(): {
27
+ providerId: "openai" | "gemini" | "anthropic" | "mistral" | "cohere" | "gcp" | "local" | "muse" | "typesafe";
28
+ evaluatorId: string;
29
+ revision: string;
30
+ }[];
31
+ validateAuth(source?: AuthInput): {
32
+ ok: boolean;
33
+ };
34
+ generate(_request: GenerateRequest): Promise<GenerateResponse>;
35
+ stream(_request: StreamRequest): Promise<StreamResult>;
36
+ normalizeError(_error: unknown): {
37
+ providerId: "gemini";
38
+ message: string;
39
+ retryable: boolean;
40
+ };
41
+ decision(request: DecisionRequest, context?: ProviderRuntimeContext & {
42
+ signal?: AbortSignal;
43
+ }): Promise<DecisionAdapterResult>;
44
+ }
45
+ export declare const createGeminiDecisionsAdapter: (options: GeminiDecisionsAdapterOptions) => GeminiDecisionsAdapter;
46
+ //# sourceMappingURL=gemini-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini-adapter.d.ts","sourceRoot":"","sources":["../../src/decision/gemini-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACvG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AASjF,MAAM,WAAW,6BAA6B;IAAG,SAAS,EAAE,wBAAwB,CAAC;IAAC,UAAU,CAAC,EAAE,2BAA2B,CAAA;CAAE;AAChI,wFAAwF;AACxF,qBAAa,sBAAuB,YAAW,eAAe;IAIhD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAHpC,QAAQ,CAAC,QAAQ;;;;;;;MACqE;IACtF,QAAQ,CAAC,UAAU,EAAE,2BAA2B,CAAC;gBACpB,OAAO,EAAE,6BAA6B;IAWnE,UAAU;IACV,cAAc;;;;;IACd,YAAY,CAAC,MAAM,CAAC,EAAE,SAAS;;;IAKzB,QAAQ,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAC9D,MAAM,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;IAC5D,cAAc,CAAC,MAAM,EAAE,OAAO;;;;;IACxB,QAAQ,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAqBtI;AACD,eAAO,MAAM,4BAA4B,YAAa,6BAA6B,KAAG,sBAA6D,CAAC"}
@@ -0,0 +1,67 @@
1
+ import { getSecretAuthMaterial } from '../auth.js';
2
+ import { getProviderProfile } from '../catalog.js';
3
+ import { geminiDecisionsDescriptor } from './gemini-descriptor.js';
4
+ import { parseDecisionEvaluatorDescriptor } from './descriptor-validation.js';
5
+ import { encodeGeminiDecisionsRequest, decodeGeminiDecisionsResponse } from './gemini-codec.js';
6
+ import { createDecisionError } from './errors.js';
7
+ import { unreportedDecisionUsage } from './receipt.js';
8
+ import { isRecord, snapshotBoundedJson } from './validation.js';
9
+ import { canExecuteDecisionCandidate } from './qualification.js';
10
+ /** Explicit native registration; ordinary OpenAI chat composition never acquires it. */
11
+ export class GeminiDecisionsAdapter {
12
+ options;
13
+ provider = { ...getProviderProfile('typesafe'), providerId: 'gemini',
14
+ family: 'google', label: 'Gemini Decisions', decisionOnly: true };
15
+ descriptor;
16
+ constructor(options) {
17
+ this.options = options;
18
+ const descriptor = parseDecisionEvaluatorDescriptor(options.descriptor ?? geminiDecisionsDescriptor);
19
+ if (!descriptor || descriptor.protocol !== 'gemini-decisions' || descriptor.evaluator.providerId !== 'gemini'
20
+ || descriptor.wireModel !== 'gemini-decision-1' || descriptor.nativeDecision || descriptor.maxBillableOutputTokens !== 0
21
+ || descriptor.compilation.readout !== 'gemini-decisions-v1beta'
22
+ || descriptor.compilation.templateDigest !== geminiDecisionsDescriptor.compilation.templateDigest
23
+ || descriptor.compilation.schemaDigest !== geminiDecisionsDescriptor.compilation.schemaDigest
24
+ || descriptor.definition.validationProfile.profile !== 'native-distribution-v1'
25
+ || descriptor.definition.validationProfile.version !== 'v1')
26
+ throw new Error('Invalid Gemini Decisions descriptor.');
27
+ this.descriptor = descriptor;
28
+ }
29
+ listModels() { return []; }
30
+ listEvaluators() { return [{ ...this.descriptor.evaluator }]; }
31
+ validateAuth(source) {
32
+ const auth = getSecretAuthMaterial(source);
33
+ return { ok: auth?.type === 'environment-token' && ['GEMINI_API_KEY', 'GOOGLE_API_KEY'].includes(auth.envVar) && typeof auth.token === 'string'
34
+ && auth.token.trim().length > 0 && auth.token === auth.token.trim() && !/[\r\n]/.test(auth.token) };
35
+ }
36
+ async generate(_request) { throw new Error('Decisions does not support chat.'); }
37
+ async stream(_request) { throw new Error('Decisions does not support chat.'); }
38
+ normalizeError(_error) { return { providerId: 'gemini', message: 'Decisions operation failed.', retryable: false }; }
39
+ async decision(request, context) {
40
+ const empty = { usage: unreportedDecisionUsage('not-dispatched'), servedEvaluator: null, servedModelId: null };
41
+ const failed = (code, phase = 'preflight') => ({ ok: false, error: createDecisionError(code, phase), ...empty,
42
+ ...(phase === 'dispatch' ? { usage: unreportedDecisionUsage('unknown') } : {}) });
43
+ const encoded = encodeGeminiDecisionsRequest(request, this.descriptor);
44
+ if (!encoded.ok)
45
+ return failed(encoded.code);
46
+ if (!canExecuteDecisionCandidate(this.descriptor))
47
+ return failed('PROVIDER_UNAVAILABLE');
48
+ const auth = getSecretAuthMaterial(context?.auth);
49
+ if (!this.validateAuth(context?.auth).ok || auth?.type !== 'environment-token' || !auth.token)
50
+ return failed('CREDENTIAL_MISSING');
51
+ try {
52
+ const result = await this.options.transport.send(encoded.bodyJson, auth.token, { signal: context?.signal, timeoutMs: encoded.request.policy?.timeoutMs });
53
+ if (!result.ok)
54
+ return { ...failed(result.error.code, 'dispatch'), error: result.error };
55
+ const snapshot = snapshotBoundedJson(result.body);
56
+ const body = snapshot.ok ? snapshot.value : null;
57
+ if (isRecord(body) && typeof body.model === 'string' && body.model.includes(auth.token))
58
+ body.model = null;
59
+ return decodeGeminiDecisionsResponse(body, encoded.request, this.descriptor, result.providerRequestId?.includes(auth.token) ? undefined : result.providerRequestId);
60
+ }
61
+ catch {
62
+ return failed('TRANSPORT_FAILED', 'dispatch');
63
+ }
64
+ }
65
+ }
66
+ export const createGeminiDecisionsAdapter = (options) => new GeminiDecisionsAdapter(options);
67
+ //# sourceMappingURL=gemini-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini-adapter.js","sourceRoot":"","sources":["../../src/decision/gemini-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { DecisionRequest } from './request.js';
2
+ import type { DecisionEvaluatorDescriptor } from './descriptor.js';
3
+ import type { DecisionAdapterResult } from './adapter.js';
4
+ /** One named question per mesh request; structured evidence remains JSON data. */
5
+ export declare function encodeGeminiDecisionsRequest(candidate: unknown, descriptor: DecisionEvaluatorDescriptor): {
6
+ ok: false;
7
+ code: "REQUEST_INVALID" | "CAPABILITY_UNSUPPORTED" | "PROVIDER_UNKNOWN" | "EVALUATOR_UNKNOWN" | "PROVIDER_UNAVAILABLE" | "REVISION_MISMATCH" | "CREDENTIAL_MISSING" | "AUTHENTICATION_FAILED" | "AUTHORIZATION_DENIED" | "PRICING_UNAVAILABLE" | "BUDGET_BOUND_UNAVAILABLE" | "BUDGET_EXHAUSTED" | "BUDGET_UNAVAILABLE" | "SETTLEMENT_UNAVAILABLE" | "RATE_LIMITED" | "PROVIDER_OVERLOADED" | "PROVIDER_REJECTED" | "TIMEOUT" | "CANCELLED" | "TRANSPORT_FAILED" | "VERDICT_INVALID" | "SERVED_IDENTITY_MISMATCH" | "USAGE_INVALID" | "RESPONSE_TOO_LARGE" | "RECEIPT_UNAVAILABLE" | "MESH_UNAVAILABLE";
8
+ } | {
9
+ readonly ok: false;
10
+ readonly code: "EVALUATOR_UNKNOWN";
11
+ } | {
12
+ readonly ok: false;
13
+ readonly code: "CAPABILITY_UNSUPPORTED";
14
+ } | {
15
+ readonly ok: false;
16
+ readonly code: "REQUEST_INVALID";
17
+ } | {
18
+ bodyJson: string;
19
+ ok: true;
20
+ body: import("./jev-codec.js").JevRequestBody;
21
+ request: DecisionRequest;
22
+ criterion: import("./descriptor.js").ResolvedDecisionCriterion;
23
+ readonly code?: undefined;
24
+ };
25
+ /** Normalize only documented counters. Missing served identity is never inferred from the request. */
26
+ export declare function decodeGeminiDecisionsResponse(candidate: unknown, request: DecisionRequest, descriptor: DecisionEvaluatorDescriptor, requestId?: unknown): DecisionAdapterResult;
27
+ //# sourceMappingURL=gemini-codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini-codec.d.ts","sourceRoot":"","sources":["../../src/decision/gemini-codec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAM1D,kFAAkF;AAClF,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,2BAA2B;;;;;;;;;;;;;;;;;;;EAyBvG;AAGD,sGAAsG;AACtG,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EACxF,UAAU,EAAE,2BAA2B,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,qBAAqB,CA8CrF"}
@@ -0,0 +1,92 @@
1
+ import { encodeJevRequest } from './jev-codec.js';
2
+ import { decodeJevResponse } from './jev-response.js';
3
+ import { createDecisionError } from './errors.js';
4
+ import { hasOnlyKeys, isRecord, snapshotBoundedJson } from './validation.js';
5
+ /** One named question per mesh request; structured evidence remains JSON data. */
6
+ export function encodeGeminiDecisionsRequest(candidate, descriptor) {
7
+ const encoded = encodeJevRequest(candidate, descriptor);
8
+ if (!encoded.ok)
9
+ return encoded;
10
+ const request = encoded.request;
11
+ if (descriptor.protocol !== 'gemini-decisions')
12
+ return { ok: false, code: 'EVALUATOR_UNKNOWN' };
13
+ if (request.policy?.explanation === 'required' || request.decision?.kind === 'provider') {
14
+ return { ok: false, code: 'CAPABILITY_UNSUPPORTED' };
15
+ }
16
+ const criterion = encoded.criterion;
17
+ if (criterion.kind === 'choice' && (criterion.options.length < 2 || criterion.options.some(({ id }) => [...id].length > 128 || new TextEncoder().encode(id).length > 512 || id !== id.trim()
18
+ || /[\x00-\x1f\x7f\s]/u.test(id.replaceAll(' ', ''))))) {
19
+ return { ok: false, code: 'CAPABILITY_UNSUPPORTED' };
20
+ }
21
+ const question = { ...encoded.body.questions.verdict,
22
+ ...(criterion.kind === 'binary' && criterion.criteria ? { criteria: {
23
+ true_description: criterion.criteria.true, false_description: criterion.criteria.false,
24
+ } } : {}) };
25
+ const input = JSON.stringify(request.inputs);
26
+ const bodyJson = JSON.stringify({ model: descriptor.wireModel, input, questions: { verdict: question } });
27
+ if (new TextEncoder().encode(bodyJson).length > descriptor.maxRequestBytes
28
+ || new TextEncoder().encode(input + JSON.stringify(question)).length > descriptor.maxStateQuestionBytes) {
29
+ return { ok: false, code: 'REQUEST_INVALID' };
30
+ }
31
+ return { ...encoded, bodyJson };
32
+ }
33
+ const count = (v) => typeof v === 'number' && Number.isSafeInteger(v) && v >= 0;
34
+ /** Normalize only documented counters. Missing served identity is never inferred from the request. */
35
+ export function decodeGeminiDecisionsResponse(candidate, request, descriptor, requestId) {
36
+ const snapshot = snapshotBoundedJson(candidate);
37
+ const body = snapshot.ok && isRecord(snapshot.value) ? snapshot.value : null;
38
+ const identity = decodeJevResponse({ model: body?.model ?? null, answers: body?.answers ?? null, usage: {} }, request, descriptor, requestId);
39
+ const evidence = { usage: identity.usage, servedEvaluator: identity.servedEvaluator,
40
+ servedModelId: identity.servedModelId,
41
+ ...(identity.providerRequestId ? { providerRequestId: identity.providerRequestId } : {}) };
42
+ const invalid = (code) => ({ ok: false,
43
+ error: createDecisionError(code, 'parse'), ...evidence });
44
+ if (!body)
45
+ return invalid('VERDICT_INVALID');
46
+ const usage = body.usage;
47
+ if (!isRecord(usage) || !hasOnlyKeys(usage, ['total_input_tokens', 'total_output_tokens', 'total_tokens', 'input_tokens_by_modality'])
48
+ || !count(usage.total_input_tokens) || usage.total_output_tokens !== 0
49
+ || usage.total_tokens !== usage.total_input_tokens || !Array.isArray(usage.input_tokens_by_modality))
50
+ return invalid('USAGE_INVALID');
51
+ const modalities = new Set();
52
+ let total = 0;
53
+ for (const entry of usage.input_tokens_by_modality) {
54
+ if (!isRecord(entry) || !hasOnlyKeys(entry, ['modality', 'tokens']) || !count(entry.tokens)
55
+ || typeof entry.modality !== 'string' || !['text', 'image', 'audio'].includes(entry.modality)
56
+ || modalities.has(entry.modality))
57
+ return invalid('USAGE_INVALID');
58
+ modalities.add(entry.modality);
59
+ total += entry.tokens;
60
+ }
61
+ if (total !== usage.total_input_tokens)
62
+ return invalid('USAGE_INVALID');
63
+ const normalized = { model: body.model ?? null, answers: body.answers ?? null,
64
+ usage: { input_tokens: usage.total_input_tokens, output_tokens: 0 } };
65
+ evidence.usage = decodeJevResponse(normalized, request, descriptor, requestId).usage;
66
+ if (!hasOnlyKeys(body, ['model', 'answers', 'usage']))
67
+ return invalid('VERDICT_INVALID');
68
+ if (!isRecord(body.answers) || !hasOnlyKeys(body.answers, ['verdict']) || !isRecord(body.answers.verdict))
69
+ return invalid('VERDICT_INVALID');
70
+ const answer = { ...body.answers.verdict };
71
+ const encoded = encodeGeminiDecisionsRequest(request, descriptor);
72
+ if (!encoded.ok)
73
+ return invalid('VERDICT_INVALID');
74
+ if (answer.type === 'noul') {
75
+ if (typeof answer.noul !== 'number' || !Number.isFinite(answer.noul) || answer.noul < 0.01 || answer.noul > 0.99
76
+ || !hasOnlyKeys(answer, ['type', 'noul', 'confidence'])
77
+ || typeof answer.confidence !== 'number'
78
+ || Math.abs(answer.confidence - Math.max(answer.noul, 1 - answer.noul)) > descriptor.probabilityTolerance)
79
+ return invalid('VERDICT_INVALID');
80
+ // The existing binary contract carries P(true) only; validate native confidence before dropping it.
81
+ delete answer.confidence;
82
+ }
83
+ else if (isRecord(answer.probabilities)) {
84
+ const probabilities = Object.values(answer.probabilities);
85
+ if (!probabilities.every((p) => typeof p === 'number' && Number.isFinite(p) && p >= 0 && p <= 1)
86
+ || typeof answer.confidence !== 'number'
87
+ || Math.abs(answer.confidence - Math.max(...probabilities)) > descriptor.probabilityTolerance)
88
+ return invalid('VERDICT_INVALID');
89
+ }
90
+ return decodeJevResponse({ ...normalized, answers: { verdict: answer } }, request, descriptor, requestId);
91
+ }
92
+ //# sourceMappingURL=gemini-codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini-codec.js","sourceRoot":"","sources":["../../src/decision/gemini-codec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { DecisionEvaluatorDescriptor } from './descriptor.js';
2
+ import type { DecisionPrice } from './pricing.js';
3
+ /** Explicit host opt-in only. Published semantics do not qualify live identity or calibration. */
4
+ export declare const geminiDecisionsDescriptor: DecisionEvaluatorDescriptor;
5
+ export declare const geminiDecisionsPrice: DecisionPrice;
6
+ //# sourceMappingURL=gemini-descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini-descriptor.d.ts","sourceRoot":"","sources":["../../src/decision/gemini-descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAKlD,kGAAkG;AAClG,eAAO,MAAM,yBAAyB,EAAE,2BAmBvC,CAAC;AACF,eAAO,MAAM,oBAAoB,EAAE,aAIlC,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { digestStructuredArtifact as digest } from './validation.js';
2
+ const contract = 'gemini-decisions-v1beta';
3
+ const source = 'https://aistudio.google.com/docs/decisions-api';
4
+ /** Explicit host opt-in only. Published semantics do not qualify live identity or calibration. */
5
+ export const geminiDecisionsDescriptor = {
6
+ evaluator: { providerId: 'gemini', evaluatorId: 'gemini-decision-1', revision: 'gemini-decision-1-v1beta-unqualified' },
7
+ protocol: 'gemini-decisions', wireModel: 'gemini-decision-1', acceptedServedModelIds: ['gemini-decision-1'],
8
+ qualification: { servedIdentity: 'unqualified', billingBound: 'unqualified', evidenceRefs: [source] },
9
+ maxBillableInputTokens: 262_144, maxBillableOutputTokens: 0,
10
+ maxRequestBytes: 256 * 1024, maxStateQuestionBytes: 32 * 1024,
11
+ probabilityTolerance: 1e-4, scoreNativeKeys: 'index-string', nativeDecision: false,
12
+ confidence: { meaning: 'provider-confidence', meaningRef: source + '#confidence', min: 0, max: 1 },
13
+ compilation: { templateDigest: digest({ contract, input: 'json-data', question: 'verdict' }),
14
+ schemaDigest: digest({ contract, answers: ['noul', 'choice', 'score'] }), readout: contract },
15
+ definition: { validationProfile: { profile: 'native-distribution-v1', version: 'v1' },
16
+ kinds: ['binary', 'choice', 'graded'].map((kind) => ({ kind, schemaDigest: digest({ contract, kind }) })),
17
+ evidenceRequirements: ['served-identity', 'reported-usage', 'one-named-answer'],
18
+ executionDigest: digest({ contract, attempts: 1, maxBillableInputTokens: 262_144, maxBillableOutputTokens: 0 }),
19
+ bundleDigest: digest({ contract, qualification: 'unqualified', sourceDate: '2026-11-12' }) },
20
+ priceProtocol: { authority: 'control.model_pricing', revision: 'gemini-decision-1-standard-2026-11-11' },
21
+ registeredCriteria: [], retention: { status: 'unknown', basis: 'published-policy', retentionDays: null,
22
+ gap: 'unknown (source-gap)',
23
+ evidenceRefs: ['https://ai.google.dev/gemini-api/terms', source] },
24
+ };
25
+ export const geminiDecisionsPrice = {
26
+ providerId: 'gemini', modelId: 'gemini-decision-1', priceRevision: geminiDecisionsDescriptor.priceProtocol.revision,
27
+ authority: 'control.model_pricing', protocol: 'gemini-decisions', inputMicroUsdPerMtok: '100000',
28
+ outputMicroUsdPerMtok: '0', minimumMicroUsd: '0', identityMismatchPricing: 'requires-reconciliation',
29
+ };
30
+ //# sourceMappingURL=gemini-descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini-descriptor.js","sourceRoot":"","sources":["../../src/decision/gemini-descriptor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,IAAI,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAErE,MAAM,QAAQ,GAAG,yBAAyB,CAAC;AAC3C,MAAM,MAAM,GAAG,gDAAgD,CAAC;AAChE,kGAAkG;AAClG,MAAM,CAAC,MAAM,yBAAyB,GAAgC;IACpE,SAAS,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,sCAAsC,EAAE;IACvH,QAAQ,EAAE,kBAAkB,EAAE,SAAS,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,CAAC,mBAAmB,CAAC;IAC3G,aAAa,EAAE,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE;IACrG,sBAAsB,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;IAC3D,eAAe,EAAE,GAAG,GAAG,IAAI,EAAE,qBAAqB,EAAE,EAAE,GAAG,IAAI;IAC7D,oBAAoB,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,KAAK;IAClF,UAAU,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAClG,WAAW,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;QAC1F,YAAY,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE;IAC/F,UAAU,EAAE,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,OAAO,EAAE,IAAI,EAAE;QACnF,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACzG,oBAAoB,EAAE,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC;QAC/E,eAAe,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,sBAAsB,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,EAAE,CAAC;QAC/G,YAAY,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,EAAE;IAC9F,aAAa,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,QAAQ,EAAE,uCAAuC,EAAE;IACxG,kBAAkB,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,IAAI;QACpG,GAAG,EAAE,sBAAsB;QAC3B,YAAY,EAAE,CAAC,wCAAwC,EAAE,MAAM,CAAC,EAAE;CACrE,CAAC;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAkB;IACjD,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,yBAAyB,CAAC,aAAa,CAAC,QAAQ;IACnH,SAAS,EAAE,uBAAuB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,QAAQ;IAChG,qBAAqB,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,uBAAuB,EAAE,yBAAyB;CACrG,CAAC"}
@@ -4,6 +4,11 @@ export { createJevAdapter } from './adapter.js';
4
4
  export { createStructuredDecisionAdapter, STRUCTURED_CONTRACT_REVISION, STRUCTURED_SCORE_MEANING } from './structured.js';
5
5
  export { jevDescriptor } from './descriptor.js';
6
6
  export { createOpenAiDecisionsAdapter } from './openai-adapter.js';
7
+ export { createGeminiDecisionsAdapter } from './gemini-adapter.js';
8
+ export type { GeminiDecisionsAdapterOptions } from './gemini-adapter.js';
9
+ export { geminiDecisionsDescriptor, geminiDecisionsPrice } from './gemini-descriptor.js';
10
+ export { createGeminiDecisionsTransport } from '../transport/gemini-decisions.js';
11
+ export type { GeminiDecisionsTransport, GeminiDecisionsTransportOptions } from '../transport/gemini-decisions.js';
7
12
  export type { OpenAiDecisionsAdapterOptions } from './openai-adapter.js';
8
13
  export { openAiDecisionsDescriptor, openAiDecisionsPrice } from './openai-descriptor.js';
9
14
  export { createOpenAiDecisionsTransport } from '../transport/openai-decisions.js';
@@ -1 +1 @@
1
- {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/decision/host.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC1H,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,YAAY,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,YAAY,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AAClH,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,YAAY,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,gCAAgC,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC7K,YAAY,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AACxF,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtD,YAAY,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC9F,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,uBAAuB,EAC/F,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAClE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACjE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACpH,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACpG,YAAY,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,uBAAuB,EAC1F,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACzD,YAAY,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,wBAAwB,EACzG,4BAA4B,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/decision/host.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC1H,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,YAAY,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,YAAY,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AAClH,YAAY,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,YAAY,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AAClH,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,YAAY,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,gCAAgC,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC7K,YAAY,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AACxF,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtD,YAAY,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC9F,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,uBAAuB,EAC/F,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAClE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACjE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACpH,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACpG,YAAY,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,uBAAuB,EAC1F,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACzD,YAAY,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,wBAAwB,EACzG,4BAA4B,EAAE,MAAM,uBAAuB,CAAC"}
@@ -4,6 +4,9 @@ export { createJevAdapter } from './adapter.js';
4
4
  export { createStructuredDecisionAdapter, STRUCTURED_CONTRACT_REVISION, STRUCTURED_SCORE_MEANING } from './structured.js';
5
5
  export { jevDescriptor } from './descriptor.js';
6
6
  export { createOpenAiDecisionsAdapter } from './openai-adapter.js';
7
+ export { createGeminiDecisionsAdapter } from './gemini-adapter.js';
8
+ export { geminiDecisionsDescriptor, geminiDecisionsPrice } from './gemini-descriptor.js';
9
+ export { createGeminiDecisionsTransport } from '../transport/gemini-decisions.js';
7
10
  export { openAiDecisionsDescriptor, openAiDecisionsPrice } from './openai-descriptor.js';
8
11
  export { createOpenAiDecisionsTransport } from '../transport/openai-decisions.js';
9
12
  export { discoverDecisionEvaluator, decisionExecutionDigest, decisionQualificationScope } from './qualification.js';
@@ -1 +1 @@
1
- {"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/decision/host.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC1H,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAWlF,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACpH,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/decision/host.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC1H,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAGlF,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAWlF,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACpH,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/decision/policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAKrD,MAAM,WAAW,kBAAkB;IAAG,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE;AACxG,2FAA2F;AAC3F,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,2BAA2B,EACtG,IAAI,GAAE,kBAAuB,GAAG,iBAAiB,GAAG,IAAI,CAqBzD"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/decision/policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAMrD,MAAM,WAAW,kBAAkB;IAAG,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE;AACxG,2FAA2F;AAC3F,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,2BAA2B,EACtG,IAAI,GAAE,kBAAuB,GAAG,iBAAiB,GAAG,IAAI,CAsBzD"}