@vorionsys/atsf-core 0.2.4 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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.map +1 -1
- package/dist/api/index.js +2 -0
- package/dist/api/index.js.map +1 -1
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +2 -0
- package/dist/api/server.js.map +1 -1
- package/dist/arbitration/index.d.ts +0 -8
- package/dist/arbitration/index.d.ts.map +1 -1
- package/dist/arbitration/index.js +2 -0
- package/dist/arbitration/index.js.map +1 -1
- 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 +0 -5
- package/dist/basis/evaluator.d.ts.map +1 -1
- package/dist/basis/evaluator.js +2 -0
- package/dist/basis/evaluator.js.map +1 -1
- package/dist/basis/index.d.ts.map +1 -1
- package/dist/basis/index.js +2 -0
- package/dist/basis/index.js.map +1 -1
- package/dist/basis/parser.d.ts +46 -46
- package/dist/basis/parser.d.ts.map +1 -1
- package/dist/basis/parser.js +2 -0
- package/dist/basis/parser.js.map +1 -1
- 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 +2 -0
- package/dist/chain/index.js.map +1 -1
- package/dist/cognigate/index.d.ts +0 -8
- package/dist/cognigate/index.d.ts.map +1 -1
- package/dist/cognigate/index.js +2 -0
- package/dist/cognigate/index.js.map +1 -1
- package/dist/common/adapters.d.ts.map +1 -1
- package/dist/common/adapters.js +2 -8
- package/dist/common/adapters.js.map +1 -1
- package/dist/common/config.d.ts.map +1 -1
- package/dist/common/config.js +2 -0
- package/dist/common/config.js.map +1 -1
- package/dist/common/index.d.ts.map +1 -1
- package/dist/common/index.js +2 -0
- package/dist/common/index.js.map +1 -1
- package/dist/common/logger.d.ts.map +1 -1
- package/dist/common/logger.js +2 -0
- package/dist/common/logger.js.map +1 -1
- package/dist/common/types.d.ts +8 -8
- package/dist/common/types.d.ts.map +1 -1
- package/dist/common/types.js +2 -9
- package/dist/common/types.js.map +1 -1
- package/dist/containment/index.d.ts +0 -8
- package/dist/containment/index.d.ts.map +1 -1
- package/dist/containment/index.js +2 -0
- package/dist/containment/index.js.map +1 -1
- 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 +0 -8
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +2 -0
- package/dist/contracts/index.js.map +1 -1
- 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 +0 -7
- package/dist/crewai/callback.d.ts.map +1 -1
- package/dist/crewai/callback.js +2 -0
- package/dist/crewai/callback.js.map +1 -1
- package/dist/crewai/executor.d.ts +0 -7
- package/dist/crewai/executor.d.ts.map +1 -1
- package/dist/crewai/executor.js +2 -0
- package/dist/crewai/executor.js.map +1 -1
- package/dist/crewai/index.d.ts.map +1 -1
- package/dist/crewai/index.js +2 -0
- package/dist/crewai/index.js.map +1 -1
- package/dist/crewai/tools.d.ts.map +1 -1
- package/dist/crewai/tools.js +2 -7
- package/dist/crewai/tools.js.map +1 -1
- 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 +0 -15
- package/dist/enforce/index.d.ts.map +1 -1
- package/dist/enforce/index.js +3 -1
- package/dist/enforce/index.js.map +1 -1
- package/dist/enforce/trust-aware-enforcement-service.d.ts +0 -15
- package/dist/enforce/trust-aware-enforcement-service.d.ts.map +1 -1
- package/dist/enforce/trust-aware-enforcement-service.js +2 -0
- package/dist/enforce/trust-aware-enforcement-service.js.map +1 -1
- package/dist/governance/fluid-workflow.d.ts +0 -8
- package/dist/governance/fluid-workflow.d.ts.map +1 -1
- package/dist/governance/fluid-workflow.js +2 -0
- package/dist/governance/fluid-workflow.js.map +1 -1
- package/dist/governance/index.d.ts +0 -8
- package/dist/governance/index.d.ts.map +1 -1
- package/dist/governance/index.js +2 -0
- package/dist/governance/index.js.map +1 -1
- package/dist/governance/proof-bridge.d.ts.map +1 -1
- package/dist/governance/proof-bridge.js +2 -12
- package/dist/governance/proof-bridge.js.map +1 -1
- 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 +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/intent/index.d.ts +0 -13
- package/dist/intent/index.d.ts.map +1 -1
- package/dist/intent/index.js +4 -2
- package/dist/intent/index.js.map +1 -1
- package/dist/intent/persistent-intent-service.d.ts +0 -15
- package/dist/intent/persistent-intent-service.d.ts.map +1 -1
- package/dist/intent/persistent-intent-service.js +2 -0
- package/dist/intent/persistent-intent-service.js.map +1 -1
- package/dist/intent/supabase-intent-repository.d.ts +0 -17
- package/dist/intent/supabase-intent-repository.d.ts.map +1 -1
- package/dist/intent/supabase-intent-repository.js +2 -0
- package/dist/intent/supabase-intent-repository.js.map +1 -1
- package/dist/intent-gateway/index.d.ts +499 -0
- package/dist/intent-gateway/index.d.ts.map +1 -0
- package/dist/intent-gateway/index.js +1332 -0
- package/dist/intent-gateway/index.js.map +1 -0
- package/dist/langchain/callback.d.ts +0 -7
- package/dist/langchain/callback.d.ts.map +1 -1
- package/dist/langchain/callback.js +2 -0
- package/dist/langchain/callback.js.map +1 -1
- package/dist/langchain/executor.d.ts +0 -7
- package/dist/langchain/executor.d.ts.map +1 -1
- package/dist/langchain/executor.js +2 -0
- package/dist/langchain/executor.js.map +1 -1
- package/dist/langchain/index.d.ts.map +1 -1
- package/dist/langchain/index.js +2 -0
- package/dist/langchain/index.js.map +1 -1
- package/dist/langchain/tools.d.ts.map +1 -1
- package/dist/langchain/tools.js +2 -7
- package/dist/langchain/tools.js.map +1 -1
- 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.map +1 -1
- package/dist/layers/implementations/L0-request-format.js +2 -0
- package/dist/layers/implementations/L0-request-format.js.map +1 -1
- package/dist/layers/implementations/L1-input-size.d.ts.map +1 -1
- package/dist/layers/implementations/L1-input-size.js +2 -0
- package/dist/layers/implementations/L1-input-size.js.map +1 -1
- package/dist/layers/implementations/L2-charset-sanitizer.d.ts.map +1 -1
- package/dist/layers/implementations/L2-charset-sanitizer.js +2 -0
- package/dist/layers/implementations/L2-charset-sanitizer.js.map +1 -1
- package/dist/layers/implementations/L3-schema-conformance.d.ts.map +1 -1
- package/dist/layers/implementations/L3-schema-conformance.js +2 -0
- package/dist/layers/implementations/L3-schema-conformance.js.map +1 -1
- package/dist/layers/implementations/L4-injection-detector.d.ts.map +1 -1
- package/dist/layers/implementations/L4-injection-detector.js +2 -0
- package/dist/layers/implementations/L4-injection-detector.js.map +1 -1
- package/dist/layers/implementations/L5-rate-limiter.d.ts.map +1 -1
- package/dist/layers/implementations/L5-rate-limiter.js +2 -0
- package/dist/layers/implementations/L5-rate-limiter.js.map +1 -1
- package/dist/layers/implementations/index.d.ts.map +1 -1
- package/dist/layers/implementations/index.js +2 -0
- package/dist/layers/implementations/index.js.map +1 -1
- package/dist/layers/index.d.ts +0 -8
- package/dist/layers/index.d.ts.map +1 -1
- package/dist/layers/index.js +2 -0
- package/dist/layers/index.js.map +1 -1
- 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 +117 -0
- package/dist/paramesphere/cognitive-envelope.d.ts.map +1 -0
- package/dist/paramesphere/cognitive-envelope.js +220 -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 +114 -0
- package/dist/paramesphere/envelope-integration.js.map +1 -0
- package/dist/paramesphere/fingerprint-monitor.d.ts +143 -0
- package/dist/paramesphere/fingerprint-monitor.d.ts.map +1 -0
- package/dist/paramesphere/fingerprint-monitor.js +240 -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 +22 -0
- package/dist/paramesphere/index.d.ts.map +1 -0
- package/dist/paramesphere/index.js +19 -0
- package/dist/paramesphere/index.js.map +1 -0
- package/dist/paramesphere/monitor-integration.d.ts +47 -0
- package/dist/paramesphere/monitor-integration.d.ts.map +1 -0
- package/dist/paramesphere/monitor-integration.js +102 -0
- package/dist/paramesphere/monitor-integration.js.map +1 -0
- package/dist/paramesphere/paramesphere-engine.d.ts +126 -0
- package/dist/paramesphere/paramesphere-engine.d.ts.map +1 -0
- package/dist/paramesphere/paramesphere-engine.js +610 -0
- package/dist/paramesphere/paramesphere-engine.js.map +1 -0
- package/dist/paramesphere/types.d.ts +191 -0
- package/dist/paramesphere/types.d.ts.map +1 -0
- package/dist/paramesphere/types.js +9 -0
- package/dist/paramesphere/types.js.map +1 -0
- package/dist/persistence/file.d.ts +0 -7
- package/dist/persistence/file.d.ts.map +1 -1
- package/dist/persistence/file.js +2 -0
- package/dist/persistence/file.js.map +1 -1
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +2 -0
- package/dist/persistence/index.js.map +1 -1
- package/dist/persistence/memory.d.ts.map +1 -1
- package/dist/persistence/memory.js +2 -7
- package/dist/persistence/memory.js.map +1 -1
- package/dist/persistence/sqlite.d.ts +0 -8
- package/dist/persistence/sqlite.d.ts.map +1 -1
- package/dist/persistence/sqlite.js +3 -1
- package/dist/persistence/sqlite.js.map +1 -1
- package/dist/persistence/supabase.d.ts.map +1 -1
- package/dist/persistence/supabase.js +3 -8
- package/dist/persistence/supabase.js.map +1 -1
- 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 +0 -16
- package/dist/phase6/ceiling.d.ts.map +1 -1
- package/dist/phase6/ceiling.js +2 -0
- package/dist/phase6/ceiling.js.map +1 -1
- package/dist/phase6/context.d.ts +0 -17
- package/dist/phase6/context.d.ts.map +1 -1
- package/dist/phase6/context.js +2 -0
- package/dist/phase6/context.js.map +1 -1
- package/dist/phase6/index.d.ts.map +1 -1
- package/dist/phase6/index.js +2 -0
- package/dist/phase6/index.js.map +1 -1
- package/dist/phase6/presets.d.ts +0 -16
- package/dist/phase6/presets.d.ts.map +1 -1
- package/dist/phase6/presets.js +5 -3
- package/dist/phase6/presets.js.map +1 -1
- package/dist/phase6/provenance.d.ts +7 -16
- package/dist/phase6/provenance.d.ts.map +1 -1
- package/dist/phase6/provenance.js +18 -10
- package/dist/phase6/provenance.js.map +1 -1
- package/dist/phase6/role-gates/index.d.ts.map +1 -1
- package/dist/phase6/role-gates/index.js +2 -0
- 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 +2 -0
- package/dist/phase6/role-gates/kernel.js.map +1 -1
- package/dist/phase6/role-gates/policy.d.ts.map +1 -1
- package/dist/phase6/role-gates/policy.js +2 -11
- package/dist/phase6/role-gates/policy.js.map +1 -1
- package/dist/phase6/role-gates.d.ts +0 -16
- package/dist/phase6/role-gates.d.ts.map +1 -1
- package/dist/phase6/role-gates.js +2 -0
- package/dist/phase6/role-gates.js.map +1 -1
- package/dist/phase6/types.d.ts +217 -188
- package/dist/phase6/types.d.ts.map +1 -1
- package/dist/phase6/types.js +50 -1
- 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 +2 -0
- package/dist/phase6/weight-presets/canonical.js.map +1 -1
- package/dist/phase6/weight-presets/deltas.d.ts.map +1 -1
- package/dist/phase6/weight-presets/deltas.js +2 -10
- package/dist/phase6/weight-presets/deltas.js.map +1 -1
- package/dist/phase6/weight-presets/index.d.ts.map +1 -1
- package/dist/phase6/weight-presets/index.js +2 -0
- package/dist/phase6/weight-presets/index.js.map +1 -1
- package/dist/phase6/weight-presets/merger.d.ts +0 -10
- package/dist/phase6/weight-presets/merger.d.ts.map +1 -1
- package/dist/phase6/weight-presets/merger.js +2 -0
- package/dist/phase6/weight-presets/merger.js.map +1 -1
- package/dist/proof/index.d.ts +3 -10
- package/dist/proof/index.d.ts.map +1 -1
- package/dist/proof/index.js +27 -9
- package/dist/proof/index.js.map +1 -1
- package/dist/proof/merkle.d.ts +0 -16
- package/dist/proof/merkle.d.ts.map +1 -1
- package/dist/proof/merkle.js +2 -0
- package/dist/proof/merkle.js.map +1 -1
- package/dist/proof/zk-proofs.d.ts +0 -18
- package/dist/proof/zk-proofs.d.ts.map +1 -1
- package/dist/proof/zk-proofs.js +2 -0
- package/dist/proof/zk-proofs.js.map +1 -1
- package/dist/provenance/index.d.ts +0 -8
- package/dist/provenance/index.d.ts.map +1 -1
- package/dist/provenance/index.js +2 -0
- package/dist/provenance/index.js.map +1 -1
- 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.map +1 -1
- package/dist/sandbox-training/challenges.js +2 -8
- package/dist/sandbox-training/challenges.js.map +1 -1
- package/dist/sandbox-training/graduation.d.ts.map +1 -1
- package/dist/sandbox-training/graduation.js +2 -8
- package/dist/sandbox-training/graduation.js.map +1 -1
- package/dist/sandbox-training/index.d.ts.map +1 -1
- package/dist/sandbox-training/index.js +2 -0
- package/dist/sandbox-training/index.js.map +1 -1
- package/dist/sandbox-training/promotion-service.d.ts.map +1 -1
- package/dist/sandbox-training/promotion-service.js +2 -11
- package/dist/sandbox-training/promotion-service.js.map +1 -1
- package/dist/sandbox-training/runner.d.ts.map +1 -1
- package/dist/sandbox-training/runner.js +2 -8
- package/dist/sandbox-training/runner.js.map +1 -1
- package/dist/sandbox-training/scorer.d.ts.map +1 -1
- package/dist/sandbox-training/scorer.js +2 -8
- package/dist/sandbox-training/scorer.js.map +1 -1
- package/dist/sandbox-training/types.d.ts.map +1 -1
- package/dist/sandbox-training/types.js +2 -8
- package/dist/sandbox-training/types.js.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.d.ts +0 -8
- package/dist/trust-engine/ceiling-enforcement/audit.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.js +2 -8
- package/dist/trust-engine/ceiling-enforcement/audit.js.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/index.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/index.js +2 -0
- package/dist/trust-engine/ceiling-enforcement/index.js.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/kernel.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/kernel.js +2 -0
- 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.map +1 -1
- package/dist/trust-engine/context-policy/factory.js +2 -0
- package/dist/trust-engine/context-policy/factory.js.map +1 -1
- package/dist/trust-engine/context-policy/index.d.ts.map +1 -1
- package/dist/trust-engine/context-policy/index.js +2 -0
- package/dist/trust-engine/context-policy/index.js.map +1 -1
- package/dist/trust-engine/creation-modifiers/index.d.ts.map +1 -1
- package/dist/trust-engine/creation-modifiers/index.js +2 -0
- 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 +2 -0
- package/dist/trust-engine/creation-modifiers/types.js.map +1 -1
- package/dist/trust-engine/decay-profiles.d.ts +20 -11
- package/dist/trust-engine/decay-profiles.d.ts.map +1 -1
- package/dist/trust-engine/decay-profiles.js +15 -23
- package/dist/trust-engine/decay-profiles.js.map +1 -1
- package/dist/trust-engine/index.d.ts +419 -80
- package/dist/trust-engine/index.d.ts.map +1 -1
- package/dist/trust-engine/index.js +1048 -186
- package/dist/trust-engine/index.js.map +1 -1
- package/dist/trust-engine/phase6-types.d.ts +3 -13
- package/dist/trust-engine/phase6-types.d.ts.map +1 -1
- package/dist/trust-engine/phase6-types.js +5 -13
- 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
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Monitor Integration — Connects FingerprintMonitor to TrustEngine.
|
|
3
|
+
*
|
|
4
|
+
* Thin adapter that wires drift / tampering detection callbacks to
|
|
5
|
+
* `TrustEngine.recordSignal()`, converting `TrustSignalPayload` objects
|
|
6
|
+
* into proper `TrustSignal` records.
|
|
7
|
+
*
|
|
8
|
+
* @packageDocumentation
|
|
9
|
+
*/
|
|
10
|
+
import type { FingerprintMonitor } from './fingerprint-monitor.js';
|
|
11
|
+
import type { IntegrityMultiplierConfig } from './types.js';
|
|
12
|
+
import type { ParameSphereEngine } from './paramesphere-engine.js';
|
|
13
|
+
import type { TrustEngine } from '../trust-engine/index.js';
|
|
14
|
+
/** Configuration for the monitor-to-engine integration. */
|
|
15
|
+
export interface MonitorIntegrationConfig {
|
|
16
|
+
/** Value recorded for drift signals (0 = maximum negative, 1 = positive). Default: 0.3 (mild negative). */
|
|
17
|
+
driftSignalWeight?: number;
|
|
18
|
+
/** Value recorded for tampering signals. Default: 0.0 (severe negative). */
|
|
19
|
+
tamperingSignalWeight?: number;
|
|
20
|
+
/** Source string attached to recorded signals. Default: 'paramesphere'. */
|
|
21
|
+
signalSource?: string;
|
|
22
|
+
/**
|
|
23
|
+
* ParameSphere engine instance for computing I(θ).
|
|
24
|
+
* When provided, drift signals use the continuous integrity multiplier
|
|
25
|
+
* instead of the fixed driftSignalWeight.
|
|
26
|
+
*/
|
|
27
|
+
paramesphereEngine?: ParameSphereEngine;
|
|
28
|
+
/** Weights for I(θ) computation. Default: 0.4/0.3/0.3. */
|
|
29
|
+
integrityWeights?: IntegrityMultiplierConfig;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Wire a FingerprintMonitor's drift / tampering callbacks to a TrustEngine.
|
|
33
|
+
*
|
|
34
|
+
* After calling this function every drift or tampering detection will
|
|
35
|
+
* automatically record a trust signal via `engine.recordSignal()`.
|
|
36
|
+
*
|
|
37
|
+
* Call {@link disconnectMonitor} to remove the wiring.
|
|
38
|
+
*/
|
|
39
|
+
export declare function connectMonitorToTrustEngine(monitor: FingerprintMonitor, engine: TrustEngine, config?: MonitorIntegrationConfig): void;
|
|
40
|
+
/**
|
|
41
|
+
* Remove trust-engine wiring from a FingerprintMonitor.
|
|
42
|
+
*
|
|
43
|
+
* Clears the `onDriftDetected` and `onTamperingDetected` callbacks so that
|
|
44
|
+
* subsequent detections no longer record trust signals.
|
|
45
|
+
*/
|
|
46
|
+
export declare function disconnectMonitor(monitor: FingerprintMonitor): void;
|
|
47
|
+
//# sourceMappingURL=monitor-integration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monitor-integration.d.ts","sourceRoot":"","sources":["../../src/paramesphere/monitor-integration.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,0BAA0B,CAAC;AACvF,OAAO,KAAK,EAAe,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAM5D,2DAA2D;AAC3D,MAAM,WAAW,wBAAwB;IACvC,2GAA2G;IAC3G,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,0DAA0D;IAC1D,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;CAC9C;AAyBD;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,wBAAwB,GAChC,IAAI,CAsDN;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAMnE"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright 2024-2026 Vorion LLC
|
|
3
|
+
import { DEFAULT_INTEGRITY_WEIGHTS } from './types.js';
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
// Defaults
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
const DEFAULT_DRIFT_WEIGHT = 0.3;
|
|
8
|
+
const DEFAULT_TAMPERING_WEIGHT = 0.0;
|
|
9
|
+
const DEFAULT_SIGNAL_SOURCE = 'paramesphere';
|
|
10
|
+
const connections = new WeakMap();
|
|
11
|
+
// ---------------------------------------------------------------------------
|
|
12
|
+
// Public API
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
/**
|
|
15
|
+
* Wire a FingerprintMonitor's drift / tampering callbacks to a TrustEngine.
|
|
16
|
+
*
|
|
17
|
+
* After calling this function every drift or tampering detection will
|
|
18
|
+
* automatically record a trust signal via `engine.recordSignal()`.
|
|
19
|
+
*
|
|
20
|
+
* Call {@link disconnectMonitor} to remove the wiring.
|
|
21
|
+
*/
|
|
22
|
+
export function connectMonitorToTrustEngine(monitor, engine, config) {
|
|
23
|
+
const driftWeight = config?.driftSignalWeight ?? DEFAULT_DRIFT_WEIGHT;
|
|
24
|
+
const tamperingWeight = config?.tamperingSignalWeight ?? DEFAULT_TAMPERING_WEIGHT;
|
|
25
|
+
const source = config?.signalSource ?? DEFAULT_SIGNAL_SOURCE;
|
|
26
|
+
const psEngine = config?.paramesphereEngine;
|
|
27
|
+
const integrityWeights = config?.integrityWeights ?? DEFAULT_INTEGRITY_WEIGHTS;
|
|
28
|
+
// Validate weights
|
|
29
|
+
if (driftWeight < 0 || driftWeight > 1) {
|
|
30
|
+
throw new Error('driftSignalWeight must be between 0 and 1');
|
|
31
|
+
}
|
|
32
|
+
if (tamperingWeight < 0 || tamperingWeight > 1) {
|
|
33
|
+
throw new Error('tamperingSignalWeight must be between 0 and 1');
|
|
34
|
+
}
|
|
35
|
+
// If already connected, disconnect first to avoid stacking callbacks
|
|
36
|
+
if (connections.has(monitor)) {
|
|
37
|
+
disconnectMonitor(monitor);
|
|
38
|
+
}
|
|
39
|
+
// Save state for later disconnection (no previous callbacks to restore
|
|
40
|
+
// since we don't have access to read private fields — we just clear on disconnect)
|
|
41
|
+
const state = {};
|
|
42
|
+
connections.set(monitor, state);
|
|
43
|
+
// Wire drift callback
|
|
44
|
+
monitor.setOnDriftDetected((entityId, result) => {
|
|
45
|
+
let value;
|
|
46
|
+
let extraMetadata = {};
|
|
47
|
+
if (psEngine) {
|
|
48
|
+
// Compute I(θ) for continuous integrity signal
|
|
49
|
+
const integrity = psEngine.computeIntegrityMultiplier(result, 1.0, integrityWeights);
|
|
50
|
+
value = integrity.composite;
|
|
51
|
+
extraMetadata = {
|
|
52
|
+
integrityMultiplier: integrity.composite,
|
|
53
|
+
fingerprintComponent: integrity.fingerprintComponent,
|
|
54
|
+
driftComponent: integrity.driftComponent,
|
|
55
|
+
envelopeComponent: integrity.envelopeComponent,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
// Backwards compatibility: fixed weight
|
|
60
|
+
value = driftWeight;
|
|
61
|
+
}
|
|
62
|
+
const signal = buildSignal(entityId, 'ANOMALY_DETECTED', value, source, result, extraMetadata);
|
|
63
|
+
void engine.recordSignal(signal);
|
|
64
|
+
});
|
|
65
|
+
// Wire tampering callback — always 0.0 regardless of I(θ)
|
|
66
|
+
monitor.setOnTamperingDetected((entityId, result) => {
|
|
67
|
+
const signal = buildSignal(entityId, 'TAMPERING_DETECTED', tamperingWeight, source, result);
|
|
68
|
+
void engine.recordSignal(signal);
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Remove trust-engine wiring from a FingerprintMonitor.
|
|
73
|
+
*
|
|
74
|
+
* Clears the `onDriftDetected` and `onTamperingDetected` callbacks so that
|
|
75
|
+
* subsequent detections no longer record trust signals.
|
|
76
|
+
*/
|
|
77
|
+
export function disconnectMonitor(monitor) {
|
|
78
|
+
if (!connections.has(monitor))
|
|
79
|
+
return;
|
|
80
|
+
monitor.setOnDriftDetected(undefined);
|
|
81
|
+
monitor.setOnTamperingDetected(undefined);
|
|
82
|
+
connections.delete(monitor);
|
|
83
|
+
}
|
|
84
|
+
// ---------------------------------------------------------------------------
|
|
85
|
+
// Internal helpers
|
|
86
|
+
// ---------------------------------------------------------------------------
|
|
87
|
+
function buildSignal(entityId, type, value, source, result, extraMetadata = {}) {
|
|
88
|
+
return {
|
|
89
|
+
id: `${source}-${type.toLowerCase()}-${entityId}-${Date.now()}`,
|
|
90
|
+
entityId,
|
|
91
|
+
type,
|
|
92
|
+
value,
|
|
93
|
+
source,
|
|
94
|
+
timestamp: new Date().toISOString(),
|
|
95
|
+
metadata: {
|
|
96
|
+
cosineDistance: result.cosineDistance,
|
|
97
|
+
maxSingularValueDelta: result.maxSingularValueDelta,
|
|
98
|
+
...extraMetadata,
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=monitor-integration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monitor-integration.js","sourceRoot":"","sources":["../../src/paramesphere/monitor-integration.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import type { ParameSphereConfig, ParameSphereFingerprint, ActivationStats, FingerprintComparison, DriftResult, IntegrityMultiplier, IntegrityMultiplierConfig } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Compute the top-K singular values of a matrix using the deflated
|
|
4
|
+
* power-iteration method.
|
|
5
|
+
*
|
|
6
|
+
* Given an m × n matrix A (stored row-major in a flat Float64Array),
|
|
7
|
+
* this iteratively finds the largest singular value via the power method
|
|
8
|
+
* on A^T A, then deflates the matrix and repeats for the next largest.
|
|
9
|
+
*
|
|
10
|
+
* @param data Row-major flat array of the matrix.
|
|
11
|
+
* @param rows Number of rows (m).
|
|
12
|
+
* @param cols Number of columns (n).
|
|
13
|
+
* @param k Number of singular values to extract.
|
|
14
|
+
* @returns Float64Array of length min(k, min(m,n)) with the top
|
|
15
|
+
* singular values in descending order.
|
|
16
|
+
*/
|
|
17
|
+
declare function topKSingularValues(data: Float64Array, rows: number, cols: number, k: number): Float64Array;
|
|
18
|
+
declare function cosineSimilarity(a: Float64Array, b: Float64Array): number;
|
|
19
|
+
declare function l2Distance(a: Float64Array, b: Float64Array): number;
|
|
20
|
+
/**
|
|
21
|
+
* Select which layer indices to sample.
|
|
22
|
+
*
|
|
23
|
+
* Uses a deterministic spread strategy: always include first and last layer,
|
|
24
|
+
* then fill in evenly-spaced layers up to the target count.
|
|
25
|
+
*/
|
|
26
|
+
declare function selectLayers(totalLayers: number, ratio: number): number[];
|
|
27
|
+
export declare class ParameSphereEngine {
|
|
28
|
+
private readonly config;
|
|
29
|
+
private baseline;
|
|
30
|
+
private cache;
|
|
31
|
+
/** Cached singular values from the last computation, keyed by layer index. */
|
|
32
|
+
private prevSingularValues;
|
|
33
|
+
/** Optional persistent store for fingerprints and baselines. */
|
|
34
|
+
private readonly store;
|
|
35
|
+
/** Entity ID for store operations. */
|
|
36
|
+
private readonly entityId;
|
|
37
|
+
constructor(config?: Partial<ParameSphereConfig>);
|
|
38
|
+
/**
|
|
39
|
+
* Compute a full fingerprint from scratch.
|
|
40
|
+
*
|
|
41
|
+
* @param weights Array of weight matrices, one per layer.
|
|
42
|
+
* Each Float32Array is treated as a flat row-major
|
|
43
|
+
* matrix. The engine infers rows/cols by assuming a
|
|
44
|
+
* roughly square shape (sqrt heuristic) unless the
|
|
45
|
+
* layer is clearly rectangular.
|
|
46
|
+
* @param activationStats Optional per-layer activation statistics.
|
|
47
|
+
*/
|
|
48
|
+
computeFingerprint(weights: Float32Array[], activationStats?: ActivationStats[]): ParameSphereFingerprint;
|
|
49
|
+
/**
|
|
50
|
+
* Incremental fingerprint update.
|
|
51
|
+
*
|
|
52
|
+
* Re-uses cached singular values where the delta is negligible, only
|
|
53
|
+
* recomputing layers whose weights have changed significantly.
|
|
54
|
+
*/
|
|
55
|
+
updateFingerprint(newWeights: Float32Array[], activationStats?: ActivationStats[]): ParameSphereFingerprint;
|
|
56
|
+
/**
|
|
57
|
+
* Compare two fingerprints.
|
|
58
|
+
*/
|
|
59
|
+
compareFingerprints(a: ParameSphereFingerprint, b: ParameSphereFingerprint): FingerprintComparison;
|
|
60
|
+
/**
|
|
61
|
+
* Store a fingerprint as the drift-detection baseline.
|
|
62
|
+
*
|
|
63
|
+
* When a persistent store is configured, the baseline is also saved
|
|
64
|
+
* to the store so it survives process restarts.
|
|
65
|
+
*/
|
|
66
|
+
setBaseline(fingerprint: ParameSphereFingerprint): void;
|
|
67
|
+
/**
|
|
68
|
+
* Check drift of a current fingerprint against the stored baseline.
|
|
69
|
+
*
|
|
70
|
+
* When a persistent store is configured and no in-memory baseline exists,
|
|
71
|
+
* the engine attempts to load the baseline from the store before comparing.
|
|
72
|
+
* Use the async overload `checkDriftAsync` if your store backend is truly
|
|
73
|
+
* async; this synchronous version will throw if neither in-memory nor store
|
|
74
|
+
* baseline is available.
|
|
75
|
+
*/
|
|
76
|
+
checkDrift(current: ParameSphereFingerprint): DriftResult;
|
|
77
|
+
/**
|
|
78
|
+
* Async drift check that loads baseline from store if needed.
|
|
79
|
+
*
|
|
80
|
+
* Preferred when using a persistent store: on the first call after a
|
|
81
|
+
* restart, this method transparently restores the baseline from the
|
|
82
|
+
* store so drift detection resumes seamlessly.
|
|
83
|
+
*/
|
|
84
|
+
checkDriftAsync(current: ParameSphereFingerprint): Promise<DriftResult>;
|
|
85
|
+
/**
|
|
86
|
+
* Clear the incremental cache and baseline.
|
|
87
|
+
*/
|
|
88
|
+
clearCache(): void;
|
|
89
|
+
/** Get the current cache of recent fingerprints. */
|
|
90
|
+
getCache(): readonly ParameSphereFingerprint[];
|
|
91
|
+
private buildFingerprint;
|
|
92
|
+
/** Pull activation stats into a flat Float64Array for the composite vector. */
|
|
93
|
+
private extractActivationVector;
|
|
94
|
+
private emptyFingerprint;
|
|
95
|
+
/** Convert a ParameSphereFingerprint to a StoredFingerprint for persistence. */
|
|
96
|
+
private toStoredFingerprint;
|
|
97
|
+
/** Reconstruct a ParameSphereFingerprint from a StoredFingerprint. */
|
|
98
|
+
private fromStoredFingerprint;
|
|
99
|
+
/**
|
|
100
|
+
* Compute the Integrity Multiplier I(θ) — the atomic trust signal.
|
|
101
|
+
*
|
|
102
|
+
* I(θ) = w1 × fingerprintMatch + w2 × (1 - driftMagnitude) + w3 × envelopeHealth
|
|
103
|
+
*
|
|
104
|
+
* Returns a number between 0 and 1 that answers:
|
|
105
|
+
* "Is this agent in an authorized internal state?"
|
|
106
|
+
*
|
|
107
|
+
* When no baseline exists (API-only models, no weight access), returns I(θ) = 1.0.
|
|
108
|
+
*
|
|
109
|
+
* @param driftResult - Result from checkDrift() or null if no drift data
|
|
110
|
+
* @param envelopeHealth - Trust multiplier from CognitiveEnvelope (1.0/0.9/0.7) or 1.0 if unavailable
|
|
111
|
+
* @param weights - Component weights (default: 0.4/0.3/0.3)
|
|
112
|
+
*/
|
|
113
|
+
computeIntegrityMultiplier(driftResult: DriftResult | null, envelopeHealth?: number, weights?: IntegrityMultiplierConfig): IntegrityMultiplier;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Infer a (rows, cols) shape from a flat array length.
|
|
117
|
+
*
|
|
118
|
+
* Heuristic: find the factor pair closest to sqrt that gives a valid
|
|
119
|
+
* factorisation. Falls back to (1, length) for primes / small arrays.
|
|
120
|
+
*/
|
|
121
|
+
declare function inferShape(length: number): {
|
|
122
|
+
rows: number;
|
|
123
|
+
cols: number;
|
|
124
|
+
};
|
|
125
|
+
export { topKSingularValues, selectLayers, inferShape, cosineSimilarity, l2Distance };
|
|
126
|
+
//# sourceMappingURL=paramesphere-engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paramesphere-engine.d.ts","sourceRoot":"","sources":["../../src/paramesphere/paramesphere-engine.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,qBAAqB,EACrB,WAAW,EACX,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,YAAY,CAAC;AAwBpB;;;;;;;;;;;;;;GAcG;AACH,iBAAS,kBAAkB,CACzB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,MAAM,GACR,YAAY,CA+Dd;AAoED,iBAAS,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,MAAM,CAYlE;AAED,iBAAS,UAAU,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,MAAM,CAQ5D;AAMD;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBlE;AAMD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAwC;IACxD,OAAO,CAAC,KAAK,CAAiC;IAE9C,8EAA8E;IAC9E,OAAO,CAAC,kBAAkB,CAAwC;IAElE,gEAAgE;IAChE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgC;IACtD,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;gBAElC,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC;IAmBhD;;;;;;;;;OASG;IACH,kBAAkB,CAChB,OAAO,EAAE,YAAY,EAAE,EACvB,eAAe,CAAC,EAAE,eAAe,EAAE,GAClC,uBAAuB;IA0B1B;;;;;OAKG;IACH,iBAAiB,CACf,UAAU,EAAE,YAAY,EAAE,EAC1B,eAAe,CAAC,EAAE,eAAe,EAAE,GAClC,uBAAuB;IA4C1B;;OAEG;IACH,mBAAmB,CACjB,CAAC,EAAE,uBAAuB,EAC1B,CAAC,EAAE,uBAAuB,GACzB,qBAAqB;IAsBxB;;;;;OAKG;IACH,WAAW,CAAC,WAAW,EAAE,uBAAuB,GAAG,IAAI;IAWvD;;;;;;;;OAQG;IACH,UAAU,CAAC,OAAO,EAAE,uBAAuB,GAAG,WAAW;IAazD;;;;;;OAMG;IACG,eAAe,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,WAAW,CAAC;IAU7E;;OAEG;IACH,UAAU,IAAI,IAAI;IAMlB,oDAAoD;IACpD,QAAQ,IAAI,SAAS,uBAAuB,EAAE;IAQ9C,OAAO,CAAC,gBAAgB;IA8CxB,+EAA+E;IAC/E,OAAO,CAAC,uBAAuB;IAiB/B,OAAO,CAAC,gBAAgB;IAkBxB,gFAAgF;IAChF,OAAO,CAAC,mBAAmB;IA6B3B,sEAAsE;IACtE,OAAO,CAAC,qBAAqB;IAmB7B;;;;;;;;;;;;;OAaG;IACH,0BAA0B,CACxB,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,cAAc,GAAE,MAAY,EAC5B,OAAO,GAAE,yBAAqD,GAC7D,mBAAmB;CA2CvB;AAwBD;;;;;GAKG;AACH,iBAAS,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAWlE;AAGD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC"}
|