@dcyfr/ai 1.0.4 → 2.1.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 +106 -0
- package/README.md +381 -9
- package/dist/ai/agents/agent-loader.d.ts +12 -0
- package/dist/ai/agents/agent-loader.d.ts.map +1 -1
- package/dist/ai/agents/agent-loader.js +74 -65
- package/dist/ai/agents/agent-loader.js.map +1 -1
- package/dist/ai/agents/agent-registry.d.ts +2 -0
- package/dist/ai/agents/agent-registry.d.ts.map +1 -1
- package/dist/ai/agents/agent-registry.js +15 -14
- package/dist/ai/agents/agent-registry.js.map +1 -1
- package/dist/ai/agents/agent-router.d.ts +20 -5
- package/dist/ai/agents/agent-router.d.ts.map +1 -1
- package/dist/ai/agents/agent-router.js +89 -43
- package/dist/ai/agents/agent-router.js.map +1 -1
- package/dist/ai/agents/index.d.ts +6 -1
- package/dist/ai/agents/index.d.ts.map +1 -1
- package/dist/ai/agents/index.js +9 -3
- package/dist/ai/agents/index.js.map +1 -1
- package/dist/ai/agents/instruction-template.d.ts +45 -0
- package/dist/ai/agents/instruction-template.d.ts.map +1 -0
- package/dist/ai/agents/instruction-template.js +197 -0
- package/dist/ai/agents/instruction-template.js.map +1 -0
- package/dist/ai/agents/persona-resolver.d.ts +90 -0
- package/dist/ai/agents/persona-resolver.d.ts.map +1 -0
- package/dist/ai/agents/persona-resolver.js +121 -0
- package/dist/ai/agents/persona-resolver.js.map +1 -0
- package/dist/ai/agents/schema.d.ts +166 -0
- package/dist/ai/agents/schema.d.ts.map +1 -0
- package/dist/ai/agents/schema.js +94 -0
- package/dist/ai/agents/schema.js.map +1 -0
- package/dist/ai/agents/types.d.ts +102 -0
- package/dist/ai/agents/types.d.ts.map +1 -1
- package/dist/ai/agents-builtin/architecture/index.js +3 -3
- package/dist/ai/agents-builtin/content/index.js +1 -1
- package/dist/ai/agents-builtin/data/index.js +1 -1
- package/dist/ai/agents-builtin/development/index.js +4 -4
- package/dist/ai/agents-builtin/devops/index.js +1 -1
- package/dist/ai/agents-builtin/index.js +33 -33
- package/dist/ai/agents-builtin/performance/index.js +1 -1
- package/dist/ai/agents-builtin/research/index.js +1 -1
- package/dist/ai/agents-builtin/security/index.js +1 -1
- package/dist/ai/agents-builtin/testing/index.js +2 -2
- package/dist/ai/config/loader.d.ts.map +1 -1
- package/dist/ai/config/loader.js +6 -3
- package/dist/ai/config/loader.js.map +1 -1
- package/dist/ai/config/schema.d.ts +242 -1156
- package/dist/ai/config/schema.d.ts.map +1 -1
- package/dist/ai/config/schema.js +69 -20
- package/dist/ai/config/schema.js.map +1 -1
- package/dist/ai/core/provider-registry.d.ts +32 -0
- package/dist/ai/core/provider-registry.d.ts.map +1 -1
- package/dist/ai/core/provider-registry.js +189 -14
- package/dist/ai/core/provider-registry.js.map +1 -1
- package/dist/ai/core/telemetry-engine.d.ts +26 -0
- package/dist/ai/core/telemetry-engine.d.ts.map +1 -1
- package/dist/ai/core/telemetry-engine.js +81 -1
- package/dist/ai/core/telemetry-engine.js.map +1 -1
- package/dist/ai/delegation/agent-registry.d.ts +143 -0
- package/dist/ai/delegation/agent-registry.d.ts.map +1 -0
- package/dist/ai/delegation/agent-registry.js +231 -0
- package/dist/ai/delegation/agent-registry.js.map +1 -0
- package/dist/ai/delegation/blast-radius-tracker.d.ts +65 -0
- package/dist/ai/delegation/blast-radius-tracker.d.ts.map +1 -0
- package/dist/ai/delegation/blast-radius-tracker.js +81 -0
- package/dist/ai/delegation/blast-radius-tracker.js.map +1 -0
- package/dist/ai/delegation/capability-bootstrap.d.ts +40 -0
- package/dist/ai/delegation/capability-bootstrap.d.ts.map +1 -0
- package/dist/ai/delegation/capability-bootstrap.js +431 -0
- package/dist/ai/delegation/capability-bootstrap.js.map +1 -0
- package/dist/ai/delegation/capability-registry.d.ts +81 -0
- package/dist/ai/delegation/capability-registry.d.ts.map +1 -0
- package/dist/ai/delegation/capability-registry.js +339 -0
- package/dist/ai/delegation/capability-registry.js.map +1 -0
- package/dist/ai/delegation/chain-tracker.d.ts +152 -0
- package/dist/ai/delegation/chain-tracker.d.ts.map +1 -0
- package/dist/ai/delegation/chain-tracker.js +336 -0
- package/dist/ai/delegation/chain-tracker.js.map +1 -0
- package/dist/ai/delegation/circuit-breaker.d.ts +59 -0
- package/dist/ai/delegation/circuit-breaker.d.ts.map +1 -0
- package/dist/ai/delegation/circuit-breaker.js +153 -0
- package/dist/ai/delegation/circuit-breaker.js.map +1 -0
- package/dist/ai/delegation/contract-manager.d.ts +415 -0
- package/dist/ai/delegation/contract-manager.d.ts.map +1 -0
- package/dist/ai/delegation/contract-manager.js +1258 -0
- package/dist/ai/delegation/contract-manager.js.map +1 -0
- package/dist/ai/delegation/delegation-manager.d.ts +505 -0
- package/dist/ai/delegation/delegation-manager.d.ts.map +1 -0
- package/dist/ai/delegation/delegation-manager.js +773 -0
- package/dist/ai/delegation/delegation-manager.js.map +1 -0
- package/dist/ai/delegation/event-schemas.d.ts +101 -0
- package/dist/ai/delegation/event-schemas.d.ts.map +1 -0
- package/dist/ai/delegation/event-schemas.js +59 -0
- package/dist/ai/delegation/event-schemas.js.map +1 -0
- package/dist/ai/delegation/execution-mode-dashboard.d.ts +109 -0
- package/dist/ai/delegation/execution-mode-dashboard.d.ts.map +1 -0
- package/dist/ai/delegation/execution-mode-dashboard.js +167 -0
- package/dist/ai/delegation/execution-mode-dashboard.js.map +1 -0
- package/dist/ai/delegation/feature-flags.d.ts +191 -0
- package/dist/ai/delegation/feature-flags.d.ts.map +1 -0
- package/dist/ai/delegation/feature-flags.js +332 -0
- package/dist/ai/delegation/feature-flags.js.map +1 -0
- package/dist/ai/delegation/index.d.ts +51 -0
- package/dist/ai/delegation/index.d.ts.map +1 -0
- package/dist/ai/delegation/index.js +39 -0
- package/dist/ai/delegation/index.js.map +1 -0
- package/dist/ai/delegation/middleware/chain-depth-middleware.d.ts +39 -0
- package/dist/ai/delegation/middleware/chain-depth-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/chain-depth-middleware.js +77 -0
- package/dist/ai/delegation/middleware/chain-depth-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/chain-tracker-middleware.d.ts +46 -0
- package/dist/ai/delegation/middleware/chain-tracker-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/chain-tracker-middleware.js +89 -0
- package/dist/ai/delegation/middleware/chain-tracker-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/content-policy-middleware.d.ts +31 -0
- package/dist/ai/delegation/middleware/content-policy-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/content-policy-middleware.js +82 -0
- package/dist/ai/delegation/middleware/content-policy-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/feature-flag-middleware.d.ts +46 -0
- package/dist/ai/delegation/middleware/feature-flag-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/feature-flag-middleware.js +59 -0
- package/dist/ai/delegation/middleware/feature-flag-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/identity-middleware.d.ts +23 -0
- package/dist/ai/delegation/middleware/identity-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/identity-middleware.js +64 -0
- package/dist/ai/delegation/middleware/identity-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/permissions-middleware.d.ts +48 -0
- package/dist/ai/delegation/middleware/permissions-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/permissions-middleware.js +107 -0
- package/dist/ai/delegation/middleware/permissions-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/rate-limiter-middleware.d.ts +38 -0
- package/dist/ai/delegation/middleware/rate-limiter-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/rate-limiter-middleware.js +65 -0
- package/dist/ai/delegation/middleware/rate-limiter-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/reputation-middleware.d.ts +39 -0
- package/dist/ai/delegation/middleware/reputation-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/reputation-middleware.js +75 -0
- package/dist/ai/delegation/middleware/reputation-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/resource-limiter-middleware.d.ts +52 -0
- package/dist/ai/delegation/middleware/resource-limiter-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/resource-limiter-middleware.js +112 -0
- package/dist/ai/delegation/middleware/resource-limiter-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/threat-validator-middleware.d.ts +23 -0
- package/dist/ai/delegation/middleware/threat-validator-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/threat-validator-middleware.js +83 -0
- package/dist/ai/delegation/middleware/threat-validator-middleware.js.map +1 -0
- package/dist/ai/delegation/middleware/tlp-middleware.d.ts +23 -0
- package/dist/ai/delegation/middleware/tlp-middleware.d.ts.map +1 -0
- package/dist/ai/delegation/middleware/tlp-middleware.js +59 -0
- package/dist/ai/delegation/middleware/tlp-middleware.js.map +1 -0
- package/dist/ai/delegation/monitoring.d.ts +298 -0
- package/dist/ai/delegation/monitoring.d.ts.map +1 -0
- package/dist/ai/delegation/monitoring.js +584 -0
- package/dist/ai/delegation/monitoring.js.map +1 -0
- package/dist/ai/delegation/security-middleware-chain.d.ts +71 -0
- package/dist/ai/delegation/security-middleware-chain.d.ts.map +1 -0
- package/dist/ai/delegation/security-middleware-chain.js +163 -0
- package/dist/ai/delegation/security-middleware-chain.js.map +1 -0
- package/dist/ai/delegation/session-checkpoint.d.ts +77 -0
- package/dist/ai/delegation/session-checkpoint.d.ts.map +1 -0
- package/dist/ai/delegation/session-checkpoint.js +131 -0
- package/dist/ai/delegation/session-checkpoint.js.map +1 -0
- package/dist/ai/delegation/session-manager.d.ts +131 -0
- package/dist/ai/delegation/session-manager.d.ts.map +1 -0
- package/dist/ai/delegation/session-manager.js +243 -0
- package/dist/ai/delegation/session-manager.js.map +1 -0
- package/dist/ai/delegation/session-queue.d.ts +95 -0
- package/dist/ai/delegation/session-queue.d.ts.map +1 -0
- package/dist/ai/delegation/session-queue.js +136 -0
- package/dist/ai/delegation/session-queue.js.map +1 -0
- package/dist/ai/delegation/timeout-watchdog.d.ts +60 -0
- package/dist/ai/delegation/timeout-watchdog.d.ts.map +1 -0
- package/dist/ai/delegation/timeout-watchdog.js +100 -0
- package/dist/ai/delegation/timeout-watchdog.js.map +1 -0
- package/dist/ai/examples/integration-demo.d.ts +27 -0
- package/dist/ai/examples/integration-demo.d.ts.map +1 -0
- package/dist/ai/examples/integration-demo.js +536 -0
- package/dist/ai/examples/integration-demo.js.map +1 -0
- package/dist/ai/index.d.ts +25 -0
- package/dist/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js +31 -11
- package/dist/ai/index.js.map +1 -1
- package/dist/ai/mcp/servers/analytics/index.js +67 -11
- package/dist/ai/mcp/servers/analytics/index.js.map +1 -1
- package/dist/ai/mcp/servers/content-manager/index.d.ts.map +1 -1
- package/dist/ai/mcp/servers/content-manager/index.js +50 -4
- package/dist/ai/mcp/servers/content-manager/index.js.map +1 -1
- package/dist/ai/mcp/servers/delegation-monitor/index.d.ts +36 -0
- package/dist/ai/mcp/servers/delegation-monitor/index.d.ts.map +1 -0
- package/dist/ai/mcp/servers/delegation-monitor/index.js +757 -0
- package/dist/ai/mcp/servers/delegation-monitor/index.js.map +1 -0
- package/dist/ai/mcp/servers/design-tokens/index.d.ts.map +1 -1
- package/dist/ai/mcp/servers/design-tokens/index.js +62 -39
- package/dist/ai/mcp/servers/design-tokens/index.js.map +1 -1
- package/dist/ai/mcp/servers/promptintel/index.js +15 -3
- package/dist/ai/mcp/servers/promptintel/index.js.map +1 -1
- package/dist/ai/mcp/servers/shared/rate-limiter.d.ts.map +1 -1
- package/dist/ai/mcp/servers/shared/rate-limiter.js +3 -1
- package/dist/ai/mcp/servers/shared/rate-limiter.js.map +1 -1
- package/dist/ai/mcp/servers/shared/redis-client.d.ts.map +1 -1
- package/dist/ai/mcp/servers/shared/redis-client.js +54 -47
- package/dist/ai/mcp/servers/shared/redis-client.js.map +1 -1
- package/dist/ai/mcp/servers/shared/types.d.ts +9 -0
- package/dist/ai/mcp/servers/shared/types.d.ts.map +1 -1
- package/dist/ai/mcp/servers/shared/utils.d.ts +9 -1
- package/dist/ai/mcp/servers/shared/utils.d.ts.map +1 -1
- package/dist/ai/mcp/servers/shared/utils.js +52 -2
- package/dist/ai/mcp/servers/shared/utils.js.map +1 -1
- package/dist/ai/memory/config.d.ts +18 -3
- package/dist/ai/memory/config.d.ts.map +1 -1
- package/dist/ai/memory/config.js +61 -15
- package/dist/ai/memory/config.js.map +1 -1
- package/dist/ai/memory/dcyfr-memory.d.ts +4 -0
- package/dist/ai/memory/dcyfr-memory.d.ts.map +1 -1
- package/dist/ai/memory/dcyfr-memory.js +44 -6
- package/dist/ai/memory/dcyfr-memory.js.map +1 -1
- package/dist/ai/memory/mem0-client.d.ts.map +1 -1
- package/dist/ai/memory/mem0-client.js +53 -14
- package/dist/ai/memory/mem0-client.js.map +1 -1
- package/dist/ai/permissions/attenuation-engine.d.ts +159 -0
- package/dist/ai/permissions/attenuation-engine.d.ts.map +1 -0
- package/dist/ai/permissions/attenuation-engine.js +511 -0
- package/dist/ai/permissions/attenuation-engine.js.map +1 -0
- package/dist/ai/plugins/plugin-loader.d.ts +4 -0
- package/dist/ai/plugins/plugin-loader.d.ts.map +1 -1
- package/dist/ai/plugins/plugin-loader.js +28 -28
- package/dist/ai/plugins/plugin-loader.js.map +1 -1
- package/dist/ai/reputation/execution-mode-reputation.d.ts +104 -0
- package/dist/ai/reputation/execution-mode-reputation.d.ts.map +1 -0
- package/dist/ai/reputation/execution-mode-reputation.js +142 -0
- package/dist/ai/reputation/execution-mode-reputation.js.map +1 -0
- package/dist/ai/reputation/reputation-engine.d.ts +204 -0
- package/dist/ai/reputation/reputation-engine.d.ts.map +1 -0
- package/dist/ai/reputation/reputation-engine.js +426 -0
- package/dist/ai/reputation/reputation-engine.js.map +1 -0
- package/dist/ai/runtime/agent-runtime.d.ts +193 -0
- package/dist/ai/runtime/agent-runtime.d.ts.map +1 -0
- package/dist/ai/runtime/agent-runtime.js +1009 -0
- package/dist/ai/runtime/agent-runtime.js.map +1 -0
- package/dist/ai/runtime/index.d.ts +11 -0
- package/dist/ai/runtime/index.d.ts.map +1 -0
- package/dist/ai/runtime/index.js +9 -0
- package/dist/ai/runtime/index.js.map +1 -0
- package/dist/ai/runtime/telemetry-schema.d.ts +192 -0
- package/dist/ai/runtime/telemetry-schema.d.ts.map +1 -0
- package/dist/ai/runtime/telemetry-schema.js +200 -0
- package/dist/ai/runtime/telemetry-schema.js.map +1 -0
- package/dist/ai/runtime/types.d.ts +236 -0
- package/dist/ai/runtime/types.d.ts.map +1 -0
- package/dist/ai/runtime/types.js +10 -0
- package/dist/ai/runtime/types.js.map +1 -0
- package/dist/ai/src/batch-processor.d.ts +298 -0
- package/dist/ai/src/batch-processor.d.ts.map +1 -0
- package/dist/ai/src/batch-processor.js +520 -0
- package/dist/ai/src/batch-processor.js.map +1 -0
- package/dist/ai/src/capability-bootstrap.d.ts +222 -0
- package/dist/ai/src/capability-bootstrap.d.ts.map +1 -0
- package/dist/ai/src/capability-bootstrap.js +421 -0
- package/dist/ai/src/capability-bootstrap.js.map +1 -0
- package/dist/ai/src/capability-manifest-generator.d.ts +52 -0
- package/dist/ai/src/capability-manifest-generator.d.ts.map +1 -0
- package/dist/ai/src/capability-manifest-generator.js +691 -0
- package/dist/ai/src/capability-manifest-generator.js.map +1 -0
- package/dist/ai/src/capability-registry.d.ts +157 -0
- package/dist/ai/src/capability-registry.d.ts.map +1 -0
- package/dist/ai/src/capability-registry.js +577 -0
- package/dist/ai/src/capability-registry.js.map +1 -0
- package/dist/ai/src/cli/telemetry-dashboard.d.ts +132 -0
- package/dist/ai/src/cli/telemetry-dashboard.d.ts.map +1 -0
- package/dist/ai/src/cli/telemetry-dashboard.js +565 -0
- package/dist/ai/src/cli/telemetry-dashboard.js.map +1 -0
- package/dist/ai/src/delegation/feature-flags.d.ts +213 -0
- package/dist/ai/src/delegation/feature-flags.d.ts.map +1 -0
- package/dist/ai/src/delegation/feature-flags.js +395 -0
- package/dist/ai/src/delegation/feature-flags.js.map +1 -0
- package/dist/ai/src/delegation/liability-firebreak.d.ts +303 -0
- package/dist/ai/src/delegation/liability-firebreak.d.ts.map +1 -0
- package/dist/ai/src/delegation/liability-firebreak.js +643 -0
- package/dist/ai/src/delegation/liability-firebreak.js.map +1 -0
- package/dist/ai/src/delegation/security-threat-model.d.ts +171 -0
- package/dist/ai/src/delegation/security-threat-model.d.ts.map +1 -0
- package/dist/ai/src/delegation/security-threat-model.js +723 -0
- package/dist/ai/src/delegation/security-threat-model.js.map +1 -0
- package/dist/ai/src/delegation/tlp-enforcement.d.ts +146 -0
- package/dist/ai/src/delegation/tlp-enforcement.d.ts.map +1 -0
- package/dist/ai/src/delegation/tlp-enforcement.js +382 -0
- package/dist/ai/src/delegation/tlp-enforcement.js.map +1 -0
- package/dist/ai/src/delegation-capability-integration.d.ts +154 -0
- package/dist/ai/src/delegation-capability-integration.d.ts.map +1 -0
- package/dist/ai/src/delegation-capability-integration.js +351 -0
- package/dist/ai/src/delegation-capability-integration.js.map +1 -0
- package/dist/ai/src/end-to-end-workflow-orchestrator.d.ts +325 -0
- package/dist/ai/src/end-to-end-workflow-orchestrator.d.ts.map +1 -0
- package/dist/ai/src/end-to-end-workflow-orchestrator.js +801 -0
- package/dist/ai/src/end-to-end-workflow-orchestrator.js.map +1 -0
- package/dist/ai/src/enhanced-capability-detection.d.ts +237 -0
- package/dist/ai/src/enhanced-capability-detection.d.ts.map +1 -0
- package/dist/ai/src/enhanced-capability-detection.js +448 -0
- package/dist/ai/src/enhanced-capability-detection.js.map +1 -0
- package/dist/ai/src/intelligent-cache-manager.d.ts +327 -0
- package/dist/ai/src/intelligent-cache-manager.d.ts.map +1 -0
- package/dist/ai/src/intelligent-cache-manager.js +634 -0
- package/dist/ai/src/intelligent-cache-manager.js.map +1 -0
- package/dist/ai/src/mcp-auto-configuration.d.ts +232 -0
- package/dist/ai/src/mcp-auto-configuration.d.ts.map +1 -0
- package/dist/ai/src/mcp-auto-configuration.js +445 -0
- package/dist/ai/src/mcp-auto-configuration.js.map +1 -0
- package/dist/ai/src/performance-profiler.d.ts +351 -0
- package/dist/ai/src/performance-profiler.d.ts.map +1 -0
- package/dist/ai/src/performance-profiler.js +475 -0
- package/dist/ai/src/performance-profiler.js.map +1 -0
- package/dist/ai/src/personas/hooks/before-llm-call.d.ts +96 -0
- package/dist/ai/src/personas/hooks/before-llm-call.d.ts.map +1 -0
- package/dist/ai/src/personas/hooks/before-llm-call.js +83 -0
- package/dist/ai/src/personas/hooks/before-llm-call.js.map +1 -0
- package/dist/ai/src/personas/index.d.ts +10 -0
- package/dist/ai/src/personas/index.d.ts.map +1 -0
- package/dist/ai/src/personas/index.js +10 -0
- package/dist/ai/src/personas/index.js.map +1 -0
- package/dist/ai/src/personas/persona-loader.d.ts +42 -0
- package/dist/ai/src/personas/persona-loader.d.ts.map +1 -0
- package/dist/ai/src/personas/persona-loader.js +162 -0
- package/dist/ai/src/personas/persona-loader.js.map +1 -0
- package/dist/ai/src/personas/types.d.ts +199 -0
- package/dist/ai/src/personas/types.d.ts.map +1 -0
- package/dist/ai/src/personas/types.js +7 -0
- package/dist/ai/src/personas/types.js.map +1 -0
- package/dist/ai/src/personas/voice-resolver.d.ts +40 -0
- package/dist/ai/src/personas/voice-resolver.d.ts.map +1 -0
- package/dist/ai/src/personas/voice-resolver.js +201 -0
- package/dist/ai/src/personas/voice-resolver.js.map +1 -0
- package/dist/ai/src/resource-monitor.d.ts +311 -0
- package/dist/ai/src/resource-monitor.d.ts.map +1 -0
- package/dist/ai/src/resource-monitor.js +475 -0
- package/dist/ai/src/resource-monitor.js.map +1 -0
- package/dist/ai/src/runtime/agent-runtime.d.ts +340 -0
- package/dist/ai/src/runtime/agent-runtime.d.ts.map +1 -0
- package/dist/ai/src/runtime/agent-runtime.js +1084 -0
- package/dist/ai/src/runtime/agent-runtime.js.map +1 -0
- package/dist/ai/src/telemetry/delegation-telemetry.d.ts +287 -0
- package/dist/ai/src/telemetry/delegation-telemetry.d.ts.map +1 -0
- package/dist/ai/src/telemetry/delegation-telemetry.js +389 -0
- package/dist/ai/src/telemetry/delegation-telemetry.js.map +1 -0
- package/dist/ai/src/telemetry/index.d.ts +48 -0
- package/dist/ai/src/telemetry/index.d.ts.map +1 -0
- package/dist/ai/src/telemetry/index.js +48 -0
- package/dist/ai/src/telemetry/index.js.map +1 -0
- package/dist/ai/src/telemetry/runtime-telemetry-integration.d.ts +67 -0
- package/dist/ai/src/telemetry/runtime-telemetry-integration.d.ts.map +1 -0
- package/dist/ai/src/telemetry/runtime-telemetry-integration.js +415 -0
- package/dist/ai/src/telemetry/runtime-telemetry-integration.js.map +1 -0
- package/dist/ai/src/telemetry/telemetry-utils.d.ts +119 -0
- package/dist/ai/src/telemetry/telemetry-utils.d.ts.map +1 -0
- package/dist/ai/src/telemetry/telemetry-utils.js +250 -0
- package/dist/ai/src/telemetry/telemetry-utils.js.map +1 -0
- package/dist/ai/src/types/agent-capabilities.d.ts +227 -0
- package/dist/ai/src/types/agent-capabilities.d.ts.map +1 -0
- package/dist/ai/src/types/agent-capabilities.js +11 -0
- package/dist/ai/src/types/agent-capabilities.js.map +1 -0
- package/dist/ai/src/types/context-verification.d.ts +158 -0
- package/dist/ai/src/types/context-verification.d.ts.map +1 -0
- package/dist/ai/src/types/context-verification.js +73 -0
- package/dist/ai/src/types/context-verification.js.map +1 -0
- package/dist/ai/src/types/delegation-contracts.d.ts +296 -0
- package/dist/ai/src/types/delegation-contracts.d.ts.map +1 -0
- package/dist/ai/src/types/delegation-contracts.js +17 -0
- package/dist/ai/src/types/delegation-contracts.js.map +1 -0
- package/dist/ai/src/validation-pipeline-integration.d.ts +266 -0
- package/dist/ai/src/validation-pipeline-integration.d.ts.map +1 -0
- package/dist/ai/src/validation-pipeline-integration.js +695 -0
- package/dist/ai/src/validation-pipeline-integration.js.map +1 -0
- package/dist/ai/src/verification/multi-modal-formatters.d.ts +57 -0
- package/dist/ai/src/verification/multi-modal-formatters.d.ts.map +1 -0
- package/dist/ai/src/verification/multi-modal-formatters.js +655 -0
- package/dist/ai/src/verification/multi-modal-formatters.js.map +1 -0
- package/dist/ai/src/verification/output-formatter.d.ts +186 -0
- package/dist/ai/src/verification/output-formatter.d.ts.map +1 -0
- package/dist/ai/src/verification/output-formatter.js +296 -0
- package/dist/ai/src/verification/output-formatter.js.map +1 -0
- package/dist/ai/src/verification/parser-integration.d.ts +137 -0
- package/dist/ai/src/verification/parser-integration.d.ts.map +1 -0
- package/dist/ai/src/verification/parser-integration.js +273 -0
- package/dist/ai/src/verification/parser-integration.js.map +1 -0
- package/dist/ai/types/agent-capabilities.d.ts +387 -0
- package/dist/ai/types/agent-capabilities.d.ts.map +1 -0
- package/dist/ai/types/agent-capabilities.js +32 -0
- package/dist/ai/types/agent-capabilities.js.map +1 -0
- package/dist/ai/types/delegation-contracts.d.ts +291 -0
- package/dist/ai/types/delegation-contracts.d.ts.map +1 -0
- package/dist/ai/types/delegation-contracts.js +14 -0
- package/dist/ai/types/delegation-contracts.js.map +1 -0
- package/dist/ai/types/index.d.ts +4 -1
- package/dist/ai/types/index.d.ts.map +1 -1
- package/dist/ai/types/index.js +4 -1
- package/dist/ai/types/index.js.map +1 -1
- package/dist/ai/types/permission-tokens.d.ts +365 -0
- package/dist/ai/types/permission-tokens.d.ts.map +1 -0
- package/dist/ai/types/permission-tokens.js +13 -0
- package/dist/ai/types/permission-tokens.js.map +1 -0
- package/dist/ai/types/security-middleware.d.ts +130 -0
- package/dist/ai/types/security-middleware.d.ts.map +1 -0
- package/dist/ai/types/security-middleware.js +13 -0
- package/dist/ai/types/security-middleware.js.map +1 -0
- package/dist/ai/utils/storage.d.ts.map +1 -1
- package/dist/ai/utils/storage.js +6 -3
- package/dist/ai/utils/storage.js.map +1 -1
- package/dist/ai/validation/validation-framework.js +1 -1
- package/dist/ai/verification/policy-framework.d.ts +161 -0
- package/dist/ai/verification/policy-framework.d.ts.map +1 -0
- package/dist/ai/verification/policy-framework.js +436 -0
- package/dist/ai/verification/policy-framework.js.map +1 -0
- package/package.json +35 -7
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DCYFR Verification Policy Framework
|
|
3
|
+
* TLP:AMBER - Internal Use Only
|
|
4
|
+
*
|
|
5
|
+
* Framework for implementing different verification modes for delegation contracts.
|
|
6
|
+
* Supports direct inspection, third-party audit, cryptographic proof, and human review.
|
|
7
|
+
*
|
|
8
|
+
* @module ai/verification/policy-framework
|
|
9
|
+
* @version 1.0.0
|
|
10
|
+
* @date 2026-02-13
|
|
11
|
+
*/
|
|
12
|
+
import type { VerificationPolicy, VerificationResult, SuccessCriteria } from '../types/delegation-contracts';
|
|
13
|
+
/**
|
|
14
|
+
* Verification context provided to verifiers
|
|
15
|
+
*/
|
|
16
|
+
export interface VerificationContext {
|
|
17
|
+
/** Contract ID being verified */
|
|
18
|
+
contract_id: string;
|
|
19
|
+
/** Task output to verify */
|
|
20
|
+
task_output: unknown;
|
|
21
|
+
/** Original task description */
|
|
22
|
+
task_description: string;
|
|
23
|
+
/** Success criteria from contract */
|
|
24
|
+
success_criteria: SuccessCriteria;
|
|
25
|
+
/** Agent that performed the work */
|
|
26
|
+
delegatee_agent_id: string;
|
|
27
|
+
/** Agent requesting verification */
|
|
28
|
+
delegator_agent_id: string;
|
|
29
|
+
/** Task completion time in milliseconds */
|
|
30
|
+
completion_time_ms: number;
|
|
31
|
+
/** Optional metadata */
|
|
32
|
+
metadata?: Record<string, unknown>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Verifier interface for implementing verification strategies
|
|
36
|
+
*/
|
|
37
|
+
export interface Verifier {
|
|
38
|
+
/** Verification policy type */
|
|
39
|
+
readonly policy: VerificationPolicy;
|
|
40
|
+
/**
|
|
41
|
+
* Verify task output according to policy
|
|
42
|
+
*/
|
|
43
|
+
verify(context: VerificationContext): Promise<VerificationResult>;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Direct Inspection Verifier
|
|
47
|
+
*
|
|
48
|
+
* Simple verification by directly inspecting the output against success criteria.
|
|
49
|
+
* Suitable for straightforward tasks with clear success conditions.
|
|
50
|
+
*/
|
|
51
|
+
export declare class DirectInspectionVerifier implements Verifier {
|
|
52
|
+
readonly policy: VerificationPolicy;
|
|
53
|
+
private verifierId;
|
|
54
|
+
constructor(verifierId: string);
|
|
55
|
+
private applyQualityCheck;
|
|
56
|
+
private applyRequiredChecks;
|
|
57
|
+
verify(context: VerificationContext): Promise<VerificationResult>;
|
|
58
|
+
/**
|
|
59
|
+
* Assess output quality (placeholder implementation)
|
|
60
|
+
*/
|
|
61
|
+
private assessOutputQuality;
|
|
62
|
+
/**
|
|
63
|
+
* Perform a named check
|
|
64
|
+
*/
|
|
65
|
+
private performCheck;
|
|
66
|
+
/**
|
|
67
|
+
* Validate output against schema
|
|
68
|
+
*/
|
|
69
|
+
private validateOutputSchema;
|
|
70
|
+
/**
|
|
71
|
+
* Check performance requirements
|
|
72
|
+
*/
|
|
73
|
+
private checkPerformance;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Third Party Audit Verifier
|
|
77
|
+
*
|
|
78
|
+
* Delegates verification to an independent third-party agent.
|
|
79
|
+
* Provides additional accountability and reduces bias.
|
|
80
|
+
*/
|
|
81
|
+
export declare class ThirdPartyAuditVerifier implements Verifier {
|
|
82
|
+
readonly policy: VerificationPolicy;
|
|
83
|
+
private auditorId;
|
|
84
|
+
constructor(auditorId: string);
|
|
85
|
+
verify(context: VerificationContext): Promise<VerificationResult>;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Cryptographic Proof Verifier
|
|
89
|
+
*
|
|
90
|
+
* Verifies outputs using cryptographic proofs (signatures, hashes, ZK proofs).
|
|
91
|
+
* Provides strongest assurance for critical operations.
|
|
92
|
+
*/
|
|
93
|
+
export declare class CryptographicProofVerifier implements Verifier {
|
|
94
|
+
readonly policy: VerificationPolicy;
|
|
95
|
+
private verifierId;
|
|
96
|
+
constructor(verifierId: string);
|
|
97
|
+
verify(context: VerificationContext): Promise<VerificationResult>;
|
|
98
|
+
/**
|
|
99
|
+
* Verify cryptographic signature (placeholder)
|
|
100
|
+
*/
|
|
101
|
+
private verifySignature;
|
|
102
|
+
/**
|
|
103
|
+
* Verify cryptographic hash (placeholder)
|
|
104
|
+
*/
|
|
105
|
+
private verifyHash;
|
|
106
|
+
/**
|
|
107
|
+
* Verify zero-knowledge proof (placeholder)
|
|
108
|
+
*/
|
|
109
|
+
private verifyZKProof;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Human Required Verifier
|
|
113
|
+
*
|
|
114
|
+
* Requires human review for TLP:AMBER/RED content or critical decisions.
|
|
115
|
+
* Provides human oversight for high-stakes delegations.
|
|
116
|
+
*/
|
|
117
|
+
export declare class HumanRequiredVerifier implements Verifier {
|
|
118
|
+
readonly policy: VerificationPolicy;
|
|
119
|
+
private humanReviewerId;
|
|
120
|
+
constructor(humanReviewerId: string);
|
|
121
|
+
verify(context: VerificationContext): Promise<VerificationResult>;
|
|
122
|
+
/**
|
|
123
|
+
* Complete human review (to be called after human decision)
|
|
124
|
+
*/
|
|
125
|
+
completeReview(context: VerificationContext, approved: boolean, humanFindings: {
|
|
126
|
+
comments?: string;
|
|
127
|
+
quality_score?: number;
|
|
128
|
+
passed_checks?: string[];
|
|
129
|
+
failed_checks?: string[];
|
|
130
|
+
}): Promise<VerificationResult>;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Verification Policy Framework
|
|
134
|
+
*
|
|
135
|
+
* Factory and orchestrator for verification policies.
|
|
136
|
+
*/
|
|
137
|
+
export declare class VerificationPolicyFramework {
|
|
138
|
+
private verifiers;
|
|
139
|
+
constructor();
|
|
140
|
+
/**
|
|
141
|
+
* Register a verifier for a specific policy
|
|
142
|
+
*/
|
|
143
|
+
registerVerifier(verifier: Verifier): void;
|
|
144
|
+
/**
|
|
145
|
+
* Get verifier for a policy
|
|
146
|
+
*/
|
|
147
|
+
getVerifier(policy: VerificationPolicy): Verifier | null;
|
|
148
|
+
/**
|
|
149
|
+
* Verify using the specified policy
|
|
150
|
+
*/
|
|
151
|
+
verify(policy: VerificationPolicy, context: VerificationContext): Promise<VerificationResult>;
|
|
152
|
+
/**
|
|
153
|
+
* Create a default framework with all standard verifiers
|
|
154
|
+
*/
|
|
155
|
+
static createDefault(config?: {
|
|
156
|
+
verifierId?: string;
|
|
157
|
+
auditorId?: string;
|
|
158
|
+
humanReviewerId?: string;
|
|
159
|
+
}): VerificationPolicyFramework;
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=policy-framework.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy-framework.d.ts","sourceRoot":"","sources":["../../../packages/ai/verification/policy-framework.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,436 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DCYFR Verification Policy Framework
|
|
3
|
+
* TLP:AMBER - Internal Use Only
|
|
4
|
+
*
|
|
5
|
+
* Framework for implementing different verification modes for delegation contracts.
|
|
6
|
+
* Supports direct inspection, third-party audit, cryptographic proof, and human review.
|
|
7
|
+
*
|
|
8
|
+
* @module ai/verification/policy-framework
|
|
9
|
+
* @version 1.0.0
|
|
10
|
+
* @date 2026-02-13
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Direct Inspection Verifier
|
|
14
|
+
*
|
|
15
|
+
* Simple verification by directly inspecting the output against success criteria.
|
|
16
|
+
* Suitable for straightforward tasks with clear success conditions.
|
|
17
|
+
*/
|
|
18
|
+
export class DirectInspectionVerifier {
|
|
19
|
+
policy = 'direct_inspection';
|
|
20
|
+
verifierId;
|
|
21
|
+
constructor(verifierId) {
|
|
22
|
+
this.verifierId = verifierId;
|
|
23
|
+
}
|
|
24
|
+
applyQualityCheck(context, findings) {
|
|
25
|
+
if (context.success_criteria.quality_threshold === undefined)
|
|
26
|
+
return 1.0;
|
|
27
|
+
const outputQuality = this.assessOutputQuality(context.task_output);
|
|
28
|
+
if (outputQuality >= context.success_criteria.quality_threshold) {
|
|
29
|
+
findings.passed_checks?.push('quality_threshold');
|
|
30
|
+
return 1.0;
|
|
31
|
+
}
|
|
32
|
+
findings.failed_checks?.push('quality_threshold');
|
|
33
|
+
return 0.5;
|
|
34
|
+
}
|
|
35
|
+
applyRequiredChecks(context, findings) {
|
|
36
|
+
if (!context.success_criteria.required_checks?.length)
|
|
37
|
+
return 1.0;
|
|
38
|
+
let scoreMultiplier = 1.0;
|
|
39
|
+
for (const check of context.success_criteria.required_checks) {
|
|
40
|
+
if (this.performCheck(check, context)) {
|
|
41
|
+
findings.passed_checks?.push(check);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
findings.failed_checks?.push(check);
|
|
45
|
+
scoreMultiplier *= 0.8;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return scoreMultiplier;
|
|
49
|
+
}
|
|
50
|
+
async verify(context) {
|
|
51
|
+
const findings = {
|
|
52
|
+
passed_checks: [],
|
|
53
|
+
failed_checks: [],
|
|
54
|
+
warnings: [],
|
|
55
|
+
};
|
|
56
|
+
let qualityScore = 1.0;
|
|
57
|
+
// Check quality threshold
|
|
58
|
+
qualityScore *= this.applyQualityCheck(context, findings);
|
|
59
|
+
// Check required checks
|
|
60
|
+
qualityScore *= this.applyRequiredChecks(context, findings);
|
|
61
|
+
// Check output schema
|
|
62
|
+
if (context.success_criteria.output_schema) {
|
|
63
|
+
const schemaValid = this.validateOutputSchema(context.task_output, context.success_criteria.output_schema);
|
|
64
|
+
if (schemaValid) {
|
|
65
|
+
findings.passed_checks?.push('output_schema');
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
findings.failed_checks?.push('output_schema');
|
|
69
|
+
qualityScore *= 0.7;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// Check performance requirements
|
|
73
|
+
if (context.success_criteria.performance_requirements) {
|
|
74
|
+
const perfPassed = this.checkPerformance(context);
|
|
75
|
+
if (perfPassed) {
|
|
76
|
+
findings.passed_checks?.push('performance_requirements');
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
findings.warnings?.push('performance_requirements_exceeded');
|
|
80
|
+
qualityScore *= 0.9;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
const verified = (findings.failed_checks?.length ?? 0) === 0;
|
|
84
|
+
return {
|
|
85
|
+
verified,
|
|
86
|
+
verified_at: new Date().toISOString(),
|
|
87
|
+
verified_by: this.verifierId,
|
|
88
|
+
verification_method: this.policy,
|
|
89
|
+
findings,
|
|
90
|
+
quality_score: qualityScore,
|
|
91
|
+
metadata: {
|
|
92
|
+
inspection_type: 'direct',
|
|
93
|
+
auto_verified: true,
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Assess output quality (placeholder implementation)
|
|
99
|
+
*/
|
|
100
|
+
assessOutputQuality(output) {
|
|
101
|
+
if (output === null || output === undefined) {
|
|
102
|
+
return 0.0;
|
|
103
|
+
}
|
|
104
|
+
if (typeof output === 'object') {
|
|
105
|
+
// Check if object has expected properties
|
|
106
|
+
const keys = Object.keys(output);
|
|
107
|
+
return keys.length > 0 ? 0.8 : 0.3;
|
|
108
|
+
}
|
|
109
|
+
if (typeof output === 'string') {
|
|
110
|
+
// Check string length as a proxy for completeness
|
|
111
|
+
const length = output.length;
|
|
112
|
+
if (length > 100)
|
|
113
|
+
return 0.9;
|
|
114
|
+
if (length > 20)
|
|
115
|
+
return 0.7;
|
|
116
|
+
return 0.5;
|
|
117
|
+
}
|
|
118
|
+
return 0.6;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Perform a named check
|
|
122
|
+
*/
|
|
123
|
+
performCheck(checkName, context) {
|
|
124
|
+
// Placeholder implementation - in production, this would dispatch to specific check handlers
|
|
125
|
+
switch (checkName) {
|
|
126
|
+
case 'not_null':
|
|
127
|
+
return context.task_output !== null && context.task_output !== undefined;
|
|
128
|
+
case 'has_content':
|
|
129
|
+
return typeof context.task_output === 'string' && context.task_output.length > 0;
|
|
130
|
+
case 'is_object':
|
|
131
|
+
return typeof context.task_output === 'object' && context.task_output !== null;
|
|
132
|
+
default:
|
|
133
|
+
// Unknown checks pass by default (conservative approach)
|
|
134
|
+
return true;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Validate output against schema
|
|
139
|
+
*/
|
|
140
|
+
validateOutputSchema(output, schema) {
|
|
141
|
+
if (typeof output !== 'object' || output === null) {
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
// Simple schema validation - check if required keys exist
|
|
145
|
+
const outputObj = output;
|
|
146
|
+
const requiredKeys = Object.keys(schema);
|
|
147
|
+
return requiredKeys.every(key => key in outputObj);
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Check performance requirements
|
|
151
|
+
*/
|
|
152
|
+
checkPerformance(context) {
|
|
153
|
+
const perfReqs = context.success_criteria.performance_requirements;
|
|
154
|
+
if (perfReqs?.max_completion_time_ms) {
|
|
155
|
+
if (context.completion_time_ms > perfReqs.max_completion_time_ms) {
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return true;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Third Party Audit Verifier
|
|
164
|
+
*
|
|
165
|
+
* Delegates verification to an independent third-party agent.
|
|
166
|
+
* Provides additional accountability and reduces bias.
|
|
167
|
+
*/
|
|
168
|
+
export class ThirdPartyAuditVerifier {
|
|
169
|
+
policy = 'third_party_audit';
|
|
170
|
+
auditorId;
|
|
171
|
+
constructor(auditorId) {
|
|
172
|
+
this.auditorId = auditorId;
|
|
173
|
+
}
|
|
174
|
+
async verify(context) {
|
|
175
|
+
// In production, this would call an external auditor agent
|
|
176
|
+
// For now, we simulate the audit process
|
|
177
|
+
const findings = {
|
|
178
|
+
passed_checks: [],
|
|
179
|
+
failed_checks: [],
|
|
180
|
+
warnings: [],
|
|
181
|
+
};
|
|
182
|
+
// Simulate audit checks
|
|
183
|
+
const auditChecks = [
|
|
184
|
+
'output_completeness',
|
|
185
|
+
'output_accuracy',
|
|
186
|
+
'process_compliance',
|
|
187
|
+
'security_review',
|
|
188
|
+
];
|
|
189
|
+
let qualityScore = 1.0;
|
|
190
|
+
for (const check of auditChecks) {
|
|
191
|
+
// Simulate audit decision (in production, this would be actual audit logic)
|
|
192
|
+
const passed = Math.random() > 0.2; // 80% pass rate for simulation
|
|
193
|
+
if (passed) {
|
|
194
|
+
findings.passed_checks?.push(check);
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
findings.failed_checks?.push(check);
|
|
198
|
+
qualityScore *= 0.75;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
// Check success criteria
|
|
202
|
+
if (context.success_criteria.quality_threshold !== undefined) {
|
|
203
|
+
if (qualityScore >= context.success_criteria.quality_threshold) {
|
|
204
|
+
findings.passed_checks?.push('quality_threshold');
|
|
205
|
+
}
|
|
206
|
+
else {
|
|
207
|
+
findings.failed_checks?.push('quality_threshold');
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
const verified = (findings.failed_checks?.length ?? 0) === 0;
|
|
211
|
+
return {
|
|
212
|
+
verified,
|
|
213
|
+
verified_at: new Date().toISOString(),
|
|
214
|
+
verified_by: this.auditorId,
|
|
215
|
+
verification_method: this.policy,
|
|
216
|
+
findings,
|
|
217
|
+
quality_score: qualityScore,
|
|
218
|
+
metadata: {
|
|
219
|
+
audit_type: 'third_party',
|
|
220
|
+
auditor_agent_id: this.auditorId,
|
|
221
|
+
audit_timestamp: new Date().toISOString(),
|
|
222
|
+
},
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Cryptographic Proof Verifier
|
|
228
|
+
*
|
|
229
|
+
* Verifies outputs using cryptographic proofs (signatures, hashes, ZK proofs).
|
|
230
|
+
* Provides strongest assurance for critical operations.
|
|
231
|
+
*/
|
|
232
|
+
export class CryptographicProofVerifier {
|
|
233
|
+
policy = 'cryptographic_proof';
|
|
234
|
+
verifierId;
|
|
235
|
+
constructor(verifierId) {
|
|
236
|
+
this.verifierId = verifierId;
|
|
237
|
+
}
|
|
238
|
+
async verify(context) {
|
|
239
|
+
const findings = {
|
|
240
|
+
passed_checks: [],
|
|
241
|
+
failed_checks: [],
|
|
242
|
+
warnings: [],
|
|
243
|
+
};
|
|
244
|
+
// Check for cryptographic metadata
|
|
245
|
+
const metadata = context.metadata;
|
|
246
|
+
const signature = metadata?.signature;
|
|
247
|
+
const hash = metadata?.hash;
|
|
248
|
+
const proof = metadata?.proof;
|
|
249
|
+
let qualityScore = 1.0;
|
|
250
|
+
// Verify signature if present
|
|
251
|
+
if (signature !== undefined) {
|
|
252
|
+
const signatureValid = this.verifySignature(signature, context.task_output);
|
|
253
|
+
if (signatureValid) {
|
|
254
|
+
findings.passed_checks?.push('signature_verification');
|
|
255
|
+
}
|
|
256
|
+
else {
|
|
257
|
+
findings.failed_checks?.push('signature_verification');
|
|
258
|
+
qualityScore *= 0.5;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
else {
|
|
262
|
+
findings.warnings?.push('no_signature_provided');
|
|
263
|
+
}
|
|
264
|
+
// Verify hash if present
|
|
265
|
+
if (hash !== undefined) {
|
|
266
|
+
const hashValid = this.verifyHash(hash, context.task_output);
|
|
267
|
+
if (hashValid) {
|
|
268
|
+
findings.passed_checks?.push('hash_verification');
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
findings.failed_checks?.push('hash_verification');
|
|
272
|
+
qualityScore *= 0.5;
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
else {
|
|
276
|
+
findings.warnings?.push('no_hash_provided');
|
|
277
|
+
}
|
|
278
|
+
// Verify zero-knowledge proof if present
|
|
279
|
+
if (proof) {
|
|
280
|
+
const proofValid = this.verifyZKProof(proof, context);
|
|
281
|
+
if (proofValid) {
|
|
282
|
+
findings.passed_checks?.push('zk_proof_verification');
|
|
283
|
+
}
|
|
284
|
+
else {
|
|
285
|
+
findings.failed_checks?.push('zk_proof_verification');
|
|
286
|
+
qualityScore *= 0.3;
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
const verified = (findings.failed_checks?.length ?? 0) === 0;
|
|
290
|
+
return {
|
|
291
|
+
verified,
|
|
292
|
+
verified_at: new Date().toISOString(),
|
|
293
|
+
verified_by: this.verifierId,
|
|
294
|
+
verification_method: this.policy,
|
|
295
|
+
findings,
|
|
296
|
+
quality_score: qualityScore,
|
|
297
|
+
metadata: {
|
|
298
|
+
crypto_verification: true,
|
|
299
|
+
signature_checked: !!signature,
|
|
300
|
+
hash_checked: !!hash,
|
|
301
|
+
proof_checked: !!proof,
|
|
302
|
+
},
|
|
303
|
+
};
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Verify cryptographic signature (placeholder)
|
|
307
|
+
*/
|
|
308
|
+
verifySignature(signature, output) {
|
|
309
|
+
// In production, this would perform actual signature verification
|
|
310
|
+
// For now, we require non-empty signature
|
|
311
|
+
return signature.length > 0;
|
|
312
|
+
}
|
|
313
|
+
/**
|
|
314
|
+
* Verify cryptographic hash (placeholder)
|
|
315
|
+
*/
|
|
316
|
+
verifyHash(hash, output) {
|
|
317
|
+
// In production, this would compute and compare hashes
|
|
318
|
+
return hash.length >= 32; // Minimum hash length
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* Verify zero-knowledge proof (placeholder)
|
|
322
|
+
*/
|
|
323
|
+
verifyZKProof(proof, context) {
|
|
324
|
+
// In production, this would verify actual ZK proofs
|
|
325
|
+
return typeof proof === 'object' && proof !== null;
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* Human Required Verifier
|
|
330
|
+
*
|
|
331
|
+
* Requires human review for TLP:AMBER/RED content or critical decisions.
|
|
332
|
+
* Provides human oversight for high-stakes delegations.
|
|
333
|
+
*/
|
|
334
|
+
export class HumanRequiredVerifier {
|
|
335
|
+
policy = 'human_required';
|
|
336
|
+
humanReviewerId;
|
|
337
|
+
constructor(humanReviewerId) {
|
|
338
|
+
this.humanReviewerId = humanReviewerId;
|
|
339
|
+
}
|
|
340
|
+
async verify(context) {
|
|
341
|
+
// In production, this would:
|
|
342
|
+
// 1. Queue the task for human review
|
|
343
|
+
// 2. Send notifications to reviewers
|
|
344
|
+
// 3. Wait for human approval
|
|
345
|
+
// 4. Return the human's verification decision
|
|
346
|
+
// For testing, we simulate human review with a pending state
|
|
347
|
+
const findings = {
|
|
348
|
+
passed_checks: [],
|
|
349
|
+
failed_checks: [],
|
|
350
|
+
warnings: ['human_review_pending'],
|
|
351
|
+
};
|
|
352
|
+
return {
|
|
353
|
+
verified: false, // Pending human review
|
|
354
|
+
verified_at: new Date().toISOString(),
|
|
355
|
+
verified_by: this.humanReviewerId,
|
|
356
|
+
verification_method: this.policy,
|
|
357
|
+
findings,
|
|
358
|
+
quality_score: undefined, // Not assessed until human review
|
|
359
|
+
metadata: {
|
|
360
|
+
human_review_required: true,
|
|
361
|
+
review_status: 'pending',
|
|
362
|
+
queued_at: new Date().toISOString(),
|
|
363
|
+
reviewer_id: this.humanReviewerId,
|
|
364
|
+
},
|
|
365
|
+
};
|
|
366
|
+
}
|
|
367
|
+
/**
|
|
368
|
+
* Complete human review (to be called after human decision)
|
|
369
|
+
*/
|
|
370
|
+
async completeReview(context, approved, humanFindings) {
|
|
371
|
+
return {
|
|
372
|
+
verified: approved,
|
|
373
|
+
verified_at: new Date().toISOString(),
|
|
374
|
+
verified_by: this.humanReviewerId,
|
|
375
|
+
verification_method: this.policy,
|
|
376
|
+
findings: {
|
|
377
|
+
passed_checks: humanFindings.passed_checks ?? [],
|
|
378
|
+
failed_checks: humanFindings.failed_checks ?? [],
|
|
379
|
+
warnings: [],
|
|
380
|
+
},
|
|
381
|
+
quality_score: humanFindings.quality_score,
|
|
382
|
+
metadata: {
|
|
383
|
+
human_review_required: true,
|
|
384
|
+
review_status: 'completed',
|
|
385
|
+
reviewed_at: new Date().toISOString(),
|
|
386
|
+
reviewer_id: this.humanReviewerId,
|
|
387
|
+
comments: humanFindings.comments,
|
|
388
|
+
},
|
|
389
|
+
};
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
/**
|
|
393
|
+
* Verification Policy Framework
|
|
394
|
+
*
|
|
395
|
+
* Factory and orchestrator for verification policies.
|
|
396
|
+
*/
|
|
397
|
+
export class VerificationPolicyFramework {
|
|
398
|
+
verifiers;
|
|
399
|
+
constructor() {
|
|
400
|
+
this.verifiers = new Map();
|
|
401
|
+
}
|
|
402
|
+
/**
|
|
403
|
+
* Register a verifier for a specific policy
|
|
404
|
+
*/
|
|
405
|
+
registerVerifier(verifier) {
|
|
406
|
+
this.verifiers.set(verifier.policy, verifier);
|
|
407
|
+
}
|
|
408
|
+
/**
|
|
409
|
+
* Get verifier for a policy
|
|
410
|
+
*/
|
|
411
|
+
getVerifier(policy) {
|
|
412
|
+
return this.verifiers.get(policy) ?? null;
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* Verify using the specified policy
|
|
416
|
+
*/
|
|
417
|
+
async verify(policy, context) {
|
|
418
|
+
const verifier = this.getVerifier(policy);
|
|
419
|
+
if (!verifier) {
|
|
420
|
+
throw new Error(`No verifier registered for policy: ${policy}`);
|
|
421
|
+
}
|
|
422
|
+
return verifier.verify(context);
|
|
423
|
+
}
|
|
424
|
+
/**
|
|
425
|
+
* Create a default framework with all standard verifiers
|
|
426
|
+
*/
|
|
427
|
+
static createDefault(config) {
|
|
428
|
+
const framework = new VerificationPolicyFramework();
|
|
429
|
+
framework.registerVerifier(new DirectInspectionVerifier(config?.verifierId ?? 'default-verifier'));
|
|
430
|
+
framework.registerVerifier(new ThirdPartyAuditVerifier(config?.auditorId ?? 'default-auditor'));
|
|
431
|
+
framework.registerVerifier(new CryptographicProofVerifier(config?.verifierId ?? 'default-verifier'));
|
|
432
|
+
framework.registerVerifier(new HumanRequiredVerifier(config?.humanReviewerId ?? 'default-human-reviewer'));
|
|
433
|
+
return framework;
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
//# sourceMappingURL=policy-framework.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy-framework.js","sourceRoot":"","sources":["../../../packages/ai/verification/policy-framework.ts"],"names":[],"mappings":"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"}
|