@tenova/swt3-ai 0.4.1 → 0.5.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.
package/README.md CHANGED
@@ -159,6 +159,144 @@ This happens automatically. No configuration needed. The system prompt hash is e
159
159
 
160
160
  The hash is included at clearing levels 0 and 1, stripped at levels 2 and 3.
161
161
 
162
+ ## RAG Context Witnessing
163
+
164
+ New in v0.4.3. Witness what context chunks your RAG pipeline retrieves, from which corpus, and how relevant they are. Chunk text is never transmitted -- only SHA-256 hashes.
165
+
166
+ ```typescript
167
+ // Zero-friction: pass raw strings, SDK handles hashing
168
+ witness.witnessRagContext({
169
+ chunks: ["chunk text 1", "chunk text 2", "chunk text 3"],
170
+ corpusId: "legal-docs-v3",
171
+ });
172
+ ```
173
+
174
+ This mints an AI-RAG.1 (Context Retrieval Provenance) anchor. Add similarity scores to also get AI-RAG.2 (Context Relevance):
175
+
176
+ ```typescript
177
+ import type { RagChunk } from "@tenova/swt3-ai";
178
+
179
+ witness.witnessRagContext({
180
+ chunks: [
181
+ { contentHash: "abc123...", sourceId: "doc-7/p3", similarityScore: 0.92 },
182
+ { contentHash: "def456...", sourceId: "doc-2/p1", similarityScore: 0.78 },
183
+ { contentHash: "789abc...", sourceId: "doc-4/p2", similarityScore: 0.61 },
184
+ ],
185
+ corpusId: "legal-docs-v3",
186
+ embeddingModel: "text-embedding-3-small",
187
+ similarityThreshold: 0.75, // triggers AI-RAG.2
188
+ });
189
+ ```
190
+
191
+ One call. Two procedures. Complete retrieval attestation.
192
+
193
+ Maps to: EU AI Act Art. 12(2)(a) (reference database logging), Art. 10(2) (data quality), NIST AI RMF MAP 3.5 (data provenance).
194
+
195
+ ## Model Weight Integrity
196
+
197
+ Witness the actual model weights, not just the model name string:
198
+
199
+ ```typescript
200
+ // File path: SDK hashes automatically
201
+ witness.witnessModelWeights("/models/llama-3.1-70b.safetensors");
202
+
203
+ // Pre-computed hash with verification
204
+ witness.witnessModelWeights(
205
+ { fileHash: "abc123...", format: "safetensors" },
206
+ { expectedHash: "abc123..." }, // PASS if match, FAIL if mismatch
207
+ );
208
+
209
+ // Adapter stack + quantization
210
+ witness.witnessAdapterStack(
211
+ [{ name: "lora-legal", adapterHash: "aaa111" }],
212
+ "llama-3.1-70b",
213
+ );
214
+ witness.witnessQuantization("gptq", { bits: 4, groupSize: 128 });
215
+ ```
216
+
217
+ Maps to: EU AI Act Art. 15(4) (resilience against modification), Art. 12(2)(b) (version logging).
218
+
219
+ ## Environmental Attestation (Residential and Edge AI)
220
+
221
+ Witness the physical compute environment for distributed, edge-deployed, or residential AI nodes. Proves the hardware operated within safe thermal and power bounds during inference:
222
+
223
+ ```typescript
224
+ // Zero-config: auto-detects Linux thermal sensors
225
+ witness.witnessEnvironment();
226
+
227
+ // Manual readings from smart panel APIs or IPMI
228
+ witness.witnessEnvironment({
229
+ temperatureCelsius: 42,
230
+ thresholdCelsius: 75,
231
+ nodeType: "residential",
232
+ });
233
+
234
+ // Power integrity: draw vs capacity
235
+ witness.witnessEnergyDraw({
236
+ powerWatts: 1200,
237
+ capacityWatts: 2400,
238
+ nodeType: "edge",
239
+ });
240
+ ```
241
+
242
+ If no sensors are available (dev machine, cloud VM), returns a valid anchor with zero readings. No crash, no error.
243
+
244
+ Use case: enterprises renting compute on distributed residential nodes need cryptographic proof that the node was operating within safe bounds, was not throttled, and was not physically tampered with during their inference window.
245
+
246
+ Maps to: NIST 800-53 PE-14 (environmental controls), EU AI Act Annex I (product safety for home-integrated AI).
247
+
248
+ ## Skill Manifest Attestation
249
+
250
+ Witness which skills, tools, and plugins are loaded in your agent:
251
+
252
+ ```typescript
253
+ // Zero-friction: just names
254
+ witness.witnessSkillManifest(["code_exec", "web_search", "file_read"]);
255
+
256
+ // Memory context
257
+ witness.witnessMemoryContext([
258
+ { sourceType: "vector_store", sourceId: "pinecone-prod" },
259
+ { sourceType: "conversation", sourceId: "session-123" },
260
+ ]);
261
+
262
+ // Reward model binding
263
+ witness.witnessRewardModel("rm-v3-legal", { method: "dpo" });
264
+ ```
265
+
266
+ Maps to: EU AI Act Art. 12(2)(b) (capability tracking), NIST AI RMF GOVERN 1.7 (capability documentation).
267
+
268
+ ## Multi-Agent Chains, Violations, and Safety (v0.5.0)
269
+
270
+ New in v0.5.0. Convenience methods for 8 additional procedures covering multi-agent orchestration, policy enforcement, human oversight, and training data governance:
271
+
272
+ ```typescript
273
+ // Multi-agent chain handoff (AI-CHAIN.1)
274
+ witness.witnessChainHandoff(3, "step-2-reviewer");
275
+
276
+ // Policy violation reporting (AI-VIO.1)
277
+ witness.witnessViolation(3, "PII in output", { autoDetected: true, policyCategory: "data" });
278
+
279
+ // Agent charter attestation (AI-CHR.1)
280
+ witness.witnessCharter({ charterText: "You are a fraud detection assistant..." });
281
+
282
+ // Model registry check (AI-MDL.8)
283
+ witness.witnessModelRegistry("gpt-4o-2025-04-16", "eu-approved-models-v3");
284
+
285
+ // Reviewer identity binding for four-eyes rule (AI-HITL.3)
286
+ witness.witnessReviewerIdentity(2, 2, { method: "cryptographic" });
287
+
288
+ // Safe state attestation (AI-SAFE.1)
289
+ witness.witnessSafeState({ mechanismExists: true, safeStateConfirmed: true });
290
+
291
+ // Training data statistics (AI-DATA.3)
292
+ witness.witnessTrainingStats(50000, 128, { classBalanceRatio: 0.85 });
293
+
294
+ // Training data PII lifecycle (AI-DATA.4)
295
+ witness.witnessTrainingPiiLifecycle(10000, { eventType: "pseudonymization", datasetId: "training-v3" });
296
+ ```
297
+
298
+ Maps to: EU AI Act Art. 10(3), Art. 10(5), Art. 12(2)(a), Art. 12(3)(d), Art. 13, Art. 14(4)(e), Art. 14(5), Art. 51. NIST AI RMF MANAGE 3.2, MANAGE 4.1, GOVERN 1.2.
299
+
162
300
  ## Agent Identity
