@vorionsys/atsf-core 0.2.3 → 0.3.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.
- package/CHANGELOG.md +1 -0
- package/LICENSE +1 -1
- package/README.md +82 -29
- package/dist/adapters/base-adapter.d.ts +94 -0
- package/dist/adapters/base-adapter.d.ts.map +1 -0
- package/dist/adapters/base-adapter.js +233 -0
- package/dist/adapters/base-adapter.js.map +1 -0
- package/dist/adapters/index.d.ts +9 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +5 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/types.d.ts +83 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +4 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/adapters/webhook-handler.d.ts +64 -0
- package/dist/adapters/webhook-handler.d.ts.map +1 -0
- package/dist/adapters/webhook-handler.js +170 -0
- package/dist/adapters/webhook-handler.js.map +1 -0
- package/dist/api/index.d.ts +1 -1
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +3 -1
- package/dist/api/index.js.map +1 -1
- package/dist/api/server.d.ts +2 -2
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +149 -184
- package/dist/api/server.js.map +1 -1
- package/dist/arbitration/index.d.ts +4 -12
- package/dist/arbitration/index.d.ts.map +1 -1
- package/dist/arbitration/index.js +43 -46
- 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/arbitration/types.js +2 -8
- package/dist/arbitration/types.js.map +1 -1
- package/dist/basis/evaluator.d.ts +1 -6
- package/dist/basis/evaluator.d.ts.map +1 -1
- package/dist/basis/evaluator.js +56 -56
- package/dist/basis/evaluator.js.map +1 -1
- package/dist/basis/index.d.ts +3 -3
- package/dist/basis/index.d.ts.map +1 -1
- package/dist/basis/index.js +5 -3
- package/dist/basis/index.js.map +1 -1
- package/dist/basis/parser.d.ts +30 -30
- package/dist/basis/parser.d.ts.map +1 -1
- package/dist/basis/parser.js +27 -32
- package/dist/basis/parser.js.map +1 -1
- package/dist/basis/types.d.ts +2 -2
- package/dist/basis/types.d.ts.map +1 -1
- package/dist/basis/types.js +2 -3
- package/dist/basis/types.js.map +1 -1
- package/dist/chain/index.d.ts +0 -8
- package/dist/chain/index.d.ts.map +1 -1
- package/dist/chain/index.js +18 -16
- package/dist/chain/index.js.map +1 -1
- package/dist/cognigate/index.d.ts +1 -9
- package/dist/cognigate/index.d.ts.map +1 -1
- package/dist/cognigate/index.js +35 -44
- package/dist/cognigate/index.js.map +1 -1
- package/dist/common/adapters.d.ts +4 -4
- package/dist/common/adapters.d.ts.map +1 -1
- package/dist/common/adapters.js +54 -70
- package/dist/common/adapters.js.map +1 -1
- package/dist/common/config.d.ts +69 -68
- package/dist/common/config.d.ts.map +1 -1
- package/dist/common/config.js +52 -50
- package/dist/common/config.js.map +1 -1
- package/dist/common/index.d.ts +4 -4
- package/dist/common/index.d.ts.map +1 -1
- package/dist/common/index.js +6 -4
- package/dist/common/index.js.map +1 -1
- package/dist/common/logger.d.ts +1 -1
- package/dist/common/logger.d.ts.map +1 -1
- package/dist/common/logger.js +10 -8
- package/dist/common/logger.js.map +1 -1
- package/dist/common/types.d.ts +12 -12
- package/dist/common/types.d.ts.map +1 -1
- package/dist/common/types.js +7 -14
- package/dist/common/types.js.map +1 -1
- package/dist/containment/index.d.ts +3 -11
- package/dist/containment/index.d.ts.map +1 -1
- package/dist/containment/index.js +107 -119
- 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/containment/types.js +2 -8
- package/dist/containment/types.js.map +1 -1
- package/dist/contracts/index.d.ts +9 -17
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +56 -59
- 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/contracts/types.js +2 -8
- package/dist/contracts/types.js.map +1 -1
- package/dist/crewai/callback.d.ts +2 -9
- package/dist/crewai/callback.d.ts.map +1 -1
- package/dist/crewai/callback.js +29 -27
- package/dist/crewai/callback.js.map +1 -1
- package/dist/crewai/executor.d.ts +95 -11
- package/dist/crewai/executor.d.ts.map +1 -1
- package/dist/crewai/executor.js +459 -16
- package/dist/crewai/executor.js.map +1 -1
- package/dist/crewai/index.d.ts +4 -4
- package/dist/crewai/index.d.ts.map +1 -1
- package/dist/crewai/index.js +6 -4
- package/dist/crewai/index.js.map +1 -1
- package/dist/crewai/tools.d.ts +1 -1
- package/dist/crewai/tools.d.ts.map +1 -1
- package/dist/crewai/tools.js +40 -46
- package/dist/crewai/tools.js.map +1 -1
- package/dist/crewai/types.d.ts +66 -3
- package/dist/crewai/types.d.ts.map +1 -1
- package/dist/crewai/types.js +2 -7
- package/dist/crewai/types.js.map +1 -1
- package/dist/enforce/index.d.ts +226 -19
- package/dist/enforce/index.d.ts.map +1 -1
- package/dist/enforce/index.js +55 -81
- package/dist/enforce/index.js.map +1 -1
- package/dist/enforce/trust-aware-enforcement-service.d.ts +8 -23
- package/dist/enforce/trust-aware-enforcement-service.d.ts.map +1 -1
- package/dist/enforce/trust-aware-enforcement-service.js +109 -125
- package/dist/enforce/trust-aware-enforcement-service.js.map +1 -1
- package/dist/governance/fluid-workflow.d.ts +8 -16
- package/dist/governance/fluid-workflow.d.ts.map +1 -1
- package/dist/governance/fluid-workflow.js +88 -114
- package/dist/governance/fluid-workflow.js.map +1 -1
- package/dist/governance/index.d.ts +7 -15
- package/dist/governance/index.d.ts.map +1 -1
- package/dist/governance/index.js +76 -81
- 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 +6 -16
- package/dist/governance/proof-bridge.js.map +1 -1
- package/dist/governance/types.d.ts +9 -16
- package/dist/governance/types.d.ts.map +1 -1
- package/dist/governance/types.js +2 -8
- package/dist/governance/types.js.map +1 -1
- package/dist/index.d.ts +30 -29
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33 -31
- package/dist/index.js.map +1 -1
- package/dist/intent/index.d.ts +55 -18
- package/dist/intent/index.d.ts.map +1 -1
- package/dist/intent/index.js +25 -26
- package/dist/intent/index.js.map +1 -1
- package/dist/intent/persistent-intent-service.d.ts +2 -17
- package/dist/intent/persistent-intent-service.d.ts.map +1 -1
- package/dist/intent/persistent-intent-service.js +33 -43
- package/dist/intent/persistent-intent-service.js.map +1 -1
- package/dist/intent/supabase-intent-repository.d.ts +107 -0
- package/dist/intent/supabase-intent-repository.d.ts.map +1 -0
- package/dist/intent/supabase-intent-repository.js +406 -0
- package/dist/intent/supabase-intent-repository.js.map +1 -0
- package/dist/intent-gateway/index.d.ts +5 -28
- package/dist/intent-gateway/index.d.ts.map +1 -1
- package/dist/intent-gateway/index.js +341 -508
- package/dist/intent-gateway/index.js.map +1 -1
- package/dist/langchain/callback.d.ts +2 -9
- package/dist/langchain/callback.d.ts.map +1 -1
- package/dist/langchain/callback.js +32 -30
- package/dist/langchain/callback.js.map +1 -1
- package/dist/langchain/executor.d.ts +4 -11
- package/dist/langchain/executor.d.ts.map +1 -1
- package/dist/langchain/executor.js +82 -82
- package/dist/langchain/executor.js.map +1 -1
- package/dist/langchain/index.d.ts +5 -5
- package/dist/langchain/index.d.ts.map +1 -1
- package/dist/langchain/index.js +7 -5
- package/dist/langchain/index.js.map +1 -1
- package/dist/langchain/tools.d.ts +1 -1
- package/dist/langchain/tools.d.ts.map +1 -1
- package/dist/langchain/tools.js +36 -43
- 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/langchain/types.js +2 -7
- package/dist/langchain/types.js.map +1 -1
- package/dist/layers/implementations/L0-request-format.d.ts +2 -2
- package/dist/layers/implementations/L0-request-format.d.ts.map +1 -1
- package/dist/layers/implementations/L0-request-format.js +54 -54
- package/dist/layers/implementations/L0-request-format.js.map +1 -1
- package/dist/layers/implementations/L1-input-size.d.ts +2 -2
- package/dist/layers/implementations/L1-input-size.d.ts.map +1 -1
- package/dist/layers/implementations/L1-input-size.js +41 -49
- package/dist/layers/implementations/L1-input-size.js.map +1 -1
- package/dist/layers/implementations/L2-charset-sanitizer.d.ts +2 -2
- package/dist/layers/implementations/L2-charset-sanitizer.d.ts.map +1 -1
- package/dist/layers/implementations/L2-charset-sanitizer.js +73 -81
- package/dist/layers/implementations/L2-charset-sanitizer.js.map +1 -1
- package/dist/layers/implementations/L3-schema-conformance.d.ts +3 -3
- package/dist/layers/implementations/L3-schema-conformance.d.ts.map +1 -1
- package/dist/layers/implementations/L3-schema-conformance.js +75 -82
- package/dist/layers/implementations/L3-schema-conformance.js.map +1 -1
- package/dist/layers/implementations/L4-injection-detector.d.ts +4 -4
- package/dist/layers/implementations/L4-injection-detector.d.ts.map +1 -1
- package/dist/layers/implementations/L4-injection-detector.js +83 -85
- package/dist/layers/implementations/L4-injection-detector.js.map +1 -1
- package/dist/layers/implementations/L5-rate-limiter.d.ts +2 -2
- package/dist/layers/implementations/L5-rate-limiter.d.ts.map +1 -1
- package/dist/layers/implementations/L5-rate-limiter.js +22 -20
- package/dist/layers/implementations/L5-rate-limiter.js.map +1 -1
- package/dist/layers/implementations/index.d.ts +6 -6
- package/dist/layers/implementations/index.d.ts.map +1 -1
- package/dist/layers/implementations/index.js +8 -6
- package/dist/layers/implementations/index.js.map +1 -1
- package/dist/layers/index.d.ts +3 -11
- package/dist/layers/index.d.ts.map +1 -1
- package/dist/layers/index.js +73 -99
- 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/layers/types.js +2 -8
- package/dist/layers/types.js.map +1 -1
- package/dist/paramesphere/activation-collector.d.ts +128 -0
- package/dist/paramesphere/activation-collector.d.ts.map +1 -0
- package/dist/paramesphere/activation-collector.js +260 -0
- package/dist/paramesphere/activation-collector.js.map +1 -0
- package/dist/paramesphere/cognitive-envelope.d.ts +73 -0
- package/dist/paramesphere/cognitive-envelope.d.ts.map +1 -0
- package/dist/paramesphere/cognitive-envelope.js +209 -0
- package/dist/paramesphere/cognitive-envelope.js.map +1 -0
- package/dist/paramesphere/envelope-integration.d.ts +60 -0
- package/dist/paramesphere/envelope-integration.d.ts.map +1 -0
- package/dist/paramesphere/envelope-integration.js +93 -0
- package/dist/paramesphere/envelope-integration.js.map +1 -0
- package/dist/paramesphere/fingerprint-monitor.d.ts +136 -0
- package/dist/paramesphere/fingerprint-monitor.d.ts.map +1 -0
- package/dist/paramesphere/fingerprint-monitor.js +212 -0
- package/dist/paramesphere/fingerprint-monitor.js.map +1 -0
- package/dist/paramesphere/fingerprint-store.d.ts +85 -0
- package/dist/paramesphere/fingerprint-store.d.ts.map +1 -0
- package/dist/paramesphere/fingerprint-store.js +68 -0
- package/dist/paramesphere/fingerprint-store.js.map +1 -0
- package/dist/paramesphere/index.d.ts +21 -0
- package/dist/paramesphere/index.d.ts.map +1 -0
- package/dist/paramesphere/index.js +18 -0
- package/dist/paramesphere/index.js.map +1 -0
- package/dist/paramesphere/monitor-integration.d.ts +37 -0
- package/dist/paramesphere/monitor-integration.d.ts.map +1 -0
- package/dist/paramesphere/monitor-integration.js +81 -0
- package/dist/paramesphere/monitor-integration.js.map +1 -0
- package/dist/paramesphere/paramesphere-engine.d.ts +111 -0
- package/dist/paramesphere/paramesphere-engine.d.ts.map +1 -0
- package/dist/paramesphere/paramesphere-engine.js +542 -0
- package/dist/paramesphere/paramesphere-engine.js.map +1 -0
- package/dist/paramesphere/types.d.ts +142 -0
- package/dist/paramesphere/types.d.ts.map +1 -0
- package/dist/paramesphere/types.js +4 -0
- package/dist/paramesphere/types.js.map +1 -0
- package/dist/persistence/file.d.ts +3 -10
- package/dist/persistence/file.d.ts.map +1 -1
- package/dist/persistence/file.js +30 -32
- 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 +20 -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 -17
- package/dist/persistence/memory.js.map +1 -1
- package/dist/persistence/sqlite.d.ts +3 -11
- package/dist/persistence/sqlite.d.ts.map +1 -1
- package/dist/persistence/sqlite.js +42 -39
- 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 +46 -49
- package/dist/persistence/supabase.js.map +1 -1
- package/dist/persistence/types.d.ts +5 -5
- package/dist/persistence/types.d.ts.map +1 -1
- package/dist/persistence/types.js +2 -7
- package/dist/persistence/types.js.map +1 -1
- package/dist/phase6/ceiling.d.ts +5 -21
- package/dist/phase6/ceiling.d.ts.map +1 -1
- package/dist/phase6/ceiling.js +38 -69
- package/dist/phase6/ceiling.js.map +1 -1
- package/dist/phase6/context.d.ts +3 -20
- package/dist/phase6/context.d.ts.map +1 -1
- package/dist/phase6/context.js +49 -93
- package/dist/phase6/context.js.map +1 -1
- package/dist/phase6/index.d.ts +12 -12
- package/dist/phase6/index.d.ts.map +1 -1
- package/dist/phase6/index.js +17 -15
- package/dist/phase6/index.js.map +1 -1
- package/dist/phase6/presets.d.ts +2 -18
- package/dist/phase6/presets.d.ts.map +1 -1
- package/dist/phase6/presets.js +35 -39
- package/dist/phase6/presets.js.map +1 -1
- package/dist/phase6/provenance.d.ts +4 -19
- package/dist/phase6/provenance.d.ts.map +1 -1
- package/dist/phase6/provenance.js +37 -42
- package/dist/phase6/provenance.js.map +1 -1
- package/dist/phase6/role-gates/index.d.ts +2 -2
- package/dist/phase6/role-gates/index.d.ts.map +1 -1
- package/dist/phase6/role-gates/index.js +4 -2
- package/dist/phase6/role-gates/index.js.map +1 -1
- package/dist/phase6/role-gates/kernel.d.ts.map +1 -1
- package/dist/phase6/role-gates/kernel.js +18 -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.d.ts.map +1 -1
- package/dist/phase6/role-gates/policy.js +8 -17
- package/dist/phase6/role-gates/policy.js.map +1 -1
- package/dist/phase6/role-gates.d.ts +4 -20
- package/dist/phase6/role-gates.d.ts.map +1 -1
- package/dist/phase6/role-gates.js +60 -80
- package/dist/phase6/role-gates.js.map +1 -1
- package/dist/phase6/types.d.ts +53 -23
- package/dist/phase6/types.d.ts.map +1 -1
- package/dist/phase6/types.js +131 -177
- package/dist/phase6/types.js.map +1 -1
- package/dist/phase6/weight-presets/canonical.d.ts.map +1 -1
- package/dist/phase6/weight-presets/canonical.js +12 -10
- 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 +29 -37
- package/dist/phase6/weight-presets/deltas.js.map +1 -1
- package/dist/phase6/weight-presets/index.d.ts +3 -3
- package/dist/phase6/weight-presets/index.d.ts.map +1 -1
- package/dist/phase6/weight-presets/index.js +5 -3
- package/dist/phase6/weight-presets/index.js.map +1 -1
- package/dist/phase6/weight-presets/merger.d.ts +2 -12
- package/dist/phase6/weight-presets/merger.d.ts.map +1 -1
- package/dist/phase6/weight-presets/merger.js +45 -39
- package/dist/phase6/weight-presets/merger.js.map +1 -1
- package/dist/proof/index.d.ts +6 -13
- package/dist/proof/index.d.ts.map +1 -1
- package/dist/proof/index.js +63 -51
- package/dist/proof/index.js.map +1 -1
- package/dist/proof/merkle.d.ts +24 -19
- package/dist/proof/merkle.d.ts.map +1 -1
- package/dist/proof/merkle.js +118 -32
- package/dist/proof/merkle.js.map +1 -1
- package/dist/proof/zk-proofs.d.ts +6 -24
- package/dist/proof/zk-proofs.d.ts.map +1 -1
- package/dist/proof/zk-proofs.js +45 -42
- package/dist/proof/zk-proofs.js.map +1 -1
- package/dist/provenance/index.d.ts +3 -11
- package/dist/provenance/index.d.ts.map +1 -1
- package/dist/provenance/index.js +19 -19
- 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/provenance/types.js +2 -8
- package/dist/provenance/types.js.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 +230 -236
- 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 +17 -22
- 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 +8 -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 +7 -16
- 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 +75 -82
- package/dist/sandbox-training/runner.js.map +1 -1
- package/dist/sandbox-training/scorer.d.ts +4 -4
- package/dist/sandbox-training/scorer.d.ts.map +1 -1
- package/dist/sandbox-training/scorer.js +7 -13
- package/dist/sandbox-training/scorer.js.map +1 -1
- 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 +9 -19
- package/dist/sandbox-training/types.js.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.d.ts +1 -9
- package/dist/trust-engine/ceiling-enforcement/audit.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.js +6 -11
- 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.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/index.js +4 -2
- package/dist/trust-engine/ceiling-enforcement/index.js.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/kernel.d.ts +12 -10
- package/dist/trust-engine/ceiling-enforcement/kernel.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/kernel.js +28 -20
- package/dist/trust-engine/ceiling-enforcement/kernel.js.map +1 -1
- package/dist/trust-engine/context-policy/enforcement.d.ts +0 -9
- package/dist/trust-engine/context-policy/enforcement.d.ts.map +1 -1
- package/dist/trust-engine/context-policy/enforcement.js +2 -9
- package/dist/trust-engine/context-policy/enforcement.js.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 +3 -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.d.ts.map +1 -1
- package/dist/trust-engine/context-policy/index.js +4 -2
- package/dist/trust-engine/context-policy/index.js.map +1 -1
- package/dist/trust-engine/creation-modifiers/index.d.ts +1 -1
- package/dist/trust-engine/creation-modifiers/index.d.ts.map +1 -1
- package/dist/trust-engine/creation-modifiers/index.js +3 -1
- package/dist/trust-engine/creation-modifiers/index.js.map +1 -1
- package/dist/trust-engine/creation-modifiers/types.d.ts.map +1 -1
- package/dist/trust-engine/creation-modifiers/types.js +5 -2
- package/dist/trust-engine/creation-modifiers/types.js.map +1 -1
- package/dist/trust-engine/decay-profiles.d.ts +37 -136
- package/dist/trust-engine/decay-profiles.d.ts.map +1 -1
- package/dist/trust-engine/decay-profiles.js +61 -183
- package/dist/trust-engine/decay-profiles.js.map +1 -1
- package/dist/trust-engine/index.d.ts +327 -22
- package/dist/trust-engine/index.d.ts.map +1 -1
- package/dist/trust-engine/index.js +706 -130
- package/dist/trust-engine/index.js.map +1 -1
- package/dist/trust-engine/phase6-types.d.ts +15 -18
- package/dist/trust-engine/phase6-types.d.ts.map +1 -1
- package/dist/trust-engine/phase6-types.js +32 -36
- package/dist/trust-engine/phase6-types.js.map +1 -1
- package/dist/trust-engine/trust-verifier.d.ts +121 -0
- package/dist/trust-engine/trust-verifier.d.ts.map +1 -0
- package/dist/trust-engine/trust-verifier.js +226 -0
- package/dist/trust-engine/trust-verifier.js.map +1 -0
- package/package.json +140 -135
- package/dist/enforce/types.d.ts +0 -234
- package/dist/enforce/types.d.ts.map +0 -1
- package/dist/enforce/types.js +0 -10
- package/dist/enforce/types.js.map +0 -1
- package/dist/intent/types.d.ts +0 -69
- package/dist/intent/types.d.ts.map +0 -1
- package/dist/intent/types.js +0 -10
- package/dist/intent/types.js.map +0 -1
- package/dist/trust-engine/types.d.ts +0 -77
- package/dist/trust-engine/types.d.ts.map +0 -1
- package/dist/trust-engine/types.js +0 -20
- package/dist/trust-engine/types.js.map +0 -1
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ActivationCollector — Collects and computes activation statistics
|
|
3
|
+
* from numeric data streams (model hidden states, attention outputs, etc.)
|
|
4
|
+
*
|
|
5
|
+
* Uses Welford's online algorithm for numerically stable incremental
|
|
6
|
+
* computation of mean, variance, skewness, and kurtosis without storing
|
|
7
|
+
* all raw values in memory.
|
|
8
|
+
*
|
|
9
|
+
* Feeds into {@link ParameSphereEngine.computeFingerprint} as activation stats.
|
|
10
|
+
*
|
|
11
|
+
* @packageDocumentation
|
|
12
|
+
*/
|
|
13
|
+
import type { ActivationStats } from './types.js';
|
|
14
|
+
/** Configuration for the ActivationCollector. */
|
|
15
|
+
export interface ActivationCollectorConfig {
|
|
16
|
+
/** Maximum number of samples per layer (rolling window). Default: 1000. */
|
|
17
|
+
maxSamplesPerLayer: number;
|
|
18
|
+
/** Minimum samples required before stats are returned. Default: 10. */
|
|
19
|
+
minSamplesForStats: number;
|
|
20
|
+
/** Specific layers to collect (undefined = all layers accepted). */
|
|
21
|
+
layers?: string[];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Internal accumulator using Welford's online algorithm extended to
|
|
25
|
+
* compute the first four central moments incrementally.
|
|
26
|
+
*
|
|
27
|
+
* References:
|
|
28
|
+
* - Welford (1962), "Note on a method for calculating corrected sums of
|
|
29
|
+
* squares and products"
|
|
30
|
+
* - Pébay (2008), "Formulas for Robust, One-Pass Parallel Computation of
|
|
31
|
+
* Covariances and Arbitrary-Order Statistical Moments" (Sandia TR)
|
|
32
|
+
*
|
|
33
|
+
* We track:
|
|
34
|
+
* n — count of values seen
|
|
35
|
+
* M1 — running mean
|
|
36
|
+
* M2 — sum of squared deviations from the mean (for variance)
|
|
37
|
+
* M3 — sum of cubed deviations from the mean (for skewness)
|
|
38
|
+
* M4 — sum of 4th-power deviations from the mean (for kurtosis)
|
|
39
|
+
*/
|
|
40
|
+
declare class WelfordAccumulator {
|
|
41
|
+
n: number;
|
|
42
|
+
M1: number;
|
|
43
|
+
M2: number;
|
|
44
|
+
M3: number;
|
|
45
|
+
M4: number;
|
|
46
|
+
/**
|
|
47
|
+
* Add a single value to the accumulator.
|
|
48
|
+
*
|
|
49
|
+
* Uses the Terriberry (2007) / Pébay (2008) update formulas for
|
|
50
|
+
* higher-order central moments.
|
|
51
|
+
*/
|
|
52
|
+
push(x: number): void;
|
|
53
|
+
/**
|
|
54
|
+
* Remove a single value from the accumulator (inverse Welford).
|
|
55
|
+
*
|
|
56
|
+
* Used to implement the rolling window: when we exceed maxSamples,
|
|
57
|
+
* we subtract the oldest value's contribution.
|
|
58
|
+
*
|
|
59
|
+
* Note: this is the algebraic inverse of push(). It is numerically
|
|
60
|
+
* less stable than push() alone, but acceptable for our rolling-window
|
|
61
|
+
* use case where the window size is large relative to individual values.
|
|
62
|
+
*/
|
|
63
|
+
remove(x: number): void;
|
|
64
|
+
/** Arithmetic mean. */
|
|
65
|
+
get mean(): number;
|
|
66
|
+
/** Population variance. */
|
|
67
|
+
get variance(): number;
|
|
68
|
+
/** Population standard deviation. */
|
|
69
|
+
get stddev(): number;
|
|
70
|
+
/**
|
|
71
|
+
* Excess kurtosis (Fisher's definition).
|
|
72
|
+
*
|
|
73
|
+
* excess_kurtosis = (n * M4) / (M2^2) - 3
|
|
74
|
+
*
|
|
75
|
+
* Normal distribution has excess kurtosis = 0.
|
|
76
|
+
* Uniform distribution has excess kurtosis = -1.2.
|
|
77
|
+
*/
|
|
78
|
+
get kurtosis(): number;
|
|
79
|
+
/**
|
|
80
|
+
* Skewness (Fisher's definition, population formula).
|
|
81
|
+
*
|
|
82
|
+
* skewness = (sqrt(n) * M3) / (M2^(3/2))
|
|
83
|
+
*
|
|
84
|
+
* Symmetric distributions have skewness = 0.
|
|
85
|
+
*/
|
|
86
|
+
get skewness(): number;
|
|
87
|
+
/** Clone the accumulator state. */
|
|
88
|
+
clone(): WelfordAccumulator;
|
|
89
|
+
}
|
|
90
|
+
export declare class ActivationCollector {
|
|
91
|
+
private readonly config;
|
|
92
|
+
private readonly layers;
|
|
93
|
+
constructor(config?: Partial<ActivationCollectorConfig>);
|
|
94
|
+
/**
|
|
95
|
+
* Record a batch of activation values for a named layer.
|
|
96
|
+
*
|
|
97
|
+
* @param layerName Identifier for the layer (e.g., "transformer.h.0.attn")
|
|
98
|
+
* @param values Activation values from one inference pass.
|
|
99
|
+
* Accepts Float32Array or number[].
|
|
100
|
+
*/
|
|
101
|
+
record(layerName: string, values: Float32Array | number[]): void;
|
|
102
|
+
/**
|
|
103
|
+
* Get computed activation statistics for all recorded layers.
|
|
104
|
+
*
|
|
105
|
+
* Layers with fewer samples than `minSamplesForStats` are excluded.
|
|
106
|
+
* The returned array is ordered by layer name (lexicographic).
|
|
107
|
+
*/
|
|
108
|
+
getStats(): ActivationStats[];
|
|
109
|
+
/**
|
|
110
|
+
* Get computed stats for a specific layer.
|
|
111
|
+
*
|
|
112
|
+
* Returns `undefined` if the layer has not been recorded or has fewer
|
|
113
|
+
* samples than `minSamplesForStats`.
|
|
114
|
+
*/
|
|
115
|
+
getLayerStats(layerName: string): ActivationStats | undefined;
|
|
116
|
+
/**
|
|
117
|
+
* Reset all collected data across all layers.
|
|
118
|
+
*/
|
|
119
|
+
reset(): void;
|
|
120
|
+
/**
|
|
121
|
+
* Get the effective sample count for each layer.
|
|
122
|
+
*
|
|
123
|
+
* The count is capped at `maxSamplesPerLayer` (rolling window).
|
|
124
|
+
*/
|
|
125
|
+
getSampleCounts(): Map<string, number>;
|
|
126
|
+
}
|
|
127
|
+
export { WelfordAccumulator };
|
|
128
|
+
//# sourceMappingURL=activation-collector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"activation-collector.d.ts","sourceRoot":"","sources":["../../src/paramesphere/activation-collector.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAMlD,iDAAiD;AACjD,MAAM,WAAW,yBAAyB;IACxC,2EAA2E;IAC3E,kBAAkB,EAAE,MAAM,CAAC;IAC3B,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAWD;;;;;;;;;;;;;;;;GAgBG;AACH,cAAM,kBAAkB;IACtB,CAAC,SAAK;IACN,EAAE,SAAK;IACP,EAAE,SAAK;IACP,EAAE,SAAK;IACP,EAAE,SAAK;IAEP;;;;;OAKG;IACH,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAuBrB;;;;;;;;;OASG;IACH,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAwCvB,uBAAuB;IACvB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,2BAA2B;IAC3B,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,qCAAqC;IACrC,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ,IAAI,MAAM,CAGrB;IAED;;;;;;OAMG;IACH,IAAI,QAAQ,IAAI,MAAM,CAGrB;IAED,mCAAmC;IACnC,KAAK,IAAI,kBAAkB;CAS5B;AAoBD,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;gBAEjD,MAAM,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC;IAcvD;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,GAAG,IAAI;IAmChE;;;;;OAKG;IACH,QAAQ,IAAI,eAAe,EAAE;IAc7B;;;;;OAKG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAkB7D;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;;;OAIG;IACH,eAAe,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;CAOvC;AAGD,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright 2024-2026 Vorion LLC
|
|
3
|
+
const DEFAULT_CONFIG = {
|
|
4
|
+
maxSamplesPerLayer: 1000,
|
|
5
|
+
minSamplesForStats: 10,
|
|
6
|
+
};
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
// Welford Accumulator — tracks running statistics up to 4th central moment
|
|
9
|
+
// ---------------------------------------------------------------------------
|
|
10
|
+
/**
|
|
11
|
+
* Internal accumulator using Welford's online algorithm extended to
|
|
12
|
+
* compute the first four central moments incrementally.
|
|
13
|
+
*
|
|
14
|
+
* References:
|
|
15
|
+
* - Welford (1962), "Note on a method for calculating corrected sums of
|
|
16
|
+
* squares and products"
|
|
17
|
+
* - Pébay (2008), "Formulas for Robust, One-Pass Parallel Computation of
|
|
18
|
+
* Covariances and Arbitrary-Order Statistical Moments" (Sandia TR)
|
|
19
|
+
*
|
|
20
|
+
* We track:
|
|
21
|
+
* n — count of values seen
|
|
22
|
+
* M1 — running mean
|
|
23
|
+
* M2 — sum of squared deviations from the mean (for variance)
|
|
24
|
+
* M3 — sum of cubed deviations from the mean (for skewness)
|
|
25
|
+
* M4 — sum of 4th-power deviations from the mean (for kurtosis)
|
|
26
|
+
*/
|
|
27
|
+
class WelfordAccumulator {
|
|
28
|
+
n = 0;
|
|
29
|
+
M1 = 0;
|
|
30
|
+
M2 = 0;
|
|
31
|
+
M3 = 0;
|
|
32
|
+
M4 = 0;
|
|
33
|
+
/**
|
|
34
|
+
* Add a single value to the accumulator.
|
|
35
|
+
*
|
|
36
|
+
* Uses the Terriberry (2007) / Pébay (2008) update formulas for
|
|
37
|
+
* higher-order central moments.
|
|
38
|
+
*/
|
|
39
|
+
push(x) {
|
|
40
|
+
const n1 = this.n;
|
|
41
|
+
this.n += 1;
|
|
42
|
+
const n = this.n;
|
|
43
|
+
const delta = x - this.M1;
|
|
44
|
+
const deltaN = delta / n;
|
|
45
|
+
const deltaN2 = deltaN * deltaN;
|
|
46
|
+
const term1 = delta * deltaN * n1;
|
|
47
|
+
this.M1 += deltaN;
|
|
48
|
+
// Update M4 before M3 and M2 (they depend on old M2/M3)
|
|
49
|
+
this.M4 +=
|
|
50
|
+
term1 * deltaN2 * (n * n - 3 * n + 3) +
|
|
51
|
+
6 * deltaN2 * this.M2 -
|
|
52
|
+
4 * deltaN * this.M3;
|
|
53
|
+
this.M3 += term1 * deltaN * (n - 2) - 3 * deltaN * this.M2;
|
|
54
|
+
this.M2 += term1;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Remove a single value from the accumulator (inverse Welford).
|
|
58
|
+
*
|
|
59
|
+
* Used to implement the rolling window: when we exceed maxSamples,
|
|
60
|
+
* we subtract the oldest value's contribution.
|
|
61
|
+
*
|
|
62
|
+
* Note: this is the algebraic inverse of push(). It is numerically
|
|
63
|
+
* less stable than push() alone, but acceptable for our rolling-window
|
|
64
|
+
* use case where the window size is large relative to individual values.
|
|
65
|
+
*/
|
|
66
|
+
remove(x) {
|
|
67
|
+
if (this.n <= 1) {
|
|
68
|
+
this.n = 0;
|
|
69
|
+
this.M1 = 0;
|
|
70
|
+
this.M2 = 0;
|
|
71
|
+
this.M3 = 0;
|
|
72
|
+
this.M4 = 0;
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
const n = this.n;
|
|
76
|
+
const n1 = n - 1;
|
|
77
|
+
const delta = x - this.M1;
|
|
78
|
+
const deltaN = delta / n1;
|
|
79
|
+
const deltaN2 = deltaN * deltaN;
|
|
80
|
+
const term1 = delta * deltaN * n;
|
|
81
|
+
const newM1 = (this.M1 * n - x) / n1;
|
|
82
|
+
const newDelta = x - newM1;
|
|
83
|
+
// Reverse the M4 update
|
|
84
|
+
this.M4 -=
|
|
85
|
+
term1 * deltaN2 * (n * n - 3 * n + 3) +
|
|
86
|
+
6 * deltaN2 * (this.M2 - newDelta * delta) -
|
|
87
|
+
4 * deltaN * (this.M3 - newDelta * delta * (delta - deltaN));
|
|
88
|
+
// Reverse the M3 update
|
|
89
|
+
this.M3 -= term1 * deltaN * (n - 2) - 3 * deltaN * (this.M2 - newDelta * delta);
|
|
90
|
+
// Reverse the M2 update
|
|
91
|
+
this.M2 -= newDelta * delta;
|
|
92
|
+
this.M1 = newM1;
|
|
93
|
+
this.n = n1;
|
|
94
|
+
// Clamp M2 to non-negative (floating point can push it slightly below 0)
|
|
95
|
+
if (this.M2 < 0)
|
|
96
|
+
this.M2 = 0;
|
|
97
|
+
}
|
|
98
|
+
/** Arithmetic mean. */
|
|
99
|
+
get mean() {
|
|
100
|
+
return this.n > 0 ? this.M1 : 0;
|
|
101
|
+
}
|
|
102
|
+
/** Population variance. */
|
|
103
|
+
get variance() {
|
|
104
|
+
return this.n > 1 ? this.M2 / this.n : 0;
|
|
105
|
+
}
|
|
106
|
+
/** Population standard deviation. */
|
|
107
|
+
get stddev() {
|
|
108
|
+
return Math.sqrt(this.variance);
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Excess kurtosis (Fisher's definition).
|
|
112
|
+
*
|
|
113
|
+
* excess_kurtosis = (n * M4) / (M2^2) - 3
|
|
114
|
+
*
|
|
115
|
+
* Normal distribution has excess kurtosis = 0.
|
|
116
|
+
* Uniform distribution has excess kurtosis = -1.2.
|
|
117
|
+
*/
|
|
118
|
+
get kurtosis() {
|
|
119
|
+
if (this.n < 4 || this.M2 === 0)
|
|
120
|
+
return 0;
|
|
121
|
+
return (this.n * this.M4) / (this.M2 * this.M2) - 3;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Skewness (Fisher's definition, population formula).
|
|
125
|
+
*
|
|
126
|
+
* skewness = (sqrt(n) * M3) / (M2^(3/2))
|
|
127
|
+
*
|
|
128
|
+
* Symmetric distributions have skewness = 0.
|
|
129
|
+
*/
|
|
130
|
+
get skewness() {
|
|
131
|
+
if (this.n < 3 || this.M2 === 0)
|
|
132
|
+
return 0;
|
|
133
|
+
return (Math.sqrt(this.n) * this.M3) / Math.pow(this.M2, 1.5);
|
|
134
|
+
}
|
|
135
|
+
/** Clone the accumulator state. */
|
|
136
|
+
clone() {
|
|
137
|
+
const acc = new WelfordAccumulator();
|
|
138
|
+
acc.n = this.n;
|
|
139
|
+
acc.M1 = this.M1;
|
|
140
|
+
acc.M2 = this.M2;
|
|
141
|
+
acc.M3 = this.M3;
|
|
142
|
+
acc.M4 = this.M4;
|
|
143
|
+
return acc;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
// ---------------------------------------------------------------------------
|
|
147
|
+
// ActivationCollector
|
|
148
|
+
// ---------------------------------------------------------------------------
|
|
149
|
+
export class ActivationCollector {
|
|
150
|
+
config;
|
|
151
|
+
layers = new Map();
|
|
152
|
+
constructor(config) {
|
|
153
|
+
this.config = { ...DEFAULT_CONFIG, ...config };
|
|
154
|
+
if (this.config.maxSamplesPerLayer < 1) {
|
|
155
|
+
throw new Error('maxSamplesPerLayer must be >= 1');
|
|
156
|
+
}
|
|
157
|
+
if (this.config.minSamplesForStats < 1) {
|
|
158
|
+
throw new Error('minSamplesForStats must be >= 1');
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
// -----------------------------------------------------------------------
|
|
162
|
+
// Public API
|
|
163
|
+
// -----------------------------------------------------------------------
|
|
164
|
+
/**
|
|
165
|
+
* Record a batch of activation values for a named layer.
|
|
166
|
+
*
|
|
167
|
+
* @param layerName Identifier for the layer (e.g., "transformer.h.0.attn")
|
|
168
|
+
* @param values Activation values from one inference pass.
|
|
169
|
+
* Accepts Float32Array or number[].
|
|
170
|
+
*/
|
|
171
|
+
record(layerName, values) {
|
|
172
|
+
// If a layer allowlist is configured, skip unlisted layers
|
|
173
|
+
if (this.config.layers && !this.config.layers.includes(layerName)) {
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
let state = this.layers.get(layerName);
|
|
177
|
+
if (!state) {
|
|
178
|
+
state = {
|
|
179
|
+
accumulator: new WelfordAccumulator(),
|
|
180
|
+
buffer: new Float64Array(this.config.maxSamplesPerLayer),
|
|
181
|
+
writePos: 0,
|
|
182
|
+
totalRecorded: 0,
|
|
183
|
+
};
|
|
184
|
+
this.layers.set(layerName, state);
|
|
185
|
+
}
|
|
186
|
+
const max = this.config.maxSamplesPerLayer;
|
|
187
|
+
for (let i = 0; i < values.length; i++) {
|
|
188
|
+
const val = values[i];
|
|
189
|
+
// If the buffer is full, remove the oldest value before adding new
|
|
190
|
+
if (state.totalRecorded >= max) {
|
|
191
|
+
const oldVal = state.buffer[state.writePos];
|
|
192
|
+
state.accumulator.remove(oldVal);
|
|
193
|
+
}
|
|
194
|
+
state.accumulator.push(val);
|
|
195
|
+
state.buffer[state.writePos] = val;
|
|
196
|
+
state.writePos = (state.writePos + 1) % max;
|
|
197
|
+
state.totalRecorded++;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Get computed activation statistics for all recorded layers.
|
|
202
|
+
*
|
|
203
|
+
* Layers with fewer samples than `minSamplesForStats` are excluded.
|
|
204
|
+
* The returned array is ordered by layer name (lexicographic).
|
|
205
|
+
*/
|
|
206
|
+
getStats() {
|
|
207
|
+
const result = [];
|
|
208
|
+
const sortedKeys = Array.from(this.layers.keys()).sort();
|
|
209
|
+
for (const key of sortedKeys) {
|
|
210
|
+
const stats = this.getLayerStats(key);
|
|
211
|
+
if (stats) {
|
|
212
|
+
result.push(stats);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
return result;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Get computed stats for a specific layer.
|
|
219
|
+
*
|
|
220
|
+
* Returns `undefined` if the layer has not been recorded or has fewer
|
|
221
|
+
* samples than `minSamplesForStats`.
|
|
222
|
+
*/
|
|
223
|
+
getLayerStats(layerName) {
|
|
224
|
+
const state = this.layers.get(layerName);
|
|
225
|
+
if (!state)
|
|
226
|
+
return undefined;
|
|
227
|
+
const effectiveCount = Math.min(state.totalRecorded, this.config.maxSamplesPerLayer);
|
|
228
|
+
if (effectiveCount < this.config.minSamplesForStats) {
|
|
229
|
+
return undefined;
|
|
230
|
+
}
|
|
231
|
+
const acc = state.accumulator;
|
|
232
|
+
return {
|
|
233
|
+
mean: acc.mean,
|
|
234
|
+
stddev: acc.stddev,
|
|
235
|
+
kurtosis: acc.kurtosis,
|
|
236
|
+
skewness: acc.skewness,
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Reset all collected data across all layers.
|
|
241
|
+
*/
|
|
242
|
+
reset() {
|
|
243
|
+
this.layers.clear();
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Get the effective sample count for each layer.
|
|
247
|
+
*
|
|
248
|
+
* The count is capped at `maxSamplesPerLayer` (rolling window).
|
|
249
|
+
*/
|
|
250
|
+
getSampleCounts() {
|
|
251
|
+
const counts = new Map();
|
|
252
|
+
for (const [name, state] of this.layers) {
|
|
253
|
+
counts.set(name, Math.min(state.totalRecorded, this.config.maxSamplesPerLayer));
|
|
254
|
+
}
|
|
255
|
+
return counts;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
// Export the accumulator for testing internals
|
|
259
|
+
export { WelfordAccumulator };
|
|
260
|
+
//# sourceMappingURL=activation-collector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"activation-collector.js","sourceRoot":"","sources":["../../src/paramesphere/activation-collector.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AA+BjC,MAAM,cAAc,GAA8B;IAChD,kBAAkB,EAAE,IAAI;IACxB,kBAAkB,EAAE,EAAE;CACvB,CAAC;AAEF,8EAA8E;AAC9E,2EAA2E;AAC3E,8EAA8E;AAE9E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,kBAAkB;IACtB,CAAC,GAAG,CAAC,CAAC;IACN,EAAE,GAAG,CAAC,CAAC;IACP,EAAE,GAAG,CAAC,CAAC;IACP,EAAE,GAAG,CAAC,CAAC;IACP,EAAE,GAAG,CAAC,CAAC;IAEP;;;;;OAKG;IACH,IAAI,CAAC,CAAS;QACZ,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QACZ,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QAEjB,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,KAAK,GAAG,CAAC,CAAC;QACzB,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;QAChC,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,EAAE,CAAC;QAElC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC;QAElB,wDAAwD;QACxD,IAAI,CAAC,EAAE;YACL,KAAK,GAAG,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACrC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,EAAE;gBACrB,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;QAEvB,IAAI,CAAC,EAAE,IAAI,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;QAE3D,IAAI,CAAC,EAAE,IAAI,KAAK,CAAC;IACnB,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,CAAS;QACd,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACX,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;YACZ,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;YACZ,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;YACZ,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;YACZ,OAAO;QACT,CAAC;QAED,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QACjB,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAEjB,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,KAAK,GAAG,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;QAChC,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC;QAEjC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,CAAC;QAE3B,wBAAwB;QACxB,IAAI,CAAC,EAAE;YACL,KAAK,GAAG,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACrC,CAAC,GAAG,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,GAAG,KAAK,CAAC;gBAC1C,CAAC,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,GAAG,KAAK,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC;QAE/D,wBAAwB;QACxB,IAAI,CAAC,EAAE,IAAI,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC;QAEhF,wBAAwB;QACxB,IAAI,CAAC,EAAE,IAAI,QAAQ,GAAG,KAAK,CAAC;QAE5B,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;QAEZ,yEAAyE;QACzE,IAAI,IAAI,CAAC,EAAE,GAAG,CAAC;YAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,uBAAuB;IACvB,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,2BAA2B;IAC3B,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,qCAAqC;IACrC,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ;QACV,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACH,IAAI,QAAQ;QACV,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAChE,CAAC;IAED,mCAAmC;IACnC,KAAK;QACH,MAAM,GAAG,GAAG,IAAI,kBAAkB,EAAE,CAAC;QACrC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QACf,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QACjB,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QACjB,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QACjB,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AAgBD,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,MAAM,OAAO,mBAAmB;IACb,MAAM,CAA4B;IAClC,MAAM,GAA4B,IAAI,GAAG,EAAE,CAAC;IAE7D,YAAY,MAA2C;QACrD,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;QAC/C,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,aAAa;IACb,0EAA0E;IAE1E;;;;;;OAMG;IACH,MAAM,CAAC,SAAiB,EAAE,MAA+B;QACvD,2DAA2D;QAC3D,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAClE,OAAO;QACT,CAAC;QAED,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG;gBACN,WAAW,EAAE,IAAI,kBAAkB,EAAE;gBACrC,MAAM,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC;gBACxD,QAAQ,EAAE,CAAC;gBACX,aAAa,EAAE,CAAC;aACjB,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAE3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAEtB,mEAAmE;YACnE,IAAI,KAAK,CAAC,aAAa,IAAI,GAAG,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC5C,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;YAED,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5B,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;YACnC,KAAK,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;YAC5C,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,QAAQ;QACN,MAAM,MAAM,GAAsB,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAEzD,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,SAAiB;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAE7B,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACrF,IAAI,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACpD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC;QAC9B,OAAO;YACL,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,eAAe;QACb,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;QACzC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,+CAA+C;AAC/C,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cognitive Envelope — Hyper-Rectangle Breach Detection
|
|
3
|
+
*
|
|
4
|
+
* Implements the patent-specified 6-dimensional cognitive envelope that
|
|
5
|
+
* monitors an AI model's characteristic vector for anomalous deviations.
|
|
6
|
+
*
|
|
7
|
+
* The envelope E is defined as the Cartesian product of per-dimension
|
|
8
|
+
* intervals [mu_d − k·sigma_d, mu_d + k·sigma_d] for d = 1..D.
|
|
9
|
+
* With k = 3 (99.7% coverage per dimension), the probability of a
|
|
10
|
+
* false positive across all 6 independent dimensions is bounded by
|
|
11
|
+
* (1 − 0.997)^6 ≈ (0.003)^6 ≈ 7.3e-16 for a single sample. Requiring
|
|
12
|
+
* 3 consecutive breaches reduces the effective FP rate to ~(0.003)^3
|
|
13
|
+
* ≈ 2.7e-8 per dimension, as specified in the patent.
|
|
14
|
+
*
|
|
15
|
+
* Characteristic vector dimensions (defaults):
|
|
16
|
+
* 0 — Weight Geometry (Frobenius norm or spectral norm)
|
|
17
|
+
* 1 — Activation Clustering (silhouette coefficient)
|
|
18
|
+
* 2 — Embedding Drift (cosine distance from baseline)
|
|
19
|
+
* 3 — Attention Entropy (average attention entropy)
|
|
20
|
+
* 4 — Gradient Norm (global gradient L2 norm)
|
|
21
|
+
* 5 — Effective Dimensionality (participation ratio)
|
|
22
|
+
*
|
|
23
|
+
* @packageDocumentation
|
|
24
|
+
*/
|
|
25
|
+
import type { EnvelopeConfig, BreachResult, EnvelopeState } from './types.js';
|
|
26
|
+
export declare class CognitiveEnvelope {
|
|
27
|
+
private readonly config;
|
|
28
|
+
private mu;
|
|
29
|
+
private sigma;
|
|
30
|
+
private lowerBounds;
|
|
31
|
+
private upperBounds;
|
|
32
|
+
private baselined;
|
|
33
|
+
private breachCounter;
|
|
34
|
+
private lastCheckMs;
|
|
35
|
+
constructor(config?: Partial<EnvelopeConfig>);
|
|
36
|
+
/**
|
|
37
|
+
* Establish the envelope baseline from an observation period.
|
|
38
|
+
*
|
|
39
|
+
* @param measurements Array of observation vectors. Each inner array has
|
|
40
|
+
* length equal to `config.dimensions`. At least 2
|
|
41
|
+
* observations are required to compute sigma.
|
|
42
|
+
*/
|
|
43
|
+
baselineFromObservations(measurements: number[][]): void;
|
|
44
|
+
/**
|
|
45
|
+
* Check a current characteristic vector against the envelope.
|
|
46
|
+
*
|
|
47
|
+
* Breach counter increments on any-dimension breach and decrements
|
|
48
|
+
* (towards 0) on a clean check. Trust multiplier is determined by
|
|
49
|
+
* the counter value relative to the threshold.
|
|
50
|
+
*/
|
|
51
|
+
checkBreach(currentChars: number[]): BreachResult;
|
|
52
|
+
/**
|
|
53
|
+
* Get the current internal state of the envelope.
|
|
54
|
+
*/
|
|
55
|
+
getState(): EnvelopeState;
|
|
56
|
+
/**
|
|
57
|
+
* Reset the breach counter to zero without clearing the baseline.
|
|
58
|
+
*/
|
|
59
|
+
reset(): void;
|
|
60
|
+
/**
|
|
61
|
+
* Fully clear the baseline and all state.
|
|
62
|
+
*/
|
|
63
|
+
clearBaseline(): void;
|
|
64
|
+
/**
|
|
65
|
+
* Compute the trust multiplier based on breach counter.
|
|
66
|
+
*
|
|
67
|
+
* - counter == 0 → 1.0 (normal)
|
|
68
|
+
* - 0 < counter < threshold → 0.9 (approaching breach)
|
|
69
|
+
* - counter >= threshold → 0.7 (full breach)
|
|
70
|
+
*/
|
|
71
|
+
private currentTrustMultiplier;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=cognitive-envelope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cognitive-envelope.d.ts","sourceRoot":"","sources":["../../src/paramesphere/cognitive-envelope.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAkB9E,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IAGxC,OAAO,CAAC,EAAE,CAAgB;IAC1B,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,SAAS,CAAS;IAG1B,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,WAAW,CAAK;gBAEZ,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAiB5C;;;;;;OAMG;IACH,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI;IAuDxD;;;;;;OAMG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,YAAY;IAgEjD;;OAEG;IACH,QAAQ,IAAI,aAAa;IAYzB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,aAAa,IAAI,IAAI;IAcrB;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;CAK/B"}
|