@vorionsys/atsf-core 0.4.0 → 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.
@@ -23,28 +23,28 @@ declare const ruleSchema: z.ZodObject<{
23
23
  value: z.ZodUnknown;
24
24
  }, "strip", z.ZodTypeAny, {
25
25
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
26
- value?: unknown;
27
26
  field?: string;
27
+ value?: unknown;
28
28
  }, {
29
29
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
30
- value?: unknown;
31
30
  field?: string;
31
+ value?: unknown;
32
32
  }>, "many">>;
33
33
  }, "strip", z.ZodTypeAny, {
34
34
  intentType?: string | string[];
35
35
  entityType?: string | string[];
36
36
  conditions?: {
37
37
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
38
- value?: unknown;
39
38
  field?: string;
39
+ value?: unknown;
40
40
  }[];
41
41
  }, {
42
42
  intentType?: string | string[];
43
43
  entityType?: string | string[];
44
44
  conditions?: {
45
45
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
46
- value?: unknown;
47
46
  field?: string;
47
+ value?: unknown;
48
48
  }[];
49
49
  }>;
50
50
  evaluate: z.ZodArray<z.ZodObject<{
@@ -90,7 +90,6 @@ declare const ruleSchema: z.ZodObject<{
90
90
  }>, "many">;
91
91
  metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
92
92
  }, "strip", z.ZodTypeAny, {
93
- metadata?: Record<string, unknown>;
94
93
  name?: string;
95
94
  enabled?: boolean;
96
95
  when?: {
@@ -98,8 +97,8 @@ declare const ruleSchema: z.ZodObject<{
98
97
  entityType?: string | string[];
99
98
  conditions?: {
100
99
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
101
- value?: unknown;
102
100
  field?: string;
101
+ value?: unknown;
103
102
  }[];
104
103
  };
105
104
  priority?: number;
@@ -116,8 +115,8 @@ declare const ruleSchema: z.ZodObject<{
116
115
  autoDenyOnTimeout?: boolean;
117
116
  };
118
117
  }[];
119
- }, {
120
118
  metadata?: Record<string, unknown>;
119
+ }, {
121
120
  name?: string;
122
121
  enabled?: boolean;
123
122
  when?: {
@@ -125,8 +124,8 @@ declare const ruleSchema: z.ZodObject<{
125
124
  entityType?: string | string[];
126
125
  conditions?: {
127
126
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
128
- value?: unknown;
129
127
  field?: string;
128
+ value?: unknown;
130
129
  }[];
131
130
  };
132
131
  priority?: number;
@@ -143,6 +142,7 @@ declare const ruleSchema: z.ZodObject<{
143
142
  autoDenyOnTimeout?: boolean;
144
143
  };
145
144
  }[];
145
+ metadata?: Record<string, unknown>;
146
146
  }>;
