@vorionsys/atsf-core 0.2.4 → 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.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 +28 -28
- 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 +7 -7
- 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 +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 +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 +0 -15
- package/dist/phase6/provenance.d.ts.map +1 -1
- package/dist/phase6/provenance.js +2 -0
- 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 +45 -16
- package/dist/phase6/types.d.ts.map +1 -1
- package/dist/phase6/types.js +49 -0
- 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.map +1 -1
- package/dist/trust-engine/decay-profiles.js +2 -14
- package/dist/trust-engine/decay-profiles.js.map +1 -1
- package/dist/trust-engine/index.d.ts +418 -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,499 @@
|
|
|
1
|
+
import type { TrustLevel, Intent } from '../common/types.js';
|
|
2
|
+
/** Supported jurisdictional scopes. */
|
|
3
|
+
export declare const JURISDICTIONS: readonly ["GLOBAL", "EU", "US", "APAC", "UK", "CA", "AU", "JP", "SG", "CH"];
|
|
4
|
+
export type Jurisdiction = (typeof JURISDICTIONS)[number];
|
|
5
|
+
/** Industry verticals that affect policy selection. */
|
|
6
|
+
export declare const INDUSTRIES: readonly ["general", "healthcare", "finance", "defense", "government", "education", "energy"];
|
|
7
|
+
export type Industry = (typeof INDUSTRIES)[number];
|
|
8
|
+
/** Cryptographic suite requirements, ordered by strictness. */
|
|
9
|
+
export declare const CRYPTO_SUITES: readonly ["standard", "fips-140-2", "post-quantum"];
|
|
10
|
+
export type CryptoSuite = (typeof CRYPTO_SUITES)[number];
|
|
11
|
+
/** Proof anchoring methods, ordered by assurance level. */
|
|
12
|
+
export declare const PROOF_ANCHORING_METHODS: readonly ["database", "merkle-tree", "blockchain-l2", "tsa-rfc3161"];
|
|
13
|
+
export type ProofAnchoringMethod = (typeof PROOF_ANCHORING_METHODS)[number];
|
|
14
|
+
/** Consent models, ordered by strictness. */
|
|
15
|
+
export declare const CONSENT_MODELS: readonly ["implicit", "opt-out", "opt-in", "explicit-granular"];
|
|
16
|
+
export type ConsentModel = (typeof CONSENT_MODELS)[number];
|
|
17
|
+
/** Escalation modes, ordered by severity. */
|
|
18
|
+
export declare const ESCALATION_MODES: readonly ["log-only", "flag-review", "block-escalate", "hard-block"];
|
|
19
|
+
export type EscalationMode = (typeof ESCALATION_MODES)[number];
|
|
20
|
+
/** EU AI Act risk classification tiers. */
|
|
21
|
+
export declare const AI_ACT_CLASSIFICATIONS: readonly ["unacceptable", "high-risk", "limited-risk", "minimal-risk"];
|
|
22
|
+
export type AiActClassification = (typeof AI_ACT_CLASSIFICATIONS)[number];
|
|
23
|
+
/** High-risk categories under Annex III of the EU AI Act. */
|
|
24
|
+
export declare const AI_ACT_HIGH_RISK_CATEGORIES: readonly ["biometric-identification", "critical-infrastructure", "education-vocational", "employment-worker-management", "essential-services", "law-enforcement", "migration-asylum-border", "justice-democratic"];
|
|
25
|
+
export type AiActHighRiskCategory = (typeof AI_ACT_HIGH_RISK_CATEGORIES)[number];
|
|
26
|
+
/** How the jurisdiction was determined. */
|
|
27
|
+
export type JurisdictionSource = 'tenant-config' | 'metadata-inference' | 'default';
|
|
28
|
+
/** Enforcement strength of a policy constraint. */
|
|
29
|
+
export type EnforcementLevel = 'advisory' | 'required' | 'mandatory' | 'blocking';
|
|
30
|
+
/** Policy constraint categories. */
|
|
31
|
+
export type PolicyConstraintType = 'retention' | 'crypto' | 'consent' | 'escalation' | 'data-residency' | 'trust-level' | 'external-services' | 'proof-anchoring' | 'audit-requirement' | 'processing-restriction';
|
|
32
|
+
/** Severity of a policy conflict. */
|
|
33
|
+
export type ConflictSeverity = 'low' | 'medium' | 'high' | 'critical';
|
|
34
|
+
/**
|
|
35
|
+
* Resolved jurisdictional context for an intent.
|
|
36
|
+
*
|
|
37
|
+
* This tells every downstream component where the intent lives legally,
|
|
38
|
+
* what industry rules apply, and whether cross-border transfer is involved.
|
|
39
|
+
*/
|
|
40
|
+
export interface JurisdictionContext {
|
|
41
|
+
/** Primary jurisdictions that apply to this intent. */
|
|
42
|
+
primaryJurisdictions: Jurisdiction[];
|
|
43
|
+
/** Industry vertical (drives sector-specific policy bundles). */
|
|
44
|
+
industry: Industry;
|
|
45
|
+
/** Data residency zone identifier (e.g. "eu-west", "us-east"). */
|
|
46
|
+
dataResidency: string;
|
|
47
|
+
/** Whether the intent involves cross-border data transfer. */
|
|
48
|
+
crossBorderTransfer: boolean;
|
|
49
|
+
/** How the jurisdiction was resolved. */
|
|
50
|
+
source: JurisdictionSource;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* A governance regime is the complete set of operational parameters
|
|
54
|
+
* determined by jurisdiction + policy composition.
|
|
55
|
+
*
|
|
56
|
+
* Every intent that passes through the gateway is tagged with a regime.
|
|
57
|
+
* The regime drives crypto suite selection, proof anchoring, consent model,
|
|
58
|
+
* escalation behavior, minimum trust level, and regulatory metadata.
|
|
59
|
+
*/
|
|
60
|
+
export interface GovernanceRegime {
|
|
61
|
+
/** Deterministic identifier derived from regime parameters. */
|
|
62
|
+
regimeId: string;
|
|
63
|
+
/** Human-readable regime name. */
|
|
64
|
+
name: string;
|
|
65
|
+
/** Jurisdictions covered by this regime. */
|
|
66
|
+
jurisdictions: Jurisdiction[];
|
|
67
|
+
/** Policy namespaces (bundle IDs) that contributed to this regime. */
|
|
68
|
+
policyNamespaces: string[];
|
|
69
|
+
/** Required cryptographic suite. */
|
|
70
|
+
cryptoSuite: CryptoSuite;
|
|
71
|
+
/** Proof anchoring method. */
|
|
72
|
+
proofAnchoring: ProofAnchoringMethod;
|
|
73
|
+
/** Minimum audit log retention in days. */
|
|
74
|
+
auditRetentionDays: number;
|
|
75
|
+
/** Consent model for data processing. */
|
|
76
|
+
consentModel: ConsentModel;
|
|
77
|
+
/** Escalation behavior for policy violations. */
|
|
78
|
+
escalationMode: EscalationMode;
|
|
79
|
+
/** Data residency zone. */
|
|
80
|
+
dataResidency: string;
|
|
81
|
+
/** Whether external service calls are permitted. */
|
|
82
|
+
externalServicesAllowed: boolean;
|
|
83
|
+
/** Minimum trust level required to execute under this regime. */
|
|
84
|
+
minimumTrustLevel: TrustLevel;
|
|
85
|
+
/** EU AI Act risk classification (present for EU jurisdictions). */
|
|
86
|
+
aiActClassification?: AiActClassification;
|
|
87
|
+
/** Specific high-risk category if classified as high-risk. */
|
|
88
|
+
aiActHighRiskCategory?: AiActHighRiskCategory;
|
|
89
|
+
/** Whether EU conformity assessment is required. */
|
|
90
|
+
conformityAssessmentRequired: boolean;
|
|
91
|
+
/** Whether transparency obligations apply. */
|
|
92
|
+
transparencyRequired: boolean;
|
|
93
|
+
/** Extensible metadata. */
|
|
94
|
+
metadata: Record<string, unknown>;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* A single policy constraint from a policy bundle.
|
|
98
|
+
*/
|
|
99
|
+
export interface PolicyConstraint {
|
|
100
|
+
/** Unique constraint identifier. */
|
|
101
|
+
id: string;
|
|
102
|
+
/** Constraint category. */
|
|
103
|
+
type: PolicyConstraintType;
|
|
104
|
+
/** Human-readable rule description. */
|
|
105
|
+
rule: string;
|
|
106
|
+
/** Enforcement strength. */
|
|
107
|
+
enforcement: EnforcementLevel;
|
|
108
|
+
/** Which bundle contributed this constraint. */
|
|
109
|
+
sourceBundleId: string;
|
|
110
|
+
/** Which jurisdiction this constraint originates from. */
|
|
111
|
+
sourceJurisdiction: Jurisdiction;
|
|
112
|
+
/** The constraint value (numeric, string, or boolean depending on type). */
|
|
113
|
+
value: unknown;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* A detected conflict between policy constraints.
|
|
117
|
+
*/
|
|
118
|
+
export interface PolicyConflict {
|
|
119
|
+
/** The constraint type that has a conflict. */
|
|
120
|
+
constraintType: PolicyConstraintType;
|
|
121
|
+
/** The conflicting constraints. */
|
|
122
|
+
constraints: PolicyConstraint[];
|
|
123
|
+
/** Human-readable conflict description. */
|
|
124
|
+
description: string;
|
|
125
|
+
/** Conflict severity. */
|
|
126
|
+
severity: ConflictSeverity;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* The composed policy set after merging all applicable bundles.
|
|
130
|
+
*/
|
|
131
|
+
export interface ComposedPolicySet {
|
|
132
|
+
/** Final resolved constraints (after conflict resolution). */
|
|
133
|
+
constraints: PolicyConstraint[];
|
|
134
|
+
/** IDs of all bundles that contributed. */
|
|
135
|
+
sourceBundles: string[];
|
|
136
|
+
/** Conflicts that were resolved automatically. */
|
|
137
|
+
resolvedConflicts: PolicyConflict[];
|
|
138
|
+
/** Conflicts that could not be resolved (may block the intent). */
|
|
139
|
+
unresolvedConflicts: PolicyConflict[];
|
|
140
|
+
/** Whether the policy set is valid (no critical unresolved conflicts). */
|
|
141
|
+
isValid: boolean;
|
|
142
|
+
/** Composition timestamp. */
|
|
143
|
+
composedAt: number;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* A named, prioritized collection of policy constraints.
|
|
147
|
+
*/
|
|
148
|
+
export interface PolicyBundle {
|
|
149
|
+
/** Unique bundle identifier. */
|
|
150
|
+
id: string;
|
|
151
|
+
/** Human-readable name. */
|
|
152
|
+
name: string;
|
|
153
|
+
/** Jurisdictions this bundle applies to. */
|
|
154
|
+
jurisdictions: Jurisdiction[];
|
|
155
|
+
/** Priority (higher number = higher priority in conflict resolution). */
|
|
156
|
+
priority: number;
|
|
157
|
+
/** The constraints in this bundle. */
|
|
158
|
+
constraints: PolicyConstraint[];
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Tenant-level jurisdiction configuration.
|
|
162
|
+
*/
|
|
163
|
+
export interface TenantJurisdictionConfig {
|
|
164
|
+
/** Jurisdictions assigned to this tenant. */
|
|
165
|
+
jurisdictions: Jurisdiction[];
|
|
166
|
+
/** Industry vertical. */
|
|
167
|
+
industry: Industry;
|
|
168
|
+
/** Optional data residency override. */
|
|
169
|
+
dataResidency?: string;
|
|
170
|
+
/** Additional policy bundle IDs to include. */
|
|
171
|
+
customPolicyBundles?: string[];
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Gateway configuration.
|
|
175
|
+
*/
|
|
176
|
+
export interface IntentGatewayConfig {
|
|
177
|
+
/** Whether the gateway is enabled (false = passthrough mode). */
|
|
178
|
+
enabled: boolean;
|
|
179
|
+
/** Default jurisdiction when none can be resolved. */
|
|
180
|
+
defaultJurisdiction: Jurisdiction;
|
|
181
|
+
/** Default industry when none can be inferred. */
|
|
182
|
+
defaultIndustry: Industry;
|
|
183
|
+
/** How long to cache resolved regimes per tenant (ms). */
|
|
184
|
+
regimeCacheTtlMs: number;
|
|
185
|
+
/** Whether to block intents that have unresolved critical conflicts. */
|
|
186
|
+
blockOnConflicts: boolean;
|
|
187
|
+
/** Whether to log regime decisions. */
|
|
188
|
+
logRegimeDecisions: boolean;
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Result returned by IntentGateway.dispatch().
|
|
192
|
+
*/
|
|
193
|
+
export interface GatewayDispatchResult {
|
|
194
|
+
/** The submitted intent. */
|
|
195
|
+
intent: Intent;
|
|
196
|
+
/** The governance regime selected for this intent. */
|
|
197
|
+
regime: GovernanceRegime;
|
|
198
|
+
/** The resolved jurisdiction context. */
|
|
199
|
+
jurisdictionContext: JurisdictionContext;
|
|
200
|
+
/** The composed policy set. */
|
|
201
|
+
policySet: ComposedPolicySet;
|
|
202
|
+
/** Any warnings generated during dispatch. */
|
|
203
|
+
warnings: string[];
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* EU AI Act classification result.
|
|
207
|
+
*/
|
|
208
|
+
export interface AiActClassificationResult {
|
|
209
|
+
/** Risk classification tier. */
|
|
210
|
+
classification: AiActClassification;
|
|
211
|
+
/** High-risk category (only present for high-risk classification). */
|
|
212
|
+
highRiskCategory?: AiActHighRiskCategory;
|
|
213
|
+
/** Confidence score (0-1). */
|
|
214
|
+
confidence: number;
|
|
215
|
+
/** Human-readable reasoning for the classification. */
|
|
216
|
+
reasoning: string;
|
|
217
|
+
/** EU AI Act article/annex reference. */
|
|
218
|
+
annexReference?: string;
|
|
219
|
+
/** Regulatory obligations triggered by this classification. */
|
|
220
|
+
obligations: string[];
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Minimal interface for the intent submission service.
|
|
224
|
+
* Consumers must provide an implementation that handles actual persistence.
|
|
225
|
+
*/
|
|
226
|
+
export interface IIntentService {
|
|
227
|
+
submit(submission: Record<string, unknown>, options: SubmitOptions): Promise<Intent>;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Options passed through the submit pipeline.
|
|
231
|
+
*/
|
|
232
|
+
export interface SubmitOptions {
|
|
233
|
+
/** Tenant context (at minimum, a tenantId). */
|
|
234
|
+
ctx: TenantContext;
|
|
235
|
+
/** Trust snapshot to attach to the intent. */
|
|
236
|
+
trustSnapshot?: Record<string, unknown>;
|
|
237
|
+
/** Current trust level of the submitting entity. */
|
|
238
|
+
trustLevel?: TrustLevel;
|
|
239
|
+
/** Additional options are passed through. */
|
|
240
|
+
[key: string]: unknown;
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Minimal tenant context. Must carry at least a tenantId.
|
|
244
|
+
*/
|
|
245
|
+
export interface TenantContext {
|
|
246
|
+
tenantId: string;
|
|
247
|
+
[key: string]: unknown;
|
|
248
|
+
}
|
|
249
|
+
export declare const DEFAULT_GATEWAY_CONFIG: IntentGatewayConfig;
|
|
250
|
+
/**
|
|
251
|
+
* Data residency zones mapped to each jurisdiction.
|
|
252
|
+
*/
|
|
253
|
+
export declare const JURISDICTION_RESIDENCY_ZONES: Record<Jurisdiction, string>;
|
|
254
|
+
/**
|
|
255
|
+
* Resolves jurisdictional context from tenant configuration, intent metadata,
|
|
256
|
+
* or defaults. Uses a three-tier resolution strategy:
|
|
257
|
+
*
|
|
258
|
+
* 1. Tenant configuration (explicit, highest priority)
|
|
259
|
+
* 2. Intent metadata inference (country codes, region hints)
|
|
260
|
+
* 3. Gateway defaults (fallback)
|
|
261
|
+
*/
|
|
262
|
+
export declare class JurisdictionResolver {
|
|
263
|
+
private tenantConfigs;
|
|
264
|
+
private config;
|
|
265
|
+
constructor(config: IntentGatewayConfig);
|
|
266
|
+
/**
|
|
267
|
+
* Resolve jurisdiction context for a tenant + optional intent metadata.
|
|
268
|
+
*/
|
|
269
|
+
resolve(ctx: TenantContext, intentMetadata?: Record<string, unknown> | null): JurisdictionContext;
|
|
270
|
+
/**
|
|
271
|
+
* Register a tenant's jurisdiction configuration.
|
|
272
|
+
*/
|
|
273
|
+
registerTenantConfig(tenantId: string, config: TenantJurisdictionConfig): void;
|
|
274
|
+
/**
|
|
275
|
+
* Retrieve a tenant's jurisdiction configuration.
|
|
276
|
+
*/
|
|
277
|
+
getTenantConfig(tenantId: string): TenantJurisdictionConfig | undefined;
|
|
278
|
+
/**
|
|
279
|
+
* Determine if a set of jurisdictions implies cross-border data transfer
|
|
280
|
+
* by checking whether they map to different residency zones.
|
|
281
|
+
*/
|
|
282
|
+
detectCrossBorderTransfer(jurisdictions: Jurisdiction[]): boolean;
|
|
283
|
+
private resolveFromTenantConfig;
|
|
284
|
+
private resolveFromMetadata;
|
|
285
|
+
private resolveDefault;
|
|
286
|
+
/**
|
|
287
|
+
* Extract jurisdictions from metadata fields: jurisdiction, jurisdictions,
|
|
288
|
+
* countryCode, region. EU member state codes map to "EU", APAC codes map
|
|
289
|
+
* to "APAC", and known countries map to their specific jurisdiction.
|
|
290
|
+
*/
|
|
291
|
+
private extractJurisdictionsFromMetadata;
|
|
292
|
+
private isValidJurisdiction;
|
|
293
|
+
private isValidIndustry;
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Composes policy constraints from multiple bundles into a single resolved set.
|
|
297
|
+
*
|
|
298
|
+
* Conflict resolution strategy:
|
|
299
|
+
* - Numeric constraints (retention, trust-level): highest value wins.
|
|
300
|
+
* - Ordered enums (crypto, consent, escalation, proof-anchoring): strictest wins.
|
|
301
|
+
* - Data residency: enforcement level decides; incompatible mandatory zones = critical conflict.
|
|
302
|
+
* - External services: restrictive (false) wins over permissive (true).
|
|
303
|
+
* - Additive constraints (audit, processing): all unique values are kept.
|
|
304
|
+
*/
|
|
305
|
+
export declare class PolicyComposer {
|
|
306
|
+
private bundles;
|
|
307
|
+
constructor();
|
|
308
|
+
/** Number of registered bundles. */
|
|
309
|
+
get bundleCount(): number;
|
|
310
|
+
/** IDs of all registered bundles. */
|
|
311
|
+
get registeredBundleIds(): string[];
|
|
312
|
+
/**
|
|
313
|
+
* Register or overwrite a policy bundle.
|
|
314
|
+
*/
|
|
315
|
+
registerBundle(bundle: PolicyBundle): void;
|
|
316
|
+
/**
|
|
317
|
+
* Compose a policy set by selecting applicable bundles for the given
|
|
318
|
+
* jurisdiction context, merging their constraints, and resolving conflicts.
|
|
319
|
+
*/
|
|
320
|
+
compose(ctx: JurisdictionContext, additionalBundleIds?: string[]): ComposedPolicySet;
|
|
321
|
+
/**
|
|
322
|
+
* Select bundles that apply to the given jurisdiction context.
|
|
323
|
+
* A bundle applies if any of its jurisdictions match the context's
|
|
324
|
+
* primary jurisdictions, or if the bundle is GLOBAL.
|
|
325
|
+
*/
|
|
326
|
+
private selectApplicable;
|
|
327
|
+
/**
|
|
328
|
+
* Resolve conflicts within a group of same-type constraints.
|
|
329
|
+
*/
|
|
330
|
+
private resolveGroup;
|
|
331
|
+
/** Resolve numeric constraints by taking the maximum value. */
|
|
332
|
+
private resolveByMax;
|
|
333
|
+
/** Resolve ordered-enum constraints by taking the strictest value. */
|
|
334
|
+
private resolveByStrictness;
|
|
335
|
+
/**
|
|
336
|
+
* Data residency conflicts are potentially critical: if two mandatory
|
|
337
|
+
* constraints require different zones, the data literally cannot be in
|
|
338
|
+
* both places. This is surfaced as an unresolved critical conflict.
|
|
339
|
+
*/
|
|
340
|
+
private resolveDataResidency;
|
|
341
|
+
/** External services: false (restrictive) wins over true (permissive). */
|
|
342
|
+
private resolveExternalServices;
|
|
343
|
+
/** Additive constraints keep all unique values (e.g., audit requirements). */
|
|
344
|
+
private resolveAdditive;
|
|
345
|
+
/** Fallback: resolve by bundle priority (highest priority wins). */
|
|
346
|
+
private resolveByPriority;
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Classifies AI system usage against the EU AI Act risk framework.
|
|
350
|
+
*
|
|
351
|
+
* Uses keyword-based heuristics against the intent goal, metadata, and type
|
|
352
|
+
* to produce a risk classification. This is a simplified, open-source
|
|
353
|
+
* implementation suitable for initial screening; production deployments
|
|
354
|
+
* should supplement this with domain-expert review for high-risk and
|
|
355
|
+
* unacceptable classifications.
|
|
356
|
+
*
|
|
357
|
+
* Classification priority: unacceptable > high-risk > limited-risk > minimal-risk
|
|
358
|
+
*/
|
|
359
|
+
export declare class AiActClassifier {
|
|
360
|
+
/**
|
|
361
|
+
* Classify an intent's AI Act risk level.
|
|
362
|
+
*
|
|
363
|
+
* @param goal - The intent's stated goal
|
|
364
|
+
* @param context - Optional intent context/metadata
|
|
365
|
+
* @param intentType - Optional intent type string
|
|
366
|
+
* @returns Classification result with obligations
|
|
367
|
+
*/
|
|
368
|
+
classify(goal: string, context?: Record<string, unknown> | null, intentType?: string | null): AiActClassificationResult;
|
|
369
|
+
private buildSearchText;
|
|
370
|
+
private checkProhibited;
|
|
371
|
+
private checkHighRisk;
|
|
372
|
+
private checkLimitedRisk;
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* Assembles a complete GovernanceRegime from a jurisdiction context and
|
|
376
|
+
* composed policy set. Each regime parameter is resolved independently
|
|
377
|
+
* by combining jurisdiction-based defaults with policy-composed values,
|
|
378
|
+
* always selecting the strictest option.
|
|
379
|
+
*/
|
|
380
|
+
export declare class RegimeSelector {
|
|
381
|
+
/**
|
|
382
|
+
* Select the governance regime for the given context and policy set.
|
|
383
|
+
*/
|
|
384
|
+
select(ctx: JurisdictionContext, policySet: ComposedPolicySet): GovernanceRegime;
|
|
385
|
+
private resolveCryptoSuite;
|
|
386
|
+
private resolveProofAnchoring;
|
|
387
|
+
private resolveConsentModel;
|
|
388
|
+
private resolveEscalationMode;
|
|
389
|
+
private resolveAuditRetentionDays;
|
|
390
|
+
private resolveExternalServicesAllowed;
|
|
391
|
+
private resolveMinimumTrustLevel;
|
|
392
|
+
/**
|
|
393
|
+
* Generate a deterministic regime ID by hashing the canonical parameter set.
|
|
394
|
+
* Same parameters always produce the same ID.
|
|
395
|
+
*/
|
|
396
|
+
private generateRegimeId;
|
|
397
|
+
}
|
|
398
|
+
/**
|
|
399
|
+
* Thrown when the gateway encounters unresolved policy conflicts that
|
|
400
|
+
* block intent processing (only when blockOnConflicts is enabled).
|
|
401
|
+
*/
|
|
402
|
+
export declare class GatewayConflictError extends Error {
|
|
403
|
+
readonly conflicts: PolicyConflict[];
|
|
404
|
+
constructor(conflicts: PolicyConflict[]);
|
|
405
|
+
}
|
|
406
|
+
/**
|
|
407
|
+
* The Intent Gateway is the policy-aware orchestrator for all agent intents.
|
|
408
|
+
*
|
|
409
|
+
* It implements the full governance pipeline:
|
|
410
|
+
* 1. **Intake** - Receives the intent submission and options
|
|
411
|
+
* 2. **Jurisdiction Resolution** - Determines applicable jurisdictions
|
|
412
|
+
* 3. **Policy Composition** - Merges applicable policy bundles with conflict detection
|
|
413
|
+
* 4. **AI Act Classification** - Classifies EU-bound intents against the AI Act
|
|
414
|
+
* 5. **Regime Selection** - Assembles the governance regime
|
|
415
|
+
* 6. **Enriched Submit** - Submits with regime metadata and enforced trust levels
|
|
416
|
+
*
|
|
417
|
+
* On error, the gateway degrades to passthrough mode (never drops intents).
|
|
418
|
+
*
|
|
419
|
+
* @example
|
|
420
|
+
* ```typescript
|
|
421
|
+
* const gateway = new IntentGateway(intentService, { enabled: true });
|
|
422
|
+
*
|
|
423
|
+
* // Register tenant-specific jurisdiction
|
|
424
|
+
* gateway.registerTenantConfig('tenant-acme', {
|
|
425
|
+
* jurisdictions: ['EU'],
|
|
426
|
+
* industry: 'finance',
|
|
427
|
+
* });
|
|
428
|
+
*
|
|
429
|
+
* // Dispatch an intent through the governance pipeline
|
|
430
|
+
* const result = await gateway.dispatch(
|
|
431
|
+
* { goal: 'Analyze customer data', entityId: 'agent-1' },
|
|
432
|
+
* { ctx: { tenantId: 'tenant-acme' } },
|
|
433
|
+
* );
|
|
434
|
+
*
|
|
435
|
+
* console.log(result.regime.name); // "EU-finance"
|
|
436
|
+
* console.log(result.regime.consentModel); // "explicit-granular"
|
|
437
|
+
* console.log(result.regime.aiActClassification); // classification result
|
|
438
|
+
* ```
|
|
439
|
+
*/
|
|
440
|
+
export declare class IntentGateway {
|
|
441
|
+
private intentService;
|
|
442
|
+
private config;
|
|
443
|
+
private jurisdictionResolver;
|
|
444
|
+
private policyComposer;
|
|
445
|
+
private regimeSelector;
|
|
446
|
+
private aiActClassifier;
|
|
447
|
+
constructor(intentService: IIntentService, config?: Partial<IntentGatewayConfig>);
|
|
448
|
+
/**
|
|
449
|
+
* Dispatch an intent through the full governance pipeline.
|
|
450
|
+
*
|
|
451
|
+
* When the gateway is disabled, intents pass through directly.
|
|
452
|
+
* When enabled, the intent is enriched with jurisdiction, policy, and
|
|
453
|
+
* regime metadata before submission. The trust level is enforced to
|
|
454
|
+
* meet the regime's minimum.
|
|
455
|
+
*
|
|
456
|
+
* On unexpected errors, the gateway falls through to passthrough mode
|
|
457
|
+
* with a degradation warning (never silently fails).
|
|
458
|
+
*/
|
|
459
|
+
dispatch(submission: Record<string, unknown>, options: SubmitOptions): Promise<GatewayDispatchResult>;
|
|
460
|
+
/**
|
|
461
|
+
* Resolve the governance regime for a tenant context without submitting
|
|
462
|
+
* an intent. Useful for pre-flight checks and UI display.
|
|
463
|
+
*/
|
|
464
|
+
resolveRegime(ctx: TenantContext, metadata?: Record<string, unknown> | null): {
|
|
465
|
+
regime: GovernanceRegime;
|
|
466
|
+
jurisdictionContext: JurisdictionContext;
|
|
467
|
+
policySet: ComposedPolicySet;
|
|
468
|
+
};
|
|
469
|
+
/**
|
|
470
|
+
* Register a tenant's jurisdiction configuration.
|
|
471
|
+
* This is the primary way to tell the gateway where a tenant operates.
|
|
472
|
+
*/
|
|
473
|
+
registerTenantConfig(tenantId: string, config: TenantJurisdictionConfig): void;
|
|
474
|
+
/**
|
|
475
|
+
* Retrieve the current gateway configuration (read-only).
|
|
476
|
+
*/
|
|
477
|
+
getConfig(): Readonly<IntentGatewayConfig>;
|
|
478
|
+
/**
|
|
479
|
+
* Access the underlying intent service.
|
|
480
|
+
*/
|
|
481
|
+
getIntentService(): IIntentService;
|
|
482
|
+
/**
|
|
483
|
+
* Create a passthrough result (used when gateway is disabled or on error).
|
|
484
|
+
*/
|
|
485
|
+
private createPassthroughResult;
|
|
486
|
+
}
|
|
487
|
+
/**
|
|
488
|
+
* Create an IntentGateway instance with the given service and configuration.
|
|
489
|
+
*
|
|
490
|
+
* @example
|
|
491
|
+
* ```typescript
|
|
492
|
+
* const gateway = createIntentGateway(myIntentService, {
|
|
493
|
+
* defaultJurisdiction: 'EU',
|
|
494
|
+
* blockOnConflicts: true,
|
|
495
|
+
* });
|
|
496
|
+
* ```
|
|
497
|
+
*/
|
|
498
|
+
export declare function createIntentGateway(intentService: IIntentService, config?: Partial<IntentGatewayConfig>): IntentGateway;
|
|
499
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/intent-gateway/index.ts"],"names":[],"mappings":"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"}
|