@vorionsys/atsf-core 0.2.2 → 0.2.3
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/CHANGELOG.md +3 -3
- package/README.md +77 -11
- package/dist/api/index.d.ts +1 -1
- package/dist/api/index.js +1 -1
- package/dist/api/server.d.ts +5 -2
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +186 -149
- package/dist/api/server.js.map +1 -1
- package/dist/arbitration/index.d.ts +4 -4
- package/dist/arbitration/index.d.ts.map +1 -1
- package/dist/arbitration/index.js +46 -41
- package/dist/arbitration/index.js.map +1 -1
- package/dist/arbitration/types.d.ts +10 -10
- package/dist/arbitration/types.d.ts.map +1 -1
- package/dist/basis/evaluator.d.ts +1 -1
- package/dist/basis/evaluator.d.ts.map +1 -1
- package/dist/basis/evaluator.js +56 -54
- package/dist/basis/evaluator.js.map +1 -1
- package/dist/basis/index.d.ts +3 -3
- package/dist/basis/index.js +3 -3
- package/dist/basis/parser.d.ts +16 -16
- package/dist/basis/parser.d.ts.map +1 -1
- package/dist/basis/parser.js +32 -25
- package/dist/basis/parser.js.map +1 -1
- package/dist/basis/types.d.ts +2 -2
- package/dist/chain/index.d.ts.map +1 -1
- package/dist/chain/index.js +16 -16
- package/dist/chain/index.js.map +1 -1
- package/dist/cognigate/index.d.ts +1 -1
- package/dist/cognigate/index.d.ts.map +1 -1
- package/dist/cognigate/index.js +44 -33
- package/dist/cognigate/index.js.map +1 -1
- package/dist/common/adapters.d.ts +18 -11
- package/dist/common/adapters.d.ts.map +1 -1
- package/dist/common/adapters.js +100 -79
- package/dist/common/adapters.js.map +1 -1
- package/dist/common/config.d.ts +67 -67
- package/dist/common/config.js +49 -49
- package/dist/common/config.js.map +1 -1
- package/dist/common/index.d.ts +4 -4
- package/dist/common/index.js +4 -4
- package/dist/common/logger.d.ts +1 -1
- package/dist/common/logger.js +8 -8
- package/dist/common/types.d.ts +8 -8
- package/dist/common/types.js +5 -5
- package/dist/containment/index.d.ts +3 -3
- package/dist/containment/index.d.ts.map +1 -1
- package/dist/containment/index.js +119 -105
- package/dist/containment/index.js.map +1 -1
- package/dist/containment/types.d.ts +11 -11
- package/dist/containment/types.d.ts.map +1 -1
- package/dist/contracts/index.d.ts +9 -9
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +59 -54
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/types.d.ts +12 -12
- package/dist/contracts/types.d.ts.map +1 -1
- package/dist/crewai/callback.d.ts +91 -0
- package/dist/crewai/callback.d.ts.map +1 -0
- package/dist/crewai/callback.js +271 -0
- package/dist/crewai/callback.js.map +1 -0
- package/dist/crewai/executor.d.ts +135 -0
- package/dist/crewai/executor.d.ts.map +1 -0
- package/dist/crewai/executor.js +381 -0
- package/dist/crewai/executor.js.map +1 -0
- package/dist/crewai/index.d.ts +12 -0
- package/dist/crewai/index.d.ts.map +1 -0
- package/dist/crewai/index.js +12 -0
- package/dist/crewai/index.js.map +1 -0
- package/dist/crewai/tools.d.ts +21 -0
- package/dist/crewai/tools.d.ts.map +1 -0
- package/dist/crewai/tools.js +164 -0
- package/dist/crewai/tools.js.map +1 -0
- package/dist/crewai/types.d.ts +139 -0
- package/dist/crewai/types.d.ts.map +1 -0
- package/dist/crewai/types.js +9 -0
- package/dist/crewai/types.js.map +1 -0
- package/dist/enforce/index.d.ts +48 -222
- package/dist/enforce/index.d.ts.map +1 -1
- package/dist/enforce/index.js +144 -47
- package/dist/enforce/index.js.map +1 -1
- package/dist/enforce/trust-aware-enforcement-service.d.ts +121 -0
- package/dist/enforce/trust-aware-enforcement-service.d.ts.map +1 -0
- package/dist/enforce/trust-aware-enforcement-service.js +601 -0
- package/dist/enforce/trust-aware-enforcement-service.js.map +1 -0
- package/dist/enforce/types.d.ts +234 -0
- package/dist/enforce/types.d.ts.map +1 -0
- package/dist/enforce/types.js +10 -0
- package/dist/enforce/types.js.map +1 -0
- package/dist/governance/fluid-workflow.d.ts +8 -8
- package/dist/governance/fluid-workflow.d.ts.map +1 -1
- package/dist/governance/fluid-workflow.js +114 -86
- package/dist/governance/fluid-workflow.js.map +1 -1
- package/dist/governance/index.d.ts +7 -7
- package/dist/governance/index.d.ts.map +1 -1
- package/dist/governance/index.js +81 -74
- package/dist/governance/index.js.map +1 -1
- package/dist/governance/proof-bridge.d.ts +6 -6
- package/dist/governance/proof-bridge.d.ts.map +1 -1
- package/dist/governance/proof-bridge.js +5 -5
- package/dist/governance/proof-bridge.js.map +1 -1
- package/dist/governance/types.d.ts +16 -9
- package/dist/governance/types.d.ts.map +1 -1
- package/dist/governance/types.js.map +1 -1
- package/dist/index.d.ts +29 -25
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33 -23
- package/dist/index.js.map +1 -1
- package/dist/intent/index.d.ts +21 -56
- package/dist/intent/index.d.ts.map +1 -1
- package/dist/intent/index.js +58 -24
- package/dist/intent/index.js.map +1 -1
- package/dist/intent/persistent-intent-service.d.ts +68 -0
- package/dist/intent/persistent-intent-service.d.ts.map +1 -0
- package/dist/intent/persistent-intent-service.js +277 -0
- package/dist/intent/persistent-intent-service.js.map +1 -0
- package/dist/intent/types.d.ts +69 -0
- package/dist/intent/types.d.ts.map +1 -0
- package/dist/intent/types.js +10 -0
- package/dist/intent/types.js.map +1 -0
- package/dist/intent-gateway/index.d.ts +522 -0
- package/dist/intent-gateway/index.d.ts.map +1 -0
- package/dist/intent-gateway/index.js +1499 -0
- package/dist/intent-gateway/index.js.map +1 -0
- package/dist/langchain/callback.d.ts +2 -2
- package/dist/langchain/callback.d.ts.map +1 -1
- package/dist/langchain/callback.js +30 -30
- package/dist/langchain/callback.js.map +1 -1
- package/dist/langchain/executor.d.ts +4 -4
- package/dist/langchain/executor.d.ts.map +1 -1
- package/dist/langchain/executor.js +82 -80
- package/dist/langchain/executor.js.map +1 -1
- package/dist/langchain/index.d.ts +5 -5
- package/dist/langchain/index.js +5 -5
- package/dist/langchain/tools.d.ts +1 -1
- package/dist/langchain/tools.d.ts.map +1 -1
- package/dist/langchain/tools.js +33 -33
- package/dist/langchain/tools.js.map +1 -1
- package/dist/langchain/types.d.ts +3 -3
- package/dist/langchain/types.d.ts.map +1 -1
- package/dist/layers/implementations/L0-request-format.d.ts +37 -0
- package/dist/layers/implementations/L0-request-format.d.ts.map +1 -0
- package/dist/layers/implementations/L0-request-format.js +218 -0
- package/dist/layers/implementations/L0-request-format.js.map +1 -0
- package/dist/layers/implementations/L1-input-size.d.ts +36 -0
- package/dist/layers/implementations/L1-input-size.d.ts.map +1 -0
- package/dist/layers/implementations/L1-input-size.js +160 -0
- package/dist/layers/implementations/L1-input-size.js.map +1 -0
- package/dist/layers/implementations/L2-charset-sanitizer.d.ts +28 -0
- package/dist/layers/implementations/L2-charset-sanitizer.d.ts.map +1 -0
- package/dist/layers/implementations/L2-charset-sanitizer.js +230 -0
- package/dist/layers/implementations/L2-charset-sanitizer.js.map +1 -0
- package/dist/layers/implementations/L3-schema-conformance.d.ts +47 -0
- package/dist/layers/implementations/L3-schema-conformance.d.ts.map +1 -0
- package/dist/layers/implementations/L3-schema-conformance.js +267 -0
- package/dist/layers/implementations/L3-schema-conformance.js.map +1 -0
- package/dist/layers/implementations/L4-injection-detector.d.ts +47 -0
- package/dist/layers/implementations/L4-injection-detector.d.ts.map +1 -0
- package/dist/layers/implementations/L4-injection-detector.js +260 -0
- package/dist/layers/implementations/L4-injection-detector.js.map +1 -0
- package/dist/layers/implementations/L5-rate-limiter.d.ts +51 -0
- package/dist/layers/implementations/L5-rate-limiter.d.ts.map +1 -0
- package/dist/layers/implementations/L5-rate-limiter.js +183 -0
- package/dist/layers/implementations/L5-rate-limiter.js.map +1 -0
- package/dist/layers/implementations/index.d.ts +16 -0
- package/dist/layers/implementations/index.d.ts.map +1 -0
- package/dist/layers/implementations/index.js +16 -0
- package/dist/layers/implementations/index.js.map +1 -0
- package/dist/layers/index.d.ts +3 -3
- package/dist/layers/index.d.ts.map +1 -1
- package/dist/layers/index.js +99 -71
- package/dist/layers/index.js.map +1 -1
- package/dist/layers/types.d.ts +16 -16
- package/dist/layers/types.d.ts.map +1 -1
- package/dist/persistence/file.d.ts +3 -3
- package/dist/persistence/file.d.ts.map +1 -1
- package/dist/persistence/file.js +32 -28
- package/dist/persistence/file.js.map +1 -1
- package/dist/persistence/index.d.ts +7 -7
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +18 -18
- package/dist/persistence/index.js.map +1 -1
- package/dist/persistence/memory.d.ts +3 -3
- package/dist/persistence/memory.d.ts.map +1 -1
- package/dist/persistence/memory.js +10 -8
- package/dist/persistence/memory.js.map +1 -1
- package/dist/persistence/sqlite.d.ts +3 -3
- package/dist/persistence/sqlite.d.ts.map +1 -1
- package/dist/persistence/sqlite.js +36 -36
- package/dist/persistence/sqlite.js.map +1 -1
- package/dist/persistence/supabase.d.ts +3 -3
- package/dist/persistence/supabase.d.ts.map +1 -1
- package/dist/persistence/supabase.js +41 -43
- package/dist/persistence/supabase.js.map +1 -1
- package/dist/persistence/types.d.ts +5 -5
- package/dist/phase6/ceiling.d.ts +5 -5
- package/dist/phase6/ceiling.d.ts.map +1 -1
- package/dist/phase6/ceiling.js +67 -34
- package/dist/phase6/ceiling.js.map +1 -1
- package/dist/phase6/context.d.ts +3 -3
- package/dist/phase6/context.d.ts.map +1 -1
- package/dist/phase6/context.js +91 -45
- package/dist/phase6/context.js.map +1 -1
- package/dist/phase6/index.d.ts +13 -13
- package/dist/phase6/index.d.ts.map +1 -1
- package/dist/phase6/index.js +16 -16
- package/dist/phase6/index.js.map +1 -1
- package/dist/phase6/presets.d.ts +2 -2
- package/dist/phase6/presets.d.ts.map +1 -1
- package/dist/phase6/presets.js +39 -33
- package/dist/phase6/presets.js.map +1 -1
- package/dist/phase6/provenance.d.ts +4 -4
- package/dist/phase6/provenance.d.ts.map +1 -1
- package/dist/phase6/provenance.js +42 -35
- package/dist/phase6/provenance.js.map +1 -1
- package/dist/phase6/role-gates/index.d.ts +2 -2
- package/dist/phase6/role-gates/index.js +2 -2
- package/dist/phase6/role-gates/kernel.d.ts.map +1 -1
- package/dist/phase6/role-gates/kernel.js +16 -16
- package/dist/phase6/role-gates/kernel.js.map +1 -1
- package/dist/phase6/role-gates/policy.d.ts +2 -2
- package/dist/phase6/role-gates/policy.js +6 -6
- package/dist/phase6/role-gates.d.ts +4 -4
- package/dist/phase6/role-gates.d.ts.map +1 -1
- package/dist/phase6/role-gates.js +80 -58
- package/dist/phase6/role-gates.js.map +1 -1
- package/dist/phase6/types.d.ts +35 -35
- package/dist/phase6/types.d.ts.map +1 -1
- package/dist/phase6/types.js +166 -66
- package/dist/phase6/types.js.map +1 -1
- package/dist/phase6/weight-presets/canonical.d.ts +2 -2
- package/dist/phase6/weight-presets/canonical.d.ts.map +1 -1
- package/dist/phase6/weight-presets/canonical.js +12 -12
- package/dist/phase6/weight-presets/canonical.js.map +1 -1
- package/dist/phase6/weight-presets/deltas.d.ts +2 -2
- package/dist/phase6/weight-presets/deltas.d.ts.map +1 -1
- package/dist/phase6/weight-presets/deltas.js +27 -27
- package/dist/phase6/weight-presets/deltas.js.map +1 -1
- package/dist/phase6/weight-presets/index.d.ts +4 -4
- package/dist/phase6/weight-presets/index.js +4 -4
- package/dist/phase6/weight-presets/merger.d.ts +3 -3
- package/dist/phase6/weight-presets/merger.d.ts.map +1 -1
- package/dist/phase6/weight-presets/merger.js +40 -44
- package/dist/phase6/weight-presets/merger.js.map +1 -1
- package/dist/proof/index.d.ts +3 -3
- package/dist/proof/index.d.ts.map +1 -1
- package/dist/proof/index.js +44 -38
- package/dist/proof/index.js.map +1 -1
- package/dist/proof/merkle.d.ts +3 -3
- package/dist/proof/merkle.d.ts.map +1 -1
- package/dist/proof/merkle.js +26 -25
- package/dist/proof/merkle.js.map +1 -1
- package/dist/proof/zk-proofs.d.ts +6 -6
- package/dist/proof/zk-proofs.d.ts.map +1 -1
- package/dist/proof/zk-proofs.js +42 -43
- package/dist/proof/zk-proofs.js.map +1 -1
- package/dist/provenance/index.d.ts +3 -3
- package/dist/provenance/index.d.ts.map +1 -1
- package/dist/provenance/index.js +19 -17
- package/dist/provenance/index.js.map +1 -1
- package/dist/provenance/types.d.ts +4 -4
- package/dist/provenance/types.d.ts.map +1 -1
- package/dist/sandbox-training/challenges.d.ts +1 -1
- package/dist/sandbox-training/challenges.d.ts.map +1 -1
- package/dist/sandbox-training/challenges.js +228 -228
- package/dist/sandbox-training/challenges.js.map +1 -1
- package/dist/sandbox-training/graduation.d.ts +1 -1
- package/dist/sandbox-training/graduation.d.ts.map +1 -1
- package/dist/sandbox-training/graduation.js +14 -15
- package/dist/sandbox-training/graduation.js.map +1 -1
- package/dist/sandbox-training/index.d.ts +9 -9
- package/dist/sandbox-training/index.d.ts.map +1 -1
- package/dist/sandbox-training/index.js +6 -6
- package/dist/sandbox-training/index.js.map +1 -1
- package/dist/sandbox-training/promotion-service.d.ts +4 -4
- package/dist/sandbox-training/promotion-service.d.ts.map +1 -1
- package/dist/sandbox-training/promotion-service.js +5 -5
- package/dist/sandbox-training/promotion-service.js.map +1 -1
- package/dist/sandbox-training/runner.d.ts +1 -1
- package/dist/sandbox-training/runner.d.ts.map +1 -1
- package/dist/sandbox-training/runner.js +74 -73
- package/dist/sandbox-training/runner.js.map +1 -1
- package/dist/sandbox-training/scorer.d.ts +4 -4
- package/dist/sandbox-training/scorer.js +5 -5
- package/dist/sandbox-training/types.d.ts +4 -4
- package/dist/sandbox-training/types.d.ts.map +1 -1
- package/dist/sandbox-training/types.js +11 -7
- package/dist/sandbox-training/types.js.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.d.ts +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.js +3 -4
- package/dist/trust-engine/ceiling-enforcement/audit.js.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/index.d.ts +2 -2
- package/dist/trust-engine/ceiling-enforcement/index.js +2 -2
- package/dist/trust-engine/ceiling-enforcement/kernel.d.ts +1 -1
- package/dist/trust-engine/ceiling-enforcement/kernel.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/kernel.js +1 -1
- package/dist/trust-engine/context-policy/enforcement.d.ts.map +1 -1
- package/dist/trust-engine/context-policy/factory.d.ts +1 -1
- package/dist/trust-engine/context-policy/factory.d.ts.map +1 -1
- package/dist/trust-engine/context-policy/factory.js +1 -1
- package/dist/trust-engine/context-policy/factory.js.map +1 -1
- package/dist/trust-engine/context-policy/index.d.ts +2 -2
- package/dist/trust-engine/context-policy/index.js +2 -2
- package/dist/trust-engine/creation-modifiers/index.d.ts +1 -1
- package/dist/trust-engine/creation-modifiers/index.js +1 -1
- package/dist/trust-engine/creation-modifiers/types.d.ts.map +1 -1
- package/dist/trust-engine/creation-modifiers/types.js +2 -3
- package/dist/trust-engine/creation-modifiers/types.js.map +1 -1
- package/dist/trust-engine/decay-profiles.d.ts +1 -1
- package/dist/trust-engine/decay-profiles.d.ts.map +1 -1
- package/dist/trust-engine/decay-profiles.js +4 -4
- package/dist/trust-engine/decay-profiles.js.map +1 -1
- package/dist/trust-engine/index.d.ts +111 -45
- package/dist/trust-engine/index.d.ts.map +1 -1
- package/dist/trust-engine/index.js +418 -61
- package/dist/trust-engine/index.js.map +1 -1
- package/dist/trust-engine/phase6-types.d.ts +10 -10
- package/dist/trust-engine/phase6-types.d.ts.map +1 -1
- package/dist/trust-engine/phase6-types.js +25 -23
- package/dist/trust-engine/phase6-types.js.map +1 -1
- package/dist/trust-engine/types.d.ts +77 -0
- package/dist/trust-engine/types.d.ts.map +1 -0
- package/dist/trust-engine/types.js +20 -0
- package/dist/trust-engine/types.js.map +1 -0
- package/package.json +5 -4
|
@@ -20,19 +20,19 @@ export const AXIOM_DELTA_PRESETS = {
|
|
|
20
20
|
*/
|
|
21
21
|
healthcare: [
|
|
22
22
|
{
|
|
23
|
-
metric:
|
|
23
|
+
metric: "cascadePrevention",
|
|
24
24
|
adjustment: 50,
|
|
25
|
-
reason:
|
|
25
|
+
reason: "Healthcare domain requires maximum cascade prevention",
|
|
26
26
|
},
|
|
27
27
|
{
|
|
28
|
-
metric:
|
|
28
|
+
metric: "behaviorStability",
|
|
29
29
|
adjustment: 30,
|
|
30
|
-
reason:
|
|
30
|
+
reason: "Healthcare requires consistent, predictable behavior",
|
|
31
31
|
},
|
|
32
32
|
{
|
|
33
|
-
metric:
|
|
33
|
+
metric: "executionEfficiency",
|
|
34
34
|
adjustment: -20,
|
|
35
|
-
reason:
|
|
35
|
+
reason: "Healthcare prioritizes safety over resource efficiency",
|
|
36
36
|
},
|
|
37
37
|
],
|
|
38
38
|
/**
|
|
@@ -43,19 +43,19 @@ export const AXIOM_DELTA_PRESETS = {
|
|
|
43
43
|
*/
|
|
44
44
|
finance: [
|
|
45
45
|
{
|
|
46
|
-
metric:
|
|
46
|
+
metric: "successRatio",
|
|
47
47
|
adjustment: 40,
|
|
48
|
-
reason:
|
|
48
|
+
reason: "Finance requires high success rate for transaction safety",
|
|
49
49
|
},
|
|
50
50
|
{
|
|
51
|
-
metric:
|
|
51
|
+
metric: "authorizationHistory",
|
|
52
52
|
adjustment: 30,
|
|
53
|
-
reason:
|
|
53
|
+
reason: "Finance requires strict authorization compliance",
|
|
54
54
|
},
|
|
55
55
|
{
|
|
56
|
-
metric:
|
|
56
|
+
metric: "behaviorStability",
|
|
57
57
|
adjustment: -10,
|
|
58
|
-
reason:
|
|
58
|
+
reason: "Finance agents adapt to market conditions",
|
|
59
59
|
},
|
|
60
60
|
],
|
|
61
61
|
/**
|
|
@@ -66,19 +66,19 @@ export const AXIOM_DELTA_PRESETS = {
|
|
|
66
66
|
*/
|
|
67
67
|
manufacturing: [
|
|
68
68
|
{
|
|
69
|
-
metric:
|
|
69
|
+
metric: "executionEfficiency",
|
|
70
70
|
adjustment: 50,
|
|
71
|
-
reason:
|
|
71
|
+
reason: "Manufacturing optimizes for throughput and resource utilization",
|
|
72
72
|
},
|
|
73
73
|
{
|
|
74
|
-
metric:
|
|
74
|
+
metric: "cascadePrevention",
|
|
75
75
|
adjustment: 20,
|
|
76
|
-
reason:
|
|
76
|
+
reason: "Manufacturing prevents production line cascades",
|
|
77
77
|
},
|
|
78
78
|
{
|
|
79
|
-
metric:
|
|
79
|
+
metric: "behaviorStability",
|
|
80
80
|
adjustment: -15,
|
|
81
|
-
reason:
|
|
81
|
+
reason: "Manufacturing behavior adapts to production parameters",
|
|
82
82
|
},
|
|
83
83
|
],
|
|
84
84
|
/**
|
|
@@ -89,19 +89,19 @@ export const AXIOM_DELTA_PRESETS = {
|
|
|
89
89
|
*/
|
|
90
90
|
research: [
|
|
91
91
|
{
|
|
92
|
-
metric:
|
|
92
|
+
metric: "behaviorStability",
|
|
93
93
|
adjustment: 40,
|
|
94
|
-
reason:
|
|
94
|
+
reason: "Research requires reproducible, consistent behavior",
|
|
95
95
|
},
|
|
96
96
|
{
|
|
97
|
-
metric:
|
|
97
|
+
metric: "successRatio",
|
|
98
98
|
adjustment: 20,
|
|
99
|
-
reason:
|
|
99
|
+
reason: "Research emphasizes successful experiments",
|
|
100
100
|
},
|
|
101
101
|
{
|
|
102
|
-
metric:
|
|
102
|
+
metric: "authorizationHistory",
|
|
103
103
|
adjustment: -15,
|
|
104
|
-
reason:
|
|
104
|
+
reason: "Research agents need autonomy for exploratory work",
|
|
105
105
|
},
|
|
106
106
|
],
|
|
107
107
|
};
|
|
@@ -137,10 +137,10 @@ export function validateDeltaAdjustments(canonicalWeights, deltas) {
|
|
|
137
137
|
totalAdjustment += delta.adjustment;
|
|
138
138
|
}
|
|
139
139
|
if (totalAdjustment < -1000) {
|
|
140
|
-
errors.push(
|
|
140
|
+
errors.push("Total delta adjustments cannot reduce weights below 0");
|
|
141
141
|
}
|
|
142
142
|
if (totalAdjustment > 1000) {
|
|
143
|
-
errors.push(
|
|
143
|
+
errors.push("Total delta adjustments cannot exceed 1000 additional points");
|
|
144
144
|
}
|
|
145
145
|
// Check individual metrics stay in valid range
|
|
146
146
|
const adjusted = applyDeltas(canonicalWeights, deltas);
|
|
@@ -168,7 +168,7 @@ export function getDeltasForDomain(domain) {
|
|
|
168
168
|
return preset.map((delta) => ({
|
|
169
169
|
...delta,
|
|
170
170
|
appliedAt: new Date(),
|
|
171
|
-
appliedBy:
|
|
171
|
+
appliedBy: "system",
|
|
172
172
|
domain,
|
|
173
173
|
}));
|
|
174
174
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deltas.js","sourceRoot":"","sources":["../../../src/phase6/weight-presets/deltas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAmCH;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC;;;;;OAKG;IACH,UAAU,EAAE;QACV;YACE,MAAM,EAAE,mBAA4B;YACpC,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,uDAAuD;SAChE;QACD;YACE,MAAM,EAAE,mBAA4B;YACpC,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,sDAAsD;SAC/D;QACD;YACE,MAAM,EAAE,qBAA8B;YACtC,UAAU,EAAE,CAAC,EAAE;YACf,MAAM,EAAE,wDAAwD;SACjE;KACF;IAED;;;;;OAKG;IACH,OAAO,EAAE;QACP;YACE,MAAM,EAAE,cAAuB;YAC/B,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,2DAA2D;SACpE;QACD;YACE,MAAM,EAAE,sBAA+B;YACvC,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,kDAAkD;SAC3D;QACD;YACE,MAAM,EAAE,mBAA4B;YACpC,UAAU,EAAE,CAAC,EAAE;YACf,MAAM,EAAE,2CAA2C;SACpD;KACF;IAED;;;;;OAKG;IACH,aAAa,EAAE;QACb;YACE,MAAM,EAAE,qBAA8B;YACtC,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,iEAAiE;SAC1E;QACD;YACE,MAAM,EAAE,mBAA4B;YACpC,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,iDAAiD;SAC1D;QACD;YACE,MAAM,EAAE,mBAA4B;YACpC,UAAU,EAAE,CAAC,EAAE;YACf,MAAM,EAAE,wDAAwD;SACjE;KACF;IAED;;;;;OAKG;IACH,QAAQ,EAAE;QACR;YACE,MAAM,EAAE,mBAA4B;YACpC,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,qDAAqD;SAC9D;QACD;YACE,MAAM,EAAE,cAAuB;YAC/B,UAAU,EAAE,EAAE;YACd,MAAM,EAAE,4CAA4C;SACrD;QACD;YACE,MAAM,EAAE,sBAA+B;YACvC,UAAU,EAAE,CAAC,EAAE;YACf,MAAM,EAAE,oDAAoD;SAC7D;KACF;CACO,CAAC;AAEX;;GAEG;AACH,MAAM,UAAU,UAAU,CACxB,gBAAwC,EACxC,KAAkB;IAElB,mBAAmB;IACnB,IAAI,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACpD,OAAO,gBAAgB,CAAC,CAAC,4BAA4B;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,EAAE,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAE5C,wCAAwC;IACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAC9E,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;IAElC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,gBAAwC,EACxC,MAAqB;IAErB,OAAO,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"deltas.js","sourceRoot":"","sources":["../../../src/phase6/weight-presets/deltas.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Q4: Weight Presets
|
|
3
|
-
* Hybrid weight system: canonical
|
|
3
|
+
* Hybrid weight system: canonical CAR weights + Axiom domain deltas
|
|
4
4
|
*/
|
|
5
|
-
export { WEIGHT_SUCCESS_RATIO, WEIGHT_AUTHORIZATION_HISTORY, WEIGHT_CASCADE_PREVENTION, WEIGHT_EXECUTION_EFFICIENCY, WEIGHT_BEHAVIOR_STABILITY, CANONICAL_TRUST_WEIGHTS, TOTAL_TRUST_WEIGHT, validateCanonicalWeights, getNormalizedWeight, getCanonicalWeightMetrics, type CanonicalWeightMetric, } from
|
|
6
|
-
export { AXIOM_DELTA_PRESETS, applyDelta, applyDeltas, validateDeltaAdjustments, getDeltasForDomain, recordWeightMerge, type WeightDelta, type WeightAdjustmentDirection, type WeightMergeRecord, } from
|
|
7
|
-
export { mergeWeights, mergeAndValidateWeights, createWeightAuditRecord, compareWeights, formatWeightsForDisplay, computeTrustScore, type MergeStrategy, type MergedTrustWeights, type WeightComputationAudit, } from
|
|
5
|
+
export { WEIGHT_SUCCESS_RATIO, WEIGHT_AUTHORIZATION_HISTORY, WEIGHT_CASCADE_PREVENTION, WEIGHT_EXECUTION_EFFICIENCY, WEIGHT_BEHAVIOR_STABILITY, CANONICAL_TRUST_WEIGHTS, TOTAL_TRUST_WEIGHT, validateCanonicalWeights, getNormalizedWeight, getCanonicalWeightMetrics, type CanonicalWeightMetric, } from "./canonical.js";
|
|
6
|
+
export { AXIOM_DELTA_PRESETS, applyDelta, applyDeltas, validateDeltaAdjustments, getDeltasForDomain, recordWeightMerge, type WeightDelta, type WeightAdjustmentDirection, type WeightMergeRecord, } from "./deltas.js";
|
|
7
|
+
export { mergeWeights, mergeAndValidateWeights, createWeightAuditRecord, compareWeights, formatWeightsForDisplay, computeTrustScore, type MergeStrategy, type MergedTrustWeights, type WeightComputationAudit, } from "./merger.js";
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Q4: Weight Presets
|
|
3
|
-
* Hybrid weight system: canonical
|
|
3
|
+
* Hybrid weight system: canonical CAR weights + Axiom domain deltas
|
|
4
4
|
*/
|
|
5
|
-
export { WEIGHT_SUCCESS_RATIO, WEIGHT_AUTHORIZATION_HISTORY, WEIGHT_CASCADE_PREVENTION, WEIGHT_EXECUTION_EFFICIENCY, WEIGHT_BEHAVIOR_STABILITY, CANONICAL_TRUST_WEIGHTS, TOTAL_TRUST_WEIGHT, validateCanonicalWeights, getNormalizedWeight, getCanonicalWeightMetrics, } from
|
|
6
|
-
export { AXIOM_DELTA_PRESETS, applyDelta, applyDeltas, validateDeltaAdjustments, getDeltasForDomain, recordWeightMerge, } from
|
|
7
|
-
export { mergeWeights, mergeAndValidateWeights, createWeightAuditRecord, compareWeights, formatWeightsForDisplay, computeTrustScore, } from
|
|
5
|
+
export { WEIGHT_SUCCESS_RATIO, WEIGHT_AUTHORIZATION_HISTORY, WEIGHT_CASCADE_PREVENTION, WEIGHT_EXECUTION_EFFICIENCY, WEIGHT_BEHAVIOR_STABILITY, CANONICAL_TRUST_WEIGHTS, TOTAL_TRUST_WEIGHT, validateCanonicalWeights, getNormalizedWeight, getCanonicalWeightMetrics, } from "./canonical.js";
|
|
6
|
+
export { AXIOM_DELTA_PRESETS, applyDelta, applyDeltas, validateDeltaAdjustments, getDeltasForDomain, recordWeightMerge, } from "./deltas.js";
|
|
7
|
+
export { mergeWeights, mergeAndValidateWeights, createWeightAuditRecord, compareWeights, formatWeightsForDisplay, computeTrustScore, } from "./merger.js";
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Q4: Weight Presets - Weight Merger
|
|
3
|
-
* Combines canonical
|
|
3
|
+
* Combines canonical CAR weights with Axiom deltas to produce final trust weights
|
|
4
4
|
*
|
|
5
5
|
* Architecture:
|
|
6
6
|
* - Deterministic merge process
|
|
@@ -8,11 +8,11 @@
|
|
|
8
8
|
* - Supports multiple merge strategies
|
|
9
9
|
* - Version tracking
|
|
10
10
|
*/
|
|
11
|
-
import { type WeightDelta } from
|
|
11
|
+
import { type WeightDelta } from "./deltas.js";
|
|
12
12
|
/**
|
|
13
13
|
* Merge strategy determines how weights are combined
|
|
14
14
|
*/
|
|
15
|
-
export type MergeStrategy =
|
|
15
|
+
export type MergeStrategy = "canonical" | "deltaOverride" | "blended";
|
|
16
16
|
/**
|
|
17
17
|
* Final merged weights result
|
|
18
18
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merger.d.ts","sourceRoot":"","sources":["../../../src/phase6/weight-presets/merger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,
|
|
1
|
+
{"version":3,"file":"merger.d.ts","sourceRoot":"","sources":["../../../src/phase6/weight-presets/merger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,eAAe,GAAG,SAAS,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,aAAa,CAAC;IACxB,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,aAAa,EAAE,WAAW,EAAE,CAAC;IAC7B,YAAY,EAAE,kBAAkB,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,MAAM,GAAE,WAAW,EAAO,EAC1B,QAAQ,GAAE,aAA+B,GACxC,kBAAkB,CA4DpB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,GAAE,WAAW,EAAO,EAC1B,QAAQ,GAAE,aAA+B,GACxC;IACD,OAAO,EAAE,kBAAkB,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CA+BA;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,gBAAgB,EAAE,kBAAkB,EACpC,aAAa,EAAE,WAAW,EAAE,EAC5B,YAAY,EAAE,kBAAkB,EAChC,QAAQ,GAAE,aAA+B,EACzC,OAAO,CAAC,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,GACd,sBAAsB,CAiBxB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,kBAAkB,EAChC,gBAAgB,GAAE,kBAA4C,GAC7D,MAAM,CACP,MAAM,EACN;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAC3E,CAsBA;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAsB3E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE;IACP,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;CAC3B,GACA,MAAM,CAUR"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Q4: Weight Presets - Weight Merger
|
|
3
|
-
* Combines canonical
|
|
3
|
+
* Combines canonical CAR weights with Axiom deltas to produce final trust weights
|
|
4
4
|
*
|
|
5
5
|
* Architecture:
|
|
6
6
|
* - Deterministic merge process
|
|
@@ -8,55 +8,51 @@
|
|
|
8
8
|
* - Supports multiple merge strategies
|
|
9
9
|
* - Version tracking
|
|
10
10
|
*/
|
|
11
|
-
import { CANONICAL_TRUST_WEIGHTS, TOTAL_TRUST_WEIGHT, getCanonicalWeightMetrics, } from
|
|
12
|
-
import { validateDeltaAdjustments } from
|
|
11
|
+
import { CANONICAL_TRUST_WEIGHTS, TOTAL_TRUST_WEIGHT, getCanonicalWeightMetrics, } from "./canonical.js";
|
|
12
|
+
import { validateDeltaAdjustments, } from "./deltas.js";
|
|
13
13
|
/**
|
|
14
14
|
* Merge canonical weights with delta adjustments
|
|
15
15
|
*/
|
|
16
|
-
export function mergeWeights(deltas = [], strategy =
|
|
16
|
+
export function mergeWeights(deltas = [], strategy = "deltaOverride") {
|
|
17
17
|
const canonical = CANONICAL_TRUST_WEIGHTS;
|
|
18
18
|
switch (strategy) {
|
|
19
|
-
case
|
|
19
|
+
case "canonical":
|
|
20
20
|
// Ignore deltas, return canonical
|
|
21
21
|
return { ...canonical };
|
|
22
|
-
case
|
|
23
|
-
|
|
24
|
-
{
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
if (delta.expiresAt && new Date() > delta.expiresAt) {
|
|
29
|
-
continue;
|
|
30
|
-
}
|
|
31
|
-
const metric = delta.metric;
|
|
32
|
-
adjusted[metric] = Math.max(0, adjusted[metric] + delta.adjustment);
|
|
22
|
+
case "deltaOverride": { // Apply deltas directly as overrides
|
|
23
|
+
const adjusted = { ...canonical };
|
|
24
|
+
for (const delta of deltas) {
|
|
25
|
+
// Check expiration
|
|
26
|
+
if (delta.expiresAt && new Date() > delta.expiresAt) {
|
|
27
|
+
continue;
|
|
33
28
|
}
|
|
29
|
+
const metric = delta.metric;
|
|
30
|
+
adjusted[metric] = Math.max(0, adjusted[metric] + delta.adjustment);
|
|
31
|
+
}
|
|
32
|
+
return adjusted;
|
|
33
|
+
}
|
|
34
|
+
case "blended": { // Blend canonical and deltas proportionally
|
|
35
|
+
const adjusted = { ...canonical };
|
|
36
|
+
const validDeltas = deltas.filter((d) => !d.expiresAt || new Date() <= d.expiresAt);
|
|
37
|
+
if (validDeltas.length === 0) {
|
|
34
38
|
return adjusted;
|
|
35
39
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
{
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
return adjusted;
|
|
43
|
-
}
|
|
44
|
-
// Average the adjustments across all deltas
|
|
45
|
-
const deltaMap = {};
|
|
46
|
-
for (const delta of validDeltas) {
|
|
47
|
-
const metric = delta.metric;
|
|
48
|
-
if (!deltaMap[metric]) {
|
|
49
|
-
deltaMap[metric] = [];
|
|
50
|
-
}
|
|
51
|
-
deltaMap[metric].push(delta.adjustment);
|
|
52
|
-
}
|
|
53
|
-
// Apply averaged adjustments
|
|
54
|
-
for (const [metric, adjustments] of Object.entries(deltaMap)) {
|
|
55
|
-
const avgAdjustment = adjustments.reduce((a, b) => a + b, 0) / adjustments.length;
|
|
56
|
-
adjusted[metric] = Math.max(0, adjusted[metric] + avgAdjustment);
|
|
40
|
+
// Average the adjustments across all deltas
|
|
41
|
+
const deltaMap = {};
|
|
42
|
+
for (const delta of validDeltas) {
|
|
43
|
+
const metric = delta.metric;
|
|
44
|
+
if (!deltaMap[metric]) {
|
|
45
|
+
deltaMap[metric] = [];
|
|
57
46
|
}
|
|
58
|
-
|
|
47
|
+
deltaMap[metric].push(delta.adjustment);
|
|
48
|
+
}
|
|
49
|
+
// Apply averaged adjustments
|
|
50
|
+
for (const [metric, adjustments] of Object.entries(deltaMap)) {
|
|
51
|
+
const avgAdjustment = adjustments.reduce((a, b) => a + b, 0) / adjustments.length;
|
|
52
|
+
adjusted[metric] = Math.max(0, adjusted[metric] + avgAdjustment);
|
|
59
53
|
}
|
|
54
|
+
return adjusted;
|
|
55
|
+
}
|
|
60
56
|
default:
|
|
61
57
|
throw new Error(`Unknown merge strategy: ${strategy}`);
|
|
62
58
|
}
|
|
@@ -64,7 +60,7 @@ export function mergeWeights(deltas = [], strategy = 'deltaOverride') {
|
|
|
64
60
|
/**
|
|
65
61
|
* Merge weights and validate the result
|
|
66
62
|
*/
|
|
67
|
-
export function mergeAndValidateWeights(deltas = [], strategy =
|
|
63
|
+
export function mergeAndValidateWeights(deltas = [], strategy = "deltaOverride") {
|
|
68
64
|
// Validate deltas first
|
|
69
65
|
const canonicalRecord = CANONICAL_TRUST_WEIGHTS;
|
|
70
66
|
const validation = validateDeltaAdjustments(canonicalRecord, deltas);
|
|
@@ -94,7 +90,7 @@ export function mergeAndValidateWeights(deltas = [], strategy = 'deltaOverride')
|
|
|
94
90
|
/**
|
|
95
91
|
* Create an audit record for weight computation
|
|
96
92
|
*/
|
|
97
|
-
export function createWeightAuditRecord(canonicalWeights, appliedDeltas, finalWeights, strategy =
|
|
93
|
+
export function createWeightAuditRecord(canonicalWeights, appliedDeltas, finalWeights, strategy = "deltaOverride", agentId, domain) {
|
|
98
94
|
const totalWeight = Object.values(finalWeights).reduce((sum, w) => sum + w, 0);
|
|
99
95
|
return {
|
|
100
96
|
timestamp: new Date(),
|
|
@@ -133,18 +129,18 @@ export function compareWeights(finalWeights, canonicalWeights = CANONICAL_TRUST_
|
|
|
133
129
|
*/
|
|
134
130
|
export function formatWeightsForDisplay(weights) {
|
|
135
131
|
const metrics = getCanonicalWeightMetrics();
|
|
136
|
-
const lines = [
|
|
132
|
+
const lines = ["Trust Weight Distribution:", ""];
|
|
137
133
|
for (const metric of metrics) {
|
|
138
|
-
const value = weights[metric.name.toLowerCase().replace(/ /g,
|
|
134
|
+
const value = weights[metric.name.toLowerCase().replace(/ /g, "")];
|
|
139
135
|
if (value !== undefined) {
|
|
140
136
|
const percentage = ((value / TOTAL_TRUST_WEIGHT) * 100).toFixed(1);
|
|
141
137
|
lines.push(`${metric.name.padEnd(25)} ${value.toString().padEnd(4)} pts (${percentage}%)`);
|
|
142
138
|
}
|
|
143
139
|
}
|
|
144
140
|
const total = Object.values(weights).reduce((sum, w) => sum + w, 0);
|
|
145
|
-
lines.push(
|
|
141
|
+
lines.push("");
|
|
146
142
|
lines.push(`Total: ${total} points`);
|
|
147
|
-
return lines.join(
|
|
143
|
+
return lines.join("\n");
|
|
148
144
|
}
|
|
149
145
|
/**
|
|
150
146
|
* Compute agent's final trust score using merged weights
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merger.js","sourceRoot":"","sources":["../../../src/phase6/weight-presets/merger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"merger.js","sourceRoot":"","sources":["../../../src/phase6/weight-presets/merger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,wBAAwB,GAEzB,MAAM,aAAa,CAAC;AAiCrB;;GAEG;AACH,MAAM,UAAU,YAAY,CAC1B,SAAwB,EAAE,EAC1B,WAA0B,eAAe;IAEzC,MAAM,SAAS,GAAG,uBAAuB,CAAC;IAE1C,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,WAAW;YACd,kCAAkC;YAClC,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC;QAE1B,KAAK,eAAe,CAAC,CAAC,CAAC,CAAC,qCAAqC;YAC3D,MAAM,QAAQ,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;YAClC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,mBAAmB;gBACnB,IAAI,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;oBACpD,SAAS;gBACX,CAAC;gBACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAkC,CAAC;gBACvD,QAAmC,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CACrD,CAAC,EACD,QAAQ,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CACpC,CAAC;YACJ,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,4CAA4C;YAC5D,MAAM,QAAQ,GAAG,EAAE,GAAG,SAAS,EAAE,CAAC;YAClC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC,SAAS,CACjD,CAAC;YAEF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,4CAA4C;YAC5C,MAAM,QAAQ,GAA6B,EAAE,CAAC;YAC9C,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAkC,CAAC;gBACxD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtB,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;gBACxB,CAAC;gBACD,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1C,CAAC;YAED,6BAA6B;YAC7B,KAAK,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7D,MAAM,aAAa,GACjB,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;gBAC7D,QAAmC,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CACrD,CAAC,EACD,QAAQ,CAAC,MAAkC,CAAC,GAAG,aAAa,CAC7D,CAAC;YACJ,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED;YACE,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,EAAE,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAAwB,EAAE,EAC1B,WAA0B,eAAe;IAMzC,wBAAwB;IACxB,MAAM,eAAe,GAAG,uBAAiD,CAAC;IAC1E,MAAM,UAAU,GAAG,wBAAwB,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAErE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO;YACL,OAAO,EAAE,EAAE,GAAG,uBAAuB,EAAE;YACvC,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC;IACJ,CAAC;IAED,gBAAgB;IAChB,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAE/C,gCAAgC;IAChC,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,qCAAqC;IACrC,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,iBAAiB,KAAK,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO;QACP,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC1B,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,gBAAoC,EACpC,aAA4B,EAC5B,YAAgC,EAChC,WAA0B,eAAe,EACzC,OAAgB,EAChB,MAAe;IAEf,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CACpD,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,EACnB,CAAC,CACF,CAAC;IAEF,OAAO;QACL,SAAS,EAAE,IAAI,IAAI,EAAE;QACrB,OAAO;QACP,MAAM;QACN,QAAQ;QACR,gBAAgB;QAChB,aAAa;QACb,YAAY;QACZ,WAAW;QACX,KAAK,EAAE,WAAW,IAAI,GAAG,IAAI,WAAW,IAAI,IAAI,EAAE,qBAAqB;KACxE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,YAAgC,EAChC,mBAAuC,uBAAuB;IAK9D,MAAM,UAAU,GAGZ,EAAE,CAAC;IAEP,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACnD,MAAM,GAAG,GAAG,MAAkC,CAAC;QAC/C,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC;QACxB,MAAM,aAAa,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1D,UAAU,CAAC,MAAM,CAAC,GAAG;YACnB,SAAS,EAAE,GAAG;YACd,KAAK,EAAE,GAAG;YACV,KAAK;YACL,aAAa;SACd,CAAC;IACJ,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAA2B;IACjE,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAEjD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,KAAK,GACT,OAAO,CACL,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAA6B,CACxE,CAAC;QACJ,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,GAAG,kBAAkB,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACnE,KAAK,CAAC,IAAI,CACR,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,UAAU,IAAI,CAC/E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;IAErC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAA2B,EAC3B,OAMC;IAED,MAAM,KAAK,GACT,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY;QAC3C,OAAO,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB;QAC3D,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB;QACrD,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB;QACzD,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAExD,kBAAkB;IAClB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC"}
|
package/dist/proof/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @packageDocumentation
|
|
8
8
|
*/
|
|
9
|
-
import type { Proof, Decision, Intent, ID } from
|
|
9
|
+
import type { Proof, Decision, Intent, ID } from "../common/types.js";
|
|
10
10
|
/**
|
|
11
11
|
* Ed25519 key pair for signing proofs
|
|
12
12
|
*/
|
|
@@ -135,6 +135,6 @@ export declare class ProofService {
|
|
|
135
135
|
* @param config Optional signing configuration
|
|
136
136
|
*/
|
|
137
137
|
export declare function createProofService(config?: SigningConfig): ProofService;
|
|
138
|
-
export { type MerkleNode, type MerkleProof, type MerkleAnchor, type ExternalAnchor, type BatchAggregationResult, type MerkleAggregationConfig, buildMerkleTree, generateMerkleProof, verifyMerkleProof, MerkleAggregationService, createMerkleAggregationService, } from
|
|
139
|
-
export { type PedersenCommitment, type RangeProof, type ThresholdProof, type MembershipProof, type TrustTierProof, type CompositeProof, type ZKVerificationResult, type ZKProofConfig, createCommitment, verifyCommitment, generateRangeProof, verifyRangeProof, generateThresholdProof, verifyThresholdProof, generateMembershipProof, verifyMembershipProof, generateTrustTierProof, verifyTrustTierProof, ZKProofService, createZKProofService, } from
|
|
138
|
+
export { type MerkleNode, type MerkleProof, type MerkleAnchor, type ExternalAnchor, type BatchAggregationResult, type MerkleAggregationConfig, buildMerkleTree, generateMerkleProof, verifyMerkleProof, MerkleAggregationService, createMerkleAggregationService, } from "./merkle.js";
|
|
139
|
+
export { type PedersenCommitment, type RangeProof, type ThresholdProof, type MembershipProof, type TrustTierProof, type CompositeProof, type ZKVerificationResult, type ZKProofConfig, createCommitment, verifyCommitment, generateRangeProof, verifyRangeProof, generateThresholdProof, verifyThresholdProof, generateMembershipProof, verifyMembershipProof, generateTrustTierProof, verifyTrustTierProof, ZKProofService, createZKProofService, } from "./zk-proofs.js";
|
|
140
140
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/proof/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAItE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/proof/index.ts"],"names":[],"mappings":"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"}
|
package/dist/proof/index.js
CHANGED
|
@@ -6,17 +6,21 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @packageDocumentation
|
|
8
8
|
*/
|
|
9
|
-
import * as nodeCrypto from
|
|
10
|
-
import { createLogger } from
|
|
11
|
-
const logger = createLogger({ component:
|
|
9
|
+
import * as nodeCrypto from "node:crypto";
|
|
10
|
+
import { createLogger } from "../common/logger.js";
|
|
11
|
+
const logger = createLogger({ component: "proof" });
|
|
12
12
|
/**
|
|
13
13
|
* Generate a new Ed25519 key pair for signing
|
|
14
14
|
*/
|
|
15
15
|
export function generateKeyPair() {
|
|
16
|
-
const { publicKey, privateKey } = nodeCrypto.generateKeyPairSync(
|
|
16
|
+
const { publicKey, privateKey } = nodeCrypto.generateKeyPairSync("ed25519");
|
|
17
17
|
return {
|
|
18
|
-
publicKey: publicKey
|
|
19
|
-
|
|
18
|
+
publicKey: publicKey
|
|
19
|
+
.export({ type: "spki", format: "der" })
|
|
20
|
+
.toString("base64"),
|
|
21
|
+
privateKey: privateKey
|
|
22
|
+
.export({ type: "pkcs8", format: "der" })
|
|
23
|
+
.toString("base64"),
|
|
20
24
|
};
|
|
21
25
|
}
|
|
22
26
|
/**
|
|
@@ -25,32 +29,32 @@ export function generateKeyPair() {
|
|
|
25
29
|
export class ProofService {
|
|
26
30
|
proofs = new Map();
|
|
27
31
|
chain = [];
|
|
28
|
-
lastHash =
|
|
32
|
+
lastHash = "0".repeat(64);
|
|
29
33
|
privateKey = null;
|
|
30
34
|
publicKey = null;
|
|
31
35
|
keyId;
|
|
32
36
|
constructor(config) {
|
|
33
|
-
this.keyId = config?.keyId ??
|
|
37
|
+
this.keyId = config?.keyId ?? "default";
|
|
34
38
|
if (config?.privateKey) {
|
|
35
39
|
this.privateKey = nodeCrypto.createPrivateKey({
|
|
36
|
-
key: Buffer.from(config.privateKey,
|
|
37
|
-
format:
|
|
38
|
-
type:
|
|
40
|
+
key: Buffer.from(config.privateKey, "base64"),
|
|
41
|
+
format: "der",
|
|
42
|
+
type: "pkcs8",
|
|
39
43
|
});
|
|
40
44
|
// Derive public key from private key
|
|
41
45
|
this.publicKey = nodeCrypto.createPublicKey(this.privateKey);
|
|
42
|
-
logger.info({ keyId: this.keyId },
|
|
46
|
+
logger.info({ keyId: this.keyId }, "Signing key loaded");
|
|
43
47
|
}
|
|
44
48
|
else if (config?.publicKey) {
|
|
45
49
|
this.publicKey = nodeCrypto.createPublicKey({
|
|
46
|
-
key: Buffer.from(config.publicKey,
|
|
47
|
-
format:
|
|
48
|
-
type:
|
|
50
|
+
key: Buffer.from(config.publicKey, "base64"),
|
|
51
|
+
format: "der",
|
|
52
|
+
type: "spki",
|
|
49
53
|
});
|
|
50
|
-
logger.info({ keyId: this.keyId },
|
|
54
|
+
logger.info({ keyId: this.keyId }, "Verification-only key loaded");
|
|
51
55
|
}
|
|
52
56
|
else {
|
|
53
|
-
logger.warn(
|
|
57
|
+
logger.warn("No signing key configured - proofs will not be signed");
|
|
54
58
|
}
|
|
55
59
|
}
|
|
56
60
|
/**
|
|
@@ -65,10 +69,10 @@ export class ProofService {
|
|
|
65
69
|
decision: request.decision,
|
|
66
70
|
inputs: request.inputs,
|
|
67
71
|
outputs: request.outputs,
|
|
68
|
-
hash:
|
|
69
|
-
hash3:
|
|
72
|
+
hash: "", // Will be calculated
|
|
73
|
+
hash3: "", // SHA3-256 integrity anchor
|
|
70
74
|
previousHash: this.lastHash,
|
|
71
|
-
signature:
|
|
75
|
+
signature: "", // Will be signed after hash calculation
|
|
72
76
|
createdAt: new Date().toISOString(),
|
|
73
77
|
};
|
|
74
78
|
// Calculate dual hashes
|
|
@@ -84,7 +88,7 @@ export class ProofService {
|
|
|
84
88
|
proofId: proof.id,
|
|
85
89
|
intentId: proof.intentId,
|
|
86
90
|
chainPosition: proof.chainPosition,
|
|
87
|
-
},
|
|
91
|
+
}, "Proof created");
|
|
88
92
|
return proof;
|
|
89
93
|
}
|
|
90
94
|
/**
|
|
@@ -128,7 +132,7 @@ export class ProofService {
|
|
|
128
132
|
valid: false,
|
|
129
133
|
proofId: id,
|
|
130
134
|
chainPosition: -1,
|
|
131
|
-
issues: [
|
|
135
|
+
issues: ["Proof not found"],
|
|
132
136
|
verifiedAt: new Date().toISOString(),
|
|
133
137
|
};
|
|
134
138
|
}
|
|
@@ -136,37 +140,37 @@ export class ProofService {
|
|
|
136
140
|
const { hash: _existingHash, hash3: _existingHash3, ...proofWithoutHashes } = proof;
|
|
137
141
|
const expectedHash = await this.calculateHash(proofWithoutHashes);
|
|
138
142
|
if (proof.hash !== expectedHash) {
|
|
139
|
-
issues.push(
|
|
143
|
+
issues.push("SHA-256 hash mismatch");
|
|
140
144
|
}
|
|
141
145
|
// Verify SHA3-256 hash (if present — absent on pre-upgrade records)
|
|
142
146
|
if (proof.hash3) {
|
|
143
147
|
const expectedHash3 = this.calculateHash3(proofWithoutHashes);
|
|
144
148
|
if (proof.hash3 !== expectedHash3) {
|
|
145
|
-
issues.push(
|
|
149
|
+
issues.push("SHA3-256 hash mismatch");
|
|
146
150
|
}
|
|
147
151
|
}
|
|
148
152
|
// Verify signature
|
|
149
153
|
if (proof.signature) {
|
|
150
154
|
if (!this.verifySignature(proof.hash, proof.signature)) {
|
|
151
|
-
issues.push(
|
|
155
|
+
issues.push("Invalid signature");
|
|
152
156
|
}
|
|
153
157
|
}
|
|
154
158
|
else if (this.publicKey) {
|
|
155
159
|
// Signature missing but we have a key configured
|
|
156
|
-
issues.push(
|
|
160
|
+
issues.push("Signature missing");
|
|
157
161
|
}
|
|
158
162
|
// Verify chain linkage
|
|
159
163
|
if (proof.chainPosition > 0) {
|
|
160
164
|
const previous = this.chain[proof.chainPosition - 1];
|
|
161
165
|
if (previous && proof.previousHash !== previous.hash) {
|
|
162
|
-
issues.push(
|
|
166
|
+
issues.push("Chain linkage broken");
|
|
163
167
|
}
|
|
164
168
|
}
|
|
165
169
|
logger.info({
|
|
166
170
|
proofId: id,
|
|
167
171
|
valid: issues.length === 0,
|
|
168
172
|
issues,
|
|
169
|
-
},
|
|
173
|
+
}, "Proof verified");
|
|
170
174
|
return {
|
|
171
175
|
valid: issues.length === 0,
|
|
172
176
|
proofId: id,
|
|
@@ -185,7 +189,7 @@ export class ProofService {
|
|
|
185
189
|
const proof = this.chain[i];
|
|
186
190
|
const verification = await this.verify(proof.id);
|
|
187
191
|
if (!verification.valid) {
|
|
188
|
-
issues.push(`Position ${i}: ${verification.issues.join(
|
|
192
|
+
issues.push(`Position ${i}: ${verification.issues.join(", ")}`);
|
|
189
193
|
break;
|
|
190
194
|
}
|
|
191
195
|
lastValidPosition = i;
|
|
@@ -214,9 +218,9 @@ export class ProofService {
|
|
|
214
218
|
// Use Web Crypto API for SHA-256
|
|
215
219
|
const encoder = new TextEncoder();
|
|
216
220
|
const dataBuffer = encoder.encode(data);
|
|
217
|
-
const hashBuffer = await crypto.subtle.digest(
|
|
221
|
+
const hashBuffer = await crypto.subtle.digest("SHA-256", dataBuffer);
|
|
218
222
|
const hashArray = Array.from(new Uint8Array(hashBuffer));
|
|
219
|
-
return hashArray.map((b) => b.toString(16).padStart(2,
|
|
223
|
+
return hashArray.map((b) => b.toString(16).padStart(2, "0")).join("");
|
|
220
224
|
}
|
|
221
225
|
/**
|
|
222
226
|
* Calculate SHA3-256 hash for a proof record (integrity anchor)
|
|
@@ -233,7 +237,7 @@ export class ProofService {
|
|
|
233
237
|
previousHash: proof.previousHash,
|
|
234
238
|
createdAt: proof.createdAt,
|
|
235
239
|
});
|
|
236
|
-
return nodeCrypto.createHash(
|
|
240
|
+
return nodeCrypto.createHash("sha3-256").update(data).digest("hex");
|
|
237
241
|
}
|
|
238
242
|
/**
|
|
239
243
|
* Sign data with Ed25519 private key
|
|
@@ -241,10 +245,10 @@ export class ProofService {
|
|
|
241
245
|
*/
|
|
242
246
|
sign(data) {
|
|
243
247
|
if (!this.privateKey) {
|
|
244
|
-
return
|
|
248
|
+
return "";
|
|
245
249
|
}
|
|
246
250
|
const signature = nodeCrypto.sign(null, Buffer.from(data), this.privateKey);
|
|
247
|
-
return signature.toString(
|
|
251
|
+
return signature.toString("base64");
|
|
248
252
|
}
|
|
249
253
|
/**
|
|
250
254
|
* Verify Ed25519 signature
|
|
@@ -256,7 +260,7 @@ export class ProofService {
|
|
|
256
260
|
return true;
|
|
257
261
|
}
|
|
258
262
|
try {
|
|
259
|
-
return nodeCrypto.verify(null, Buffer.from(data), this.publicKey, Buffer.from(signature,
|
|
263
|
+
return nodeCrypto.verify(null, Buffer.from(data), this.publicKey, Buffer.from(signature, "base64"));
|
|
260
264
|
}
|
|
261
265
|
catch {
|
|
262
266
|
return false;
|
|
@@ -270,7 +274,9 @@ export class ProofService {
|
|
|
270
274
|
if (!this.publicKey) {
|
|
271
275
|
return null;
|
|
272
276
|
}
|
|
273
|
-
return this.publicKey
|
|
277
|
+
return this.publicKey
|
|
278
|
+
.export({ type: "spki", format: "der" })
|
|
279
|
+
.toString("base64");
|
|
274
280
|
}
|
|
275
281
|
/**
|
|
276
282
|
* Check if signing is enabled
|
|
@@ -304,7 +310,7 @@ export {
|
|
|
304
310
|
// Functions
|
|
305
311
|
buildMerkleTree, generateMerkleProof, verifyMerkleProof,
|
|
306
312
|
// Service
|
|
307
|
-
MerkleAggregationService, createMerkleAggregationService, } from
|
|
313
|
+
MerkleAggregationService, createMerkleAggregationService, } from "./merkle.js";
|
|
308
314
|
// =============================================================================
|
|
309
315
|
// ZERO-KNOWLEDGE PROOFS
|
|
310
316
|
// =============================================================================
|
|
@@ -320,5 +326,5 @@ generateMembershipProof, verifyMembershipProof,
|
|
|
320
326
|
// Trust tier proofs
|
|
321
327
|
generateTrustTierProof, verifyTrustTierProof,
|
|
322
328
|
// Service
|
|
323
|
-
ZKProofService, createZKProofService, } from
|
|
329
|
+
ZKProofService, createZKProofService, } from "./zk-proofs.js";
|
|
324
330
|
//# sourceMappingURL=index.js.map
|