147
147
  /**
148
148
  * Schema for rule namespace
@@ -166,28 +166,28 @@ declare const namespaceSchema: z.ZodObject<{
166
166
  value: z.ZodUnknown;
167
167
  }, "strip", z.ZodTypeAny, {
168
168
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
169
- value?: unknown;
170
169
  field?: string;
170
+ value?: unknown;
171
171
  }, {
172
172
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
173
- value?: unknown;
174
173
  field?: string;
174
+ value?: unknown;
175
175
  }>, "many">>;
176
176
  }, "strip", z.ZodTypeAny, {
177
177
  intentType?: string | string[];
178
178
  entityType?: string | string[];
179
179
  conditions?: {
180
180
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
181
- value?: unknown;
182
181
  field?: string;
182
+ value?: unknown;
183
183
  }[];
184
184
  }, {
185
185
  intentType?: string | string[];
186
186
  entityType?: string | string[];
187
187
  conditions?: {
188
188
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
189
- value?: unknown;
190
189
  field?: string;
190
+ value?: unknown;
191
191
  }[];
192
192
  }>;
193
193
  evaluate: z.ZodArray<z.ZodObject<{
@@ -233,7 +233,6 @@ declare const namespaceSchema: z.ZodObject<{
233
233
  }>, "many">;
234
234
  metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
235
235
  }, "strip", z.ZodTypeAny, {
236
- metadata?: Record<string, unknown>;
237
236
  name?: string;
238
237
  enabled?: boolean;
239
238
  when?: {
@@ -241,8 +240,8 @@ declare const namespaceSchema: z.ZodObject<{
241
240
  entityType?: string | string[];
242
241
  conditions?: {
243
242
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
244
- value?: unknown;
245
243
  field?: string;
244
+ value?: unknown;
246
245
  }[];
247
246
  };
248
247
  priority?: number;
@@ -259,8 +258,8 @@ declare const namespaceSchema: z.ZodObject<{
259
258
  autoDenyOnTimeout?: boolean;
260
259
  };
261
260
  }[];
262
- }, {
263
261
  metadata?: Record<string, unknown>;
262
+ }, {
264
263
  name?: string;
265
264
  enabled?: boolean;
266
265
  when?: {
@@ -268,8 +267,8 @@ declare const namespaceSchema: z.ZodObject<{
268
267
  entityType?: string | string[];
269
268
  conditions?: {
270
269
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
271
- value?: unknown;
272
270
  field?: string;
271
+ value?: unknown;
273
272
  }[];
274
273
  };
275
274
  priority?: number;
@@ -286,13 +285,13 @@ declare const namespaceSchema: z.ZodObject<{
286
285
  autoDenyOnTimeout?: boolean;
287
286
  };
288
287
  }[];
288
+ metadata?: Record<string, unknown>;
289
289
  }>, "many">;
290
290
  }, "strip", z.ZodTypeAny, {
291
291
  version?: string;
292
292
  namespace?: string;
293
293
  description?: string;
294
294
  rules?: {
295
- metadata?: Record<string, unknown>;
296
295
  name?: string;
297
296
  enabled?: boolean;
298
297
  when?: {
@@ -300,8 +299,8 @@ declare const namespaceSchema: z.ZodObject<{
300
299
  entityType?: string | string[];
301
300
  conditions?: {
302
301
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
303
- value?: unknown;
304
302
  field?: string;
303
+ value?: unknown;
305
304
  }[];
306
305
  };
307
306
  priority?: number;
@@ -318,13 +317,13 @@ declare const namespaceSchema: z.ZodObject<{
318
317
  autoDenyOnTimeout?: boolean;
319
318
  };
320
319
  }[];
320
+ metadata?: Record<string, unknown>;
321
321
  }[];
322
322
  }, {
323
323
  version?: string;
324
324
  namespace?: string;
325
325
  description?: string;
326
326
  rules?: {
327
- metadata?: Record<string, unknown>;
328
327
  name?: string;
329
328
  enabled?: boolean;
330
329
  when?: {
@@ -332,8 +331,8 @@ declare const namespaceSchema: z.ZodObject<{
332
331
  entityType?: string | string[];
333
332
  conditions?: {
334
333
  operator?: "equals" | "not_equals" | "greater_than" | "less_than" | "greater_than_or_equal" | "less_than_or_equal" | "in" | "not_in" | "contains" | "not_contains" | "matches" | "exists" | "not_exists";
335
- value?: unknown;
336
334
  field?: string;
335
+ value?: unknown;
337
336
  }[];
338
337
  };
339
338
  priority?: number;
@@ -350,6 +349,7 @@ declare const namespaceSchema: z.ZodObject<{
350
349
  autoDenyOnTimeout?: boolean;
351
350
  };
352
351
  }[];
352
+ metadata?: Record<string, unknown>;
353
353
  }[];
354
354
  }>;
355
355
  export type RuleDefinition = z.infer<typeof ruleSchema>;
@@ -180,7 +180,7 @@ declare const configSchema: z.ZodObject<{
180
180
  decayRate?: number;
181
181
  };
182
182
  env?: "production" | "development" | "staging";
183
- logLevel?: "error" | "warn" | "info" | "debug";
183
+ logLevel?: "info" | "error" | "warn" | "debug";
184
184
  redis?: {
185
185
  port?: number;
186
186
  host?: string;
@@ -232,7 +232,7 @@ declare const configSchema: z.ZodObject<{
232
232
  decayRate?: number;
233
233
  };
234
234
  env?: "production" | "development" | "staging";
235
- logLevel?: "error" | "warn" | "info" | "debug";
235
+ logLevel?: "info" | "error" | "warn" | "debug";
236
236
  redis?: {
237
237
  port?: number;
238
238
  host?: string;
package/dist/index.d.ts CHANGED
@@ -17,6 +17,7 @@ export { POLYGON_NETWORKS, type NetworkName, type ChainAnchorConfig, type ProofT
17
17
  export * from './provenance/index.js';
18
18
  export * from './trust-engine/index.js';
19
19
  export * from './trust-engine/trust-verifier.js';
20
+ export * from './trust-engine/scheduled-verifier.js';
20
21
  export * from './layers/index.js';
21
22
  export * from './layers/implementations/index.js';
22
23
  export * from './arbitration/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AAGH,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EACL,aAAa,EACb,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,YAAY,EACZ,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,IAAI,EACJ,aAAa,EACb,aAAa,IAAI,kBAAkB,EACnC,UAAU,EACV,iBAAiB,EACjB,gBAAgB,IAAI,qBAAqB,GAC1C,MAAM,kBAAkB,CAAC;AAG1B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EACL,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,YAAY,EAEjB,MAAM,EACN,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAElB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAG1B,cAAc,uBAAuB,CAAC;AAGtC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,kCAAkC,CAAC;AAGjD,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mCAAmC,CAAC;AAGlD,cAAc,wBAAwB,CAAC;AAGvC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,sBAAsB,CAAC;AAIrC,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACT,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,gCAAgC,CAAC;AACxC,YAAY,EACV,eAAe,EACf,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AAGxC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,mBAAmB,CAAC;AAGlC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACL,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAG3B,cAAc,6BAA6B,CAAC;AAG5C,cAAc,yBAAyB,CAAC;AAGxC,eAAO,MAAM,OAAO,UAAU,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG5D,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AAGH,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EACL,aAAa,EACb,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,YAAY,EACZ,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,IAAI,EACJ,aAAa,EACb,aAAa,IAAI,kBAAkB,EACnC,UAAU,EACV,iBAAiB,EACjB,gBAAgB,IAAI,qBAAqB,GAC1C,MAAM,kBAAkB,CAAC;AAG1B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EACL,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,YAAY,EAEjB,MAAM,EACN,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAElB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAG1B,cAAc,uBAAuB,CAAC;AAGtC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,kCAAkC,CAAC;AAGjD,cAAc,sCAAsC,CAAC;AAGrD,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mCAAmC,CAAC;AAGlD,cAAc,wBAAwB,CAAC;AAGvC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,sBAAsB,CAAC;AAIrC,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACT,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,gCAAgC,CAAC;AACxC,YAAY,EACV,eAAe,EACf,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AAGxC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,mBAAmB,CAAC;AAGlC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACL,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAG3B,cAAc,6BAA6B,CAAC;AAG5C,cAAc,yBAAyB,CAAC;AAGxC,eAAO,MAAM,OAAO,UAAU,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG5D,cAAc,qBAAqB,CAAC"}
package/dist/index.js CHANGED
@@ -32,6 +32,8 @@ export * from './provenance/index.js';
32
32
  export * from './trust-engine/index.js';
33
33
  // Trust Verifier — cryptographic state commitment & independent verification
34
34
  export * from './trust-engine/trust-verifier.js';
35
+ // Scheduled Verifier — periodic trust integrity checks
36
+ export * from './trust-engine/scheduled-verifier.js';
35
37
  // Typed Security Layers
36
38
  export * from './layers/index.js';
37
39
  // Concrete Layer Implementations (L0-L5: Input Validation Tier)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;;;GAMG;AAEH,iCAAiC;AACjC,cAAc,mBAAmB,CAAC;AAElC,8EAA8E;AAC9E,OAAO,EACL,aAAa,EACb,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,YAAY,EACZ,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAU3B,iBAAiB;AACjB,cAAc,mBAAmB,CAAC;AAElC,sBAAsB;AACtB,cAAc,oBAAoB,CAAC;AAEnC,8BAA8B;AAC9B,cAAc,sBAAsB,CAAC;AAErC,oBAAoB;AACpB,cAAc,kBAAkB,CAAC;AAEjC,mHAAmH;AACnH,OAAO,EACL,gBAAgB;AAKhB,4DAA4D;AAC5D,MAAM,EACN,eAAe,EACf,iBAAiB,EACjB,kBAAkB;AAClB,2DAA2D;AAC3D,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAE1B,4BAA4B;AAC5B,cAAc,uBAAuB,CAAC;AAEtC,eAAe;AACf,cAAc,yBAAyB,CAAC;AAExC,6EAA6E;AAC7E,cAAc,kCAAkC,CAAC;AAEjD,wBAAwB;AACxB,cAAc,mBAAmB,CAAC;AAElC,gEAAgE;AAChE,cAAc,mCAAmC,CAAC;AAElD,gCAAgC;AAChC,cAAc,wBAAwB,CAAC;AAEvC,0BAA0B;AAC1B,cAAc,wBAAwB,CAAC;AAEvC,oCAAoC;AACpC,cAAc,sBAAsB,CAAC;AAErC,qFAAqF;AACrF,uHAAuH;AACvH,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAiB/B,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,gCAAgC,CAAC;AAMxC,oBAAoB;AACpB,cAAc,wBAAwB,CAAC;AAEvC,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAErC,qBAAqB;AACrB,cAAc,mBAAmB,CAAC;AAElC,kCAAkC;AAClC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACL,uBAAuB,EAGvB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B,yCAAyC;AACzC,cAAc,6BAA6B,CAAC;AAE5C,uDAAuD;AACvD,cAAc,yBAAyB,CAAC;AAExC,UAAU;AACV,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,8BAA8B;AAC9B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE5D,kCAAkC;AAClC,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;;;GAMG;AAEH,iCAAiC;AACjC,cAAc,mBAAmB,CAAC;AAElC,8EAA8E;AAC9E,OAAO,EACL,aAAa,EACb,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,YAAY,EACZ,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAU3B,iBAAiB;AACjB,cAAc,mBAAmB,CAAC;AAElC,sBAAsB;AACtB,cAAc,oBAAoB,CAAC;AAEnC,8BAA8B;AAC9B,cAAc,sBAAsB,CAAC;AAErC,oBAAoB;AACpB,cAAc,kBAAkB,CAAC;AAEjC,mHAAmH;AACnH,OAAO,EACL,gBAAgB;AAKhB,4DAA4D;AAC5D,MAAM,EACN,eAAe,EACf,iBAAiB,EACjB,kBAAkB;AAClB,2DAA2D;AAC3D,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAE1B,4BAA4B;AAC5B,cAAc,uBAAuB,CAAC;AAEtC,eAAe;AACf,cAAc,yBAAyB,CAAC;AAExC,6EAA6E;AAC7E,cAAc,kCAAkC,CAAC;AAEjD,uDAAuD;AACvD,cAAc,sCAAsC,CAAC;AAErD,wBAAwB;AACxB,cAAc,mBAAmB,CAAC;AAElC,gEAAgE;AAChE,cAAc,mCAAmC,CAAC;AAElD,gCAAgC;AAChC,cAAc,wBAAwB,CAAC;AAEvC,0BAA0B;AAC1B,cAAc,wBAAwB,CAAC;AAEvC,oCAAoC;AACpC,cAAc,sBAAsB,CAAC;AAErC,qFAAqF;AACrF,uHAAuH;AACvH,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAiB/B,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,gCAAgC,CAAC;AAMxC,oBAAoB;AACpB,cAAc,wBAAwB,CAAC;AAEvC,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAErC,qBAAqB;AACrB,cAAc,mBAAmB,CAAC;AAElC,kCAAkC;AAClC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACL,uBAAuB,EAGvB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B,yCAAyC;AACzC,cAAc,6BAA6B,CAAC;AAE5C,uDAAuD;AACvD,cAAc,yBAAyB,CAAC;AAExC,UAAU;AACV,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,8BAA8B;AAC9B,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE5D,kCAAkC;AAClC,cAAc,qBAAqB,CAAC"}
@@ -122,5 +122,31 @@ declare function inferShape(length: number): {
122
122
  rows: number;
123
123
  cols: number;
124
124
  };
125
- export { topKSingularValues, selectLayers, inferShape, cosineSimilarity, l2Distance };
125
+ /**
126
+ * Quantize a Float64Array of singular values into discrete bins.
127
+ *
128
+ * Different hardware (CPU vs GPU, different GPU architectures) produces
129
+ * slightly different floating-point results for the same model weights.
130
+ * Quantization ensures that fingerprints computed on different hardware
131
+ * still match when the model is the same.
132
+ *
133
+ * Method: each value is rounded to the nearest bin center.
134
+ * binIndex = round(value / binWidth)
135
+ * quantized = binIndex × binWidth
136
+ *
137
+ * Default: 1024 bins across the observed value range (adaptive).
138
+ * This gives ~0.1% precision — enough to absorb FP rounding differences
139
+ * while still detecting genuine model changes.
140
+ *
141
+ * @param values - Raw singular values
142
+ * @param numBins - Number of quantization bins (default: 1024)
143
+ * @returns Quantized values in a new Float64Array
144
+ */
145
+ export declare function quantizeSingularValues(values: Float64Array, numBins?: number): Float64Array;
146
+ /**
147
+ * Quantize a fingerprint's singular values in-place for cross-hardware comparison.
148
+ * Returns a new fingerprint with quantized values and updated hash.
149
+ */
150
+ export declare function quantizeFingerprint(fingerprint: ParameSphereFingerprint, numBins?: number): ParameSphereFingerprint;
151
+ export { topKSingularValues, selectLayers, inferShape, cosineSimilarity, l2Distance, };
126
152
  //# sourceMappingURL=paramesphere-engine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"paramesphere-engine.d.ts","sourceRoot":"","sources":["../../src/paramesphere/paramesphere-engine.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,YAAY,CAAC;AAwBpB;;;;;;;;;;;;;;GAcG;AACH,iBAAS,kBAAkB,CACzB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,MAAM,GACR,YAAY,CA+Dd;AAoED,iBAAS,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,MAAM,CAYlE;AAED,iBAAS,UAAU,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,MAAM,CAQ5D;AAMD;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBlE;AAMD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAwC;IACxD,OAAO,CAAC,KAAK,CAAiC;IAE9C,8EAA8E;IAC9E,OAAO,CAAC,kBAAkB,CAAwC;IAElE,gEAAgE;IAChE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgC;IACtD,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;gBAElC,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC;IAmBhD;;;;;;;;;OASG;IACH,kBAAkB,CAChB,OAAO,EAAE,YAAY,EAAE,EACvB,eAAe,CAAC,EAAE,eAAe,EAAE,GAClC,uBAAuB;IA0B1B;;;;;OAKG;IACH,iBAAiB,CACf,UAAU,EAAE,YAAY,EAAE,EAC1B,eAAe,CAAC,EAAE,eAAe,EAAE,GAClC,uBAAuB;IA4C1B;;OAEG;IACH,mBAAmB,CACjB,CAAC,EAAE,uBAAuB,EAC1B,CAAC,EAAE,uBAAuB,GACzB,qBAAqB;IAsBxB;;;;;OAKG;IACH,WAAW,CAAC,WAAW,EAAE,uBAAuB,GAAG,IAAI;IAWvD;;;;;;;;OAQG;IACH,UAAU,CAAC,OAAO,EAAE,uBAAuB,GAAG,WAAW;IAazD;;;;;;OAMG;IACG,eAAe,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,WAAW,CAAC;IAU7E;;OAEG;IACH,UAAU,IAAI,IAAI;IAMlB,oDAAoD;IACpD,QAAQ,IAAI,SAAS,uBAAuB,EAAE;IAQ9C,OAAO,CAAC,gBAAgB;IA8CxB,+EAA+E;IAC/E,OAAO,CAAC,uBAAuB;IAiB/B,OAAO,CAAC,gBAAgB;IAkBxB,gFAAgF;IAChF,OAAO,CAAC,mBAAmB;IA6B3B,sEAAsE;IACtE,OAAO,CAAC,qBAAqB;IAmB7B;;;;;;;;;;;;;OAaG;IACH,0BAA0B,CACxB,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,cAAc,GAAE,MAAY,EAC5B,OAAO,GAAE,yBAAqD,GAC7D,mBAAmB;CA2CvB;AAwBD;;;;;GAKG;AACH,iBAAS,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAWlE;AAGD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"paramesphere-engine.d.ts","sourceRoot":"","sources":["../../src/paramesphere/paramesphere-engine.ts"],"names":[],"mappings":"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"}
