@vorionsys/atsf-core 0.2.2 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +3 -3
- package/README.md +77 -11
- package/dist/api/index.d.ts +1 -1
- package/dist/api/index.js +1 -1
- package/dist/api/server.d.ts +5 -2
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +186 -149
- package/dist/api/server.js.map +1 -1
- package/dist/arbitration/index.d.ts +4 -4
- package/dist/arbitration/index.d.ts.map +1 -1
- package/dist/arbitration/index.js +46 -41
- package/dist/arbitration/index.js.map +1 -1
- package/dist/arbitration/types.d.ts +10 -10
- package/dist/arbitration/types.d.ts.map +1 -1
- package/dist/basis/evaluator.d.ts +1 -1
- package/dist/basis/evaluator.d.ts.map +1 -1
- package/dist/basis/evaluator.js +56 -54
- package/dist/basis/evaluator.js.map +1 -1
- package/dist/basis/index.d.ts +3 -3
- package/dist/basis/index.js +3 -3
- package/dist/basis/parser.d.ts +16 -16
- package/dist/basis/parser.d.ts.map +1 -1
- package/dist/basis/parser.js +32 -25
- package/dist/basis/parser.js.map +1 -1
- package/dist/basis/types.d.ts +2 -2
- package/dist/chain/index.d.ts.map +1 -1
- package/dist/chain/index.js +16 -16
- package/dist/chain/index.js.map +1 -1
- package/dist/cognigate/index.d.ts +1 -1
- package/dist/cognigate/index.d.ts.map +1 -1
- package/dist/cognigate/index.js +44 -33
- package/dist/cognigate/index.js.map +1 -1
- package/dist/common/adapters.d.ts +18 -11
- package/dist/common/adapters.d.ts.map +1 -1
- package/dist/common/adapters.js +100 -79
- package/dist/common/adapters.js.map +1 -1
- package/dist/common/config.d.ts +67 -67
- package/dist/common/config.js +49 -49
- package/dist/common/config.js.map +1 -1
- package/dist/common/index.d.ts +4 -4
- package/dist/common/index.js +4 -4
- package/dist/common/logger.d.ts +1 -1
- package/dist/common/logger.js +8 -8
- package/dist/common/types.d.ts +8 -8
- package/dist/common/types.js +5 -5
- package/dist/containment/index.d.ts +3 -3
- package/dist/containment/index.d.ts.map +1 -1
- package/dist/containment/index.js +119 -105
- package/dist/containment/index.js.map +1 -1
- package/dist/containment/types.d.ts +11 -11
- package/dist/containment/types.d.ts.map +1 -1
- package/dist/contracts/index.d.ts +9 -9
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +59 -54
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/types.d.ts +12 -12
- package/dist/contracts/types.d.ts.map +1 -1
- package/dist/crewai/callback.d.ts +91 -0
- package/dist/crewai/callback.d.ts.map +1 -0
- package/dist/crewai/callback.js +271 -0
- package/dist/crewai/callback.js.map +1 -0
- package/dist/crewai/executor.d.ts +135 -0
- package/dist/crewai/executor.d.ts.map +1 -0
- package/dist/crewai/executor.js +381 -0
- package/dist/crewai/executor.js.map +1 -0
- package/dist/crewai/index.d.ts +12 -0
- package/dist/crewai/index.d.ts.map +1 -0
- package/dist/crewai/index.js +12 -0
- package/dist/crewai/index.js.map +1 -0
- package/dist/crewai/tools.d.ts +21 -0
- package/dist/crewai/tools.d.ts.map +1 -0
- package/dist/crewai/tools.js +164 -0
- package/dist/crewai/tools.js.map +1 -0
- package/dist/crewai/types.d.ts +139 -0
- package/dist/crewai/types.d.ts.map +1 -0
- package/dist/crewai/types.js +9 -0
- package/dist/crewai/types.js.map +1 -0
- package/dist/enforce/index.d.ts +48 -222
- package/dist/enforce/index.d.ts.map +1 -1
- package/dist/enforce/index.js +144 -47
- package/dist/enforce/index.js.map +1 -1
- package/dist/enforce/trust-aware-enforcement-service.d.ts +121 -0
- package/dist/enforce/trust-aware-enforcement-service.d.ts.map +1 -0
- package/dist/enforce/trust-aware-enforcement-service.js +601 -0
- package/dist/enforce/trust-aware-enforcement-service.js.map +1 -0
- package/dist/enforce/types.d.ts +234 -0
- package/dist/enforce/types.d.ts.map +1 -0
- package/dist/enforce/types.js +10 -0
- package/dist/enforce/types.js.map +1 -0
- package/dist/governance/fluid-workflow.d.ts +8 -8
- package/dist/governance/fluid-workflow.d.ts.map +1 -1
- package/dist/governance/fluid-workflow.js +114 -86
- package/dist/governance/fluid-workflow.js.map +1 -1
- package/dist/governance/index.d.ts +7 -7
- package/dist/governance/index.d.ts.map +1 -1
- package/dist/governance/index.js +81 -74
- package/dist/governance/index.js.map +1 -1
- package/dist/governance/proof-bridge.d.ts +6 -6
- package/dist/governance/proof-bridge.d.ts.map +1 -1
- package/dist/governance/proof-bridge.js +5 -5
- package/dist/governance/proof-bridge.js.map +1 -1
- package/dist/governance/types.d.ts +16 -9
- package/dist/governance/types.d.ts.map +1 -1
- package/dist/governance/types.js.map +1 -1
- package/dist/index.d.ts +29 -25
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33 -23
- package/dist/index.js.map +1 -1
- package/dist/intent/index.d.ts +21 -56
- package/dist/intent/index.d.ts.map +1 -1
- package/dist/intent/index.js +58 -24
- package/dist/intent/index.js.map +1 -1
- package/dist/intent/persistent-intent-service.d.ts +68 -0
- package/dist/intent/persistent-intent-service.d.ts.map +1 -0
- package/dist/intent/persistent-intent-service.js +277 -0
- package/dist/intent/persistent-intent-service.js.map +1 -0
- package/dist/intent/types.d.ts +69 -0
- package/dist/intent/types.d.ts.map +1 -0
- package/dist/intent/types.js +10 -0
- package/dist/intent/types.js.map +1 -0
- package/dist/intent-gateway/index.d.ts +522 -0
- package/dist/intent-gateway/index.d.ts.map +1 -0
- package/dist/intent-gateway/index.js +1499 -0
- package/dist/intent-gateway/index.js.map +1 -0
- package/dist/langchain/callback.d.ts +2 -2
- package/dist/langchain/callback.d.ts.map +1 -1
- package/dist/langchain/callback.js +30 -30
- package/dist/langchain/callback.js.map +1 -1
- package/dist/langchain/executor.d.ts +4 -4
- package/dist/langchain/executor.d.ts.map +1 -1
- package/dist/langchain/executor.js +82 -80
- package/dist/langchain/executor.js.map +1 -1
- package/dist/langchain/index.d.ts +5 -5
- package/dist/langchain/index.js +5 -5
- package/dist/langchain/tools.d.ts +1 -1
- package/dist/langchain/tools.d.ts.map +1 -1
- package/dist/langchain/tools.js +33 -33
- package/dist/langchain/tools.js.map +1 -1
- package/dist/langchain/types.d.ts +3 -3
- package/dist/langchain/types.d.ts.map +1 -1
- package/dist/layers/implementations/L0-request-format.d.ts +37 -0
- package/dist/layers/implementations/L0-request-format.d.ts.map +1 -0
- package/dist/layers/implementations/L0-request-format.js +218 -0
- package/dist/layers/implementations/L0-request-format.js.map +1 -0
- package/dist/layers/implementations/L1-input-size.d.ts +36 -0
- package/dist/layers/implementations/L1-input-size.d.ts.map +1 -0
- package/dist/layers/implementations/L1-input-size.js +160 -0
- package/dist/layers/implementations/L1-input-size.js.map +1 -0
- package/dist/layers/implementations/L2-charset-sanitizer.d.ts +28 -0
- package/dist/layers/implementations/L2-charset-sanitizer.d.ts.map +1 -0
- package/dist/layers/implementations/L2-charset-sanitizer.js +230 -0
- package/dist/layers/implementations/L2-charset-sanitizer.js.map +1 -0
- package/dist/layers/implementations/L3-schema-conformance.d.ts +47 -0
- package/dist/layers/implementations/L3-schema-conformance.d.ts.map +1 -0
- package/dist/layers/implementations/L3-schema-conformance.js +267 -0
- package/dist/layers/implementations/L3-schema-conformance.js.map +1 -0
- package/dist/layers/implementations/L4-injection-detector.d.ts +47 -0
- package/dist/layers/implementations/L4-injection-detector.d.ts.map +1 -0
- package/dist/layers/implementations/L4-injection-detector.js +260 -0
- package/dist/layers/implementations/L4-injection-detector.js.map +1 -0
- package/dist/layers/implementations/L5-rate-limiter.d.ts +51 -0
- package/dist/layers/implementations/L5-rate-limiter.d.ts.map +1 -0
- package/dist/layers/implementations/L5-rate-limiter.js +183 -0
- package/dist/layers/implementations/L5-rate-limiter.js.map +1 -0
- package/dist/layers/implementations/index.d.ts +16 -0
- package/dist/layers/implementations/index.d.ts.map +1 -0
- package/dist/layers/implementations/index.js +16 -0
- package/dist/layers/implementations/index.js.map +1 -0
- package/dist/layers/index.d.ts +3 -3
- package/dist/layers/index.d.ts.map +1 -1
- package/dist/layers/index.js +99 -71
- package/dist/layers/index.js.map +1 -1
- package/dist/layers/types.d.ts +16 -16
- package/dist/layers/types.d.ts.map +1 -1
- package/dist/persistence/file.d.ts +3 -3
- package/dist/persistence/file.d.ts.map +1 -1
- package/dist/persistence/file.js +32 -28
- package/dist/persistence/file.js.map +1 -1
- package/dist/persistence/index.d.ts +7 -7
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +18 -18
- package/dist/persistence/index.js.map +1 -1
- package/dist/persistence/memory.d.ts +3 -3
- package/dist/persistence/memory.d.ts.map +1 -1
- package/dist/persistence/memory.js +10 -8
- package/dist/persistence/memory.js.map +1 -1
- package/dist/persistence/sqlite.d.ts +3 -3
- package/dist/persistence/sqlite.d.ts.map +1 -1
- package/dist/persistence/sqlite.js +36 -36
- package/dist/persistence/sqlite.js.map +1 -1
- package/dist/persistence/supabase.d.ts +3 -3
- package/dist/persistence/supabase.d.ts.map +1 -1
- package/dist/persistence/supabase.js +41 -43
- package/dist/persistence/supabase.js.map +1 -1
- package/dist/persistence/types.d.ts +5 -5
- package/dist/phase6/ceiling.d.ts +5 -5
- package/dist/phase6/ceiling.d.ts.map +1 -1
- package/dist/phase6/ceiling.js +67 -34
- package/dist/phase6/ceiling.js.map +1 -1
- package/dist/phase6/context.d.ts +3 -3
- package/dist/phase6/context.d.ts.map +1 -1
- package/dist/phase6/context.js +91 -45
- package/dist/phase6/context.js.map +1 -1
- package/dist/phase6/index.d.ts +13 -13
- package/dist/phase6/index.d.ts.map +1 -1
- package/dist/phase6/index.js +16 -16
- package/dist/phase6/index.js.map +1 -1
- package/dist/phase6/presets.d.ts +2 -2
- package/dist/phase6/presets.d.ts.map +1 -1
- package/dist/phase6/presets.js +39 -33
- package/dist/phase6/presets.js.map +1 -1
- package/dist/phase6/provenance.d.ts +4 -4
- package/dist/phase6/provenance.d.ts.map +1 -1
- package/dist/phase6/provenance.js +42 -35
- package/dist/phase6/provenance.js.map +1 -1
- package/dist/phase6/role-gates/index.d.ts +2 -2
- package/dist/phase6/role-gates/index.js +2 -2
- package/dist/phase6/role-gates/kernel.d.ts.map +1 -1
- package/dist/phase6/role-gates/kernel.js +16 -16
- package/dist/phase6/role-gates/kernel.js.map +1 -1
- package/dist/phase6/role-gates/policy.d.ts +2 -2
- package/dist/phase6/role-gates/policy.js +6 -6
- package/dist/phase6/role-gates.d.ts +4 -4
- package/dist/phase6/role-gates.d.ts.map +1 -1
- package/dist/phase6/role-gates.js +80 -58
- package/dist/phase6/role-gates.js.map +1 -1
- package/dist/phase6/types.d.ts +35 -35
- package/dist/phase6/types.d.ts.map +1 -1
- package/dist/phase6/types.js +166 -66
- package/dist/phase6/types.js.map +1 -1
- package/dist/phase6/weight-presets/canonical.d.ts +2 -2
- package/dist/phase6/weight-presets/canonical.d.ts.map +1 -1
- package/dist/phase6/weight-presets/canonical.js +12 -12
- package/dist/phase6/weight-presets/canonical.js.map +1 -1
- package/dist/phase6/weight-presets/deltas.d.ts +2 -2
- package/dist/phase6/weight-presets/deltas.d.ts.map +1 -1
- package/dist/phase6/weight-presets/deltas.js +27 -27
- package/dist/phase6/weight-presets/deltas.js.map +1 -1
- package/dist/phase6/weight-presets/index.d.ts +4 -4
- package/dist/phase6/weight-presets/index.js +4 -4
- package/dist/phase6/weight-presets/merger.d.ts +3 -3
- package/dist/phase6/weight-presets/merger.d.ts.map +1 -1
- package/dist/phase6/weight-presets/merger.js +40 -44
- package/dist/phase6/weight-presets/merger.js.map +1 -1
- package/dist/proof/index.d.ts +3 -3
- package/dist/proof/index.d.ts.map +1 -1
- package/dist/proof/index.js +44 -38
- package/dist/proof/index.js.map +1 -1
- package/dist/proof/merkle.d.ts +3 -3
- package/dist/proof/merkle.d.ts.map +1 -1
- package/dist/proof/merkle.js +26 -25
- package/dist/proof/merkle.js.map +1 -1
- package/dist/proof/zk-proofs.d.ts +6 -6
- package/dist/proof/zk-proofs.d.ts.map +1 -1
- package/dist/proof/zk-proofs.js +42 -43
- package/dist/proof/zk-proofs.js.map +1 -1
- package/dist/provenance/index.d.ts +3 -3
- package/dist/provenance/index.d.ts.map +1 -1
- package/dist/provenance/index.js +19 -17
- package/dist/provenance/index.js.map +1 -1
- package/dist/provenance/types.d.ts +4 -4
- package/dist/provenance/types.d.ts.map +1 -1
- package/dist/sandbox-training/challenges.d.ts +1 -1
- package/dist/sandbox-training/challenges.d.ts.map +1 -1
- package/dist/sandbox-training/challenges.js +228 -228
- package/dist/sandbox-training/challenges.js.map +1 -1
- package/dist/sandbox-training/graduation.d.ts +1 -1
- package/dist/sandbox-training/graduation.d.ts.map +1 -1
- package/dist/sandbox-training/graduation.js +14 -15
- package/dist/sandbox-training/graduation.js.map +1 -1
- package/dist/sandbox-training/index.d.ts +9 -9
- package/dist/sandbox-training/index.d.ts.map +1 -1
- package/dist/sandbox-training/index.js +6 -6
- package/dist/sandbox-training/index.js.map +1 -1
- package/dist/sandbox-training/promotion-service.d.ts +4 -4
- package/dist/sandbox-training/promotion-service.d.ts.map +1 -1
- package/dist/sandbox-training/promotion-service.js +5 -5
- package/dist/sandbox-training/promotion-service.js.map +1 -1
- package/dist/sandbox-training/runner.d.ts +1 -1
- package/dist/sandbox-training/runner.d.ts.map +1 -1
- package/dist/sandbox-training/runner.js +74 -73
- package/dist/sandbox-training/runner.js.map +1 -1
- package/dist/sandbox-training/scorer.d.ts +4 -4
- package/dist/sandbox-training/scorer.js +5 -5
- package/dist/sandbox-training/types.d.ts +4 -4
- package/dist/sandbox-training/types.d.ts.map +1 -1
- package/dist/sandbox-training/types.js +11 -7
- package/dist/sandbox-training/types.js.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.d.ts +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/audit.js +3 -4
- package/dist/trust-engine/ceiling-enforcement/audit.js.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/index.d.ts +2 -2
- package/dist/trust-engine/ceiling-enforcement/index.js +2 -2
- package/dist/trust-engine/ceiling-enforcement/kernel.d.ts +1 -1
- package/dist/trust-engine/ceiling-enforcement/kernel.d.ts.map +1 -1
- package/dist/trust-engine/ceiling-enforcement/kernel.js +1 -1
- package/dist/trust-engine/context-policy/enforcement.d.ts.map +1 -1
- package/dist/trust-engine/context-policy/factory.d.ts +1 -1
- package/dist/trust-engine/context-policy/factory.d.ts.map +1 -1
- package/dist/trust-engine/context-policy/factory.js +1 -1
- package/dist/trust-engine/context-policy/factory.js.map +1 -1
- package/dist/trust-engine/context-policy/index.d.ts +2 -2
- package/dist/trust-engine/context-policy/index.js +2 -2
- package/dist/trust-engine/creation-modifiers/index.d.ts +1 -1
- package/dist/trust-engine/creation-modifiers/index.js +1 -1
- package/dist/trust-engine/creation-modifiers/types.d.ts.map +1 -1
- package/dist/trust-engine/creation-modifiers/types.js +2 -3
- package/dist/trust-engine/creation-modifiers/types.js.map +1 -1
- package/dist/trust-engine/decay-profiles.d.ts +1 -1
- package/dist/trust-engine/decay-profiles.d.ts.map +1 -1
- package/dist/trust-engine/decay-profiles.js +4 -4
- package/dist/trust-engine/decay-profiles.js.map +1 -1
- package/dist/trust-engine/index.d.ts +111 -45
- package/dist/trust-engine/index.d.ts.map +1 -1
- package/dist/trust-engine/index.js +418 -61
- package/dist/trust-engine/index.js.map +1 -1
- package/dist/trust-engine/phase6-types.d.ts +10 -10
- package/dist/trust-engine/phase6-types.d.ts.map +1 -1
- package/dist/trust-engine/phase6-types.js +25 -23
- package/dist/trust-engine/phase6-types.js.map +1 -1
- package/dist/trust-engine/types.d.ts +77 -0
- package/dist/trust-engine/types.d.ts.map +1 -0
- package/dist/trust-engine/types.js +20 -0
- package/dist/trust-engine/types.js.map +1 -0
- package/package.json +5 -4
|
@@ -6,29 +6,29 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @packageDocumentation
|
|
8
8
|
*/
|
|
9
|
-
import { createLogger } from
|
|
10
|
-
import { ContainmentLevelValue, } from
|
|
11
|
-
export * from
|
|
12
|
-
const logger = createLogger({ component:
|
|
9
|
+
import { createLogger } from "../common/logger.js";
|
|
10
|
+
import { ContainmentLevelValue, } from "./types.js";
|
|
11
|
+
export * from "./types.js";
|
|
12
|
+
const logger = createLogger({ component: "containment" });
|
|
13
13
|
/**
|
|
14
14
|
* Default containment configuration
|
|
15
15
|
*/
|
|
16
16
|
const DEFAULT_CONFIG = {
|
|
17
|
-
defaultLevel:
|
|
17
|
+
defaultLevel: "monitored",
|
|
18
18
|
allowAutoDeescalation: true,
|
|
19
19
|
minLevelChangeIntervalMs: 60000, // 1 minute
|
|
20
20
|
maxHistoryEntries: 100,
|
|
21
21
|
defaultDeescalationConditions: [
|
|
22
22
|
{
|
|
23
|
-
type:
|
|
24
|
-
description:
|
|
23
|
+
type: "time_elapsed",
|
|
24
|
+
description: "Wait period completed",
|
|
25
25
|
target: 3600000, // 1 hour
|
|
26
26
|
progress: 0,
|
|
27
27
|
met: false,
|
|
28
28
|
},
|
|
29
29
|
{
|
|
30
|
-
type:
|
|
31
|
-
description:
|
|
30
|
+
type: "behavior_normalized",
|
|
31
|
+
description: "No violations detected",
|
|
32
32
|
target: 10, // 10 successful actions
|
|
33
33
|
progress: 0,
|
|
34
34
|
met: false,
|
|
@@ -43,77 +43,77 @@ const DEFAULT_LEVEL_RESTRICTIONS = {
|
|
|
43
43
|
full_autonomy: [],
|
|
44
44
|
monitored: [
|
|
45
45
|
{
|
|
46
|
-
type:
|
|
47
|
-
target:
|
|
48
|
-
severity:
|
|
46
|
+
type: "logging_enhanced",
|
|
47
|
+
target: "*",
|
|
48
|
+
severity: "soft",
|
|
49
49
|
bypassable: false,
|
|
50
|
-
message:
|
|
50
|
+
message: "All actions are being logged for monitoring",
|
|
51
51
|
},
|
|
52
52
|
],
|
|
53
53
|
tool_restricted: [
|
|
54
54
|
{
|
|
55
|
-
type:
|
|
56
|
-
target:
|
|
57
|
-
severity:
|
|
55
|
+
type: "capability_blocked",
|
|
56
|
+
target: "high_risk_capabilities",
|
|
57
|
+
severity: "hard",
|
|
58
58
|
bypassable: true,
|
|
59
|
-
message:
|
|
59
|
+
message: "High-risk capabilities are restricted",
|
|
60
60
|
},
|
|
61
61
|
{
|
|
62
|
-
type:
|
|
63
|
-
target:
|
|
64
|
-
severity:
|
|
62
|
+
type: "logging_enhanced",
|
|
63
|
+
target: "*",
|
|
64
|
+
severity: "soft",
|
|
65
65
|
bypassable: false,
|
|
66
|
-
message:
|
|
66
|
+
message: "Enhanced logging active",
|
|
67
67
|
},
|
|
68
68
|
],
|
|
69
69
|
human_in_loop: [
|
|
70
70
|
{
|
|
71
|
-
type:
|
|
72
|
-
target:
|
|
73
|
-
severity:
|
|
71
|
+
type: "approval_required",
|
|
72
|
+
target: "*",
|
|
73
|
+
severity: "hard",
|
|
74
74
|
bypassable: false,
|
|
75
|
-
message:
|
|
75
|
+
message: "Human approval required for all actions",
|
|
76
76
|
},
|
|
77
77
|
],
|
|
78
78
|
simulation_only: [
|
|
79
79
|
{
|
|
80
|
-
type:
|
|
81
|
-
target:
|
|
82
|
-
severity:
|
|
80
|
+
type: "capability_blocked",
|
|
81
|
+
target: "*",
|
|
82
|
+
severity: "hard",
|
|
83
83
|
bypassable: false,
|
|
84
|
-
message:
|
|
84
|
+
message: "Actions are simulated only - no real execution",
|
|
85
85
|
},
|
|
86
86
|
],
|
|
87
87
|
read_only: [
|
|
88
88
|
{
|
|
89
|
-
type:
|
|
90
|
-
target:
|
|
91
|
-
severity:
|
|
89
|
+
type: "capability_blocked",
|
|
90
|
+
target: "write_capabilities",
|
|
91
|
+
severity: "hard",
|
|
92
92
|
bypassable: false,
|
|
93
|
-
message:
|
|
93
|
+
message: "Write operations are blocked",
|
|
94
94
|
},
|
|
95
95
|
{
|
|
96
|
-
type:
|
|
97
|
-
target:
|
|
98
|
-
severity:
|
|
96
|
+
type: "capability_blocked",
|
|
97
|
+
target: "execute_capabilities",
|
|
98
|
+
severity: "hard",
|
|
99
99
|
bypassable: false,
|
|
100
|
-
message:
|
|
100
|
+
message: "Execute operations are blocked",
|
|
101
101
|
},
|
|
102
102
|
],
|
|
103
103
|
halted: [
|
|
104
104
|
{
|
|
105
|
-
type:
|
|
106
|
-
target:
|
|
107
|
-
severity:
|
|
105
|
+
type: "capability_blocked",
|
|
106
|
+
target: "*",
|
|
107
|
+
severity: "hard",
|
|
108
108
|
bypassable: false,
|
|
109
|
-
message:
|
|
109
|
+
message: "All operations are blocked - entity is halted",
|
|
110
110
|
},
|
|
111
111
|
{
|
|
112
|
-
type:
|
|
113
|
-
target:
|
|
114
|
-
severity:
|
|
112
|
+
type: "session_terminated",
|
|
113
|
+
target: "*",
|
|
114
|
+
severity: "hard",
|
|
115
115
|
bypassable: false,
|
|
116
|
-
message:
|
|
116
|
+
message: "All sessions terminated",
|
|
117
117
|
},
|
|
118
118
|
],
|
|
119
119
|
};
|
|
@@ -169,24 +169,26 @@ export class ContainmentService {
|
|
|
169
169
|
requestedLevel: request.level,
|
|
170
170
|
reason: request.reason,
|
|
171
171
|
initiator: request.initiator.id,
|
|
172
|
-
},
|
|
172
|
+
}, "Processing containment request");
|
|
173
173
|
// Get current state
|
|
174
174
|
const currentState = this.states.get(request.entityId);
|
|
175
175
|
const previousLevel = currentState?.level ?? this.config.defaultLevel;
|
|
176
176
|
// Check minimum interval between changes
|
|
177
177
|
if (currentState && !request.force) {
|
|
178
|
-
const lastChangeTime = new Date(currentState.history[currentState.history.length - 1]?.timestamp ??
|
|
178
|
+
const lastChangeTime = new Date(currentState.history[currentState.history.length - 1]?.timestamp ??
|
|
179
|
+
currentState.appliedAt).getTime();
|
|
179
180
|
const elapsed = Date.now() - lastChangeTime;
|
|
180
181
|
if (elapsed < this.config.minLevelChangeIntervalMs) {
|
|
181
182
|
warnings.push(`Minimum interval not met (${elapsed}ms < ${this.config.minLevelChangeIntervalMs}ms)`);
|
|
182
|
-
if (ContainmentLevelValue[request.level] <
|
|
183
|
+
if (ContainmentLevelValue[request.level] <
|
|
184
|
+
ContainmentLevelValue[previousLevel]) {
|
|
183
185
|
// Don't allow rapid de-escalation
|
|
184
186
|
return {
|
|
185
187
|
success: false,
|
|
186
188
|
previousState: currentState,
|
|
187
189
|
newState: currentState,
|
|
188
190
|
actionsTaken: [],
|
|
189
|
-
errors: [
|
|
191
|
+
errors: ["Cannot de-escalate: minimum interval not met"],
|
|
190
192
|
warnings,
|
|
191
193
|
};
|
|
192
194
|
}
|
|
@@ -224,7 +226,10 @@ export class ContainmentService {
|
|
|
224
226
|
expiresAt,
|
|
225
227
|
initiator: request.initiator,
|
|
226
228
|
history: currentState
|
|
227
|
-
? [
|
|
229
|
+
? [
|
|
230
|
+
...currentState.history.slice(-this.config.maxHistoryEntries + 1),
|
|
231
|
+
historyEntry,
|
|
232
|
+
]
|
|
228
233
|
: [historyEntry],
|
|
229
234
|
deescalationConditions,
|
|
230
235
|
escalationPath,
|
|
@@ -233,7 +238,7 @@ export class ContainmentService {
|
|
|
233
238
|
this.states.set(request.entityId, newState);
|
|
234
239
|
// Record action
|
|
235
240
|
actionsTaken.push({
|
|
236
|
-
type:
|
|
241
|
+
type: "level_changed",
|
|
237
242
|
target: request.entityId,
|
|
238
243
|
details: {
|
|
239
244
|
previousLevel,
|
|
@@ -245,18 +250,18 @@ export class ContainmentService {
|
|
|
245
250
|
// Apply restrictions
|
|
246
251
|
for (const restriction of allRestrictions) {
|
|
247
252
|
actionsTaken.push({
|
|
248
|
-
type:
|
|
253
|
+
type: "restriction_added",
|
|
249
254
|
target: restriction.target,
|
|
250
255
|
details: { restriction },
|
|
251
256
|
timestamp: now,
|
|
252
257
|
});
|
|
253
258
|
}
|
|
254
259
|
// If halted, terminate sessions
|
|
255
|
-
if (request.level ===
|
|
260
|
+
if (request.level === "halted") {
|
|
256
261
|
actionsTaken.push({
|
|
257
|
-
type:
|
|
262
|
+
type: "session_terminated",
|
|
258
263
|
target: request.entityId,
|
|
259
|
-
details: { reason:
|
|
264
|
+
details: { reason: "Entity halted" },
|
|
260
265
|
timestamp: now,
|
|
261
266
|
});
|
|
262
267
|
}
|
|
@@ -268,7 +273,7 @@ export class ContainmentService {
|
|
|
268
273
|
newLevel: request.level,
|
|
269
274
|
restrictionCount: allRestrictions.length,
|
|
270
275
|
expiresAt,
|
|
271
|
-
},
|
|
276
|
+
}, "Containment applied");
|
|
272
277
|
return {
|
|
273
278
|
success: true,
|
|
274
279
|
previousState: currentState ?? this.createDefaultState(request.entityId),
|
|
@@ -291,7 +296,7 @@ export class ContainmentService {
|
|
|
291
296
|
previousState: currentState,
|
|
292
297
|
newState: currentState,
|
|
293
298
|
actionsTaken: [],
|
|
294
|
-
errors: [
|
|
299
|
+
errors: ["Already at maximum containment level"],
|
|
295
300
|
warnings: [],
|
|
296
301
|
};
|
|
297
302
|
}
|
|
@@ -299,7 +304,7 @@ export class ContainmentService {
|
|
|
299
304
|
const levels = Object.entries(ContainmentLevelValue)
|
|
300
305
|
.sort((a, b) => a[1] - b[1])
|
|
301
306
|
.map((e) => e[0]);
|
|
302
|
-
const nextLevel = levels[levelValue + 1] ??
|
|
307
|
+
const nextLevel = levels[levelValue + 1] ?? "halted";
|
|
303
308
|
return this.contain({
|
|
304
309
|
entityId,
|
|
305
310
|
level: nextLevel,
|
|
@@ -321,7 +326,7 @@ export class ContainmentService {
|
|
|
321
326
|
previousState: currentState,
|
|
322
327
|
newState: currentState,
|
|
323
328
|
actionsTaken: [],
|
|
324
|
-
errors: [
|
|
329
|
+
errors: ["Already at minimum containment level"],
|
|
325
330
|
warnings: [],
|
|
326
331
|
};
|
|
327
332
|
}
|
|
@@ -329,13 +334,13 @@ export class ContainmentService {
|
|
|
329
334
|
const state = this.states.get(entityId);
|
|
330
335
|
if (state && !this.config.allowAutoDeescalation) {
|
|
331
336
|
const unmetConditions = state.deescalationConditions.filter((c) => !c.met);
|
|
332
|
-
if (unmetConditions.length > 0 && initiator.type ===
|
|
337
|
+
if (unmetConditions.length > 0 && initiator.type === "system") {
|
|
333
338
|
return {
|
|
334
339
|
success: false,
|
|
335
340
|
previousState: state,
|
|
336
341
|
newState: state,
|
|
337
342
|
actionsTaken: [],
|
|
338
|
-
errors: [
|
|
343
|
+
errors: ["De-escalation conditions not met"],
|
|
339
344
|
warnings: unmetConditions.map((c) => c.description),
|
|
340
345
|
};
|
|
341
346
|
}
|
|
@@ -344,7 +349,7 @@ export class ContainmentService {
|
|
|
344
349
|
const levels = Object.entries(ContainmentLevelValue)
|
|
345
350
|
.sort((a, b) => a[1] - b[1])
|
|
346
351
|
.map((e) => e[0]);
|
|
347
|
-
const previousLevel = levels[levelValue - 1] ??
|
|
352
|
+
const previousLevel = levels[levelValue - 1] ?? "full_autonomy";
|
|
348
353
|
return this.contain({
|
|
349
354
|
entityId,
|
|
350
355
|
level: previousLevel,
|
|
@@ -359,8 +364,8 @@ export class ContainmentService {
|
|
|
359
364
|
async release(entityId, explanation, initiator) {
|
|
360
365
|
return this.contain({
|
|
361
366
|
entityId,
|
|
362
|
-
level:
|
|
363
|
-
reason:
|
|
367
|
+
level: "full_autonomy",
|
|
368
|
+
reason: "manual_override",
|
|
364
369
|
explanation,
|
|
365
370
|
initiator,
|
|
366
371
|
});
|
|
@@ -378,12 +383,13 @@ export class ContainmentService {
|
|
|
378
383
|
// Update condition progress
|
|
379
384
|
for (const condition of state.deescalationConditions) {
|
|
380
385
|
switch (condition.type) {
|
|
381
|
-
case
|
|
386
|
+
case "time_elapsed": {
|
|
382
387
|
const targetMs = condition.target;
|
|
383
388
|
const elapsed = now - appliedAt;
|
|
384
389
|
condition.progress = Math.min(1, elapsed / targetMs);
|
|
385
390
|
condition.met = elapsed >= targetMs;
|
|
386
391
|
break;
|
|
392
|
+
}
|
|
387
393
|
// Other conditions would be updated by external events
|
|
388
394
|
}
|
|
389
395
|
}
|
|
@@ -399,24 +405,28 @@ export class ContainmentService {
|
|
|
399
405
|
checkAction(entityId, action, capability) {
|
|
400
406
|
const state = this.states.get(entityId);
|
|
401
407
|
if (!state) {
|
|
402
|
-
return {
|
|
408
|
+
return {
|
|
409
|
+
allowed: true,
|
|
410
|
+
restrictions: [],
|
|
411
|
+
message: "No containment in effect",
|
|
412
|
+
};
|
|
403
413
|
}
|
|
404
414
|
const level = state.level;
|
|
405
415
|
// Halted blocks everything
|
|
406
|
-
if (level ===
|
|
416
|
+
if (level === "halted") {
|
|
407
417
|
return {
|
|
408
418
|
allowed: false,
|
|
409
419
|
restrictions: state.restrictions,
|
|
410
|
-
message:
|
|
420
|
+
message: "Entity is halted - all actions blocked",
|
|
411
421
|
};
|
|
412
422
|
}
|
|
413
423
|
// Check each restriction
|
|
414
424
|
const blockingRestrictions = [];
|
|
415
425
|
for (const restriction of state.restrictions) {
|
|
416
|
-
const matches = restriction.target ===
|
|
426
|
+
const matches = restriction.target === "*" ||
|
|
417
427
|
restriction.target === action ||
|
|
418
428
|
restriction.target === capability;
|
|
419
|
-
if (matches && restriction.severity ===
|
|
429
|
+
if (matches && restriction.severity === "hard") {
|
|
420
430
|
blockingRestrictions.push(restriction);
|
|
421
431
|
}
|
|
422
432
|
}
|
|
@@ -424,29 +434,29 @@ export class ContainmentService {
|
|
|
424
434
|
return {
|
|
425
435
|
allowed: false,
|
|
426
436
|
restrictions: blockingRestrictions,
|
|
427
|
-
message: blockingRestrictions.map((r) => r.message).join(
|
|
437
|
+
message: blockingRestrictions.map((r) => r.message).join("; "),
|
|
428
438
|
};
|
|
429
439
|
}
|
|
430
440
|
// Special handling for human-in-loop
|
|
431
|
-
if (level ===
|
|
441
|
+
if (level === "human_in_loop") {
|
|
432
442
|
return {
|
|
433
443
|
allowed: false,
|
|
434
|
-
restrictions: state.restrictions.filter((r) => r.type ===
|
|
435
|
-
message:
|
|
444
|
+
restrictions: state.restrictions.filter((r) => r.type === "approval_required"),
|
|
445
|
+
message: "Human approval required",
|
|
436
446
|
};
|
|
437
447
|
}
|
|
438
448
|
// Simulation-only mode
|
|
439
|
-
if (level ===
|
|
449
|
+
if (level === "simulation_only") {
|
|
440
450
|
return {
|
|
441
451
|
allowed: true, // Allow but flag as simulation
|
|
442
452
|
restrictions: state.restrictions,
|
|
443
|
-
message:
|
|
453
|
+
message: "Action will be simulated only",
|
|
444
454
|
};
|
|
445
455
|
}
|
|
446
456
|
return {
|
|
447
457
|
allowed: true,
|
|
448
|
-
restrictions: state.restrictions.filter((r) => r.severity ===
|
|
449
|
-
message:
|
|
458
|
+
restrictions: state.restrictions.filter((r) => r.severity === "soft"),
|
|
459
|
+
message: "Action allowed",
|
|
450
460
|
};
|
|
451
461
|
}
|
|
452
462
|
/**
|
|
@@ -463,7 +473,8 @@ export class ContainmentService {
|
|
|
463
473
|
if (triggered) {
|
|
464
474
|
triggeredPolicies.push(policy);
|
|
465
475
|
// Take highest containment level
|
|
466
|
-
if (ContainmentLevelValue[policy.action.level] >
|
|
476
|
+
if (ContainmentLevelValue[policy.action.level] >
|
|
477
|
+
ContainmentLevelValue[highestLevel]) {
|
|
467
478
|
highestLevel = policy.action.level;
|
|
468
479
|
}
|
|
469
480
|
allRestrictions.push(...policy.action.restrictions);
|
|
@@ -482,15 +493,18 @@ export class ContainmentService {
|
|
|
482
493
|
*/
|
|
483
494
|
evaluatePolicyTrigger(trigger, context) {
|
|
484
495
|
switch (trigger.type) {
|
|
485
|
-
case
|
|
486
|
-
const trustScore = context[
|
|
496
|
+
case "trust_threshold": {
|
|
497
|
+
const trustScore = context["trustScore"];
|
|
487
498
|
return trustScore !== undefined && trustScore < trigger.threshold;
|
|
488
|
-
|
|
489
|
-
|
|
499
|
+
}
|
|
500
|
+
case "error_rate": {
|
|
501
|
+
const errorRate = context["errorRate"];
|
|
490
502
|
return errorRate !== undefined && errorRate > trigger.threshold;
|
|
491
|
-
|
|
492
|
-
|
|
503
|
+
}
|
|
504
|
+
case "anomaly_score": {
|
|
505
|
+
const anomalyScore = context["anomalyScore"];
|
|
493
506
|
return anomalyScore !== undefined && anomalyScore > trigger.threshold;
|
|
507
|
+
}
|
|
494
508
|
default:
|
|
495
509
|
return false;
|
|
496
510
|
}
|
|
@@ -502,19 +516,19 @@ export class ContainmentService {
|
|
|
502
516
|
const conditions = [...this.config.defaultDeescalationConditions];
|
|
503
517
|
// Add level-specific conditions
|
|
504
518
|
switch (request.level) {
|
|
505
|
-
case
|
|
519
|
+
case "halted":
|
|
506
520
|
conditions.push({
|
|
507
|
-
type:
|
|
508
|
-
description:
|
|
509
|
-
target:
|
|
521
|
+
type: "manual_approval",
|
|
522
|
+
description: "Manual approval from administrator required",
|
|
523
|
+
target: "admin_approval",
|
|
510
524
|
progress: 0,
|
|
511
525
|
met: false,
|
|
512
526
|
});
|
|
513
527
|
break;
|
|
514
|
-
case
|
|
528
|
+
case "human_in_loop":
|
|
515
529
|
conditions.push({
|
|
516
|
-
type:
|
|
517
|
-
description:
|
|
530
|
+
type: "behavior_normalized",
|
|
531
|
+
description: "5 consecutive approved actions",
|
|
518
532
|
target: 5,
|
|
519
533
|
progress: 0,
|
|
520
534
|
met: false,
|
|
@@ -541,9 +555,9 @@ export class ContainmentService {
|
|
|
541
555
|
additionalRestrictions: DEFAULT_LEVEL_RESTRICTIONS[level] ?? [],
|
|
542
556
|
notifications: [
|
|
543
557
|
{
|
|
544
|
-
channel: level ===
|
|
545
|
-
recipients: [
|
|
546
|
-
severity: level ===
|
|
558
|
+
channel: level === "halted" ? "pagerduty" : "slack",
|
|
559
|
+
recipients: ["security-team"],
|
|
560
|
+
severity: level === "halted" ? "critical" : "warning",
|
|
547
561
|
template: `containment_escalation_${level}`,
|
|
548
562
|
},
|
|
549
563
|
],
|
|
@@ -559,15 +573,15 @@ export class ContainmentService {
|
|
|
559
573
|
return {
|
|
560
574
|
entityId,
|
|
561
575
|
level: this.config.defaultLevel,
|
|
562
|
-
reason:
|
|
563
|
-
explanation:
|
|
576
|
+
reason: "precautionary",
|
|
577
|
+
explanation: "Default containment state",
|
|
564
578
|
restrictions: DEFAULT_LEVEL_RESTRICTIONS[this.config.defaultLevel] ?? [],
|
|
565
579
|
appliedAt: now,
|
|
566
580
|
initiator: {
|
|
567
|
-
type:
|
|
568
|
-
id:
|
|
569
|
-
name:
|
|
570
|
-
authority:
|
|
581
|
+
type: "system",
|
|
582
|
+
id: "containment-service",
|
|
583
|
+
name: "Containment Service",
|
|
584
|
+
authority: "system",
|
|
571
585
|
},
|
|
572
586
|
history: [],
|
|
573
587
|
deescalationConditions: [],
|
|
@@ -625,7 +639,7 @@ export class ContainmentService {
|
|
|
625
639
|
let escalationCount = 0;
|
|
626
640
|
let deescalationCount = 0;
|
|
627
641
|
for (const event of events) {
|
|
628
|
-
if (event.type ===
|
|
642
|
+
if (event.type === "level_changed") {
|
|
629
643
|
const details = event.details;
|
|
630
644
|
levelCounts[details.newLevel]++;
|
|
631
645
|
reasonCounts[details.reason] = (reasonCounts[details.reason] ?? 0) + 1;
|
|
@@ -697,10 +711,10 @@ export function createContainmentService(config) {
|
|
|
697
711
|
*/
|
|
698
712
|
export function createSystemInitiator(componentName) {
|
|
699
713
|
return {
|
|
700
|
-
type:
|
|
714
|
+
type: "system",
|
|
701
715
|
id: componentName,
|
|
702
716
|
name: componentName,
|
|
703
|
-
authority:
|
|
717
|
+
authority: "automated",
|
|
704
718
|
};
|
|
705
719
|
}
|
|
706
720
|
/**
|
|
@@ -708,7 +722,7 @@ export function createSystemInitiator(componentName) {
|
|
|
708
722
|
*/
|
|
709
723
|
export function createHumanInitiator(userId, userName, role) {
|
|
710
724
|
return {
|
|
711
|
-
type:
|
|
725
|
+
type: "human",
|
|
712
726
|
id: userId,
|
|
713
727
|
name: userName,
|
|
714
728
|
authority: role,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/containment/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/containment/index.ts"],"names":[],"mappings":"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"}
|