usertrust 1.4.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/README.md +17 -1
  2. package/dist/anomaly/detector.d.ts.map +1 -1
  3. package/dist/anomaly/detector.js +36 -11
  4. package/dist/anomaly/detector.js.map +1 -1
  5. package/dist/anomaly/index.d.ts +2 -2
  6. package/dist/anomaly/index.d.ts.map +1 -1
  7. package/dist/anomaly/index.js +1 -1
  8. package/dist/anomaly/index.js.map +1 -1
  9. package/dist/anomaly/signals/spend-velocity.d.ts +39 -12
  10. package/dist/anomaly/signals/spend-velocity.d.ts.map +1 -1
  11. package/dist/anomaly/signals/spend-velocity.js +66 -43
  12. package/dist/anomaly/signals/spend-velocity.js.map +1 -1
  13. package/dist/anomaly/signals/token-rate.d.ts +33 -13
  14. package/dist/anomaly/signals/token-rate.d.ts.map +1 -1
  15. package/dist/anomaly/signals/token-rate.js +124 -38
  16. package/dist/anomaly/signals/token-rate.js.map +1 -1
  17. package/dist/anomaly/types.d.ts +28 -6
  18. package/dist/anomaly/types.d.ts.map +1 -1
  19. package/dist/audit/anchor-doctor.d.ts +42 -0
  20. package/dist/audit/anchor-doctor.d.ts.map +1 -0
  21. package/dist/audit/anchor-doctor.js +285 -0
  22. package/dist/audit/anchor-doctor.js.map +1 -0
  23. package/dist/audit/anchor-verify.d.ts +229 -0
  24. package/dist/audit/anchor-verify.d.ts.map +1 -0
  25. package/dist/audit/anchor-verify.js +809 -0
  26. package/dist/audit/anchor-verify.js.map +1 -0
  27. package/dist/audit/anchor.d.ts +177 -0
  28. package/dist/audit/anchor.d.ts.map +1 -0
  29. package/dist/audit/anchor.js +922 -0
  30. package/dist/audit/anchor.js.map +1 -0
  31. package/dist/audit/canonical.js +1 -1
  32. package/dist/audit/canonical.js.map +1 -1
  33. package/dist/audit/chain.d.ts.map +1 -1
  34. package/dist/audit/chain.js +21 -7
  35. package/dist/audit/chain.js.map +1 -1
  36. package/dist/audit/read.d.ts +19 -0
  37. package/dist/audit/read.d.ts.map +1 -0
  38. package/dist/audit/read.js +94 -0
  39. package/dist/audit/read.js.map +1 -0
  40. package/dist/audit/rekor-verify.d.ts +116 -0
  41. package/dist/audit/rekor-verify.d.ts.map +1 -0
  42. package/dist/audit/rekor-verify.js +533 -0
  43. package/dist/audit/rekor-verify.js.map +1 -0
  44. package/dist/audit/rekor.d.ts +71 -0
  45. package/dist/audit/rekor.d.ts.map +1 -0
  46. package/dist/audit/rekor.js +556 -0
  47. package/dist/audit/rekor.js.map +1 -0
  48. package/dist/audit/rotation.js +1 -1
  49. package/dist/audit/rotation.js.map +1 -1
  50. package/dist/audit/sigv4.d.ts +44 -0
  51. package/dist/audit/sigv4.d.ts.map +1 -0
  52. package/dist/audit/sigv4.js +134 -0
  53. package/dist/audit/sigv4.js.map +1 -0
  54. package/dist/audit/verify.d.ts +78 -0
  55. package/dist/audit/verify.d.ts.map +1 -1
  56. package/dist/audit/verify.js +195 -1
  57. package/dist/audit/verify.js.map +1 -1
  58. package/dist/cli/anchor.d.ts +3 -0
  59. package/dist/cli/anchor.d.ts.map +1 -0
  60. package/dist/cli/anchor.js +626 -0
  61. package/dist/cli/anchor.js.map +1 -0
  62. package/dist/cli/completions.js +1 -1
  63. package/dist/cli/export.d.ts +3 -0
  64. package/dist/cli/export.d.ts.map +1 -0
  65. package/dist/cli/export.js +58 -0
  66. package/dist/cli/export.js.map +1 -0
  67. package/dist/cli/health.js.map +1 -1
  68. package/dist/cli/init.d.ts.map +1 -1
  69. package/dist/cli/init.js +99 -2
  70. package/dist/cli/init.js.map +1 -1
  71. package/dist/cli/inspect.d.ts.map +1 -1
  72. package/dist/cli/inspect.js +4 -34
  73. package/dist/cli/inspect.js.map +1 -1
  74. package/dist/cli/main.d.ts +2 -2
  75. package/dist/cli/main.d.ts.map +1 -1
  76. package/dist/cli/main.js +20 -1
  77. package/dist/cli/main.js.map +1 -1
  78. package/dist/cli/pricing.js +1 -1
  79. package/dist/cli/pricing.js.map +1 -1
  80. package/dist/cli/ui.d.ts +3 -0
  81. package/dist/cli/ui.d.ts.map +1 -0
  82. package/dist/cli/ui.js +35 -0
  83. package/dist/cli/ui.js.map +1 -0
  84. package/dist/cli/verify.d.ts.map +1 -1
  85. package/dist/cli/verify.js +342 -3
  86. package/dist/cli/verify.js.map +1 -1
  87. package/dist/config.d.ts.map +1 -1
  88. package/dist/config.js.map +1 -1
  89. package/dist/detect.d.ts +71 -16
  90. package/dist/detect.d.ts.map +1 -1
  91. package/dist/detect.js +141 -6
  92. package/dist/detect.js.map +1 -1
  93. package/dist/export/markdown.d.ts +12 -0
  94. package/dist/export/markdown.d.ts.map +1 -0
  95. package/dist/export/markdown.js +142 -0
  96. package/dist/export/markdown.js.map +1 -0
  97. package/dist/govern.d.ts +67 -3
  98. package/dist/govern.d.ts.map +1 -1
  99. package/dist/govern.js +1011 -219
  100. package/dist/govern.js.map +1 -1
  101. package/dist/headless.d.ts +41 -2
  102. package/dist/headless.d.ts.map +1 -1
  103. package/dist/headless.js +58 -7
  104. package/dist/headless.js.map +1 -1
  105. package/dist/index.d.ts +33 -25
  106. package/dist/index.d.ts.map +1 -1
  107. package/dist/index.js +30 -23
  108. package/dist/index.js.map +1 -1
  109. package/dist/ledger/client.d.ts.map +1 -1
  110. package/dist/ledger/client.js +57 -46
  111. package/dist/ledger/client.js.map +1 -1
  112. package/dist/ledger/engine.d.ts.map +1 -1
  113. package/dist/ledger/engine.js +22 -13
  114. package/dist/ledger/engine.js.map +1 -1
  115. package/dist/ledger/pricing.d.ts +54 -0
  116. package/dist/ledger/pricing.d.ts.map +1 -1
  117. package/dist/ledger/pricing.js +128 -8
  118. package/dist/ledger/pricing.js.map +1 -1
  119. package/dist/shared/types.d.ts +154 -340
  120. package/dist/shared/types.d.ts.map +1 -1
  121. package/dist/shared/types.js +67 -17
  122. package/dist/shared/types.js.map +1 -1
  123. package/dist/snapshot/checkpoint.d.ts.map +1 -1
  124. package/dist/snapshot/checkpoint.js +20 -2
  125. package/dist/snapshot/checkpoint.js.map +1 -1
  126. package/dist/streaming.d.ts +13 -3
  127. package/dist/streaming.d.ts.map +1 -1
  128. package/dist/streaming.js +88 -30
  129. package/dist/streaming.js.map +1 -1
  130. package/dist/supply-chain/sign.d.ts.map +1 -1
  131. package/dist/supply-chain/sign.js +3 -0
  132. package/dist/supply-chain/sign.js.map +1 -1
  133. package/package.json +6 -4