@@ -605,6 +605,87 @@ function inferShape(length) {
605
605
  }
606
606
  return { rows: 1, cols: length };
607
607
  }
608
+ // ---------------------------------------------------------------------------
609
+ // Quantization Binning — Cross-Hardware Reproducibility
610
+ // ---------------------------------------------------------------------------
611
+ /**
612
+ * Quantize a Float64Array of singular values into discrete bins.
613
+ *
614
+ * Different hardware (CPU vs GPU, different GPU architectures) produces
615
+ * slightly different floating-point results for the same model weights.
616
+ * Quantization ensures that fingerprints computed on different hardware
617
+ * still match when the model is the same.
618
+ *
619
+ * Method: each value is rounded to the nearest bin center.
620
+ * binIndex = round(value / binWidth)
621
+ * quantized = binIndex × binWidth
622
+ *
623
+ * Default: 1024 bins across the observed value range (adaptive).
624
+ * This gives ~0.1% precision — enough to absorb FP rounding differences
625
+ * while still detecting genuine model changes.
626
+ *
627
+ * @param values - Raw singular values
628
+ * @param numBins - Number of quantization bins (default: 1024)
629
+ * @returns Quantized values in a new Float64Array
630
+ */
631
+ export function quantizeSingularValues(values, numBins = 1024) {
632
+ if (values.length === 0)
633
+ return new Float64Array(0);
634
+ if (numBins < 2)
635
+ return Float64Array.from(values);
636
+ // Compute range
637
+ let min = Infinity;
638
+ let max = -Infinity;
639
+ for (let i = 0; i < values.length; i++) {
640
+ if (values[i] < min)
641
+ min = values[i];
642
+ if (values[i] > max)
643
+ max = values[i];
644
+ }
645
+ const range = max - min;
646
+ if (range === 0)
647
+ return Float64Array.from(values); // all identical
648
+ // Compute significant digits from range and numBins.
649
+ // Round each value to a fixed number of decimal places determined by
650
+ // the bin resolution. This is hardware-independent because the rounding
651
+ // target is absolute (not relative to min/max of this specific array).
652
+ const resolution = range / numBins;
653
+ const decimalPlaces = Math.max(0, Math.ceil(-Math.log10(resolution)));
654
+ const factor = Math.pow(10, decimalPlaces);
655
+ const result = new Float64Array(values.length);
656
+ for (let i = 0; i < values.length; i++) {
657
+ result[i] = Math.round(values[i] * factor) / factor;
658
+ }
659
+ return result;
660
+ }
661
+ /**
662
+ * Quantize a fingerprint's singular values in-place for cross-hardware comparison.
663
+ * Returns a new fingerprint with quantized values and updated hash.
664
+ */
665
+ export function quantizeFingerprint(fingerprint, numBins = 1024) {
666
+ const quantizedSV = quantizeSingularValues(fingerprint.singularValues, numBins);
667
+ // Rebuild the vector: quantized singular values + original activation stats
668
+ // The vector layout is: [K singular values per layer...] + [activation stats...]
669
+ const svLength = quantizedSV.length;
670
+ const statsLength = fingerprint.vector.length - svLength;
671
+ const newVector = new Float64Array(fingerprint.vector.length);
672
+ newVector.set(quantizedSV, 0);
673
+ if (statsLength > 0) {
674
+ newVector.set(fingerprint.vector.slice(svLength), svLength);
675
+ }
676
+ // Recompute hash
677
+ const hashInput = Buffer.from(newVector.buffer);
678
+ const sha256 = nodeCrypto.createHash('sha256').update(hashInput).digest('hex');
679
+ return {
680
+ ...fingerprint,
681
+ vector: newVector,
682
+ singularValues: quantizedSV,
683
+ sha256,
684
+ sha3_256: fingerprint.sha3_256 !== undefined
685
+ ? nodeCrypto.createHash('sha3-256').update(hashInput).digest('hex')
686
+ : undefined,
687
+ };
688
+ }
608
689
  // Export helpers for testing
609
- export { topKSingularValues, selectLayers, inferShape, cosineSimilarity, l2Distance };
690
+ export { topKSingularValues, selectLayers, inferShape, cosineSimilarity, l2Distance, };
610
691
  //# sourceMappingURL=paramesphere-engine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"paramesphere-engine.js","sourceRoot":"","sources":["../../src/paramesphere/paramesphere-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paramesphere-engine.js","sourceRoot":"","sources":["../../src/paramesphere/paramesphere-engine.ts"],"names":[],"mappings":"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"}