@tenova/swt3-ai 0.3.5 → 0.4.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/dist/witness.js CHANGED
@@ -20,8 +20,9 @@
20
20
  * Copyright (c) 2026 Tenable Nova LLC. Apache 2.0. Patent pending.
21
21
  */
22
22
  import { randomUUID } from "node:crypto";
23
- import { sha256Truncated } from "./fingerprint.js";
24
- import { extractPayloads, extractGatekeeperPayload } from "./clearing.js";
23
+ import { sha256Truncated, mintFingerprint, timestampMs } from "./fingerprint.js";
24
+ import { extractPayloads, extractGatekeeperPayload, extractRevocationPayload, REVOCATION_REASONS } from "./clearing.js";
25
+ import { signPayload } from "./signing.js";
25
26
  import { WitnessBuffer } from "./buffer.js";
26
27
  import { writeHandoffFiles } from "./handoff.js";
27
28
  import { wrapOpenAI } from "./adapters/openai.js";
@@ -61,7 +62,7 @@ export class Witness {
61
62
  if (!options.tenantId)
62
63
  throw new Error("tenantId is required");
63
64
  if (options.factorHandoff && options.factorHandoff !== "file") {
64
- throw new Error("factorHandoff must be 'file' (other methods planned for v0.4.0)");
65
+ throw new Error("factorHandoff must be 'file'");
65
66
  }
66
67
  if (options.factorHandoff === "file" && !options.factorHandoffPath) {
67
68
  throw new Error("factorHandoffPath is required when factorHandoff is 'file'");
@@ -85,6 +86,10 @@ export class Witness {
85
86
  signingKey: options.signingKey,
86
87
  cycleId: options.cycleId,
87
88
  policyVersion: options.policyVersion,
89
+ jurisdiction: options.jurisdiction,
90
+ legalBasis: options.legalBasis,
91
+ purposeClass: options.purposeClass,
92
+ onFlush: options.onFlush,
88
93
  };
89
94
  this._strict = options.strict ?? false;
90
95
  this.buffer = new WitnessBuffer(this.config);
@@ -141,11 +146,12 @@ export class Witness {
141
146
  const policyHash = this.config.policyVersion
142
147
  ? sha256Truncated(this.config.policyVersion, 12)
143
148
  : undefined;
144
- const payload = extractGatekeeperPayload(this.config.tenantId, required, active, gatePassed, this.config.clearingLevel, this.config.agentId, this.config.signingKey, this.config.cycleId, policyHash);
149
+ const payload = extractGatekeeperPayload(this.config.tenantId, required, active, gatePassed, this.config.clearingLevel, this.config.agentId, this.config.signingKey, this.config.cycleId, policyHash, this.config.jurisdiction, this.config.legalBasis, this.config.purposeClass);
145
150
  this.buffer.enqueueMany([payload]);
146
151
  if (!gatePassed) {
147
152
  throw new GatekeeperError(required, active);
148
153
  }
154
+ return payload.anchor_fingerprint;
149
155
  }
150
156
  /**
151
157
  * Wrap a function as a witnessed tool call (AI-TOOL.1).
@@ -279,6 +285,142 @@ export class Witness {
279
285
  };
280
286
  return wrapper;
281
287
  }
288
+ /**
289
+ * Witness a security/adversarial detection result (AI-SEC.1).
290
+ *
291
+ * Call after running your own detection system (Prompt Guard, LlamaGuard,
292
+ * NeMo Guardrails, etc.) to record the result as a tamper-evident anchor.
293
+ *
294
+ * @param threatScore - Detection score from your system (0-1000 scale).
295
+ * @param options.threshold - Score above which input is a threat. Default 500.
296
+ * @param options.threatType - One of: none, prompt_injection, data_poisoning,
297
+ * model_extraction, jailbreak, adversarial_input.
298
+ *
299
+ * @example
300
+ * const score = await promptGuard.scan(userInput);
301
+ * witness.witnessSecurityScan(score, { threatType: "prompt_injection" });
302
+ */
303
+ witnessSecurityScan(threatScore, options) {
304
+ const threshold = options?.threshold ?? 500;
305
+ const threatType = options?.threatType ?? "none";
306
+ const threatCodes = {
307
+ none: 0, prompt_injection: 1, data_poisoning: 2,
308
+ model_extraction: 3, jailbreak: 4, adversarial_input: 5,
309
+ };
310
+ const [ts, epoch] = timestampMs();
311
+ const fa = threshold;
312
+ const fb = threatScore;
313
+ const fc = threatCodes[threatType] ?? 0;
314
+ const fp = mintFingerprint(this.config.tenantId, "AI-SEC.1", fa, fb, fc, ts);
315
+ const payload = {
316
+ procedure_id: "AI-SEC.1",
317
+ factor_a: fa,
318
+ factor_b: fb,
319
+ factor_c: fc,
320
+ clearing_level: this.config.clearingLevel,
321
+ anchor_fingerprint: fp,
322
+ anchor_epoch: epoch,
323
+ fingerprint_timestamp_ms: ts,
324
+ };
325
+ if (this.config.clearingLevel <= 1) {
326
+ payload.ai_model_id = "security-scan";
327
+ payload.ai_context = { provider: "security" };
328
+ }
329
+ if (this.config.agentId)
330
+ payload.agent_id = this.config.agentId;
331
+ if (this.config.cycleId)
332
+ payload.cycle_id = this.config.cycleId;
333
+ if (this.config.jurisdiction)
334
+ payload.jurisdiction = this.config.jurisdiction;
335
+ if (this.config.legalBasis)
336
+ payload.legal_basis = this.config.legalBasis;
337
+ if (this.config.purposeClass)
338
+ payload.purpose_class = this.config.purposeClass;
339
+ if (this.config.policyVersion) {
340
+ payload.policy_version_hash = sha256Truncated(this.config.policyVersion, 12);
341
+ }
342
+ if (this.config.signingKey) {
343
+ payload.payload_signature = signPayload(this.config.signingKey, fp, this.config.agentId);
344
+ }
345
+ this.buffer.enqueueMany([payload]);
346
+ }
347
+ /**
348
+ * Witness an input validation/sanitization result (AI-SEC.2).
349
+ *
350
+ * Call after validating or sanitizing user input before inference.
351
+ *
352
+ * @param passed - True if input accepted (clean or sanitized). False if blocked.
353
+ * @param options.sanitized - True if input was modified during validation.
354
+ *
355
+ * @example
356
+ * const { clean, modified } = mySanitizer.validate(userInput);
357
+ * witness.witnessInputValidation(clean, { sanitized: modified });
358
+ */
359
+ witnessInputValidation(passed, options) {
360
+ const sanitized = options?.sanitized ?? false;
361
+ const [ts, epoch] = timestampMs();
362
+ const fa = 1;
363
+ const fb = passed ? 1 : 0;
364
+ const fc = (passed && !sanitized) ? 0 : (passed && sanitized) ? 1 : 2;
365
+ const fp = mintFingerprint(this.config.tenantId, "AI-SEC.2", fa, fb, fc, ts);
366
+ const payload = {
367
+ procedure_id: "AI-SEC.2",
368
+ factor_a: fa,
369
+ factor_b: fb,
370
+ factor_c: fc,
371
+ clearing_level: this.config.clearingLevel,
372
+ anchor_fingerprint: fp,
373
+ anchor_epoch: epoch,
374
+ fingerprint_timestamp_ms: ts,
375
+ };
376
+ if (this.config.clearingLevel <= 1) {
377
+ payload.ai_model_id = "input-validation";
378
+ payload.ai_context = { provider: "security" };
379
+ }
380
+ if (this.config.agentId)
381
+ payload.agent_id = this.config.agentId;
382
+ if (this.config.cycleId)
383
+ payload.cycle_id = this.config.cycleId;
384
+ if (this.config.jurisdiction)
385
+ payload.jurisdiction = this.config.jurisdiction;
386
+ if (this.config.legalBasis)
387
+ payload.legal_basis = this.config.legalBasis;
388
+ if (this.config.purposeClass)
389
+ payload.purpose_class = this.config.purposeClass;
390
+ if (this.config.policyVersion) {
391
+ payload.policy_version_hash = sha256Truncated(this.config.policyVersion, 12);
392
+ }
393
+ if (this.config.signingKey) {
394
+ payload.payload_signature = signPayload(this.config.signingKey, fp, this.config.agentId);
395
+ }
396
+ this.buffer.enqueueMany([payload]);
397
+ }
398
+ /**
399
+ * Revoke a previously-issued witness anchor (AI-REV.1).
400
+ *
401
+ * Mints an AI-REV.1 anchor that references the target anchor's
402
+ * fingerprint, creating an immutable revocation receipt.
403
+ *
404
+ * @param fingerprint - The 12-character anchor fingerprint to revoke.
405
+ * @param reason - Revocation reason: model_recall, policy_violation,
406
+ * data_contamination, consent_withdrawal, regulatory_order,
407
+ * error_correction, or unspecified.
408
+ * @returns The fingerprint of the revocation anchor itself.
409
+ */
410
+ revoke(fingerprint, reason = "unspecified") {
411
+ if (!fingerprint?.trim()) {
412
+ throw new Error("fingerprint is required for revocation");
413
+ }
414
+ if (!(reason in REVOCATION_REASONS)) {
415
+ throw new Error(`Unknown revocation reason: "${reason}". Valid: ${Object.keys(REVOCATION_REASONS).sort().join(", ")}`);
416
+ }
417
+ const policyHash = this.config.policyVersion
418
+ ? sha256Truncated(this.config.policyVersion, 12)
419
+ : undefined;
420
+ const payload = extractRevocationPayload(this.config.tenantId, fingerprint.trim(), reason, this.config.clearingLevel, this.config.agentId, this.config.signingKey, this.config.cycleId, policyHash, this.config.jurisdiction, this.config.legalBasis, this.config.purposeClass);
421
+ this.buffer.enqueueMany([payload]);
422
+ return payload.anchor_fingerprint;
423
+ }
282
424
  /**
283
425
  * Record a witnessed inference. Extracts factors, applies clearing,
284
426
  * and enqueues payloads for background flush.
@@ -287,7 +429,7 @@ export class Witness {
287
429
  * destination BEFORE clearing proceeds. If the handoff fails, the
288
430
  * payload is NOT transmitted.
289
431
  */
290
- record(inference) {
432
+ record(inference, authorizationId) {
291
433
  // Merge guardrail config
292
434
  if (this.config.guardrailNames.length > 0 && inference.guardrailNames.length === 0) {
293
435
  inference.guardrailNames = this.config.guardrailNames;
@@ -297,7 +439,7 @@ export class Witness {
297
439
  const policyHash = this.config.policyVersion
298
440
  ? sha256Truncated(this.config.policyVersion, 12)
299
441
  : undefined;
300
- const payloads = extractPayloads(inference, this.config.tenantId, this.config.clearingLevel, this.config.latencyThresholdMs, this.config.guardrailsRequired, this.config.procedures, this.config.agentId, this.config.signingKey, this.config.cycleId, policyHash);
442
+ const payloads = extractPayloads(inference, this.config.tenantId, this.config.clearingLevel, this.config.latencyThresholdMs, this.config.guardrailsRequired, this.config.procedures, this.config.agentId, this.config.signingKey, this.config.cycleId, policyHash, this.config.jurisdiction, this.config.legalBasis, this.config.purposeClass, authorizationId);
301
443
  // Factor handoff: write full (uncleared) data to custody destination
302
444
  // BEFORE enqueuing the cleared payload for transmission.
303
445
  // If this fails, we do NOT proceed.
@@ -1 +1 @@
1
- {"version":3,"file":"witness.js","sourceRoot":"","sources":["../src/witness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"witness.js","sourceRoot":"","sources":["../src/witness.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tenova/swt3-ai",
3
- "version": "0.3.5",
3
+ "version": "0.4.1",
4
4
  "description": "SWT3 AI Witness SDK: cryptographic attestation for AI inference",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -9,6 +9,10 @@
9
9
  ".": {
10
10
  "import": "./dist/index.js",
11
11
  "types": "./dist/index.d.ts"
12
+ },
13
+ "./exporters/otel": {
14
+ "import": "./dist/exporters/otel.js",
15
+ "types": "./dist/exporters/otel.d.ts"
12
16
  }
13
17
  },
14
18
  "bin": {
@@ -46,11 +50,15 @@
46
50
  "url": "https://github.com/tenova-labs/swt3-ai/issues"
47
51
  },
48
52
  "peerDependencies": {
49
- "openai": ">=4.0.0"
53
+ "openai": ">=4.0.0",
54
+ "@opentelemetry/api": ">=1.0.0"
50
55
  },
51
56
  "peerDependenciesMeta": {
52
57
  "openai": {
53
58
  "optional": true
59
+ },
60
+ "@opentelemetry/api": {
61
+ "optional": true
54
62
  }
55
63
  },
56
64
  "devDependencies": {