163
301
 
164
302
  Bind a unique identity to every anchor your agent produces:
@@ -173,11 +311,64 @@ const witness = new Witness({
173
311
  });
174
312
  ```
175
313
 
176
- The `agentId` survives all clearing levels. The `signingKey` produces a cryptographic signature on every anchor, proving which agent instance created it. This enables:
314
+ The `agentId` survives all clearing levels. The `signingKey` produces an HMAC-SHA256 signature on every anchor, proving which agent instance created it. When a signing key is registered server-side, the server validates the signature on ingestion and rejects tampered payloads. This enables:
315
+ - **Payload authenticity** -- server verifies the SDK that minted the anchor held the registered secret
316
+ - **Tamper detection** -- any modification after signing causes rejection (422)
177
317
  - Per-agent compliance passports
178
318
  - Fleet-wide governance dashboards
179
319
  - Agent-scoped evidence packages for auditors
180
320
 
321
+ Receipts include `signature_verified: true` when the server confirms the signature.
322
+
323
+ ## Trust Mesh (Mutual Agent Verification)
324
+
325
+ Before two agents exchange data or invoke each other's tools, each verifies the other's compliance posture. No anchor, no handshake.
326
+
327
+ ```typescript
328
+ // Agent A: present a signed credential
329
+ const credentialA = witnessA.presentCredential();
330
+ // Send credentialA to Agent B over your transport layer
331
+
332
+ // Agent B: verify Agent A's credential
333
+ witnessB.trustRegistry.trustTenant("TENANT_A");
334
+ witnessB.trustRegistry.registerSigningKey("agent-alpha", "shared-secret-a");
335
+ const result = witnessB.verifyTrust(credentialA);
336
+
337
+ if (result.granted) {
338
+ // Trust level: 1=basic, 2=verified, 3=attested, 4=sovereign
339
+ console.log(`Trusted at level ${result.trustLevel}`);
340
+ } else {
341
+ console.log(`Denied: ${result.denialReason}`);
342
+ }
343
+ ```
344
+
345
+ **Trust levels:**
346
+
347
+ | Level | Name | Requires |
348
+ |-------|------|----------|
349
+ | 1 | Basic | Valid credential, unsigned or unverifiable |
350
+ | 2 | Verified | Valid credential + verified HMAC signature |
351
+ | 3 | Attested | Verified + hardware attestation + guardrails |
352
+ | 4 | Sovereign | Attested + clearing level >= 2 |
353
+
354
+ Unsigned credentials are automatically capped at TRUST_BASIC. You cannot claim a higher trust level without a verified signature.
355
+
356
+ **Key exchange:** Exchange signing keys out-of-band (environment variables, secrets manager, KMS). Never send keys over the wire alongside credentials. Each agent registers the counterpart's key:
357
+
358
+ ```typescript
359
+ // Agent A registers B's key, B registers A's key
360
+ witnessA.trustRegistry.registerSigningKey("agent-beta", process.env.AGENT_B_KEY!);
361
+ witnessB.trustRegistry.registerSigningKey("agent-alpha", process.env.AGENT_A_KEY!);
362
+ ```
363
+
364
+ **Zero-friction path:** Trust mesh works without signing keys. Agents without keys get TRUST_BASIC (level 1), which is sufficient for non-sensitive coordination. Add keys when you need verified or attested trust.
365
+
366
+ **Credential auto-population:** `presentCredential()` automatically includes which procedures the agent has witnessed and whether hardware attestation (AI-HW.1) has been performed. No manual tracking needed.
367
+
368
+ Every verification (pass or fail) mints AI-TRUST.1 + AI-TRUST.2 anchors. Denials produce evidence too.
369
+
370
+ Maps to: EU AI Act Art. 14 (human oversight and mutual accountability between AI systems).
371
+
181
372
  ## Gatekeeper Mode (Pre-Call Enforcement)
182
373
 
183
374
  New in v0.3.4. Require guardrails to be active *before* the model is called, not just observed after:
@@ -265,7 +456,7 @@ Each inference produces anchors for these checks. Every check maps to a regulati
265
456
 
266
457
  ### EU AI Act Article Mapping
267
458
 
268
- All 36 SWT3 AI witnessing procedures map to specific EU AI Act obligations:
459
+ All 42 SWT3 AI witnessing procedures map to specific EU AI Act obligations:
269
460
 
270
461
  | Procedure | EU AI Act Article | Obligation | Demo | Production |
271
462
  |-----------|-------------------|------------|------|------------|
@@ -282,7 +473,7 @@ All 36 SWT3 AI witnessing procedures map to specific EU AI Act obligations:
282
473
  | AI-EXPL.1 | Art. 13(1) | Transparency & Explainability | -| ✓ |
283
474
  | AI-EXPL.2 | Art. 13(3b) | Confidence Calibration | -| ✓ |
284
475
 
285
- The demo demonstrates 3 procedures using simulated data. All 36 are available in production with real inference data. [See live conformity →](https://sovereign.tenova.io/audit/axm_audit_demo_eu_ai_act_public)
476
+ The demo demonstrates 5 procedures using simulated data. All 42 are available in production with real inference data. 36 cross-language test vectors ensure fingerprint parity across Python, TypeScript, Rust, C#, and Ruby. [See live conformity →](https://sovereign.tenova.io/audit/axm_audit_demo_eu_ai_act_public)
286
477
 
287
478
  ## How Verdicts Work
288
479
 
@@ -441,7 +632,7 @@ const witness = new Witness({
441
632
  | `maxRetries` | 3 | Retries before dead-letter |
442
633
  | `guardrailNames` | [] | Active guardrail names |
443
634
  | `agentId` | - | Agent identity (survives all clearing levels) |
444
- | `signingKey` | - | HMAC-SHA256 key for payload signing |
635
+ | `signingKey` | - | HMAC-SHA256 key for payload signing (register server-side for validation) |
445
636
  | `cycleId` | - | Multi-agent chain link (survives all clearing levels) |
446
637
  | `policyVersion` | - | Policy config identifier (hashed in payloads) |
447
638
  | `strict` | false | Gatekeeper mode: block inference if guardrails insufficient |
@@ -521,29 +712,21 @@ This SDK produces identical fingerprints to the Python SDK (`swt3-ai`). A unifie
521
712
  | API routes / Edge | TypeScript | @tenova/swt3-ai |
522
713
  | Frontend (Next.js) | TypeScript | @tenova/swt3-ai + Vercel AI SDK |
523
714
 
524
- ## MCP Server (Agentic AI)
525
-
526
- AI agents can discover SWT3 compliance tools automatically via the Model Context Protocol. No developer integration required. The agent finds the tools and uses them on its own.
527
-
528
- ```bash
529
- npm install @tenova/swt3-mcp
530
- ```
715
+ ## Privacy
531
716
 
532
- Add to your MCP config:
717
+ Your prompts and responses **never leave your infrastructure**. The SDK computes SHA-256 hashes locally and transmits only irreversible hashes and numeric factors. At Clearing Level 3, even the model name is hashed. The witness endpoint is a blind registrar: it stores cryptographic proofs, not your data.
533
718
 
534
- ```json
535
- { "mcpServers": { "swt3": { "command": "npx", "args": ["@tenova/swt3-mcp"] } } }
536
- ```
719
+ ---
537
720
 
538
- Zero configuration required. Works immediately in demo mode. Add `SWT3_API_KEY` to connect to a production ledger. Compatible with Claude, GPT, and any MCP-compatible agent.
721
+ ## Upgrading to v0.5.1
539
722
 
540
- **Tools provided:** `witness_inference`, `verify_anchor`, `list_anchors`, `posture`, `signup`, `health`
723
+ **Trust Mesh (new):** `presentCredential()` and `verifyTrust()` are new methods. No breaking changes for existing code.
541
724
 
542
- This is the first compliance protocol with native MCP support. Agents discover witnessing through standard tool enumeration, making compliance an infrastructure capability rather than a developer burden.
725
+ **Credential signing (behavioral change):** If your Witness has a `signingKey`, credentials are now HMAC-signed automatically. Counterpart agents must register your key via `trustRegistry.registerSigningKey()` to verify the signature. Without key registration, signed credentials are denied with `signature_unverifiable`. If you were using trust mesh in v0.5.0 without signing keys, credentials are now capped at TRUST_BASIC (level 1). To restore full trust levels, both sides must exchange and register signing keys.
543
726
 
544
- ## Privacy
727
+ **Environmental attestation (new):** `witnessEnvironment()` and `witnessEnergyDraw()` are new methods for AI-ENV.1/AI-ENV.2. No breaking changes.
545
728
 
546
- Your prompts and responses **never leave your infrastructure**. The SDK computes SHA-256 hashes locally and transmits only irreversible hashes and numeric factors. At Clearing Level 3, even the model name is hashed. The witness endpoint is a blind registrar: it stores cryptographic proofs, not your data.
729
+ **MCP server:** 16 procedure keyword suggestions (was 8). No breaking changes.
547
730
 
548
731
  ---
549
732
 
@@ -555,6 +738,10 @@ Your prompts and responses **never leave your infrastructure**. The SDK computes
555
738
  - [Design Rationale](https://sovereign.tenova.io/guides/swt3-design-rationale.html) -- why every protocol decision was made
556
739
  - [UCT Registry](https://sovereign.tenova.io/registry) -- 162 procedures, full factor definitions
557
740
  - [Anchor Verifier](https://sovereign.tenova.io/verify) -- verify any anchor, zero server calls
741
+ - [EU AI Act Regulatory Architecture](https://sovereign.tenova.io/guides/futurium-submission.html) -- VI+CJT+ALF+LAVR framework mapping for conformity assessment bodies
742
+ - [Five Eyes Agentic AI Overlay](https://sovereign.tenova.io/guides/five-eyes-overlay.html) -- CISA/NSA guidance mapped to SWT3 procedures
743
+ - [CMMC Compliance Overlay](https://sovereign.tenova.io/guides/cmmc-overlay.html) -- clearing levels mapped to CMMC and NIST 800-171
744
+ - [SR 11-7 Model Risk Overlay](https://sovereign.tenova.io/guides/sr-11-7-overlay.html) -- clearing levels mapped to SR 11-7 requirements
558
745
 
559
746
  ---
560
747
 
@@ -0,0 +1,13 @@
1
+ /**
2
+ * SWT3 AI Witness SDK -- Ollama Adapter.
3
+ *
4
+ * Thin wrapper around the OpenAI adapter that tags records with
5
+ * provider="ollama". Ollama uses an OpenAI-compatible API at
6
+ * http://localhost:11434/v1.
7
+ *
8
+ * Auto-detected by witness.wrap() when base_url contains ":11434".
9
+ */
10
+ import type { Witness } from "../witness.js";
11
+ export declare function wrapOllama(client: unknown, witness: Witness): unknown;
12
+ export declare function isOllamaClient(client: unknown): boolean;
13
+ //# sourceMappingURL=ollama.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../src/adapters/ollama.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAErE;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAGvD"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * SWT3 AI Witness SDK -- Ollama Adapter.
3
+ *
4
+ * Thin wrapper around the OpenAI adapter that tags records with
5
+ * provider="ollama". Ollama uses an OpenAI-compatible API at
6
+ * http://localhost:11434/v1.
7
+ *
8
+ * Auto-detected by witness.wrap() when base_url contains ":11434".
9
+ */
10
+ import { wrapOpenAI } from "./openai.js";
11
+ export function wrapOllama(client, witness) {
12
+ return wrapOpenAI(client, witness, "ollama");
13
+ }
14
+ export function isOllamaClient(client) {
15
+ const baseURL = getBaseURL(client);
16
+ return baseURL.includes(":11434");
17
+ }
18
+ function getBaseURL(client) {
19
+ if (client === null || client === undefined)
20
+ return "";
21
+ const obj = client;
22
+ const url = obj.baseURL ?? obj.base_url ?? "";
23
+ return String(url);
24
+ }
25
+ //# sourceMappingURL=ollama.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../src/adapters/ollama.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,MAAM,UAAU,UAAU,CAAC,MAAe,EAAE,OAAgB;IAC1D,OAAO,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAe;IAC5C,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,UAAU,CAAC,MAAe;IACjC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACvD,MAAM,GAAG,GAAG,MAAiC,CAAC;IAC9C,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC9C,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC"}
@@ -15,5 +15,5 @@ import type { Witness } from "../witness.js";
15
15
  /**
16
16
  * Wrap an OpenAI client with an ES6 Proxy for transparent witnessing.
17
17
  */
18
- export declare function wrapOpenAI(client: unknown, witness: Witness): unknown;
18
+ export declare function wrapOpenAI(client: unknown, witness: Witness, provider?: string): unknown;
19
19
  //# sourceMappingURL=openai.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/adapters/openai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAU7C;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAErE"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/adapters/openai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAU7C;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,SAAW,GAAG,OAAO,CAE1F"}
@@ -22,10 +22,10 @@ const INTERCEPT_PATHS = {
22
22
  /**
23
23
  * Wrap an OpenAI client with an ES6 Proxy for transparent witnessing.
24
24
  */
25
- export function wrapOpenAI(client, witness) {
26
- return createProxy(client, witness, "");
25
+ export function wrapOpenAI(client, witness, provider = "openai") {
26
+ return createProxy(client, witness, "", provider);
27
27
  }
28
- function createProxy(target, witness, path) {
28
+ function createProxy(target, witness, path, provider) {
29
29
  return new Proxy(target, {
30
30
  get(obj, prop) {
31
31
  if (typeof prop === "symbol")
@@ -35,19 +35,19 @@ function createProxy(target, witness, path) {
35
35
  // Check if this property is an interceptable method
36
36
  if (path in INTERCEPT_PATHS && INTERCEPT_PATHS[path].has(prop)) {
37
37
  // This IS the method to intercept
38
- return createInterceptor(realValue, witness);
38
+ return createInterceptor(realValue, witness, provider);
39
39
  }
40
40
  // Check if this path could lead to interceptable methods
41
41
  const hasChildren = Object.keys(INTERCEPT_PATHS).some((p) => p === currentPath || p.startsWith(currentPath + "."));
42
42
  if (hasChildren && typeof realValue === "object" && realValue !== null) {
43
- return createProxy(realValue, witness, currentPath);
43
+ return createProxy(realValue, witness, currentPath, provider);
44
44
  }
45
45
  // Pass through
46
46
  return realValue;
47
47
  },
48
48
  });
49
49
  }
50
- function createInterceptor(realMethod, witness) {
50
+ function createInterceptor(realMethod, witness, provider) {
51
51
  return function interceptedCreate(...args) {
52
52
  const kwargs = (args[0] ?? {});
53
53
  const messages = kwargs.messages;
@@ -70,12 +70,12 @@ function createInterceptor(realMethod, witness) {
70
70
  const result = realMethod.call(this, ...args);
71
71
  if (isStreaming) {
72
72
  // Streaming: wrap the async iterable to accumulate chunks
73
- return handleStreaming(result, witness, model, promptHash, start, systemPromptHash, authorizationId);
73
+ return handleStreaming(result, witness, model, promptHash, start, systemPromptHash, authorizationId, provider);
74
74
  }
75
75
  // Non-streaming: result is a Promise<ChatCompletion>
76
76
  return result.then((response) => {
77
77
  const elapsedMs = Math.round(performance.now() - start);
78
- const record = extractRecord(response, model, promptHash, elapsedMs, systemPromptHash);
78
+ const record = extractRecord(response, model, promptHash, elapsedMs, systemPromptHash, provider);
79
79
  witness.record(record, authorizationId);
80
80
  return response; // Return UNTOUCHED
81
81
  });
@@ -91,7 +91,7 @@ function createInterceptor(realMethod, witness) {
91
91
  // We wrap the async iterator to accumulate content chunks, then
92
92
  // witness after the stream completes. The developer's stream
93
93
  // behavior is completely unchanged.
94
- async function* streamAccumulator(stream, witness, model, promptHash, startTime, systemPromptHash, authorizationId) {
94
+ async function* streamAccumulator(stream, witness, model, promptHash, startTime, systemPromptHash, authorizationId, provider = "openai") {
95
95
  const textParts = [];
96
96
  let actualModel = model;
97
97
  let systemFingerprint;
@@ -148,28 +148,28 @@ async function* streamAccumulator(stream, witness, model, promptHash, startTime,
148
148
  guardrailsRequired: 0,
149
149
  guardrailPassed: true,
150
150
  hasRefusal,
151
- provider: "openai",
151
+ provider,
152
152
  systemFingerprint,
153
153
  systemPromptHash,
154
154
  guardrailNames: [],
155
155
  };
156
156
  witness.record(record, authorizationId);
157
157
  }
158
- function handleStreaming(streamResult, witness, model, promptHash, startTime, systemPromptHash, authorizationId) {
158
+ function handleStreaming(streamResult, witness, model, promptHash, startTime, systemPromptHash, authorizationId, provider = "openai") {
159
159
  // The stream result is a Promise that resolves to the stream object
160
160
  // (OpenAI SDK returns Promise<Stream<ChatCompletionChunk>>)
161
161
  if (streamResult && typeof streamResult.then === "function") {
162
162
  return streamResult.then((stream) => {
163
- return wrapStream(stream, witness, model, promptHash, startTime, systemPromptHash, authorizationId);
163
+ return wrapStream(stream, witness, model, promptHash, startTime, systemPromptHash, authorizationId, provider);
164
164
  });
165
165
  }
166
166
  // Direct stream object (shouldn't happen but handle gracefully)
167
- return wrapStream(streamResult, witness, model, promptHash, startTime, systemPromptHash, authorizationId);
167
+ return wrapStream(streamResult, witness, model, promptHash, startTime, systemPromptHash, authorizationId, provider);
168
168
  }
169
- function wrapStream(stream, witness, model, promptHash, startTime, systemPromptHash, authorizationId) {
169
+ function wrapStream(stream, witness, model, promptHash, startTime, systemPromptHash, authorizationId, provider = "openai") {
170
170
  const s = stream;
171
171
  // Create the accumulating async generator
172
- const gen = streamAccumulator(s, witness, model, promptHash, startTime, systemPromptHash, authorizationId);
172
+ const gen = streamAccumulator(s, witness, model, promptHash, startTime, systemPromptHash, authorizationId, provider);
173
173
  // Return a proxy that preserves all stream methods but overrides the iterator
174
174
  return new Proxy(s, {
175
175
  get(target, prop) {
@@ -241,7 +241,7 @@ function extractPromptText(messages) {
241
241
  }
242
242
  return parts.join("\n");
243
243
  }
244
- function extractRecord(response, model, promptHash, elapsedMs, systemPromptHash) {
244
+ function extractRecord(response, model, promptHash, elapsedMs, systemPromptHash, provider = "openai") {
245
245
  const r = response;
246
246
  let responseText = "";
247
247
  let hasRefusal = false;
@@ -280,7 +280,7 @@ function extractRecord(response, model, promptHash, elapsedMs, systemPromptHash)
280
280
  guardrailsRequired: 0,
281
281
  guardrailPassed: true,
282
282
  hasRefusal,
283
- provider: "openai",
283
+ provider,
284
284
  systemFingerprint,
285
285
  systemPromptHash,
286
286
  guardrailNames: [],
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/adapters/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/adapters/openai.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * SWT3 AI Witness SDK -- vLLM Adapter.
3
+ *
4
+ * Thin wrapper around the OpenAI adapter that tags records with
5
+ * provider="vllm". vLLM uses an OpenAI-compatible API at
6
+ * http://localhost:8000/v1.
7
+ *
8
+ * NOT auto-detected by witness.wrap() (port 8000 too generic).
9
+ * Use wrap_vllm() or vllmClient() explicitly.
10
+ */
11
+ import type { Witness } from "../witness.js";
12
+ export declare function wrapVllm(client: unknown, witness: Witness): unknown;
13
+ //# sourceMappingURL=vllm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vllm.d.ts","sourceRoot":"","sources":["../../src/adapters/vllm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAEnE"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * SWT3 AI Witness SDK -- vLLM Adapter.
3
+ *
4
+ * Thin wrapper around the OpenAI adapter that tags records with
5
+ * provider="vllm". vLLM uses an OpenAI-compatible API at
6
+ * http://localhost:8000/v1.
7
+ *
8
+ * NOT auto-detected by witness.wrap() (port 8000 too generic).
9
+ * Use wrap_vllm() or vllmClient() explicitly.
10
+ */
11
+ import { wrapOpenAI } from "./openai.js";
12
+ export function wrapVllm(client, witness) {
13
+ return wrapOpenAI(client, witness, "vllm");
14
+ }
15
+ //# sourceMappingURL=vllm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vllm.js","sourceRoot":"","sources":["../../src/adapters/vllm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,MAAM,UAAU,QAAQ,CAAC,MAAe,EAAE,OAAgB;IACxD,OAAO,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAC7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["../src/buffer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAiB,MAAM,YAAY,CAAC;AAI/F,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,KAAK,CAA8C;IAC3D,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAC,CAAmE;gBAEvE,MAAM,EAAE,aAAa,EAAE,cAAc,SAA2B;IAO5E,0CAA0C;IAC1C,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAQtC,6BAA6B;IAC7B,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,IAAI;IAI7C,yCAAyC;IACnC,KAAK,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAIxC,oDAAoD;IAC9C,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAgBvC,yDAAyD;IACzD,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,oDAAoD;IACpD,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,2CAA2C;IAC3C,IAAI,QAAQ,IAAI,cAAc,EAAE,CAE/B;IAED,OAAO,CAAC,UAAU;YAYJ,aAAa;YAWb,SAAS;CAiGxB"}
1
+ {"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["../src/buffer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAiB,MAAM,YAAY,CAAC;AAI/F,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,KAAK,CAA8C;IAC3D,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAC,CAAmE;gBAEvE,MAAM,EAAE,aAAa,EAAE,cAAc,SAA2B;IAO5E,0CAA0C;IAC1C,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAQtC,6BAA6B;IAC7B,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,IAAI;IAI7C,yCAAyC;IACnC,KAAK,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAIxC,oDAAoD;IAC9C,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAgBvC,yDAAyD;IACzD,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,oDAAoD;IACpD,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,2CAA2C;IAC3C,IAAI,QAAQ,IAAI,cAAc,EAAE,CAE/B;IAED,OAAO,CAAC,UAAU;YAYJ,aAAa;YAWb,SAAS;CAmGxB"}
package/dist/buffer.js CHANGED
@@ -117,7 +117,9 @@ export class WitnessBuffer {
117
117
  if (resp.status >= 400 && resp.status < 500) {
118
118
  // Client error — don't retry, don't dead-letter
119
119
  const text = await resp.text();
120
- console.error(`[swt3-ai] Batch flush failed (${resp.status}): ${text.slice(0, 200)}`);
120
+ // Scrub any key material that might appear in error response body
121
+ const safe = text.replace(/(?:Bearer|Authorization|api[_-]?key|signing[_-]?key)[^\s,;"]*/gi, "[REDACTED]");
122
+ console.error(`[swt3-ai] Batch flush failed (${resp.status}): ${safe.slice(0, 200)}`);
121
123
  return [];
122
124
  }
123
125
  const result = (await resp.json());
@@ -1 +1 @@
1
- {"version":3,"file":"buffer.js","sourceRoot":"","sources":["../src/buffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buffer.js","sourceRoot":"","sources":["../src/buffer.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ import type { InferenceRecord, WitnessPayload } from "./types.js";
16
16
  * Applies clearing level to each payload via object destructuring (Level 2+
17
17
  * fields are simply never assigned, guaranteeing they don't exist on the wire).
18
18
  */
19
- export declare function extractPayloads(record: InferenceRecord, tenantId: string, clearingLevel: 0 | 1 | 2 | 3, latencyThresholdMs?: number, guardrailsRequired?: number, procedures?: string[], agentId?: string, signingKey?: string, cycleId?: string, policyVersionHash?: string, jurisdiction?: string, legalBasis?: string, purposeClass?: string, authorizationId?: string): WitnessPayload[];
19
+ export declare function extractPayloads(record: InferenceRecord, tenantId: string, clearingLevel: 0 | 1 | 2 | 3, latencyThresholdMs?: number, guardrailsRequired?: number, procedures?: string[], agentId?: string, signingKey?: string, signingKeyId?: string, signingKeyVersion?: number, cycleId?: string, policyVersionHash?: string, jurisdiction?: string, legalBasis?: string, purposeClass?: string, authorizationId?: string): WitnessPayload[];
20
20
  /**
21
21
  * Mint an AI-GRD.3 (Gatekeeper Gate) payload.
22
22
  *
@@ -25,7 +25,7 @@ export declare function extractPayloads(record: InferenceRecord, tenantId: strin
25
25
  * factor_c = 1 if gate passed, 0 if blocked
26
26
  * Verdict: PASS if b >= a AND c == 1
27
27
  */
28
- export declare function extractGatekeeperPayload(tenantId: string, required: number, active: number, gatePassed: boolean, clearingLevel: 0 | 1 | 2 | 3, agentId?: string, signingKey?: string, cycleId?: string, policyVersionHash?: string, jurisdiction?: string, legalBasis?: string, purposeClass?: string): WitnessPayload;
28
+ export declare function extractGatekeeperPayload(tenantId: string, required: number, active: number, gatePassed: boolean, clearingLevel: 0 | 1 | 2 | 3, agentId?: string, signingKey?: string, signingKeyId?: string, signingKeyVersion?: number, cycleId?: string, policyVersionHash?: string, jurisdiction?: string, legalBasis?: string, purposeClass?: string): WitnessPayload;
29
29
  /** Revocation reason code mapping. */
30
30
  export declare const REVOCATION_REASONS: Record<string, number>;
31
31
  /**
@@ -35,5 +35,5 @@ export declare const REVOCATION_REASONS: Record<string, number>;
35
35
  * factor_b = 1 (target declared valid by caller)
36
36
  * factor_c = reason code (integer from REVOCATION_REASONS)
37
37
  */
38
- export declare function extractRevocationPayload(tenantId: string, targetFingerprint: string, reason: string, clearingLevel: 0 | 1 | 2 | 3, agentId?: string, signingKey?: string, cycleId?: string, policyVersionHash?: string, jurisdiction?: string, legalBasis?: string, purposeClass?: string): WitnessPayload;
38
+ export declare function extractRevocationPayload(tenantId: string, targetFingerprint: string, reason: string, clearingLevel: 0 | 1 | 2 | 3, agentId?: string, signingKey?: string, signingKeyId?: string, signingKeyVersion?: number, cycleId?: string, policyVersionHash?: string, jurisdiction?: string, legalBasis?: string, purposeClass?: string): WitnessPayload;
39
39
  //# sourceMappingURL=clearing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"clearing.d.ts","sourceRoot":"","sources":["../src/clearing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAC5B,kBAAkB,GAAE,MAAc,EAClC,kBAAkB,GAAE,MAAU,EAC9B,UAAU,CAAC,EAAE,MAAM,EAAE,EACrB,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,YAAY,CAAC,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,EACrB,eAAe,CAAC,EAAE,MAAM,GACvB,cAAc,EAAE,CA8MlB;AAoFD;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,EACnB,aAAa,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,YAAY,CAAC,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,GACpB,cAAc,CAqBhB;AAED,sCAAsC;AACtC,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQrD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,YAAY,CAAC,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,GACpB,cAAc,CAwBhB"}
1
+ {"version":3,"file":"clearing.d.ts","sourceRoot":"","sources":["../src/clearing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAC5B,kBAAkB,GAAE,MAAc,EAClC,kBAAkB,GAAE,MAAU,EAC9B,UAAU,CAAC,EAAE,MAAM,EAAE,EACrB,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,OAAO,CAAC,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,YAAY,CAAC,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,EACrB,eAAe,CAAC,EAAE,MAAM,GACvB,cAAc,EAAE,CA8MlB;AA0FD;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,EACnB,aAAa,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,OAAO,CAAC,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,YAAY,CAAC,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,GACpB,cAAc,CAqBhB;AAED,sCAAsC;AACtC,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQrD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,iBAAiB,EAAE,MAAM,EACzB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAC5B,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,OAAO,CAAC,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,YAAY,CAAC,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,EACnB,YAAY,CAAC,EAAE,MAAM,GACpB,cAAc,CAwBhB"}