limen-ai 1.0.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 +47 -0
- package/LICENSE +190 -0
- package/README.md +546 -0
- package/dist/api/agents/agent_api.d.ts +126 -0
- package/dist/api/agents/agent_api.d.ts.map +1 -0
- package/dist/api/agents/agent_api.js +467 -0
- package/dist/api/agents/agent_api.js.map +1 -0
- package/dist/api/agents/trust_progression.d.ts +78 -0
- package/dist/api/agents/trust_progression.d.ts.map +1 -0
- package/dist/api/agents/trust_progression.js +124 -0
- package/dist/api/agents/trust_progression.js.map +1 -0
- package/dist/api/chat/chat_pipeline.d.ts +91 -0
- package/dist/api/chat/chat_pipeline.d.ts.map +1 -0
- package/dist/api/chat/chat_pipeline.js +630 -0
- package/dist/api/chat/chat_pipeline.js.map +1 -0
- package/dist/api/chat/technique_injector.d.ts +86 -0
- package/dist/api/chat/technique_injector.d.ts.map +1 -0
- package/dist/api/chat/technique_injector.js +125 -0
- package/dist/api/chat/technique_injector.js.map +1 -0
- package/dist/api/data/data_api.d.ts +91 -0
- package/dist/api/data/data_api.d.ts.map +1 -0
- package/dist/api/data/data_api.js +306 -0
- package/dist/api/data/data_api.js.map +1 -0
- package/dist/api/enforcement/cost_tracker.d.ts +105 -0
- package/dist/api/enforcement/cost_tracker.d.ts.map +1 -0
- package/dist/api/enforcement/cost_tracker.js +227 -0
- package/dist/api/enforcement/cost_tracker.js.map +1 -0
- package/dist/api/enforcement/latency_harness.d.ts +94 -0
- package/dist/api/enforcement/latency_harness.d.ts.map +1 -0
- package/dist/api/enforcement/latency_harness.js +120 -0
- package/dist/api/enforcement/latency_harness.js.map +1 -0
- package/dist/api/enforcement/rate_guard.d.ts +52 -0
- package/dist/api/enforcement/rate_guard.d.ts.map +1 -0
- package/dist/api/enforcement/rate_guard.js +79 -0
- package/dist/api/enforcement/rate_guard.js.map +1 -0
- package/dist/api/enforcement/rbac_guard.d.ts +55 -0
- package/dist/api/enforcement/rbac_guard.d.ts.map +1 -0
- package/dist/api/enforcement/rbac_guard.js +77 -0
- package/dist/api/enforcement/rbac_guard.js.map +1 -0
- package/dist/api/errors/limen_error.d.ts +81 -0
- package/dist/api/errors/limen_error.d.ts.map +1 -0
- package/dist/api/errors/limen_error.js +324 -0
- package/dist/api/errors/limen_error.js.map +1 -0
- package/dist/api/facades/claim_facade.d.ts +47 -0
- package/dist/api/facades/claim_facade.d.ts.map +1 -0
- package/dist/api/facades/claim_facade.js +67 -0
- package/dist/api/facades/claim_facade.js.map +1 -0
- package/dist/api/facades/working_memory_facade.d.ts +47 -0
- package/dist/api/facades/working_memory_facade.d.ts.map +1 -0
- package/dist/api/facades/working_memory_facade.js +74 -0
- package/dist/api/facades/working_memory_facade.js.map +1 -0
- package/dist/api/governance/governed_orchestration.d.ts +76 -0
- package/dist/api/governance/governed_orchestration.d.ts.map +1 -0
- package/dist/api/governance/governed_orchestration.js +413 -0
- package/dist/api/governance/governed_orchestration.js.map +1 -0
- package/dist/api/index.d.ts +84 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +847 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/infer/infer_pipeline.d.ts +51 -0
- package/dist/api/infer/infer_pipeline.d.ts.map +1 -0
- package/dist/api/infer/infer_pipeline.js +291 -0
- package/dist/api/infer/infer_pipeline.js.map +1 -0
- package/dist/api/interfaces/api.d.ts +940 -0
- package/dist/api/interfaces/api.d.ts.map +1 -0
- package/dist/api/interfaces/api.js +21 -0
- package/dist/api/interfaces/api.js.map +1 -0
- package/dist/api/knowledge/knowledge_api.d.ts +55 -0
- package/dist/api/knowledge/knowledge_api.d.ts.map +1 -0
- package/dist/api/knowledge/knowledge_api.js +89 -0
- package/dist/api/knowledge/knowledge_api.js.map +1 -0
- package/dist/api/migration/023_agent_persistence.d.ts +32 -0
- package/dist/api/migration/023_agent_persistence.d.ts.map +1 -0
- package/dist/api/migration/023_agent_persistence.js +158 -0
- package/dist/api/migration/023_agent_persistence.js.map +1 -0
- package/dist/api/migration/024_trust_learning.d.ts +36 -0
- package/dist/api/migration/024_trust_learning.d.ts.map +1 -0
- package/dist/api/migration/024_trust_learning.js +194 -0
- package/dist/api/migration/024_trust_learning.js.map +1 -0
- package/dist/api/migration/025_knowledge_graph.d.ts +29 -0
- package/dist/api/migration/025_knowledge_graph.d.ts.map +1 -0
- package/dist/api/migration/025_knowledge_graph.js +97 -0
- package/dist/api/migration/025_knowledge_graph.js.map +1 -0
- package/dist/api/migration/026_replay_pipeline.d.ts +30 -0
- package/dist/api/migration/026_replay_pipeline.d.ts.map +1 -0
- package/dist/api/migration/026_replay_pipeline.js +118 -0
- package/dist/api/migration/026_replay_pipeline.js.map +1 -0
- package/dist/api/missions/mission_api.d.ts +74 -0
- package/dist/api/missions/mission_api.d.ts.map +1 -0
- package/dist/api/missions/mission_api.js +408 -0
- package/dist/api/missions/mission_api.js.map +1 -0
- package/dist/api/observability/health.d.ts +36 -0
- package/dist/api/observability/health.d.ts.map +1 -0
- package/dist/api/observability/health.js +92 -0
- package/dist/api/observability/health.js.map +1 -0
- package/dist/api/observability/metrics.d.ts +95 -0
- package/dist/api/observability/metrics.d.ts.map +1 -0
- package/dist/api/observability/metrics.js +260 -0
- package/dist/api/observability/metrics.js.map +1 -0
- package/dist/api/roles/roles_api.d.ts +45 -0
- package/dist/api/roles/roles_api.d.ts.map +1 -0
- package/dist/api/roles/roles_api.js +77 -0
- package/dist/api/roles/roles_api.js.map +1 -0
- package/dist/api/sessions/session_manager.d.ts +110 -0
- package/dist/api/sessions/session_manager.d.ts.map +1 -0
- package/dist/api/sessions/session_manager.js +278 -0
- package/dist/api/sessions/session_manager.js.map +1 -0
- package/dist/budget/harness/dba_harness.d.ts +36 -0
- package/dist/budget/harness/dba_harness.d.ts.map +1 -0
- package/dist/budget/harness/dba_harness.js +58 -0
- package/dist/budget/harness/dba_harness.js.map +1 -0
- package/dist/budget/impl/dba_impl.d.ts +47 -0
- package/dist/budget/impl/dba_impl.d.ts.map +1 -0
- package/dist/budget/impl/dba_impl.js +402 -0
- package/dist/budget/impl/dba_impl.js.map +1 -0
- package/dist/budget/interfaces/dba_types.d.ts +708 -0
- package/dist/budget/interfaces/dba_types.d.ts.map +1 -0
- package/dist/budget/interfaces/dba_types.js +124 -0
- package/dist/budget/interfaces/dba_types.js.map +1 -0
- package/dist/claims/evidence/capability_scope_validator.d.ts +32 -0
- package/dist/claims/evidence/capability_scope_validator.d.ts.map +1 -0
- package/dist/claims/evidence/capability_scope_validator.js +72 -0
- package/dist/claims/evidence/capability_scope_validator.js.map +1 -0
- package/dist/claims/evidence/evidence_validator.d.ts +35 -0
- package/dist/claims/evidence/evidence_validator.d.ts.map +1 -0
- package/dist/claims/evidence/evidence_validator.js +118 -0
- package/dist/claims/evidence/evidence_validator.js.map +1 -0
- package/dist/claims/harness/claim_harness.d.ts +22 -0
- package/dist/claims/harness/claim_harness.d.ts.map +1 -0
- package/dist/claims/harness/claim_harness.js +26 -0
- package/dist/claims/harness/claim_harness.js.map +1 -0
- package/dist/claims/interfaces/claim_types.d.ts +858 -0
- package/dist/claims/interfaces/claim_types.d.ts.map +1 -0
- package/dist/claims/interfaces/claim_types.js +201 -0
- package/dist/claims/interfaces/claim_types.js.map +1 -0
- package/dist/claims/migration/019_ccp_claims.d.ts +23 -0
- package/dist/claims/migration/019_ccp_claims.d.ts.map +1 -0
- package/dist/claims/migration/019_ccp_claims.js +196 -0
- package/dist/claims/migration/019_ccp_claims.js.map +1 -0
- package/dist/claims/store/claim_stores.d.ts +27 -0
- package/dist/claims/store/claim_stores.d.ts.map +1 -0
- package/dist/claims/store/claim_stores.js +1352 -0
- package/dist/claims/store/claim_stores.js.map +1 -0
- package/dist/context/harness/cgp_harness.d.ts +32 -0
- package/dist/context/harness/cgp_harness.d.ts.map +1 -0
- package/dist/context/harness/cgp_harness.js +295 -0
- package/dist/context/harness/cgp_harness.js.map +1 -0
- package/dist/context/interfaces/cgp_types.d.ts +905 -0
- package/dist/context/interfaces/cgp_types.d.ts.map +1 -0
- package/dist/context/interfaces/cgp_types.js +112 -0
- package/dist/context/interfaces/cgp_types.js.map +1 -0
- package/dist/context/stores/cgp_stores.d.ts +42 -0
- package/dist/context/stores/cgp_stores.d.ts.map +1 -0
- package/dist/context/stores/cgp_stores.js +856 -0
- package/dist/context/stores/cgp_stores.js.map +1 -0
- package/dist/execution/harness/egp_harness.d.ts +43 -0
- package/dist/execution/harness/egp_harness.d.ts.map +1 -0
- package/dist/execution/harness/egp_harness.js +54 -0
- package/dist/execution/harness/egp_harness.js.map +1 -0
- package/dist/execution/interfaces/egp_types.d.ts +1042 -0
- package/dist/execution/interfaces/egp_types.d.ts.map +1 -0
- package/dist/execution/interfaces/egp_types.js +195 -0
- package/dist/execution/interfaces/egp_types.js.map +1 -0
- package/dist/execution/stores/egp_stores.d.ts +29 -0
- package/dist/execution/stores/egp_stores.d.ts.map +1 -0
- package/dist/execution/stores/egp_stores.js +1250 -0
- package/dist/execution/stores/egp_stores.js.map +1 -0
- package/dist/execution/wiring/execution_gate.d.ts +56 -0
- package/dist/execution/wiring/execution_gate.d.ts.map +1 -0
- package/dist/execution/wiring/execution_gate.js +77 -0
- package/dist/execution/wiring/execution_gate.js.map +1 -0
- package/dist/execution/wiring/floor_enforcer.d.ts +68 -0
- package/dist/execution/wiring/floor_enforcer.d.ts.map +1 -0
- package/dist/execution/wiring/floor_enforcer.js +96 -0
- package/dist/execution/wiring/floor_enforcer.js.map +1 -0
- package/dist/execution/wiring/invocation_gate.d.ts +58 -0
- package/dist/execution/wiring/invocation_gate.d.ts.map +1 -0
- package/dist/execution/wiring/invocation_gate.js +69 -0
- package/dist/execution/wiring/invocation_gate.js.map +1 -0
- package/dist/execution/wiring/terminal_release.d.ts +56 -0
- package/dist/execution/wiring/terminal_release.d.ts.map +1 -0
- package/dist/execution/wiring/terminal_release.js +85 -0
- package/dist/execution/wiring/terminal_release.js.map +1 -0
- package/dist/governance/harness/governance_harness.d.ts +54 -0
- package/dist/governance/harness/governance_harness.d.ts.map +1 -0
- package/dist/governance/harness/governance_harness.js +60 -0
- package/dist/governance/harness/governance_harness.js.map +1 -0
- package/dist/governance/migration/012_governance_runs_traces.d.ts +21 -0
- package/dist/governance/migration/012_governance_runs_traces.d.ts.map +1 -0
- package/dist/governance/migration/012_governance_runs_traces.js +115 -0
- package/dist/governance/migration/012_governance_runs_traces.js.map +1 -0
- package/dist/governance/migration/013_governance_contracts.d.ts +18 -0
- package/dist/governance/migration/013_governance_contracts.d.ts.map +1 -0
- package/dist/governance/migration/013_governance_contracts.js +59 -0
- package/dist/governance/migration/013_governance_contracts.js.map +1 -0
- package/dist/governance/migration/014_governance_supervisor.d.ts +16 -0
- package/dist/governance/migration/014_governance_supervisor.d.ts.map +1 -0
- package/dist/governance/migration/014_governance_supervisor.js +75 -0
- package/dist/governance/migration/014_governance_supervisor.js.map +1 -0
- package/dist/governance/migration/015_governance_eval.d.ts +18 -0
- package/dist/governance/migration/015_governance_eval.d.ts.map +1 -0
- package/dist/governance/migration/015_governance_eval.js +65 -0
- package/dist/governance/migration/015_governance_eval.js.map +1 -0
- package/dist/governance/migration/016_governance_capabilities.d.ts +16 -0
- package/dist/governance/migration/016_governance_capabilities.d.ts.map +1 -0
- package/dist/governance/migration/016_governance_capabilities.js +60 -0
- package/dist/governance/migration/016_governance_capabilities.js.map +1 -0
- package/dist/governance/migration/017_governance_handoffs_idempotency.d.ts +20 -0
- package/dist/governance/migration/017_governance_handoffs_idempotency.d.ts.map +1 -0
- package/dist/governance/migration/017_governance_handoffs_idempotency.js +103 -0
- package/dist/governance/migration/017_governance_handoffs_idempotency.js.map +1 -0
- package/dist/governance/migration/018_supervisor_decision_delete_trigger.d.ts +17 -0
- package/dist/governance/migration/018_supervisor_decision_delete_trigger.d.ts.map +1 -0
- package/dist/governance/migration/018_supervisor_decision_delete_trigger.js +37 -0
- package/dist/governance/migration/018_supervisor_decision_delete_trigger.js.map +1 -0
- package/dist/governance/stores/governance_stores.d.ts +78 -0
- package/dist/governance/stores/governance_stores.d.ts.map +1 -0
- package/dist/governance/stores/governance_stores.js +1117 -0
- package/dist/governance/stores/governance_stores.js.map +1 -0
- package/dist/kernel/audit/audit_trail.d.ts +24 -0
- package/dist/kernel/audit/audit_trail.d.ts.map +1 -0
- package/dist/kernel/audit/audit_trail.js +569 -0
- package/dist/kernel/audit/audit_trail.js.map +1 -0
- package/dist/kernel/crypto/crypto_engine.d.ts +49 -0
- package/dist/kernel/crypto/crypto_engine.d.ts.map +1 -0
- package/dist/kernel/crypto/crypto_engine.js +350 -0
- package/dist/kernel/crypto/crypto_engine.js.map +1 -0
- package/dist/kernel/database/database_lifecycle.d.ts +24 -0
- package/dist/kernel/database/database_lifecycle.d.ts.map +1 -0
- package/dist/kernel/database/database_lifecycle.js +404 -0
- package/dist/kernel/database/database_lifecycle.js.map +1 -0
- package/dist/kernel/database/migrations.d.ts +21 -0
- package/dist/kernel/database/migrations.d.ts.map +1 -0
- package/dist/kernel/database/migrations.js +407 -0
- package/dist/kernel/database/migrations.js.map +1 -0
- package/dist/kernel/events/event_bus.d.ts +25 -0
- package/dist/kernel/events/event_bus.d.ts.map +1 -0
- package/dist/kernel/events/event_bus.js +302 -0
- package/dist/kernel/events/event_bus.js.map +1 -0
- package/dist/kernel/events/webhook_delivery.d.ts +90 -0
- package/dist/kernel/events/webhook_delivery.d.ts.map +1 -0
- package/dist/kernel/events/webhook_delivery.js +324 -0
- package/dist/kernel/events/webhook_delivery.js.map +1 -0
- package/dist/kernel/index.d.ts +39 -0
- package/dist/kernel/index.d.ts.map +1 -0
- package/dist/kernel/index.js +263 -0
- package/dist/kernel/index.js.map +1 -0
- package/dist/kernel/interfaces/audit.d.ts +146 -0
- package/dist/kernel/interfaces/audit.d.ts.map +1 -0
- package/dist/kernel/interfaces/audit.js +15 -0
- package/dist/kernel/interfaces/audit.js.map +1 -0
- package/dist/kernel/interfaces/capability_manifest.d.ts +104 -0
- package/dist/kernel/interfaces/capability_manifest.d.ts.map +1 -0
- package/dist/kernel/interfaces/capability_manifest.js +44 -0
- package/dist/kernel/interfaces/capability_manifest.js.map +1 -0
- package/dist/kernel/interfaces/common.d.ts +91 -0
- package/dist/kernel/interfaces/common.d.ts.map +1 -0
- package/dist/kernel/interfaces/common.js +10 -0
- package/dist/kernel/interfaces/common.js.map +1 -0
- package/dist/kernel/interfaces/crypto.d.ts +95 -0
- package/dist/kernel/interfaces/crypto.d.ts.map +1 -0
- package/dist/kernel/interfaces/crypto.js +14 -0
- package/dist/kernel/interfaces/crypto.js.map +1 -0
- package/dist/kernel/interfaces/database.d.ts +157 -0
- package/dist/kernel/interfaces/database.d.ts.map +1 -0
- package/dist/kernel/interfaces/database.js +10 -0
- package/dist/kernel/interfaces/database.js.map +1 -0
- package/dist/kernel/interfaces/eval.d.ts +93 -0
- package/dist/kernel/interfaces/eval.d.ts.map +1 -0
- package/dist/kernel/interfaces/eval.js +17 -0
- package/dist/kernel/interfaces/eval.js.map +1 -0
- package/dist/kernel/interfaces/events.d.ts +73 -0
- package/dist/kernel/interfaces/events.d.ts.map +1 -0
- package/dist/kernel/interfaces/events.js +13 -0
- package/dist/kernel/interfaces/events.js.map +1 -0
- package/dist/kernel/interfaces/governance_ids.d.ts +93 -0
- package/dist/kernel/interfaces/governance_ids.d.ts.map +1 -0
- package/dist/kernel/interfaces/governance_ids.js +18 -0
- package/dist/kernel/interfaces/governance_ids.js.map +1 -0
- package/dist/kernel/interfaces/idempotency.d.ts +143 -0
- package/dist/kernel/interfaces/idempotency.d.ts.map +1 -0
- package/dist/kernel/interfaces/idempotency.js +22 -0
- package/dist/kernel/interfaces/idempotency.js.map +1 -0
- package/dist/kernel/interfaces/index.d.ts +29 -0
- package/dist/kernel/interfaces/index.d.ts.map +1 -0
- package/dist/kernel/interfaces/index.js +9 -0
- package/dist/kernel/interfaces/index.js.map +1 -0
- package/dist/kernel/interfaces/kernel.d.ts +79 -0
- package/dist/kernel/interfaces/kernel.d.ts.map +1 -0
- package/dist/kernel/interfaces/kernel.js +13 -0
- package/dist/kernel/interfaces/kernel.js.map +1 -0
- package/dist/kernel/interfaces/lifecycle.d.ts +115 -0
- package/dist/kernel/interfaces/lifecycle.d.ts.map +1 -0
- package/dist/kernel/interfaces/lifecycle.js +53 -0
- package/dist/kernel/interfaces/lifecycle.js.map +1 -0
- package/dist/kernel/interfaces/mission_contract.d.ts +106 -0
- package/dist/kernel/interfaces/mission_contract.d.ts.map +1 -0
- package/dist/kernel/interfaces/mission_contract.js +20 -0
- package/dist/kernel/interfaces/mission_contract.js.map +1 -0
- package/dist/kernel/interfaces/namespace.d.ts +30 -0
- package/dist/kernel/interfaces/namespace.d.ts.map +1 -0
- package/dist/kernel/interfaces/namespace.js +12 -0
- package/dist/kernel/interfaces/namespace.js.map +1 -0
- package/dist/kernel/interfaces/rate_limiter.d.ts +42 -0
- package/dist/kernel/interfaces/rate_limiter.d.ts.map +1 -0
- package/dist/kernel/interfaces/rate_limiter.js +12 -0
- package/dist/kernel/interfaces/rate_limiter.js.map +1 -0
- package/dist/kernel/interfaces/rbac.d.ts +58 -0
- package/dist/kernel/interfaces/rbac.d.ts.map +1 -0
- package/dist/kernel/interfaces/rbac.js +13 -0
- package/dist/kernel/interfaces/rbac.js.map +1 -0
- package/dist/kernel/interfaces/retention.d.ts +58 -0
- package/dist/kernel/interfaces/retention.d.ts.map +1 -0
- package/dist/kernel/interfaces/retention.js +13 -0
- package/dist/kernel/interfaces/retention.js.map +1 -0
- package/dist/kernel/interfaces/run_identity.d.ts +132 -0
- package/dist/kernel/interfaces/run_identity.d.ts.map +1 -0
- package/dist/kernel/interfaces/run_identity.js +16 -0
- package/dist/kernel/interfaces/run_identity.js.map +1 -0
- package/dist/kernel/interfaces/supervisor.d.ts +175 -0
- package/dist/kernel/interfaces/supervisor.d.ts.map +1 -0
- package/dist/kernel/interfaces/supervisor.js +25 -0
- package/dist/kernel/interfaces/supervisor.js.map +1 -0
- package/dist/kernel/interfaces/tenant.d.ts +34 -0
- package/dist/kernel/interfaces/tenant.d.ts.map +1 -0
- package/dist/kernel/interfaces/tenant.js +12 -0
- package/dist/kernel/interfaces/tenant.js.map +1 -0
- package/dist/kernel/interfaces/time.d.ts +29 -0
- package/dist/kernel/interfaces/time.d.ts.map +1 -0
- package/dist/kernel/interfaces/time.js +13 -0
- package/dist/kernel/interfaces/time.js.map +1 -0
- package/dist/kernel/interfaces/trace.d.ts +264 -0
- package/dist/kernel/interfaces/trace.d.ts.map +1 -0
- package/dist/kernel/interfaces/trace.js +17 -0
- package/dist/kernel/interfaces/trace.js.map +1 -0
- package/dist/kernel/namespace/namespace_enforcer.d.ts +20 -0
- package/dist/kernel/namespace/namespace_enforcer.d.ts.map +1 -0
- package/dist/kernel/namespace/namespace_enforcer.js +91 -0
- package/dist/kernel/namespace/namespace_enforcer.js.map +1 -0
- package/dist/kernel/rate_limiter/rate_limiter.d.ts +23 -0
- package/dist/kernel/rate_limiter/rate_limiter.d.ts.map +1 -0
- package/dist/kernel/rate_limiter/rate_limiter.js +146 -0
- package/dist/kernel/rate_limiter/rate_limiter.js.map +1 -0
- package/dist/kernel/rbac/rbac_engine.d.ts +20 -0
- package/dist/kernel/rbac/rbac_engine.d.ts.map +1 -0
- package/dist/kernel/rbac/rbac_engine.js +257 -0
- package/dist/kernel/rbac/rbac_engine.js.map +1 -0
- package/dist/kernel/retention/retention_scheduler.d.ts +41 -0
- package/dist/kernel/retention/retention_scheduler.d.ts.map +1 -0
- package/dist/kernel/retention/retention_scheduler.js +218 -0
- package/dist/kernel/retention/retention_scheduler.js.map +1 -0
- package/dist/kernel/tenant/tenant_context.d.ts +22 -0
- package/dist/kernel/tenant/tenant_context.d.ts.map +1 -0
- package/dist/kernel/tenant/tenant_context.js +107 -0
- package/dist/kernel/tenant/tenant_context.js.map +1 -0
- package/dist/kernel/tenant/tenant_scope.d.ts +81 -0
- package/dist/kernel/tenant/tenant_scope.d.ts.map +1 -0
- package/dist/kernel/tenant/tenant_scope.js +168 -0
- package/dist/kernel/tenant/tenant_scope.js.map +1 -0
- package/dist/kernel/time/time_provider.d.ts +39 -0
- package/dist/kernel/time/time_provider.d.ts.map +1 -0
- package/dist/kernel/time/time_provider.js +58 -0
- package/dist/kernel/time/time_provider.js.map +1 -0
- package/dist/learning/applicator/technique_applicator.d.ts +41 -0
- package/dist/learning/applicator/technique_applicator.d.ts.map +1 -0
- package/dist/learning/applicator/technique_applicator.js +200 -0
- package/dist/learning/applicator/technique_applicator.js.map +1 -0
- package/dist/learning/cold_start/cold_start_manager.d.ts +35 -0
- package/dist/learning/cold_start/cold_start_manager.d.ts.map +1 -0
- package/dist/learning/cold_start/cold_start_manager.js +146 -0
- package/dist/learning/cold_start/cold_start_manager.js.map +1 -0
- package/dist/learning/cycle/learning_cycle_orchestrator.d.ts +45 -0
- package/dist/learning/cycle/learning_cycle_orchestrator.d.ts.map +1 -0
- package/dist/learning/cycle/learning_cycle_orchestrator.js +165 -0
- package/dist/learning/cycle/learning_cycle_orchestrator.js.map +1 -0
- package/dist/learning/extractor/technique_extractor.d.ts +48 -0
- package/dist/learning/extractor/technique_extractor.d.ts.map +1 -0
- package/dist/learning/extractor/technique_extractor.js +357 -0
- package/dist/learning/extractor/technique_extractor.js.map +1 -0
- package/dist/learning/harness/learning_harness.d.ts +26 -0
- package/dist/learning/harness/learning_harness.d.ts.map +1 -0
- package/dist/learning/harness/learning_harness.js +58 -0
- package/dist/learning/harness/learning_harness.js.map +1 -0
- package/dist/learning/interfaces/index.d.ts +7 -0
- package/dist/learning/interfaces/index.d.ts.map +1 -0
- package/dist/learning/interfaces/index.js +10 -0
- package/dist/learning/interfaces/index.js.map +1 -0
- package/dist/learning/interfaces/learning_types.d.ts +398 -0
- package/dist/learning/interfaces/learning_types.d.ts.map +1 -0
- package/dist/learning/interfaces/learning_types.js +69 -0
- package/dist/learning/interfaces/learning_types.js.map +1 -0
- package/dist/learning/migration/007_learning_techniques.d.ts +23 -0
- package/dist/learning/migration/007_learning_techniques.d.ts.map +1 -0
- package/dist/learning/migration/007_learning_techniques.js +86 -0
- package/dist/learning/migration/007_learning_techniques.js.map +1 -0
- package/dist/learning/migration/008_learning_outcomes.d.ts +23 -0
- package/dist/learning/migration/008_learning_outcomes.d.ts.map +1 -0
- package/dist/learning/migration/008_learning_outcomes.js +79 -0
- package/dist/learning/migration/008_learning_outcomes.js.map +1 -0
- package/dist/learning/migration/009_learning_applications.d.ts +25 -0
- package/dist/learning/migration/009_learning_applications.d.ts.map +1 -0
- package/dist/learning/migration/009_learning_applications.js +82 -0
- package/dist/learning/migration/009_learning_applications.js.map +1 -0
- package/dist/learning/migration/010_learning_quarantine.d.ts +22 -0
- package/dist/learning/migration/010_learning_quarantine.d.ts.map +1 -0
- package/dist/learning/migration/010_learning_quarantine.js +78 -0
- package/dist/learning/migration/010_learning_quarantine.js.map +1 -0
- package/dist/learning/migration/011_learning_transfers.d.ts +22 -0
- package/dist/learning/migration/011_learning_transfers.d.ts.map +1 -0
- package/dist/learning/migration/011_learning_transfers.js +77 -0
- package/dist/learning/migration/011_learning_transfers.js.map +1 -0
- package/dist/learning/quarantine/quarantine_manager.d.ts +34 -0
- package/dist/learning/quarantine/quarantine_manager.d.ts.map +1 -0
- package/dist/learning/quarantine/quarantine_manager.js +200 -0
- package/dist/learning/quarantine/quarantine_manager.js.map +1 -0
- package/dist/learning/retirement/retirement_evaluator.d.ts +35 -0
- package/dist/learning/retirement/retirement_evaluator.d.ts.map +1 -0
- package/dist/learning/retirement/retirement_evaluator.js +131 -0
- package/dist/learning/retirement/retirement_evaluator.js.map +1 -0
- package/dist/learning/specialization/over_specialization_detector.d.ts +32 -0
- package/dist/learning/specialization/over_specialization_detector.d.ts.map +1 -0
- package/dist/learning/specialization/over_specialization_detector.js +105 -0
- package/dist/learning/specialization/over_specialization_detector.js.map +1 -0
- package/dist/learning/store/technique_store.d.ts +22 -0
- package/dist/learning/store/technique_store.d.ts.map +1 -0
- package/dist/learning/store/technique_store.js +369 -0
- package/dist/learning/store/technique_store.js.map +1 -0
- package/dist/learning/tracker/effectiveness_tracker.d.ts +26 -0
- package/dist/learning/tracker/effectiveness_tracker.d.ts.map +1 -0
- package/dist/learning/tracker/effectiveness_tracker.js +158 -0
- package/dist/learning/tracker/effectiveness_tracker.js.map +1 -0
- package/dist/learning/transfer/cross_agent_transfer.d.ts +35 -0
- package/dist/learning/transfer/cross_agent_transfer.d.ts.map +1 -0
- package/dist/learning/transfer/cross_agent_transfer.js +245 -0
- package/dist/learning/transfer/cross_agent_transfer.js.map +1 -0
- package/dist/orchestration/artifacts/artifact_store.d.ts +19 -0
- package/dist/orchestration/artifacts/artifact_store.d.ts.map +1 -0
- package/dist/orchestration/artifacts/artifact_store.js +213 -0
- package/dist/orchestration/artifacts/artifact_store.js.map +1 -0
- package/dist/orchestration/artifacts/cascade_walker.d.ts +39 -0
- package/dist/orchestration/artifacts/cascade_walker.d.ts.map +1 -0
- package/dist/orchestration/artifacts/cascade_walker.js +107 -0
- package/dist/orchestration/artifacts/cascade_walker.js.map +1 -0
- package/dist/orchestration/budget/budget_governance.d.ts +20 -0
- package/dist/orchestration/budget/budget_governance.d.ts.map +1 -0
- package/dist/orchestration/budget/budget_governance.js +182 -0
- package/dist/orchestration/budget/budget_governance.js.map +1 -0
- package/dist/orchestration/checkpoints/checkpoint_coordinator.d.ts +22 -0
- package/dist/orchestration/checkpoints/checkpoint_coordinator.d.ts.map +1 -0
- package/dist/orchestration/checkpoints/checkpoint_coordinator.js +252 -0
- package/dist/orchestration/checkpoints/checkpoint_coordinator.js.map +1 -0
- package/dist/orchestration/checkpoints/drift_engine.d.ts +52 -0
- package/dist/orchestration/checkpoints/drift_engine.d.ts.map +1 -0
- package/dist/orchestration/checkpoints/drift_engine.js +126 -0
- package/dist/orchestration/checkpoints/drift_engine.js.map +1 -0
- package/dist/orchestration/compaction/bounded_cognition.d.ts +22 -0
- package/dist/orchestration/compaction/bounded_cognition.d.ts.map +1 -0
- package/dist/orchestration/compaction/bounded_cognition.js +124 -0
- package/dist/orchestration/compaction/bounded_cognition.js.map +1 -0
- package/dist/orchestration/conversation/conversation_manager.d.ts +25 -0
- package/dist/orchestration/conversation/conversation_manager.d.ts.map +1 -0
- package/dist/orchestration/conversation/conversation_manager.js +260 -0
- package/dist/orchestration/conversation/conversation_manager.js.map +1 -0
- package/dist/orchestration/events/event_propagation.d.ts +20 -0
- package/dist/orchestration/events/event_propagation.d.ts.map +1 -0
- package/dist/orchestration/events/event_propagation.js +160 -0
- package/dist/orchestration/events/event_propagation.js.map +1 -0
- package/dist/orchestration/index.d.ts +28 -0
- package/dist/orchestration/index.d.ts.map +1 -0
- package/dist/orchestration/index.js +147 -0
- package/dist/orchestration/index.js.map +1 -0
- package/dist/orchestration/interfaces/orchestration.d.ts +494 -0
- package/dist/orchestration/interfaces/orchestration.d.ts.map +1 -0
- package/dist/orchestration/interfaces/orchestration.js +64 -0
- package/dist/orchestration/interfaces/orchestration.js.map +1 -0
- package/dist/orchestration/migration/003_orchestration.d.ts +27 -0
- package/dist/orchestration/migration/003_orchestration.d.ts.map +1 -0
- package/dist/orchestration/migration/003_orchestration.js +336 -0
- package/dist/orchestration/migration/003_orchestration.js.map +1 -0
- package/dist/orchestration/migration/004_tenant_isolation.d.ts +22 -0
- package/dist/orchestration/migration/004_tenant_isolation.d.ts.map +1 -0
- package/dist/orchestration/migration/004_tenant_isolation.js +179 -0
- package/dist/orchestration/migration/004_tenant_isolation.js.map +1 -0
- package/dist/orchestration/migration/005_immutability_triggers.d.ts +30 -0
- package/dist/orchestration/migration/005_immutability_triggers.d.ts.map +1 -0
- package/dist/orchestration/migration/005_immutability_triggers.js +93 -0
- package/dist/orchestration/migration/005_immutability_triggers.js.map +1 -0
- package/dist/orchestration/migration/006_audit_tombstone.d.ts +26 -0
- package/dist/orchestration/migration/006_audit_tombstone.d.ts.map +1 -0
- package/dist/orchestration/migration/006_audit_tombstone.js +71 -0
- package/dist/orchestration/migration/006_audit_tombstone.js.map +1 -0
- package/dist/orchestration/missions/mission_recovery.d.ts +60 -0
- package/dist/orchestration/missions/mission_recovery.d.ts.map +1 -0
- package/dist/orchestration/missions/mission_recovery.js +251 -0
- package/dist/orchestration/missions/mission_recovery.js.map +1 -0
- package/dist/orchestration/missions/mission_store.d.ts +16 -0
- package/dist/orchestration/missions/mission_store.d.ts.map +1 -0
- package/dist/orchestration/missions/mission_store.js +280 -0
- package/dist/orchestration/missions/mission_store.js.map +1 -0
- package/dist/orchestration/syscalls/create_artifact.d.ts +13 -0
- package/dist/orchestration/syscalls/create_artifact.d.ts.map +1 -0
- package/dist/orchestration/syscalls/create_artifact.js +23 -0
- package/dist/orchestration/syscalls/create_artifact.js.map +1 -0
- package/dist/orchestration/syscalls/emit_event.d.ts +13 -0
- package/dist/orchestration/syscalls/emit_event.d.ts.map +1 -0
- package/dist/orchestration/syscalls/emit_event.js +13 -0
- package/dist/orchestration/syscalls/emit_event.js.map +1 -0
- package/dist/orchestration/syscalls/propose_mission.d.ts +14 -0
- package/dist/orchestration/syscalls/propose_mission.d.ts.map +1 -0
- package/dist/orchestration/syscalls/propose_mission.js +27 -0
- package/dist/orchestration/syscalls/propose_mission.js.map +1 -0
- package/dist/orchestration/syscalls/propose_task_execution.d.ts +13 -0
- package/dist/orchestration/syscalls/propose_task_execution.d.ts.map +1 -0
- package/dist/orchestration/syscalls/propose_task_execution.js +84 -0
- package/dist/orchestration/syscalls/propose_task_execution.js.map +1 -0
- package/dist/orchestration/syscalls/propose_task_graph.d.ts +13 -0
- package/dist/orchestration/syscalls/propose_task_graph.d.ts.map +1 -0
- package/dist/orchestration/syscalls/propose_task_graph.js +22 -0
- package/dist/orchestration/syscalls/propose_task_graph.js.map +1 -0
- package/dist/orchestration/syscalls/read_artifact.d.ts +14 -0
- package/dist/orchestration/syscalls/read_artifact.d.ts.map +1 -0
- package/dist/orchestration/syscalls/read_artifact.js +31 -0
- package/dist/orchestration/syscalls/read_artifact.js.map +1 -0
- package/dist/orchestration/syscalls/request_budget.d.ts +14 -0
- package/dist/orchestration/syscalls/request_budget.d.ts.map +1 -0
- package/dist/orchestration/syscalls/request_budget.js +46 -0
- package/dist/orchestration/syscalls/request_budget.js.map +1 -0
- package/dist/orchestration/syscalls/request_capability.d.ts +13 -0
- package/dist/orchestration/syscalls/request_capability.d.ts.map +1 -0
- package/dist/orchestration/syscalls/request_capability.js +136 -0
- package/dist/orchestration/syscalls/request_capability.js.map +1 -0
- package/dist/orchestration/syscalls/respond_checkpoint.d.ts +12 -0
- package/dist/orchestration/syscalls/respond_checkpoint.d.ts.map +1 -0
- package/dist/orchestration/syscalls/respond_checkpoint.js +12 -0
- package/dist/orchestration/syscalls/respond_checkpoint.js.map +1 -0
- package/dist/orchestration/syscalls/submit_result.d.ts +15 -0
- package/dist/orchestration/syscalls/submit_result.d.ts.map +1 -0
- package/dist/orchestration/syscalls/submit_result.js +97 -0
- package/dist/orchestration/syscalls/submit_result.js.map +1 -0
- package/dist/orchestration/tasks/task_graph.d.ts +26 -0
- package/dist/orchestration/tasks/task_graph.d.ts.map +1 -0
- package/dist/orchestration/tasks/task_graph.js +204 -0
- package/dist/orchestration/tasks/task_graph.js.map +1 -0
- package/dist/orchestration/tasks/task_store.d.ts +18 -0
- package/dist/orchestration/tasks/task_store.d.ts.map +1 -0
- package/dist/orchestration/tasks/task_store.js +99 -0
- package/dist/orchestration/tasks/task_store.js.map +1 -0
- package/dist/reference-agent/artifact_manager.d.ts +119 -0
- package/dist/reference-agent/artifact_manager.d.ts.map +1 -0
- package/dist/reference-agent/artifact_manager.js +149 -0
- package/dist/reference-agent/artifact_manager.js.map +1 -0
- package/dist/reference-agent/checkpoint_handler.d.ts +186 -0
- package/dist/reference-agent/checkpoint_handler.d.ts.map +1 -0
- package/dist/reference-agent/checkpoint_handler.js +423 -0
- package/dist/reference-agent/checkpoint_handler.js.map +1 -0
- package/dist/reference-agent/index.d.ts +43 -0
- package/dist/reference-agent/index.d.ts.map +1 -0
- package/dist/reference-agent/index.js +53 -0
- package/dist/reference-agent/index.js.map +1 -0
- package/dist/reference-agent/mission_planner.d.ts +163 -0
- package/dist/reference-agent/mission_planner.d.ts.map +1 -0
- package/dist/reference-agent/mission_planner.js +375 -0
- package/dist/reference-agent/mission_planner.js.map +1 -0
- package/dist/reference-agent/reference_agent.d.ts +130 -0
- package/dist/reference-agent/reference_agent.d.ts.map +1 -0
- package/dist/reference-agent/reference_agent.js +360 -0
- package/dist/reference-agent/reference_agent.js.map +1 -0
- package/dist/reference-agent/reference_agent.types.d.ts +199 -0
- package/dist/reference-agent/reference_agent.types.d.ts.map +1 -0
- package/dist/reference-agent/reference_agent.types.js +59 -0
- package/dist/reference-agent/reference_agent.types.js.map +1 -0
- package/dist/reference-agent/result_aggregator.d.ts +107 -0
- package/dist/reference-agent/result_aggregator.d.ts.map +1 -0
- package/dist/reference-agent/result_aggregator.js +219 -0
- package/dist/reference-agent/result_aggregator.js.map +1 -0
- package/dist/reference-agent/system_call_client.d.ts +106 -0
- package/dist/reference-agent/system_call_client.d.ts.map +1 -0
- package/dist/reference-agent/system_call_client.js +231 -0
- package/dist/reference-agent/system_call_client.js.map +1 -0
- package/dist/reference-agent/task_executor.d.ts +108 -0
- package/dist/reference-agent/task_executor.d.ts.map +1 -0
- package/dist/reference-agent/task_executor.js +249 -0
- package/dist/reference-agent/task_executor.js.map +1 -0
- package/dist/substrate/accounting/resource_accounting.d.ts +52 -0
- package/dist/substrate/accounting/resource_accounting.d.ts.map +1 -0
- package/dist/substrate/accounting/resource_accounting.js +200 -0
- package/dist/substrate/accounting/resource_accounting.js.map +1 -0
- package/dist/substrate/adapters/capability_registry.d.ts +28 -0
- package/dist/substrate/adapters/capability_registry.d.ts.map +1 -0
- package/dist/substrate/adapters/capability_registry.js +196 -0
- package/dist/substrate/adapters/capability_registry.js.map +1 -0
- package/dist/substrate/gateway/llm_gateway.d.ts +68 -0
- package/dist/substrate/gateway/llm_gateway.d.ts.map +1 -0
- package/dist/substrate/gateway/llm_gateway.js +442 -0
- package/dist/substrate/gateway/llm_gateway.js.map +1 -0
- package/dist/substrate/heartbeat/heartbeat_monitor.d.ts +40 -0
- package/dist/substrate/heartbeat/heartbeat_monitor.d.ts.map +1 -0
- package/dist/substrate/heartbeat/heartbeat_monitor.js +170 -0
- package/dist/substrate/heartbeat/heartbeat_monitor.js.map +1 -0
- package/dist/substrate/index.d.ts +59 -0
- package/dist/substrate/index.d.ts.map +1 -0
- package/dist/substrate/index.js +143 -0
- package/dist/substrate/index.js.map +1 -0
- package/dist/substrate/interfaces/substrate.d.ts +486 -0
- package/dist/substrate/interfaces/substrate.d.ts.map +1 -0
- package/dist/substrate/interfaces/substrate.js +14 -0
- package/dist/substrate/interfaces/substrate.js.map +1 -0
- package/dist/substrate/migration/002_substrate.d.ts +24 -0
- package/dist/substrate/migration/002_substrate.d.ts.map +1 -0
- package/dist/substrate/migration/002_substrate.js +188 -0
- package/dist/substrate/migration/002_substrate.js.map +1 -0
- package/dist/substrate/migration/022_transport_deliberation.d.ts +31 -0
- package/dist/substrate/migration/022_transport_deliberation.d.ts.map +1 -0
- package/dist/substrate/migration/022_transport_deliberation.js +77 -0
- package/dist/substrate/migration/022_transport_deliberation.js.map +1 -0
- package/dist/substrate/replay/replay_engine.d.ts +65 -0
- package/dist/substrate/replay/replay_engine.d.ts.map +1 -0
- package/dist/substrate/replay/replay_engine.js +316 -0
- package/dist/substrate/replay/replay_engine.js.map +1 -0
- package/dist/substrate/scheduler/task_scheduler.d.ts +38 -0
- package/dist/substrate/scheduler/task_scheduler.d.ts.map +1 -0
- package/dist/substrate/scheduler/task_scheduler.js +486 -0
- package/dist/substrate/scheduler/task_scheduler.js.map +1 -0
- package/dist/substrate/transport/adapters/anthropic_adapter.d.ts +57 -0
- package/dist/substrate/transport/adapters/anthropic_adapter.d.ts.map +1 -0
- package/dist/substrate/transport/adapters/anthropic_adapter.js +455 -0
- package/dist/substrate/transport/adapters/anthropic_adapter.js.map +1 -0
- package/dist/substrate/transport/adapters/gemini_adapter.d.ts +86 -0
- package/dist/substrate/transport/adapters/gemini_adapter.d.ts.map +1 -0
- package/dist/substrate/transport/adapters/gemini_adapter.js +456 -0
- package/dist/substrate/transport/adapters/gemini_adapter.js.map +1 -0
- package/dist/substrate/transport/adapters/groq_adapter.d.ts +50 -0
- package/dist/substrate/transport/adapters/groq_adapter.d.ts.map +1 -0
- package/dist/substrate/transport/adapters/groq_adapter.js +179 -0
- package/dist/substrate/transport/adapters/groq_adapter.js.map +1 -0
- package/dist/substrate/transport/adapters/mistral_adapter.d.ts +50 -0
- package/dist/substrate/transport/adapters/mistral_adapter.d.ts.map +1 -0
- package/dist/substrate/transport/adapters/mistral_adapter.js +179 -0
- package/dist/substrate/transport/adapters/mistral_adapter.js.map +1 -0
- package/dist/substrate/transport/adapters/ollama_adapter.d.ts +66 -0
- package/dist/substrate/transport/adapters/ollama_adapter.d.ts.map +1 -0
- package/dist/substrate/transport/adapters/ollama_adapter.js +347 -0
- package/dist/substrate/transport/adapters/ollama_adapter.js.map +1 -0
- package/dist/substrate/transport/adapters/openai_adapter.d.ts +68 -0
- package/dist/substrate/transport/adapters/openai_adapter.d.ts.map +1 -0
- package/dist/substrate/transport/adapters/openai_adapter.js +439 -0
- package/dist/substrate/transport/adapters/openai_adapter.js.map +1 -0
- package/dist/substrate/transport/adapters/openai_compat.d.ts +64 -0
- package/dist/substrate/transport/adapters/openai_compat.d.ts.map +1 -0
- package/dist/substrate/transport/adapters/openai_compat.js +326 -0
- package/dist/substrate/transport/adapters/openai_compat.js.map +1 -0
- package/dist/substrate/transport/index.d.ts +17 -0
- package/dist/substrate/transport/index.d.ts.map +1 -0
- package/dist/substrate/transport/index.js +25 -0
- package/dist/substrate/transport/index.js.map +1 -0
- package/dist/substrate/transport/stream_parser.d.ts +69 -0
- package/dist/substrate/transport/stream_parser.d.ts.map +1 -0
- package/dist/substrate/transport/stream_parser.js +280 -0
- package/dist/substrate/transport/stream_parser.js.map +1 -0
- package/dist/substrate/transport/transport_engine.d.ts +53 -0
- package/dist/substrate/transport/transport_engine.d.ts.map +1 -0
- package/dist/substrate/transport/transport_engine.js +444 -0
- package/dist/substrate/transport/transport_engine.js.map +1 -0
- package/dist/substrate/transport/transport_types.d.ts +207 -0
- package/dist/substrate/transport/transport_types.d.ts.map +1 -0
- package/dist/substrate/transport/transport_types.js +13 -0
- package/dist/substrate/transport/transport_types.js.map +1 -0
- package/dist/substrate/workers/worker_runtime.d.ts +40 -0
- package/dist/substrate/workers/worker_runtime.d.ts.map +1 -0
- package/dist/substrate/workers/worker_runtime.js +294 -0
- package/dist/substrate/workers/worker_runtime.js.map +1 -0
- package/dist/techniques/harness/tgp_harness.d.ts +39 -0
- package/dist/techniques/harness/tgp_harness.d.ts.map +1 -0
- package/dist/techniques/harness/tgp_harness.js +49 -0
- package/dist/techniques/harness/tgp_harness.js.map +1 -0
- package/dist/techniques/interfaces/tgp_types.d.ts +646 -0
- package/dist/techniques/interfaces/tgp_types.d.ts.map +1 -0
- package/dist/techniques/interfaces/tgp_types.js +160 -0
- package/dist/techniques/interfaces/tgp_types.js.map +1 -0
- package/dist/techniques/migration/020_tgp_governance.d.ts +36 -0
- package/dist/techniques/migration/020_tgp_governance.d.ts.map +1 -0
- package/dist/techniques/migration/020_tgp_governance.js +249 -0
- package/dist/techniques/migration/020_tgp_governance.js.map +1 -0
- package/dist/techniques/store/tgp_stores.d.ts +36 -0
- package/dist/techniques/store/tgp_stores.d.ts.map +1 -0
- package/dist/techniques/store/tgp_stores.js +854 -0
- package/dist/techniques/store/tgp_stores.js.map +1 -0
- package/dist/working-memory/harness/wmp_harness.d.ts +43 -0
- package/dist/working-memory/harness/wmp_harness.d.ts.map +1 -0
- package/dist/working-memory/harness/wmp_harness.js +81 -0
- package/dist/working-memory/harness/wmp_harness.js.map +1 -0
- package/dist/working-memory/interfaces/wmp_types.d.ts +635 -0
- package/dist/working-memory/interfaces/wmp_types.d.ts.map +1 -0
- package/dist/working-memory/interfaces/wmp_types.js +144 -0
- package/dist/working-memory/interfaces/wmp_types.js.map +1 -0
- package/dist/working-memory/migration/021_wmp.d.ts +21 -0
- package/dist/working-memory/migration/021_wmp.d.ts.map +1 -0
- package/dist/working-memory/migration/021_wmp.js +139 -0
- package/dist/working-memory/migration/021_wmp.js.map +1 -0
- package/dist/working-memory/stores/wmp_stores.d.ts +28 -0
- package/dist/working-memory/stores/wmp_stores.d.ts.map +1 -0
- package/dist/working-memory/stores/wmp_stores.js +754 -0
- package/dist/working-memory/stores/wmp_stores.js.map +1 -0
- package/package.json +84 -0
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trace Event Grammar + TraceEmitter + RunSequencer.
|
|
3
|
+
* Truth Model ref: Deliverable 3 — BC-020 through BC-028
|
|
4
|
+
* Truth Model v1.1 ref: Revised BC-023 (32 events), New BC-029 (handoff outcomes in trace),
|
|
5
|
+
* New BC-029.1 (RunSequencer dual-mode), New INV-X13 (GovernanceQueryContext)
|
|
6
|
+
*
|
|
7
|
+
* Phase: 0A (Foundation)
|
|
8
|
+
* Build Order: 3 (depends on Deliverable 2)
|
|
9
|
+
*
|
|
10
|
+
* Constitutional Sources: Table 6, Principle 7, Principle 15, Amendment A4
|
|
11
|
+
* Binding Doctrine: Binding 8 (32 events), Binding 12 (CorrelationId), Binding 14 (trace failure)
|
|
12
|
+
*
|
|
13
|
+
* BC-020: TraceEmitter is SEPARATE from EventBus. Does NOT extend EventBus.
|
|
14
|
+
* INV-023: 32 constitutional trace events and 39 domain events are distinct systems.
|
|
15
|
+
*/
|
|
16
|
+
import type { DatabaseConnection } from './database.js';
|
|
17
|
+
import type { TenantId, MissionId, TaskId, AgentId, OperationContext, Result } from './common.js';
|
|
18
|
+
import type { RunId, AttemptId, TraceEventId, CorrelationId, MissionContractId, SupervisorDecisionId, SuspensionRecordId, HandoffId, EvalCaseId, CapabilityManifestId } from './governance_ids.js';
|
|
19
|
+
import type { MissionLifecycleState, TaskLifecycleState } from './lifecycle.js';
|
|
20
|
+
import type { HandoffAcceptanceOutcome, HandoffRejectionReason, SupervisorType, DecisionOutcome } from './supervisor.js';
|
|
21
|
+
/**
|
|
22
|
+
* BC-023 (revised v1.1): Typed string union of exactly 32 event types.
|
|
23
|
+
* Source: Design Source §3C (28) + Binding 8 (+3 memory) + Binding 15 (+1 handoff.parent-suspended)
|
|
24
|
+
*
|
|
25
|
+
* Untyped string allows misspelled event types that compile but are never matched.
|
|
26
|
+
*/
|
|
27
|
+
export type TraceEventType = 'mission.created' | 'mission.transition' | 'mission.completed' | 'mission.failed' | 'mission.revoked' | 'task.created' | 'task.transition' | 'task.completed' | 'task.skipped' | 'attempt.started' | 'attempt.succeeded' | 'attempt.failed' | 'attempt.abandoned' | 'handoff.issued' | 'handoff.accepted' | 'handoff.returned' | 'handoff.rejected' | 'handoff.parent-suspended' | 'suspension.entered' | 'suspension.resolved' | 'supervision.decision' | 'claim.asserted' | 'claim.grounded' | 'claim.challenged' | 'claim.retracted' | 'eval.scored' | 'capability.executed' | 'artifact.created' | 'budget.consumed' | 'memory.published' | 'memory.tombstoned' | 'memory.promoted';
|
|
28
|
+
/**
|
|
29
|
+
* BC-022: Every TraceEvent has this typed shape (not Record<string, unknown>).
|
|
30
|
+
* All Table 6 fields present. Immutable once created (INV-020).
|
|
31
|
+
*/
|
|
32
|
+
export interface TraceEvent {
|
|
33
|
+
readonly traceEventId: TraceEventId;
|
|
34
|
+
readonly runId: RunId;
|
|
35
|
+
readonly runSeq: number;
|
|
36
|
+
readonly spanSeq: number;
|
|
37
|
+
readonly parentEventRef?: TraceEventId;
|
|
38
|
+
readonly forkOfRunId?: RunId;
|
|
39
|
+
readonly forkFromEventRef?: TraceEventId;
|
|
40
|
+
readonly correlationId: CorrelationId;
|
|
41
|
+
readonly version: string;
|
|
42
|
+
readonly type: TraceEventType;
|
|
43
|
+
readonly tenantId: TenantId;
|
|
44
|
+
readonly timestamp: string;
|
|
45
|
+
readonly payload: TraceEventPayload;
|
|
46
|
+
/** INV-X04: Governance schema version */
|
|
47
|
+
readonly schemaVersion: string;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Input shape for TraceEmitter.emit() — fields generated by the system
|
|
51
|
+
* (traceEventId, runSeq, spanSeq, timestamp) are NOT provided by caller.
|
|
52
|
+
*/
|
|
53
|
+
export interface TraceEventInput {
|
|
54
|
+
readonly runId: RunId;
|
|
55
|
+
readonly parentEventRef?: TraceEventId;
|
|
56
|
+
readonly forkOfRunId?: RunId;
|
|
57
|
+
readonly forkFromEventRef?: TraceEventId;
|
|
58
|
+
readonly correlationId: CorrelationId;
|
|
59
|
+
readonly type: TraceEventType;
|
|
60
|
+
readonly payload: TraceEventPayload;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* BC-024: Discriminated union pattern. Each TraceEventType has a typed payload.
|
|
64
|
+
* BC-029 (v1.1): handoff.accepted includes typed acceptanceOutcome,
|
|
65
|
+
* handoff.rejected includes typed rejectionReason.
|
|
66
|
+
* BC-052 (v1.1): handoff.parent-suspended includes suspension cascade payload.
|
|
67
|
+
*/
|
|
68
|
+
export type TraceEventPayload = {
|
|
69
|
+
readonly type: 'mission.created';
|
|
70
|
+
readonly missionId: MissionId;
|
|
71
|
+
readonly contractId?: MissionContractId;
|
|
72
|
+
readonly agentId: AgentId;
|
|
73
|
+
} | {
|
|
74
|
+
readonly type: 'mission.transition';
|
|
75
|
+
readonly missionId: MissionId;
|
|
76
|
+
readonly fromState: MissionLifecycleState;
|
|
77
|
+
readonly toState: MissionLifecycleState;
|
|
78
|
+
} | {
|
|
79
|
+
readonly type: 'mission.completed';
|
|
80
|
+
readonly missionId: MissionId;
|
|
81
|
+
readonly contractSatisfied: boolean;
|
|
82
|
+
} | {
|
|
83
|
+
readonly type: 'mission.failed';
|
|
84
|
+
readonly missionId: MissionId;
|
|
85
|
+
readonly reason: string;
|
|
86
|
+
} | {
|
|
87
|
+
readonly type: 'mission.revoked';
|
|
88
|
+
readonly missionId: MissionId;
|
|
89
|
+
readonly revokedBy: string;
|
|
90
|
+
} | {
|
|
91
|
+
readonly type: 'task.created';
|
|
92
|
+
readonly taskId: TaskId;
|
|
93
|
+
readonly missionId: MissionId;
|
|
94
|
+
} | {
|
|
95
|
+
readonly type: 'task.transition';
|
|
96
|
+
readonly taskId: TaskId;
|
|
97
|
+
readonly fromState: TaskLifecycleState;
|
|
98
|
+
readonly toState: TaskLifecycleState;
|
|
99
|
+
} | {
|
|
100
|
+
readonly type: 'task.completed';
|
|
101
|
+
readonly taskId: TaskId;
|
|
102
|
+
readonly missionId: MissionId;
|
|
103
|
+
} | {
|
|
104
|
+
readonly type: 'task.skipped';
|
|
105
|
+
readonly taskId: TaskId;
|
|
106
|
+
readonly missionId: MissionId;
|
|
107
|
+
readonly reason: string;
|
|
108
|
+
} | {
|
|
109
|
+
readonly type: 'attempt.started';
|
|
110
|
+
readonly attemptId: AttemptId;
|
|
111
|
+
readonly taskId: TaskId;
|
|
112
|
+
readonly runId: RunId;
|
|
113
|
+
} | {
|
|
114
|
+
readonly type: 'attempt.succeeded';
|
|
115
|
+
readonly attemptId: AttemptId;
|
|
116
|
+
readonly taskId: TaskId;
|
|
117
|
+
} | {
|
|
118
|
+
readonly type: 'attempt.failed';
|
|
119
|
+
readonly attemptId: AttemptId;
|
|
120
|
+
readonly taskId: TaskId;
|
|
121
|
+
readonly errorCode: string;
|
|
122
|
+
} | {
|
|
123
|
+
readonly type: 'attempt.abandoned';
|
|
124
|
+
readonly attemptId: AttemptId;
|
|
125
|
+
readonly taskId: TaskId;
|
|
126
|
+
readonly suspensionRecordId: SuspensionRecordId;
|
|
127
|
+
} | {
|
|
128
|
+
readonly type: 'handoff.issued';
|
|
129
|
+
readonly handoffId: HandoffId;
|
|
130
|
+
readonly delegatorAgentId: AgentId;
|
|
131
|
+
readonly delegateAgentId: AgentId;
|
|
132
|
+
} | {
|
|
133
|
+
readonly type: 'handoff.accepted';
|
|
134
|
+
readonly handoffId: HandoffId;
|
|
135
|
+
readonly acceptanceOutcome: HandoffAcceptanceOutcome;
|
|
136
|
+
} | {
|
|
137
|
+
readonly type: 'handoff.returned';
|
|
138
|
+
readonly handoffId: HandoffId;
|
|
139
|
+
readonly returnReason: string;
|
|
140
|
+
} | {
|
|
141
|
+
readonly type: 'handoff.rejected';
|
|
142
|
+
readonly handoffId: HandoffId;
|
|
143
|
+
readonly rejectionReason: HandoffRejectionReason;
|
|
144
|
+
} | {
|
|
145
|
+
readonly type: 'handoff.parent-suspended';
|
|
146
|
+
readonly handoffId: HandoffId;
|
|
147
|
+
readonly parentMissionId: MissionId;
|
|
148
|
+
readonly childTaskId: TaskId;
|
|
149
|
+
readonly suspensionRecordId: SuspensionRecordId;
|
|
150
|
+
readonly delegateAgentId: AgentId;
|
|
151
|
+
} | {
|
|
152
|
+
readonly type: 'suspension.entered';
|
|
153
|
+
readonly suspensionRecordId: SuspensionRecordId;
|
|
154
|
+
readonly targetType: string;
|
|
155
|
+
readonly targetId: string;
|
|
156
|
+
} | {
|
|
157
|
+
readonly type: 'suspension.resolved';
|
|
158
|
+
readonly suspensionRecordId: SuspensionRecordId;
|
|
159
|
+
readonly decisionId: SupervisorDecisionId;
|
|
160
|
+
} | {
|
|
161
|
+
readonly type: 'supervision.decision';
|
|
162
|
+
readonly decisionId: SupervisorDecisionId;
|
|
163
|
+
readonly supervisorType: SupervisorType;
|
|
164
|
+
readonly outcome: DecisionOutcome;
|
|
165
|
+
} | {
|
|
166
|
+
readonly type: 'claim.asserted';
|
|
167
|
+
readonly claimId: string;
|
|
168
|
+
readonly agentId: AgentId;
|
|
169
|
+
} | {
|
|
170
|
+
readonly type: 'claim.grounded';
|
|
171
|
+
readonly claimId: string;
|
|
172
|
+
readonly evidenceCount: number;
|
|
173
|
+
} | {
|
|
174
|
+
readonly type: 'claim.challenged';
|
|
175
|
+
readonly claimId: string;
|
|
176
|
+
readonly challengerId: AgentId;
|
|
177
|
+
} | {
|
|
178
|
+
readonly type: 'claim.retracted';
|
|
179
|
+
readonly claimId: string;
|
|
180
|
+
readonly reason: string;
|
|
181
|
+
} | {
|
|
182
|
+
readonly type: 'eval.scored';
|
|
183
|
+
readonly evalCaseId: EvalCaseId;
|
|
184
|
+
readonly score: number;
|
|
185
|
+
} | {
|
|
186
|
+
readonly type: 'capability.executed';
|
|
187
|
+
readonly capabilityType: string;
|
|
188
|
+
readonly manifestId: CapabilityManifestId;
|
|
189
|
+
readonly trustTier: string;
|
|
190
|
+
} | {
|
|
191
|
+
readonly type: 'artifact.created';
|
|
192
|
+
readonly artifactId: string;
|
|
193
|
+
readonly missionId: MissionId;
|
|
194
|
+
readonly taskId: TaskId;
|
|
195
|
+
} | {
|
|
196
|
+
readonly type: 'budget.consumed';
|
|
197
|
+
readonly missionId: MissionId;
|
|
198
|
+
readonly tokensConsumed: number;
|
|
199
|
+
readonly remaining: number;
|
|
200
|
+
} | {
|
|
201
|
+
readonly type: 'memory.published';
|
|
202
|
+
readonly entryId: string;
|
|
203
|
+
readonly taskId: TaskId;
|
|
204
|
+
} | {
|
|
205
|
+
readonly type: 'memory.tombstoned';
|
|
206
|
+
readonly entryId: string;
|
|
207
|
+
readonly taskId: TaskId;
|
|
208
|
+
} | {
|
|
209
|
+
readonly type: 'memory.promoted';
|
|
210
|
+
readonly entryId: string;
|
|
211
|
+
readonly claimId: string;
|
|
212
|
+
};
|
|
213
|
+
/**
|
|
214
|
+
* BC-021: TraceEmitter — SEPARATE from EventBus (BC-020).
|
|
215
|
+
* BC-025: correlationId generated ONCE at operation level, passed to both EventBus and TraceEmitter.
|
|
216
|
+
* BC-027: Emission within SQLite transactions is transaction-coupled.
|
|
217
|
+
* BC-028: Emission outside transactions is async best-effort with retry.
|
|
218
|
+
*/
|
|
219
|
+
export interface TraceEmitter {
|
|
220
|
+
emit(conn: DatabaseConnection, ctx: OperationContext, event: TraceEventInput): Result<TraceEventId>;
|
|
221
|
+
readonly sequencer: RunSequencer;
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* BC-021, BC-029.1 (v1.1): Dual-mode sequencer.
|
|
225
|
+
*
|
|
226
|
+
* Transaction-coupled mode (default): reads MAX(runSeq) within SQLite transaction.
|
|
227
|
+
* Async mode: uses in-memory atomic counter per RunId.
|
|
228
|
+
*
|
|
229
|
+
* BC-013: runSeq is strictly monotonically increasing — no gaps, no duplicates.
|
|
230
|
+
* BC-014: In a forked run, runSeq starts at 1 (not ancestor's last).
|
|
231
|
+
*/
|
|
232
|
+
export interface RunSequencer {
|
|
233
|
+
nextRunSeq(runId: RunId): number;
|
|
234
|
+
nextSpanSeq(runId: RunId, spanIndex: number): number;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Trace event persistence operations.
|
|
238
|
+
* INV-020: Trace events are immutable — no update or delete.
|
|
239
|
+
* INV-021: (runId, runSeq) is unique.
|
|
240
|
+
*/
|
|
241
|
+
export interface TraceEventStore {
|
|
242
|
+
insert(conn: DatabaseConnection, event: TraceEvent): Result<TraceEvent>;
|
|
243
|
+
getByRun(conn: DatabaseConnection, runId: RunId): Result<readonly TraceEvent[]>;
|
|
244
|
+
getByCorrelation(conn: DatabaseConnection, correlationId: CorrelationId): Result<readonly TraceEvent[]>;
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* INV-X13 (v1.1): Every SC-G governance query response includes this context.
|
|
248
|
+
* Enables agents to assess freshness, completeness, and policy version.
|
|
249
|
+
* Source: Binding 11 (SC-G Response Context).
|
|
250
|
+
*/
|
|
251
|
+
export interface GovernanceQueryContext {
|
|
252
|
+
readonly asOfRunSeq: number;
|
|
253
|
+
readonly policyVersionHard: string;
|
|
254
|
+
readonly policyVersionSoft: string;
|
|
255
|
+
readonly queryTimestamp: string;
|
|
256
|
+
readonly queryScope: string;
|
|
257
|
+
readonly sourceSystems: readonly string[];
|
|
258
|
+
readonly completeness: 'complete' | 'partial';
|
|
259
|
+
readonly missingSources?: ReadonlyArray<{
|
|
260
|
+
readonly system: string;
|
|
261
|
+
readonly reason: string;
|
|
262
|
+
}>;
|
|
263
|
+
}
|
|
264
|
+
//# sourceMappingURL=trace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../../src/kernel/interfaces/trace.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trace Event Grammar + TraceEmitter + RunSequencer.
|
|
3
|
+
* Truth Model ref: Deliverable 3 — BC-020 through BC-028
|
|
4
|
+
* Truth Model v1.1 ref: Revised BC-023 (32 events), New BC-029 (handoff outcomes in trace),
|
|
5
|
+
* New BC-029.1 (RunSequencer dual-mode), New INV-X13 (GovernanceQueryContext)
|
|
6
|
+
*
|
|
7
|
+
* Phase: 0A (Foundation)
|
|
8
|
+
* Build Order: 3 (depends on Deliverable 2)
|
|
9
|
+
*
|
|
10
|
+
* Constitutional Sources: Table 6, Principle 7, Principle 15, Amendment A4
|
|
11
|
+
* Binding Doctrine: Binding 8 (32 events), Binding 12 (CorrelationId), Binding 14 (trace failure)
|
|
12
|
+
*
|
|
13
|
+
* BC-020: TraceEmitter is SEPARATE from EventBus. Does NOT extend EventBus.
|
|
14
|
+
* INV-023: 32 constitutional trace events and 39 domain events are distinct systems.
|
|
15
|
+
*/
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=trace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace.js","sourceRoot":"","sources":["../../../src/kernel/interfaces/trace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Table namespace enforcement implementation.
|
|
3
|
+
* S ref: C-09
|
|
4
|
+
*
|
|
5
|
+
* Phase: 1 (Kernel) -- Build Order 2
|
|
6
|
+
* Must exist before any table is created.
|
|
7
|
+
*
|
|
8
|
+
* C-09: Every table must have a namespace prefix:
|
|
9
|
+
* core_, memory_, agent_, obs_, hitl_, meter_
|
|
10
|
+
*
|
|
11
|
+
* Validates migration SQL to ensure all CREATE TABLE and ALTER TABLE
|
|
12
|
+
* statements use valid namespace prefixes.
|
|
13
|
+
*/
|
|
14
|
+
import type { NamespaceEnforcer } from '../interfaces/namespace.js';
|
|
15
|
+
/**
|
|
16
|
+
* Create a NamespaceEnforcer implementation.
|
|
17
|
+
* S ref: C-09 (namespace enforcement)
|
|
18
|
+
*/
|
|
19
|
+
export declare function createNamespaceEnforcer(): NamespaceEnforcer;
|
|
20
|
+
//# sourceMappingURL=namespace_enforcer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace_enforcer.d.ts","sourceRoot":"","sources":["../../../src/kernel/namespace/namespace_enforcer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAkDpE;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,iBAAiB,CAiC3D"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Table namespace enforcement implementation.
|
|
3
|
+
* S ref: C-09
|
|
4
|
+
*
|
|
5
|
+
* Phase: 1 (Kernel) -- Build Order 2
|
|
6
|
+
* Must exist before any table is created.
|
|
7
|
+
*
|
|
8
|
+
* C-09: Every table must have a namespace prefix:
|
|
9
|
+
* core_, memory_, agent_, obs_, hitl_, meter_
|
|
10
|
+
*
|
|
11
|
+
* Validates migration SQL to ensure all CREATE TABLE and ALTER TABLE
|
|
12
|
+
* statements use valid namespace prefixes.
|
|
13
|
+
*/
|
|
14
|
+
/** Valid namespace prefixes per C-09 */
|
|
15
|
+
const VALID_PREFIXES = [
|
|
16
|
+
'core_', 'memory_', 'agent_', 'obs_', 'hitl_', 'meter_',
|
|
17
|
+
];
|
|
18
|
+
/**
|
|
19
|
+
* Regex to extract table names from CREATE TABLE and ALTER TABLE statements.
|
|
20
|
+
* Handles: CREATE TABLE name, CREATE TABLE IF NOT EXISTS name,
|
|
21
|
+
* ALTER TABLE name, CREATE INDEX ... ON name
|
|
22
|
+
* S ref: C-09 (namespace enforcement on all table operations)
|
|
23
|
+
*/
|
|
24
|
+
const TABLE_NAME_PATTERNS = [
|
|
25
|
+
/CREATE\s+TABLE\s+(?:IF\s+NOT\s+EXISTS\s+)?(?:"([^"]+)"|(\w+))/gi,
|
|
26
|
+
/ALTER\s+TABLE\s+(?:"([^"]+)"|(\w+))/gi,
|
|
27
|
+
/CREATE\s+(?:UNIQUE\s+)?INDEX\s+\S+\s+ON\s+(?:"([^"]+)"|(\w+))/gi,
|
|
28
|
+
];
|
|
29
|
+
/**
|
|
30
|
+
* Extract all table names referenced in SQL statements.
|
|
31
|
+
* S ref: C-09 (identify tables for validation)
|
|
32
|
+
*/
|
|
33
|
+
function extractTableNames(sql) {
|
|
34
|
+
const names = [];
|
|
35
|
+
for (const pattern of TABLE_NAME_PATTERNS) {
|
|
36
|
+
// Reset regex state
|
|
37
|
+
pattern.lastIndex = 0;
|
|
38
|
+
let match;
|
|
39
|
+
while ((match = pattern.exec(sql)) !== null) {
|
|
40
|
+
// Capture group 1 = quoted name, capture group 2 = unquoted name
|
|
41
|
+
const name = match[1] ?? match[2];
|
|
42
|
+
if (name) {
|
|
43
|
+
names.push(name);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return names;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Check if a table name starts with a valid namespace prefix.
|
|
51
|
+
* S ref: C-09 (valid prefixes)
|
|
52
|
+
*/
|
|
53
|
+
function hasValidPrefix(tableName) {
|
|
54
|
+
return VALID_PREFIXES.some(prefix => tableName.startsWith(prefix));
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Create a NamespaceEnforcer implementation.
|
|
58
|
+
* S ref: C-09 (namespace enforcement)
|
|
59
|
+
*/
|
|
60
|
+
export function createNamespaceEnforcer() {
|
|
61
|
+
return {
|
|
62
|
+
/**
|
|
63
|
+
* Validate that migration SQL only creates/alters tables with valid prefixes.
|
|
64
|
+
* S ref: C-09 (namespace validation on migration)
|
|
65
|
+
*/
|
|
66
|
+
validateMigration(sql) {
|
|
67
|
+
const tableNames = extractTableNames(sql);
|
|
68
|
+
for (const name of tableNames) {
|
|
69
|
+
if (!hasValidPrefix(name)) {
|
|
70
|
+
return {
|
|
71
|
+
ok: false,
|
|
72
|
+
error: {
|
|
73
|
+
code: 'NAMESPACE_VIOLATION',
|
|
74
|
+
message: `Table "${name}" does not have a valid namespace prefix. Valid prefixes: ${VALID_PREFIXES.join(', ')}`,
|
|
75
|
+
spec: 'C-09',
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return { ok: true, value: undefined };
|
|
81
|
+
},
|
|
82
|
+
/**
|
|
83
|
+
* Check if a table name has a valid namespace prefix.
|
|
84
|
+
* S ref: C-09 (valid prefixes: core_, memory_, agent_, obs_, hitl_, meter_)
|
|
85
|
+
*/
|
|
86
|
+
isValidTableName(tableName) {
|
|
87
|
+
return hasValidPrefix(tableName);
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=namespace_enforcer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespace_enforcer.js","sourceRoot":"","sources":["../../../src/kernel/namespace/namespace_enforcer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,wCAAwC;AACxC,MAAM,cAAc,GAA+B;IACjD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;CAC/C,CAAC;AAEX;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG;IAC1B,iEAAiE;IACjE,uCAAuC;IACvC,iEAAiE;CAClE,CAAC;AAEF;;;GAGG;AACH,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE,CAAC;QAC1C,oBAAoB;QACpB,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QACtB,IAAI,KAA6B,CAAC;QAClC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC5C,iEAAiE;YACjE,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,IAAI,EAAE,CAAC;gBACT,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,SAAiB;IACvC,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;AACrE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO;QACL;;;WAGG;QACH,iBAAiB,CAAC,GAAW;YAC3B,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAE1C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;gBAC9B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1B,OAAO;wBACL,EAAE,EAAE,KAAK;wBACT,KAAK,EAAE;4BACL,IAAI,EAAE,qBAAqB;4BAC3B,OAAO,EAAE,UAAU,IAAI,6DAA6D,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;4BAC/G,IAAI,EAAE,MAAM;yBACb;qBACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACxC,CAAC;QAED;;;WAGG;QACH,gBAAgB,CAAC,SAAiB;YAChC,OAAO,cAAc,CAAC,SAAS,CAAC,CAAC;QACnC,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rate limiter implementation.
|
|
3
|
+
* S ref: §36
|
|
4
|
+
*
|
|
5
|
+
* Phase: 1 (Kernel) -- Build Order 6
|
|
6
|
+
* Token-bucket rate limiting per tenant/agent.
|
|
7
|
+
*
|
|
8
|
+
* §36: Rate limiting for API calls, event emission, and propose rejections.
|
|
9
|
+
* Per-agent rate limits with configurable buckets.
|
|
10
|
+
*
|
|
11
|
+
* Defaults (§36):
|
|
12
|
+
* - api_calls: 100/minute per agent
|
|
13
|
+
* - emit_event: 10/minute per agent
|
|
14
|
+
* - propose_rejections: max 10 per checkpoint period
|
|
15
|
+
*/
|
|
16
|
+
import type { RateLimiter } from '../interfaces/index.js';
|
|
17
|
+
import type { TimeProvider } from '../interfaces/time.js';
|
|
18
|
+
/**
|
|
19
|
+
* Create a RateLimiter implementation.
|
|
20
|
+
* S ref: §36 (token-bucket rate limiting)
|
|
21
|
+
*/
|
|
22
|
+
export declare function createRateLimiter(time?: TimeProvider): RateLimiter;
|
|
23
|
+
//# sourceMappingURL=rate_limiter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rate_limiter.d.ts","sourceRoot":"","sources":["../../../src/kernel/rate_limiter/rate_limiter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAEV,WAAW,EAEZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAY1D;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,WAAW,CAiJlE"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rate limiter implementation.
|
|
3
|
+
* S ref: §36
|
|
4
|
+
*
|
|
5
|
+
* Phase: 1 (Kernel) -- Build Order 6
|
|
6
|
+
* Token-bucket rate limiting per tenant/agent.
|
|
7
|
+
*
|
|
8
|
+
* §36: Rate limiting for API calls, event emission, and propose rejections.
|
|
9
|
+
* Per-agent rate limits with configurable buckets.
|
|
10
|
+
*
|
|
11
|
+
* Defaults (§36):
|
|
12
|
+
* - api_calls: 100/minute per agent
|
|
13
|
+
* - emit_event: 10/minute per agent
|
|
14
|
+
* - propose_rejections: max 10 per checkpoint period
|
|
15
|
+
*/
|
|
16
|
+
import { randomUUID } from 'node:crypto';
|
|
17
|
+
/**
|
|
18
|
+
* Default rate limit configurations per §36.
|
|
19
|
+
* S ref: §36 (rate limit defaults)
|
|
20
|
+
*/
|
|
21
|
+
const DEFAULT_LIMITS = {
|
|
22
|
+
api_calls: { maxTokens: 100, refillRate: 100 / 60 }, // 100/min
|
|
23
|
+
emit_event: { maxTokens: 10, refillRate: 10 / 60 }, // 10/min
|
|
24
|
+
propose_rejections: { maxTokens: 10, refillRate: 10 / 60 }, // 10/period
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Create a RateLimiter implementation.
|
|
28
|
+
* S ref: §36 (token-bucket rate limiting)
|
|
29
|
+
*/
|
|
30
|
+
export function createRateLimiter(time) {
|
|
31
|
+
const clock = time ?? { nowISO: () => new Date().toISOString(), nowMs: () => Date.now() };
|
|
32
|
+
return {
|
|
33
|
+
/**
|
|
34
|
+
* Check if operation is allowed under rate limit. Consumes a token if allowed.
|
|
35
|
+
* Uses token-bucket algorithm: tokens refill continuously at refillRate tokens/second.
|
|
36
|
+
* S ref: §36 (token-bucket rate limiting)
|
|
37
|
+
*/
|
|
38
|
+
checkAndConsume(conn, ctx, bucketType) {
|
|
39
|
+
try {
|
|
40
|
+
const tenantId = ctx.tenantId;
|
|
41
|
+
const agentId = ctx.agentId;
|
|
42
|
+
// Get or create bucket
|
|
43
|
+
let bucket = conn.get(`SELECT id, current_tokens, max_tokens, refill_rate, last_refill_at
|
|
44
|
+
FROM meter_rate_limits
|
|
45
|
+
WHERE bucket_type = ?
|
|
46
|
+
AND (tenant_id = ? OR (tenant_id IS NULL AND ? IS NULL))
|
|
47
|
+
AND (agent_id = ? OR (agent_id IS NULL AND ? IS NULL))`, [bucketType, tenantId, tenantId, agentId, agentId]);
|
|
48
|
+
if (!bucket) {
|
|
49
|
+
// Create bucket with defaults
|
|
50
|
+
const defaults = DEFAULT_LIMITS[bucketType];
|
|
51
|
+
const id = randomUUID();
|
|
52
|
+
conn.run(`INSERT INTO meter_rate_limits (id, tenant_id, agent_id, bucket_type, max_tokens, refill_rate, current_tokens, last_refill_at)
|
|
53
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, strftime('%Y-%m-%dT%H:%M:%fZ','now'))`, [id, tenantId, agentId, bucketType, defaults.maxTokens, defaults.refillRate, defaults.maxTokens]);
|
|
54
|
+
bucket = {
|
|
55
|
+
id,
|
|
56
|
+
current_tokens: defaults.maxTokens,
|
|
57
|
+
max_tokens: defaults.maxTokens,
|
|
58
|
+
refill_rate: defaults.refillRate,
|
|
59
|
+
last_refill_at: clock.nowISO(),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
// Calculate token refill since last check
|
|
63
|
+
const now = clock.nowMs();
|
|
64
|
+
const lastRefill = new Date(bucket.last_refill_at).getTime();
|
|
65
|
+
const elapsedSeconds = (now - lastRefill) / 1000;
|
|
66
|
+
const refilled = elapsedSeconds * bucket.refill_rate;
|
|
67
|
+
const newTokens = Math.min(bucket.max_tokens, bucket.current_tokens + refilled);
|
|
68
|
+
if (newTokens < 1) {
|
|
69
|
+
// Rate limited -- not enough tokens
|
|
70
|
+
// Update refill time even when denied to avoid stale timestamp
|
|
71
|
+
conn.run(`UPDATE meter_rate_limits SET current_tokens = ?, last_refill_at = strftime('%Y-%m-%dT%H:%M:%fZ','now')
|
|
72
|
+
WHERE id = ?`, [newTokens, bucket.id]);
|
|
73
|
+
return { ok: true, value: false };
|
|
74
|
+
}
|
|
75
|
+
// Consume one token
|
|
76
|
+
conn.run(`UPDATE meter_rate_limits SET current_tokens = ?, last_refill_at = strftime('%Y-%m-%dT%H:%M:%fZ','now')
|
|
77
|
+
WHERE id = ?`, [newTokens - 1, bucket.id]);
|
|
78
|
+
return { ok: true, value: true };
|
|
79
|
+
}
|
|
80
|
+
catch (err) {
|
|
81
|
+
return {
|
|
82
|
+
ok: false,
|
|
83
|
+
error: {
|
|
84
|
+
code: 'RATE_LIMIT_CHECK_FAILED',
|
|
85
|
+
message: err instanceof Error ? err.message : String(err),
|
|
86
|
+
spec: '§36',
|
|
87
|
+
},
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
/**
|
|
92
|
+
* Get current rate limit status for an agent.
|
|
93
|
+
* S ref: §36 (rate limit status inspection)
|
|
94
|
+
*/
|
|
95
|
+
getStatus(conn, ctx, bucketType) {
|
|
96
|
+
try {
|
|
97
|
+
const tenantId = ctx.tenantId;
|
|
98
|
+
const agentId = ctx.agentId;
|
|
99
|
+
const bucket = conn.get(`SELECT current_tokens, max_tokens, refill_rate, last_refill_at
|
|
100
|
+
FROM meter_rate_limits
|
|
101
|
+
WHERE bucket_type = ?
|
|
102
|
+
AND (tenant_id = ? OR (tenant_id IS NULL AND ? IS NULL))
|
|
103
|
+
AND (agent_id = ? OR (agent_id IS NULL AND ? IS NULL))`, [bucketType, tenantId, tenantId, agentId, agentId]);
|
|
104
|
+
if (!bucket) {
|
|
105
|
+
// No bucket exists -- return defaults (fully available)
|
|
106
|
+
const defaults = DEFAULT_LIMITS[bucketType];
|
|
107
|
+
return {
|
|
108
|
+
ok: true,
|
|
109
|
+
value: {
|
|
110
|
+
currentTokens: defaults.maxTokens,
|
|
111
|
+
maxTokens: defaults.maxTokens,
|
|
112
|
+
refillRate: defaults.refillRate,
|
|
113
|
+
lastRefillAt: clock.nowISO(),
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
// Calculate current tokens with refill
|
|
118
|
+
const now = clock.nowMs();
|
|
119
|
+
const lastRefill = new Date(bucket.last_refill_at).getTime();
|
|
120
|
+
const elapsedSeconds = (now - lastRefill) / 1000;
|
|
121
|
+
const refilled = elapsedSeconds * bucket.refill_rate;
|
|
122
|
+
const currentTokens = Math.min(bucket.max_tokens, bucket.current_tokens + refilled);
|
|
123
|
+
return {
|
|
124
|
+
ok: true,
|
|
125
|
+
value: {
|
|
126
|
+
currentTokens,
|
|
127
|
+
maxTokens: bucket.max_tokens,
|
|
128
|
+
refillRate: bucket.refill_rate,
|
|
129
|
+
lastRefillAt: bucket.last_refill_at,
|
|
130
|
+
},
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
catch (err) {
|
|
134
|
+
return {
|
|
135
|
+
ok: false,
|
|
136
|
+
error: {
|
|
137
|
+
code: 'RATE_LIMIT_STATUS_FAILED',
|
|
138
|
+
message: err instanceof Error ? err.message : String(err),
|
|
139
|
+
spec: '§36',
|
|
140
|
+
},
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=rate_limiter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rate_limiter.js","sourceRoot":"","sources":["../../../src/kernel/rate_limiter/rate_limiter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RBAC engine implementation.
|
|
3
|
+
* S ref: §34, I-13, §3.7
|
|
4
|
+
*
|
|
5
|
+
* Phase: 1 (Kernel) -- Build Order 6
|
|
6
|
+
* Required by all API-facing modules.
|
|
7
|
+
*
|
|
8
|
+
* §34: RBAC with five default roles (admin, developer, operator, viewer, auditor).
|
|
9
|
+
* I-13: Authorization completeness -- every operation enforces RBAC.
|
|
10
|
+
* §3.7: Single-user default mode where RBAC is dormant.
|
|
11
|
+
*/
|
|
12
|
+
import type { RbacEngine, DatabaseConnection } from '../interfaces/index.js';
|
|
13
|
+
/**
|
|
14
|
+
* Create an RbacEngine implementation.
|
|
15
|
+
* CF-006: Accepts optional conn to restore RBAC active state from DB on restart.
|
|
16
|
+
* If custom roles exist (is_default=0), RBAC activates immediately.
|
|
17
|
+
* S ref: §34 (RBAC), I-13 (authorization completeness), §3.7 (dormant mode)
|
|
18
|
+
*/
|
|
19
|
+
export declare function createRbacEngine(conn?: DatabaseConnection): RbacEngine;
|
|
20
|
+
//# sourceMappingURL=rbac_engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rbac_engine.d.ts","sourceRoot":"","sources":["../../../src/kernel/rbac/rbac_engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAEV,UAAU,EAAE,kBAAkB,EAC/B,MAAM,wBAAwB,CAAC;AAqDhC;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,CAAC,EAAE,kBAAkB,GAAG,UAAU,CAiOtE"}
|