@@ -2,6 +2,11 @@
2
2
  // Copyright 2026 Usertools, Inc.
3
3
  import { z } from "zod";
4
4
  // ── Config schema ──
5
+ /** Per-1k-token rate pair (usertokens). Shared by customRates and local.* rates. */
6
+ const RateSchema = z.object({
7
+ inputPer1k: z.number().finite().nonnegative(),
8
+ outputPer1k: z.number().finite().nonnegative(),
9
+ });
5
10
  export const TrustConfigSchema = z.object({
6
11
  budget: z.number().int().positive(),
7
12
  tier: z.enum(["free", "mini", "pro", "mega", "ultra"]).default("mini"),
@@ -15,19 +20,19 @@ export const TrustConfigSchema = z.object({
15
20
  enabled: z.boolean().default(false),
16
21
  vetoThreshold: z.enum(["low", "medium", "high", "critical"]).default("high"),
17
22
  })
18
- .default({}),
23
+ .prefault({}),
19
24
  circuitBreaker: z
20
25
  .object({
21
26
  failureThreshold: z.number().int().default(5),
22
27
  resetTimeout: z.number().int().default(60_000),
23
28
  })
24
- .default({}),
29
+ .prefault({}),
25
30
  patterns: z
26
31
  .object({
27
32
  enabled: z.boolean().default(true),
28
33
  feedProxy: z.boolean().default(false),
29
34
  })
30
- .default({}),
35
+ .prefault({}),
31
36
  audit: z
32
37
  .object({
33
38
  rotation: z.enum(["daily", "weekly", "none"]).default("daily"),
@@ -37,13 +42,13 @@ export const TrustConfigSchema = z.object({
37
42
  // legacy fail-open behavior (degraded receipt, money still moves).
38
43
  failClosed: z.boolean().default(false),
39
44
  })
40
- .default({}),
45
+ .prefault({}),
41
46
  tigerbeetle: z
42
47
  .object({
43
48
  addresses: z.array(z.string()).default(["127.0.0.1:3001"]),
44
49
  clusterId: z.number().int().nonnegative().default(0),
45
50
  })
46
- .default({}),
51
+ .prefault({}),
47
52
  providers: z
48
53
  .array(z.object({
49
54
  name: z.string(),
@@ -51,12 +56,51 @@ export const TrustConfigSchema = z.object({
51
56
  }))
52
57
  .default([]),
53
58
  pricing: z.enum(["recommended", "custom"]).default("recommended"),
54
- customRates: z
55
- .record(z.string(), z.object({
56
- inputPer1k: z.number().finite().nonnegative(),
57
- outputPer1k: z.number().finite().nonnegative(),
59
+ customRates: z.record(z.string(), RateSchema).optional(),
60
+ /**
61
+ * Endpoint matchers consumed by classifyEndpoint(). First match wins.
62
+ * match forms: scheme URL ("http://gpu-box:8000", matched by origin),
63
+ * leading-star hostname suffix ("*.gpu.internal"), or bare hostname ("gpu-box").
64
+ */
65
+ endpoints: z
66
+ .array(z.object({
67
+ match: z.string().min(1),
68
+ class: z.enum(["local", "cloud"]).default("local"),
69
+ runtime: z
70
+ .enum(["ollama", "vllm", "lmstudio", "openai-compat", "unknown"])
71
+ .default("unknown"),
58
72
  }))
59
- .optional(),
73
+ .default([]),
74
+ /** Local (zero-marginal-cost) settlement scope. */
75
+ local: z
76
+ .object({
77
+ /** Loopback hosts (localhost/127.0.0.1/[::1]) classify as local without config. */
78
+ autoDetectLoopback: z.boolean().default(true),
79
+ /**
80
+ * Rate applied to any local-scope model with no local.models match. Default {0,0}:
81
+ * with the >=1 floor, every local call settles at exactly 1 nominal usertoken.
82
+ */
83
+ defaultRate: RateSchema.default({ inputPer1k: 0, outputPer1k: 0 }),
84
+ /**
85
+ * Denomination of local rates: "nominal" (bookkeeping units) or "amortized-usd"
86
+ * (operator's GPU-chargeback rate; 1 usertoken = $0.0001 as usual).
87
+ */
88
+ rateClass: z.enum(["nominal", "amortized-usd"]).default("nominal"),
89
+ /**
90
+ * Per-model local rates. Keys: exact model strings or trailing-* globs
91
+ * ("llama3.3*", "*"). Exact match beats glob; longest glob wins.
92
+ */
93
+ models: z.record(z.string(), RateSchema).default({}),
94
+ /** Inject stream_options:{include_usage:true} into local openai-kind streams. */
95
+ injectUsageOptions: z.boolean().default(true),
96
+ })
97
+ .prefault({}),
98
+ /**
99
+ * Cloud-scope policy when a model misses customRates, PRICING_TABLE, and prefix match.
100
+ * "fallback" = silent sonnet-class rate (legacy) · "warn" = same rate + one-time warn +
101
+ * receipt.meter.rateSource "fallback" · "deny" = PolicyDeniedError before the PENDING hold.
102
+ */
103
+ unknownModelPolicy: z.enum(["fallback", "warn", "deny"]).default("warn"),
60
104
  supplyChain: z
61
105
  .object({
62
106
  // SC-3: fail-closed by default. A skill with no registered signing key
@@ -81,7 +125,7 @@ export const TrustConfigSchema = z.object({
81
125
  .default(["llm_call", "tool_use", "file_read"]),
82
126
  requireSignature: z.boolean().default(true),
83
127
  })
84
- .default({}),
128
+ .prefault({}),
85
129
  vault: z
86
130
  .object({
87
131
  enabled: z.boolean().default(false),
@@ -95,34 +139,40 @@ export const TrustConfigSchema = z.object({
95
139
  .default([]),
96
140
  expiresAt: z.string().datetime().nullable().default(null),
97
141
  })
98
- .default({}),
142
+ .prefault({}),
99
143
  })
100
- .default({}),
144
+ .prefault({}),
101
145
  anomaly: z
102
146
  .object({
103
147
  enabled: z.boolean().default(false),
104
148
  tokenRate: z
105
149
  .object({
106
150
  thresholdTokPerSec: z.number().positive().default(500),
151
+ /** Local-scope threshold (fast local GPU inference legitimately exceeds 500). */
152
+ localThresholdTokPerSec: z.number().positive().default(5000),
153
+ /** Per-model threshold overrides. Keys: exact model or trailing-* glob. */
154
+ perModel: z.record(z.string(), z.number().positive()).default({}),
107
155
  windowMs: z.number().int().positive().default(2_000),
108
156
  consecutiveWindows: z.number().int().positive().default(3),
109
157
  })
110
- .default({}),
158
+ .prefault({}),
111
159
  spendVelocity: z
112
160
  .object({
113
161
  thresholdDollarsPerMin: z.number().positive().default(1.0),
162
+ /** Local-scope velocity threshold in nominal usertokens per minute. */
163
+ localThresholdUsertokensPerMin: z.number().positive().default(10_000),
114
164
  windowMs: z.number().int().positive().default(10_000),
115
165
  })
116
- .default({}),
166
+ .prefault({}),
117
167
  injectionCascade: z
118
168
  .object({
119
169
  eventCount: z.number().int().positive().default(3),
120
170
  windowMs: z.number().int().positive().default(60_000),
121
171
  })
122
- .default({}),
172
+ .prefault({}),
123
173
  cooldownMs: z.number().int().nonnegative().default(30_000),
124
174
  })
125
- .default({}),
175
+ .prefault({}),
126
176
  });
127
177
  export const SkillManifestSchema = z.object({
128
178
  version: z.literal(1),
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/shared/types.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA8BxB,sBAAsB;AACtB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACnC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACtE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAClC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC;IACtD,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAC/D,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAC3D,KAAK,EAAE,CAAC;SACN,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACnC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;KAC5E,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;IACb,cAAc,EAAE,CAAC;SACf,MAAM,CAAC;QACP,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;KAC9C,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;SACT,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAClC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;KACrC,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;IACb,KAAK,EAAE,CAAC;SACN,MAAM,CAAC;QACP,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QAC9D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;QAC5C,2EAA2E;QAC3E,8EAA8E;QAC9E,mEAAmE;QACnE,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;KACtC,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;IACb,WAAW,EAAE,CAAC;SACZ,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,CAAC;QAC1D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;KACpD,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;IACb,SAAS,EAAE,CAAC;SACV,KAAK,CACL,CAAC,CAAC,MAAM,CAAC;QACR,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;KACvC,CAAC,CACF;SACA,OAAO,CAAC,EAAE,CAAC;IACb,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACjE,WAAW,EAAE,CAAC;SACZ,MAAM,CACN,CAAC,CAAC,MAAM,EAAE,EACV,CAAC,CAAC,MAAM,CAAC;QACR,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;QAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;KAC9C,CAAC,CACF;SACA,QAAQ,EAAE;IACZ,WAAW,EAAE,CAAC;SACZ,MAAM,CAAC;QACP,uEAAuE;QACvE,mEAAmE;QACnE,uCAAuC;QACvC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAClC,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;QAClD,0EAA0E;QAC1E,6EAA6E;QAC7E,6EAA6E;QAC7E,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5F,kBAAkB,EAAE,CAAC;aACnB,KAAK,CACL,CAAC,CAAC,IAAI,CAAC;YACN,UAAU;YACV,UAAU;YACV,WAAW;YACX,YAAY;YACZ,eAAe;YACf,gBAAgB;YAChB,mBAAmB;SACnB,CAAC,CACF;aACA,OAAO,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAChD,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;KAC3C,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;IACb,KAAK,EAAE,CAAC;SACN,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACnC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACvD,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QACtC,YAAY,EAAE,CAAC;aACb,MAAM,CAAC;YACP,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,OAAO,EAAE,CAAC;iBACR,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC;iBACtF,OAAO,CAAC,EAAE,CAAC;YACb,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;SACzD,CAAC;aACD,OAAO,CAAC,EAAE,CAAC;KACb,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;IACb,OAAO,EAAE,CAAC;SACR,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACnC,SAAS,EAAE,CAAC;aACV,MAAM,CAAC;YACP,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;YACtD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;YACpD,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;SAC1D,CAAC;aACD,OAAO,CAAC,EAAE,CAAC;QACb,aAAa,EAAE,CAAC;aACd,MAAM,CAAC;YACP,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;YAC1D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;SACrD,CAAC;aACD,OAAO,CAAC,EAAE,CAAC;QACb,gBAAgB,EAAE,CAAC;aACjB,MAAM,CAAC;YACP,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;YAClD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;SACrD,CAAC;aACD,OAAO,CAAC,EAAE,CAAC;QACb,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;KAC1D,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;CACb,CAAC,CAAC;AAmKH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACrB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,4BAA4B,EAAE,wCAAwC,CAAC;IAC5F,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IACpC,WAAW,EAAE,CAAC,CAAC,KAAK,CACnB,CAAC,CAAC,IAAI,CAAC;QACN,UAAU;QACV,UAAU;QACV,WAAW;QACX,YAAY;QACZ,eAAe;QACf,gBAAgB;QAChB,mBAAmB;KACnB,CAAC,CACF;IACD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,4BAA4B,CAAC;IAC3E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,iDAAiD,CAAC;IACjG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,wCAAwC,CAAC;CACvF,CAAC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/shared/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkpoint.d.ts","sourceRoot":"","sources":["../../src/snapshot/checkpoint.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,SAAS,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC9B,0EAA0E;IAC1E,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAwHD;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAoD3F;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACpC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC,CAsEf;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CA2B9E"}
1
+ {"version":3,"file":"checkpoint.d.ts","sourceRoot":"","sources":["../../src/snapshot/checkpoint.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,SAAS,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC9B,0EAA0E;IAC1E,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAoID;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAoD3F;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACpC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC,CA2Ef;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CA2B9E"}
@@ -1,7 +1,7 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
2
  // Copyright 2026 Usertools, Inc.
3
3
  import { existsSync } from "node:fs";
4
- import { mkdir, readFile, readdir, rename, rm, writeFile } from "node:fs/promises";
4
+ import { mkdir, readdir, readFile, rename, rm, writeFile } from "node:fs/promises";
5
5
  import { dirname, join, relative, resolve } from "node:path";
6
6
  import { withAuditWriterLock } from "../audit/chain.js";
7
7
  // ── Constants ──
@@ -21,6 +21,15 @@ const INCLUDED_PATHS = new Set([
21
21
  ]);
22
22
  /** Never captured: advisory lock file living inside audit/. */
23
23
  const NEVER_CAPTURE = new Set([".audit-writer.lock"]);
24
+ /**
25
+ * Never captured NOR restored: external-anchoring state (mirror of the
26
+ * append-only anchor store, identity.json with the durable anchorSeq
27
+ * high-water, outbox). This bookkeeping is MONOTONIC by contract — rolling it
28
+ * back with a snapshot would make the emitter re-mint anchorSeqs the store
29
+ * already holds, publishing divergent records at occupied positions:
30
+ * permanent, undeletable fork evidence that condemns an honest vault.
31
+ */
32
+ const ANCHORS_REL_DIR = "audit/anchors";
24
33
  const LOCK_FILE_NAME = ".audit-writer.lock";
25
34
  // ── Internals ──
26
35
  /**
@@ -39,6 +48,9 @@ async function collectFiles(basePath, currentPath) {
39
48
  const fullPath = join(currentPath, entry.name);
40
49
  const relPath = relative(basePath, fullPath);
41
50
  if (entry.isDirectory()) {
51
+ // Anchoring state is monotonic — never snapshot it (see ANCHORS_REL_DIR).
52
+ if (relPath === ANCHORS_REL_DIR)
53
+ continue;
42
54
  const nested = await collectFiles(basePath, fullPath);
43
55
  results.push(...nested);
44
56
  }
@@ -167,7 +179,7 @@ export async function restoreSnapshot(vaultPath, name, opts) {
167
179
  const payload = JSON.parse(raw);
168
180
  const entries = Object.entries(payload.entries);
169
181
  const rollsBackAudit = entries.some(([p]) => p.startsWith("audit/"));
170
- const hasLedger = Object.prototype.hasOwnProperty.call(payload.entries, "spend-ledger.json");
182
+ const hasLedger = Object.hasOwn(payload.entries, "spend-ledger.json");
171
183
  // Desync guard 1: a snapshot that rolls the audit chain back MUST carry the money
172
184
  // mirror, or restoring audit alone deletes spend events whose money still exists.
173
185
  if (rollsBackAudit && !hasLedger) {
@@ -195,6 +207,12 @@ export async function restoreSnapshot(vaultPath, name, opts) {
195
207
  // Never restore an advisory lock captured by an older snapshot.
196
208
  if (relPath.split("/").pop() === LOCK_FILE_NAME)
197
209
  continue;
210
+ // Never restore anchoring state, even from snapshots captured
211
+ // before this exclusion existed — rolling back the anchorSeq
212
+ // high-water re-mints occupied store positions (permanent fork
213
+ // evidence). The live anchors/ dir stays as-is.
214
+ if (relPath === ANCHORS_REL_DIR || relPath.startsWith(`${ANCHORS_REL_DIR}/`))
215
+ continue;
198
216
  const fullPath = join(vaultPath, relPath);
199
217
  const resolvedPath = resolve(fullPath);
200
218
  if (!resolvedPath.startsWith(`${resolvedVault}/`)) {
@@ -1 +1 @@
1
- {"version":3,"file":"checkpoint.js","sourceRoot":"","sources":["../../src/snapshot/checkpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkpoint.js","sourceRoot":"","sources":["../../src/snapshot/checkpoint.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,19 @@
6
6
  * the yielded data.
7
7
  *
8
8
  * Provider-specific extraction:
9
- * - Anthropic: message_start (input_tokens), message_delta (output_tokens)
10
- * - OpenAI: usage field on final chunk (prompt_tokens, completion_tokens)
11
- * - Google: usageMetadata field (promptTokenCount, candidatesTokenCount)
9
+ * - Anthropic: message_start (input_tokens), message_delta (output_tokens)
10
+ * incremental fields on distinct chunk types, accumulated as before.
11
+ * - OpenAI chat.completions: usage field (prompt_tokens, completion_tokens)
12
+ * REPLACE-WITH-LATEST: every usage-bearing chunk is an absolute snapshot.
13
+ * vLLM's continuous_usage_stats stamps RUNNING totals on every chunk, so
14
+ * summing would multiply-count (M2 design decision 5.2 / plan Task 2).
15
+ * - OpenAI Responses (Task 3, A6/A7): usage arrives ONLY on the terminal
16
+ * `response.completed` event, nested at `event.response.usage.{input_tokens,
17
+ * output_tokens}` — a SEPARATE field map from chat.completions, keyed on the
18
+ * structurally disjoint Responses event shape (no top-level `usage`, no
19
+ * `include_usage` opt-in). A terminal event lacking usage settles at ESTIMATE.
20
+ * - Google: usageMetadata field (promptTokenCount, candidatesTokenCount) —
21
+ * same replace-with-latest snapshot semantics.
12
22
  *
13
23
  * Usage:
14
24
  * ```ts
@@ -1 +1 @@
1
- {"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAIrE,MAAM,WAAW,WAAW;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;IAC1D,gEAAgE;IAChE,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CAC/B;AAqDD;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,sBAAsB,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAExD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC3B,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,EACxB,IAAI,EAAE,aAAa,EACnB,UAAU,EAAE,CAAC,UAAU,EAAE,gBAAgB,KAAK,IAAI,EAClD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,EAC5D,OAAO,CAAC,EAAE,SAAS,GACjB,aAAa,CAAC,CAAC,CAAC,CAElB;AAiED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACrC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,EACxB,IAAI,EAAE,aAAa,EACnB,cAAc,EAAE,CAAC,UAAU,EAAE,gBAAgB,KAAK,OAAO,CAAC,YAAY,CAAC,EACvE,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,EAClE,OAAO,CAAC,EAAE,SAAS,GACjB,cAAc,CAAC,CAAC,CAAC,CA+BnB"}
1
+ {"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAIrE,MAAM,WAAW,WAAW;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC;IAC1D,gEAAgE;IAChE,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CAC/B;AA+FD;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,sBAAsB,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAExD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC3B,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,EACxB,IAAI,EAAE,aAAa,EACnB,UAAU,EAAE,CAAC,UAAU,EAAE,gBAAgB,KAAK,IAAI,EAClD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,EAC5D,OAAO,CAAC,EAAE,SAAS,GACjB,aAAa,CAAC,CAAC,CAAC,CAElB;AAkFD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACrC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,EACxB,IAAI,EAAE,aAAa,EACnB,cAAc,EAAE,CAAC,UAAU,EAAE,gBAAgB,KAAK,OAAO,CAAC,YAAY,CAAC,EACvE,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,EAClE,OAAO,CAAC,EAAE,SAAS,GACjB,cAAc,CAAC,CAAC,CAAC,CA+BnB"}
package/dist/streaming.js CHANGED
@@ -1,46 +1,86 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
2
  // Copyright 2026 Usertools, Inc.
3
3
  // ── Token extraction ──
4
- function extractTokensFromChunk(chunk, kind) {
4
+ /** Anthropic chunks carry incremental fields on distinct chunk types. */
5
+ function extractAnthropicTokens(chunk) {
5
6
  if (chunk == null || typeof chunk !== "object") {
6
7
  return { inputTokens: 0, outputTokens: 0 };
7
8
  }
8
9
  const c = chunk;
9
- if (kind === "anthropic") {
10
- if (c.type === "message_start" && c.message != null && typeof c.message === "object") {
11
- const msg = c.message;
12
- if (msg.usage != null && typeof msg.usage === "object") {
13
- const usage = msg.usage;
14
- return { inputTokens: usage.input_tokens ?? 0, outputTokens: 0 };
15
- }
10
+ if (c.type === "message_start" && c.message != null && typeof c.message === "object") {
11
+ const msg = c.message;
12
+ if (msg.usage != null && typeof msg.usage === "object") {
13
+ const usage = msg.usage;
14
+ return { inputTokens: usage.input_tokens ?? 0, outputTokens: 0 };
16
15
  }
17
- if (c.type === "message_delta") {
18
- if (c.usage != null && typeof c.usage === "object") {
19
- const usage = c.usage;
20
- return { inputTokens: 0, outputTokens: usage.output_tokens ?? 0 };
21
- }
16
+ }
17
+ if (c.type === "message_delta") {
18
+ if (c.usage != null && typeof c.usage === "object") {
19
+ const usage = c.usage;
20
+ return { inputTokens: 0, outputTokens: usage.output_tokens ?? 0 };
22
21
  }
23
- return { inputTokens: 0, outputTokens: 0 };
24
22
  }
23
+ return { inputTokens: 0, outputTokens: 0 };
24
+ }
25
+ /** A7 sanitation: non-finite or negative provider counts are clamped to 0. */
26
+ function sanitizeCount(value) {
27
+ return typeof value === "number" && Number.isFinite(value) && value > 0 ? value : 0;
28
+ }
29
+ /**
30
+ * Extract an ABSOLUTE usage snapshot from an OpenAI/Google chunk, or null when
31
+ * the chunk carries no usage object at all. A present-but-empty usage object IS
32
+ * a snapshot (explicit zeros count as reported usage — A11).
33
+ */
34
+ function extractUsageSnapshot(chunk, kind) {
35
+ if (chunk == null || typeof chunk !== "object")
36
+ return null;
37
+ const c = chunk;
25
38
  if (kind === "openai") {
39
+ // Task 3 (A6/A7): OpenAI Responses API. Usage rides on the TERMINAL event,
40
+ // nested as `event.response.usage.{input_tokens,output_tokens}`. All three
41
+ // terminal types carry it: `response.completed`, and — equally terminal —
42
+ // `response.incomplete` (max_output_tokens / content filter) and
43
+ // `response.failed`. This shape is structurally disjoint from a chat.completions
44
+ // chunk (which carries a TOP-LEVEL `usage` with prompt_tokens/completion_tokens
45
+ // and never a `response.*` type), so the two field maps stay separate and never
46
+ // collide. A terminal event WITHOUT usage (an early failure, or a local runtime
47
+ // that omits it) yields null → settles at ESTIMATE (A7), never a false zero-cost
48
+ // snapshot.
49
+ if (c.type === "response.completed" ||
50
+ c.type === "response.incomplete" ||
51
+ c.type === "response.failed") {
52
+ const resp = c.response;
53
+ if (resp != null && typeof resp === "object") {
54
+ const usage = resp.usage;
55
+ if (usage != null && typeof usage === "object") {
56
+ const u = usage;
57
+ return {
58
+ inputTokens: sanitizeCount(u.input_tokens),
59
+ outputTokens: sanitizeCount(u.output_tokens),
60
+ };
61
+ }
62
+ }
63
+ return null;
64
+ }
65
+ // chat.completions absolute snapshot (prompt_tokens/completion_tokens).
26
66
  if (c.usage != null && typeof c.usage === "object") {
27
67
  const usage = c.usage;
28
68
  return {
29
- inputTokens: usage.prompt_tokens ?? 0,
30
- outputTokens: usage.completion_tokens ?? 0,
69
+ inputTokens: sanitizeCount(usage.prompt_tokens),
70
+ outputTokens: sanitizeCount(usage.completion_tokens),
31
71
  };
32
72
  }
33
- return { inputTokens: 0, outputTokens: 0 };
73
+ return null;
34
74
  }
35
75
  // google
36
76
  if (c.usageMetadata != null && typeof c.usageMetadata === "object") {
37
77
  const meta = c.usageMetadata;
38
78
  return {
39
- inputTokens: meta.promptTokenCount ?? 0,
40
- outputTokens: meta.candidatesTokenCount ?? 0,
79
+ inputTokens: sanitizeCount(meta.promptTokenCount),
80
+ outputTokens: sanitizeCount(meta.candidatesTokenCount),
41
81
  };
42
82
  }
43
- return { inputTokens: 0, outputTokens: 0 };
83
+ return null;
44
84
  }
45
85
  /**
46
86
  * Wraps a provider stream with token counting.
@@ -64,19 +104,37 @@ async function* wrapStreamImpl(stream, kind, onComplete, onError, onChunk) {
64
104
  let errored = false;
65
105
  try {
66
106
  for await (const chunk of stream) {
67
- const tokens = extractTokensFromChunk(chunk, kind);
68
107
  let deltaInput = 0;
69
108
  let deltaOutput = 0;
70
- // Use latest non-zero value (providers report cumulative or final)
71
- if (tokens.inputTokens > 0) {
72
- deltaInput = Math.max(0, tokens.inputTokens - inputTokens);
73
- inputTokens = tokens.inputTokens;
74
- usageReported = true;
109
+ if (kind === "openai" || kind === "google") {
110
+ // M2 REPLACE-WITH-LATEST (design decision 5.2 / plan Task 2): each
111
+ // usage-bearing chunk is an absolute snapshot, assigned wholesale.
112
+ // Fixes double-counting under vLLM continuous_usage_stats (running
113
+ // totals on every chunk); a decreasing final total takes the last
114
+ // chunk's values (A7); explicit zeros count as reported usage (A11).
115
+ const snapshot = extractUsageSnapshot(chunk, kind);
116
+ if (snapshot != null) {
117
+ deltaInput = Math.max(0, snapshot.inputTokens - inputTokens);
118
+ deltaOutput = Math.max(0, snapshot.outputTokens - outputTokens);
119
+ inputTokens = snapshot.inputTokens;
120
+ outputTokens = snapshot.outputTokens;
121
+ usageReported = true;
122
+ }
75
123
  }
76
- if (tokens.outputTokens > 0) {
77
- deltaOutput = Math.max(0, tokens.outputTokens - outputTokens);
78
- outputTokens = tokens.outputTokens;
79
- usageReported = true;
124
+ else {
125
+ // Anthropic: message_start carries input, message_delta carries output —
126
+ // genuinely incremental chunk types; keep the latest non-zero value.
127
+ const tokens = extractAnthropicTokens(chunk);
128
+ if (tokens.inputTokens > 0) {
129
+ deltaInput = Math.max(0, tokens.inputTokens - inputTokens);
130
+ inputTokens = tokens.inputTokens;
131
+ usageReported = true;
132
+ }
133
+ if (tokens.outputTokens > 0) {
134
+ deltaOutput = Math.max(0, tokens.outputTokens - outputTokens);
135
+ outputTokens = tokens.outputTokens;
136
+ usageReported = true;
137
+ }
80
138
  }
81
139
  // Run hook BEFORE yielding so a throw aborts before the consumer sees it.
82
140
  if (onChunk != null) {
@@ -1 +1 @@
1
- {"version":3,"file":"streaming.js","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streaming.js","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../../src/supply-chain/sign.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;GAEG;AACH,wBAAgB,eAAe,IAAI;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAU3E;AAuBD;;GAEG;AACH,wBAAgB,YAAY,CAC3B,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC,EACrE,aAAa,EAAE,MAAM,GACnB,aAAa,CA+Bf;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAqCvF"}
1
+ {"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../../src/supply-chain/sign.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;GAEG;AACH,wBAAgB,eAAe,IAAI;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAU3E;AAuBD;;GAEG;AACH,wBAAgB,YAAY,CAC3B,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC,EACrE,aAAa,EAAE,MAAM,GACnB,aAAa,CAkCf;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAqCvF"}
@@ -48,6 +48,9 @@ export function signManifest(manifest, privateKeyHex) {
48
48
  format: "der",
49
49
  type: "pkcs8",
50
50
  });
51
+ // Node derives the public key from a private KeyObject at runtime (documented
52
+ // behavior of createPublicKey). @types/node 26 dropped KeyObject from the input
53
+ // union, so this is a types-only assertion — the runtime call is unchanged.
51
54
  const pubKeyObj = createPublicKey(privKeyObj);
52
55
  const pubKeyDerActual = pubKeyObj.export({ type: "spki", format: "der" });
53
56
  const publicKeyHex = pubKeyDerActual.subarray(12).toString("hex");
@@ -1 +1 @@
1
- {"version":3,"file":"sign.js","sourceRoot":"","sources":["../../src/supply-chain/sign.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sign.js","sourceRoot":"","sources":["../../src/supply-chain/sign.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "usertrust",
3
- "version": "1.4.0",
3
+ "version": "2.0.0",
4
4
  "description": "Financial governance for AI agents. Every LLM call becomes an immutable, auditable transaction.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Usertools, Inc. <hello@usertools.ai> (https://usertrust.ai)",
@@ -49,15 +49,17 @@
49
49
  "@clack/prompts": "^1.1.0",
50
50
  "minimatch": "^10.2.4",
51
51
  "picocolors": "^1.1.1",
52
- "tigerbeetle-node": "^0.16.0",
52
+ "tigerbeetle-node": "^0.17.9",
53
53
  "yaml": "^2.8.3",
54
- "zod": "^3.23.0"
54
+ "zod": "^4.4.3"
55
55
  },
56
56
  "scripts": {
57
57
  "build": "tsc",
58
58
  "prepublishOnly": "tsc"
59
59
  },
60
- "files": ["dist"],
60
+ "files": [
61
+ "dist"
62
+ ],
61
63
  "peerDependencies": {
62
64
  "@anthropic-ai/sdk": ">=0.30.0",
63
65
  "openai": ">=4.70.0"