@llm-dev-ops/agentics-cli 1.4.32 → 1.4.34
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/dist/agents/repo-agent-runner.d.ts +10 -0
- package/dist/agents/repo-agent-runner.d.ts.map +1 -1
- package/dist/agents/repo-agent-runner.js +264 -11
- package/dist/agents/repo-agent-runner.js.map +1 -1
- package/dist/bundled-agents/analytics-hub-agents/package-lock.json +154 -174
- package/dist/bundled-agents/auto-optimizer-agents/package-lock.json +9226 -0
- package/dist/bundled-agents/benchmark-exchange-agents/package-lock.json +16 -0
- package/dist/bundled-agents/copilot-agents/functions/package-lock.json +5473 -0
- package/dist/bundled-agents/copilot-agents/functions/src/claude.ts +71 -0
- package/dist/bundled-agents/copilot-agents/package-lock.json +11825 -0
- package/dist/bundled-agents/incident-manager-agents/functions/src/claude.ts +71 -0
- package/dist/bundled-agents/incident-manager-agents/package-lock.json +48 -3
- package/dist/bundled-agents/inference-gateway-agents/package-lock.json +0 -3
- package/dist/bundled-agents/latency-lens-agents/package-lock.json +11825 -0
- package/dist/bundled-agents/memory-graph-agents/package-lock.json +1 -3
- package/dist/bundled-agents/observatory-agents/package-lock.json +1710 -0
- package/dist/bundled-agents/orchestrator-agents/package-lock.json +13254 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/agent.d.ts +144 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/agent.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/agent.js +730 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/agent.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/handler.d.ts +57 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/handler.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/handler.js +286 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/handler.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/index.d.ts +5 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/index.js +21 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/approval-routing/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/agent.d.ts +106 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/agent.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/agent.js +552 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/agent.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/handler.d.ts +51 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/handler.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/handler.js +209 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/handler.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/index.d.ts +8 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/index.js +20 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/constraint-solver/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/approval-routing.d.ts +246 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/approval-routing.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/approval-routing.js +15 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/approval-routing.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/constraint-solver.d.ts +131 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/constraint-solver.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/constraint-solver.js +15 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/constraint-solver.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/decision-event.d.ts +207 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/decision-event.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/decision-event.js +14 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/decision-event.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/index.d.ts +11 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/index.js +27 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/contracts/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/index.d.ts +13 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/index.js +52 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/agent.d.ts +97 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/agent.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/agent.js +521 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/agent.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/handler.d.ts +52 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/handler.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/handler.js +216 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/handler.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/index.d.ts +8 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/index.js +24 -0
- package/dist/bundled-agents/policy-engine-agents/dist/agents/policy-enforcement/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/auth.d.ts +39 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/auth.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/auth.js +194 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/auth.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/error-handler.d.ts +22 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/error-handler.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/error-handler.js +124 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/error-handler.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/rate-limit.d.ts +40 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/rate-limit.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/rate-limit.js +154 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/middleware/rate-limit.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/agents.d.ts +3 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/agents.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/agents.js +111 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/agents.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/approval-routing.d.ts +3 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/approval-routing.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/approval-routing.js +135 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/approval-routing.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/constraint-solver.d.ts +3 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/constraint-solver.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/constraint-solver.js +51 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/constraint-solver.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/evaluations.d.ts +3 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/evaluations.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/evaluations.js +311 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/evaluations.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/internal-evaluate.d.ts +3 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/internal-evaluate.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/internal-evaluate.js +133 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/internal-evaluate.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/policies.d.ts +3 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/policies.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/policies.js +602 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/routes/policies.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/server.d.ts +8 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/server.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/server.js +195 -0
- package/dist/bundled-agents/policy-engine-agents/dist/api/server.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/cache-manager.d.ts +77 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/cache-manager.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/cache-manager.js +254 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/cache-manager.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/l1/memory-cache.d.ts +68 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/l1/memory-cache.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/l1/memory-cache.js +170 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/l1/memory-cache.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/l2/redis-cache.d.ts +71 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/l2/redis-cache.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/l2/redis-cache.js +260 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cache/l2/redis-cache.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cli/index.d.ts +3 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cli/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cli/index.js +794 -0
- package/dist/bundled-agents/policy-engine-agents/dist/cli/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/agent.d.ts +46 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/agent.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/agent.js +278 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/agent.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/approval-routing.d.ts +69 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/approval-routing.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/approval-routing.js +425 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/approval-routing.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/index.d.ts +21 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/index.js +50 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/policy.d.ts +65 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/policy.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/policy.js +330 -0
- package/dist/bundled-agents/policy-engine-agents/dist/commands/policy.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/engine/policy-engine.d.ts +45 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/engine/policy-engine.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/engine/policy-engine.js +210 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/engine/policy-engine.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/evaluator/condition-evaluator.d.ts +64 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/evaluator/condition-evaluator.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/evaluator/condition-evaluator.js +190 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/evaluator/condition-evaluator.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/index.d.ts +13 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/index.js +29 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/index.d.ts +17 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/index.js +65 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/json-parser.d.ts +9 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/json-parser.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/json-parser.js +65 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/json-parser.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/yaml-parser.d.ts +6 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/yaml-parser.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/yaml-parser.js +69 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/parser/yaml-parser.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/cost-calculator.d.ts +52 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/cost-calculator.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/cost-calculator.js +169 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/cost-calculator.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/index.d.ts +7 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/index.js +23 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/pii-detector.d.ts +43 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/pii-detector.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/pii-detector.js +137 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/pii-detector.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/token-counter.d.ts +32 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/token-counter.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/token-counter.js +90 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/primitives/token-counter.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/validator/schema-validator.d.ts +10 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/validator/schema-validator.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/validator/schema-validator.js +106 -0
- package/dist/bundled-agents/policy-engine-agents/dist/core/validator/schema-validator.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/client.d.ts +32 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/client.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/client.js +108 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/client.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/migrate.d.ts +45 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/migrate.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/migrate.js +407 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/migrate.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/api-key-repository.d.ts +85 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/api-key-repository.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/api-key-repository.js +248 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/api-key-repository.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/evaluation-repository.d.ts +65 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/evaluation-repository.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/evaluation-repository.js +192 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/evaluation-repository.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/policy-repository.d.ts +32 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/policy-repository.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/policy-repository.js +163 -0
- package/dist/bundled-agents/policy-engine-agents/dist/db/models/policy-repository.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/context.d.ts +28 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/context.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/context.js +46 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/context.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/errors.d.ts +21 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/errors.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/errors.js +32 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/errors.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/executor.d.ts +45 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/executor.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/executor.js +96 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/executor.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/index.d.ts +21 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/index.js +40 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/middleware.d.ts +22 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/middleware.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/middleware.js +49 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/middleware.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/spans.d.ts +34 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/spans.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/spans.js +82 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/spans.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/types.d.ts +86 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/types.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/types.js +10 -0
- package/dist/bundled-agents/policy-engine-agents/dist/execution/types.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/functions/handler.d.ts +2 -0
- package/dist/bundled-agents/policy-engine-agents/dist/functions/handler.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/functions/handler.js +207 -0
- package/dist/bundled-agents/policy-engine-agents/dist/functions/handler.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/contracts/governance-signals.d.ts +234 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/contracts/governance-signals.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/contracts/governance-signals.js +40 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/contracts/governance-signals.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/contracts/index.d.ts +5 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/contracts/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/contracts/index.js +21 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/contracts/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/emitters/governance-signal-emitter.d.ts +137 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/emitters/governance-signal-emitter.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/emitters/governance-signal-emitter.js +342 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/emitters/governance-signal-emitter.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/emitters/index.d.ts +5 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/emitters/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/emitters/index.js +10 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/emitters/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/index.d.ts +49 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/index.js +91 -0
- package/dist/bundled-agents/policy-engine-agents/dist/governance/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/grpc/server.d.ts +8 -0
- package/dist/bundled-agents/policy-engine-agents/dist/grpc/server.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/grpc/server.js +137 -0
- package/dist/bundled-agents/policy-engine-agents/dist/grpc/server.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/grpc/services/policy-service.d.ts +47 -0
- package/dist/bundled-agents/policy-engine-agents/dist/grpc/services/policy-service.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/grpc/services/policy-service.js +353 -0
- package/dist/bundled-agents/policy-engine-agents/dist/grpc/services/policy-service.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/index.d.ts +56 -0
- package/dist/bundled-agents/policy-engine-agents/dist/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/index.js +130 -0
- package/dist/bundled-agents/policy-engine-agents/dist/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/config-manager/client.d.ts +115 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/config-manager/client.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/config-manager/client.js +256 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/config-manager/client.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/config-manager/index.d.ts +6 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/config-manager/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/config-manager/index.js +22 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/config-manager/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/costops/client.d.ts +69 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/costops/client.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/costops/client.js +179 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/costops/client.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/edge/client.d.ts +57 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/edge/client.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/edge/client.js +191 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/edge/client.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/governance/client.d.ts +63 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/governance/client.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/governance/client.js +163 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/governance/client.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/observatory/client.d.ts +174 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/observatory/client.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/observatory/client.js +243 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/observatory/client.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/observatory/index.d.ts +6 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/observatory/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/observatory/index.js +22 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/observatory/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/ruvector-service/client.d.ts +164 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/ruvector-service/client.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/ruvector-service/client.js +293 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/ruvector-service/client.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/ruvector-service/index.d.ts +7 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/ruvector-service/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/ruvector-service/index.js +23 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/ruvector-service/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/schema-registry/client.d.ts +94 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/schema-registry/client.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/schema-registry/client.js +174 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/schema-registry/client.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/schema-registry/index.d.ts +6 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/schema-registry/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/schema-registry/index.js +22 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/schema-registry/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/shield/client.d.ts +40 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/shield/client.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/shield/client.js +125 -0
- package/dist/bundled-agents/policy-engine-agents/dist/integrations/shield/client.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/observability/metrics.d.ts +66 -0
- package/dist/bundled-agents/policy-engine-agents/dist/observability/metrics.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/observability/metrics.js +197 -0
- package/dist/bundled-agents/policy-engine-agents/dist/observability/metrics.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/observability/tracing.d.ts +52 -0
- package/dist/bundled-agents/policy-engine-agents/dist/observability/tracing.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/observability/tracing.js +219 -0
- package/dist/bundled-agents/policy-engine-agents/dist/observability/tracing.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/agentics-identity.d.ts +69 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/agentics-identity.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/agentics-identity.js +280 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/agentics-identity.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/audit-trail.d.ts +82 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/audit-trail.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/audit-trail.js +234 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/audit-trail.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/index.d.ts +18 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/index.js +71 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/metrics.d.ts +96 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/metrics.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/metrics.js +189 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/metrics.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/policy-governance.d.ts +69 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/policy-governance.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/policy-governance.js +327 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/policy-governance.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/rate-limiter.d.ts +40 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/rate-limiter.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/rate-limiter.js +147 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/rate-limiter.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/versioned-policy-repository.d.ts +70 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/versioned-policy-repository.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/versioned-policy-repository.js +336 -0
- package/dist/bundled-agents/policy-engine-agents/dist/security/versioned-policy-repository.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/builder.d.ts +80 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/builder.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/builder.js +756 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/builder.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/index.d.ts +7 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/index.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/index.js +23 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/index.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/types.d.ts +162 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/types.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/types.js +7 -0
- package/dist/bundled-agents/policy-engine-agents/dist/synthesis/types.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/test/setup.d.ts +15 -0
- package/dist/bundled-agents/policy-engine-agents/dist/test/setup.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/test/setup.js +138 -0
- package/dist/bundled-agents/policy-engine-agents/dist/test/setup.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/types/config.d.ts +69 -0
- package/dist/bundled-agents/policy-engine-agents/dist/types/config.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/types/config.js +6 -0
- package/dist/bundled-agents/policy-engine-agents/dist/types/config.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/types/policy.d.ts +152 -0
- package/dist/bundled-agents/policy-engine-agents/dist/types/policy.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/types/policy.js +38 -0
- package/dist/bundled-agents/policy-engine-agents/dist/types/policy.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/config.d.ts +4 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/config.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/config.js +71 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/config.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/errors.d.ts +37 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/errors.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/errors.js +84 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/errors.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/logger.d.ts +8 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/logger.d.ts.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/logger.js +36 -0
- package/dist/bundled-agents/policy-engine-agents/dist/utils/logger.js.map +1 -0
- package/dist/bundled-agents/policy-engine-agents/package-lock.json +15388 -0
- package/dist/bundled-agents/registry-agents/functions/src/claude.ts +71 -0
- package/dist/bundled-agents/schema-registry-agents/package-lock.json +3 -0
- package/dist/bundled-agents/sentinel-agents/package-lock.json +2 -438
- package/dist/bundled-agents/simulator-agents/package-lock.json +0 -428
- package/dist/bundled-agents/test-bench-agents/package-lock.json +0 -3
- package/package.json +1 -1
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createApp = createApp;
|
|
7
|
+
exports.startAPIServer = startAPIServer;
|
|
8
|
+
/**
|
|
9
|
+
* Express REST API Server
|
|
10
|
+
* Production-ready API server with middleware and routes
|
|
11
|
+
*/
|
|
12
|
+
const express_1 = __importDefault(require("express"));
|
|
13
|
+
const body_parser_1 = __importDefault(require("body-parser"));
|
|
14
|
+
const cors_1 = __importDefault(require("cors"));
|
|
15
|
+
const helmet_1 = __importDefault(require("helmet"));
|
|
16
|
+
const compression_1 = __importDefault(require("compression"));
|
|
17
|
+
const config_1 = require("@utils/config");
|
|
18
|
+
const logger_1 = __importDefault(require("@utils/logger"));
|
|
19
|
+
const client_1 = require("@db/client");
|
|
20
|
+
const cache_manager_1 = require("@cache/cache-manager");
|
|
21
|
+
const error_handler_1 = require("./middleware/error-handler");
|
|
22
|
+
const policies_1 = __importDefault(require("./routes/policies"));
|
|
23
|
+
const evaluations_1 = __importDefault(require("./routes/evaluations"));
|
|
24
|
+
const agents_1 = __importDefault(require("./routes/agents"));
|
|
25
|
+
const approval_routing_1 = __importDefault(require("./routes/approval-routing"));
|
|
26
|
+
const constraint_solver_1 = __importDefault(require("./routes/constraint-solver"));
|
|
27
|
+
const internal_evaluate_1 = __importDefault(require("./routes/internal-evaluate"));
|
|
28
|
+
function createApp() {
|
|
29
|
+
const app = (0, express_1.default)();
|
|
30
|
+
app.use((0, helmet_1.default)());
|
|
31
|
+
app.use((0, cors_1.default)());
|
|
32
|
+
app.use((0, compression_1.default)());
|
|
33
|
+
app.use(body_parser_1.default.json({ limit: '10mb' }));
|
|
34
|
+
app.use(body_parser_1.default.urlencoded({ extended: true, limit: '10mb' }));
|
|
35
|
+
app.use((0, error_handler_1.timeoutHandler)(30000));
|
|
36
|
+
app.use((req, res, next) => {
|
|
37
|
+
const start = Date.now();
|
|
38
|
+
res.on('finish', () => {
|
|
39
|
+
const duration = Date.now() - start;
|
|
40
|
+
logger_1.default.info({
|
|
41
|
+
method: req.method,
|
|
42
|
+
path: req.path,
|
|
43
|
+
status: res.statusCode,
|
|
44
|
+
duration,
|
|
45
|
+
ip: req.ip,
|
|
46
|
+
}, 'HTTP request');
|
|
47
|
+
});
|
|
48
|
+
next();
|
|
49
|
+
});
|
|
50
|
+
app.get('/health', async (_req, res) => {
|
|
51
|
+
try {
|
|
52
|
+
const dbHealthy = await client_1.db.ping();
|
|
53
|
+
const cacheHealth = await cache_manager_1.cacheManager.healthCheck();
|
|
54
|
+
const status = !dbHealthy ? 'unhealthy' : !cacheHealth.healthy ? 'degraded' : 'healthy';
|
|
55
|
+
res.status(dbHealthy ? 200 : 503).json({
|
|
56
|
+
status,
|
|
57
|
+
timestamp: new Date().toISOString(),
|
|
58
|
+
uptime: process.uptime(),
|
|
59
|
+
database: dbHealthy ? 'connected' : 'disconnected',
|
|
60
|
+
cache: cacheHealth.healthy ? 'connected' : 'disconnected',
|
|
61
|
+
memory: {
|
|
62
|
+
used: Math.round(process.memoryUsage().heapUsed / 1024 / 1024),
|
|
63
|
+
total: Math.round(process.memoryUsage().heapTotal / 1024 / 1024),
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
res.status(503).json({
|
|
69
|
+
status: 'unhealthy',
|
|
70
|
+
error: error instanceof Error ? error.message : String(error),
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
app.get('/ready', async (_req, res) => {
|
|
75
|
+
try {
|
|
76
|
+
const dbHealthy = await client_1.db.ping();
|
|
77
|
+
if (dbHealthy) {
|
|
78
|
+
res.status(200).json({ status: 'ready' });
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
res.status(503).json({ status: 'not ready', reason: 'database not connected' });
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
res.status(503).json({
|
|
86
|
+
status: 'not ready',
|
|
87
|
+
error: error instanceof Error ? error.message : String(error),
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
app.get('/', (_req, res) => {
|
|
92
|
+
res.json({
|
|
93
|
+
name: 'LLM Policy Engine API',
|
|
94
|
+
version: '1.0.0',
|
|
95
|
+
status: 'running',
|
|
96
|
+
endpoints: {
|
|
97
|
+
health: '/health',
|
|
98
|
+
ready: '/ready',
|
|
99
|
+
policies: '/api/policies',
|
|
100
|
+
evaluate: '/api/evaluate',
|
|
101
|
+
agent: {
|
|
102
|
+
evaluate: '/api/agent/evaluate',
|
|
103
|
+
resolve: '/api/agent/resolve',
|
|
104
|
+
route: '/api/agent/route',
|
|
105
|
+
info: '/api/agent/info',
|
|
106
|
+
health: '/api/agent/health',
|
|
107
|
+
},
|
|
108
|
+
'constraint-solver': {
|
|
109
|
+
resolve: '/api/constraint-solver/resolve',
|
|
110
|
+
analyze: '/api/constraint-solver/analyze',
|
|
111
|
+
explain: '/api/constraint-solver/explain',
|
|
112
|
+
info: '/api/constraint-solver/info',
|
|
113
|
+
health: '/api/constraint-solver/health',
|
|
114
|
+
},
|
|
115
|
+
'approval-routing': {
|
|
116
|
+
evaluate: '/api/approval-routing/evaluate',
|
|
117
|
+
route: '/api/approval-routing/route',
|
|
118
|
+
resolve: '/api/approval-routing/resolve',
|
|
119
|
+
status: '/api/approval-routing/status/:requestId',
|
|
120
|
+
info: '/api/approval-routing/info',
|
|
121
|
+
health: '/api/approval-routing/health',
|
|
122
|
+
},
|
|
123
|
+
internal: {
|
|
124
|
+
evaluate: '/api/v1/internal/evaluate',
|
|
125
|
+
},
|
|
126
|
+
},
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
app.use('/api/policies', policies_1.default);
|
|
130
|
+
app.use('/api/evaluate', evaluations_1.default);
|
|
131
|
+
app.use('/api/agent', agents_1.default);
|
|
132
|
+
app.use('/api/constraint-solver', constraint_solver_1.default);
|
|
133
|
+
app.use('/api/approval-routing', approval_routing_1.default);
|
|
134
|
+
app.use('/api/v1/internal', internal_evaluate_1.default);
|
|
135
|
+
app.use(error_handler_1.notFoundHandler);
|
|
136
|
+
app.use(error_handler_1.errorHandler);
|
|
137
|
+
return app;
|
|
138
|
+
}
|
|
139
|
+
async function startAPIServer(port) {
|
|
140
|
+
const app = createApp();
|
|
141
|
+
const serverPort = port || config_1.config.server.port;
|
|
142
|
+
try {
|
|
143
|
+
// Start server first (Cloud Run health check needs this)
|
|
144
|
+
const server = app.listen(serverPort, () => {
|
|
145
|
+
logger_1.default.info({
|
|
146
|
+
port: serverPort,
|
|
147
|
+
host: config_1.config.server.host,
|
|
148
|
+
env: config_1.config.nodeEnv,
|
|
149
|
+
phase: process.env.AGENT_PHASE || 'unknown',
|
|
150
|
+
layer: process.env.AGENT_LAYER || 'unknown',
|
|
151
|
+
}, 'API server started');
|
|
152
|
+
});
|
|
153
|
+
// Check database connection async (don't block startup)
|
|
154
|
+
client_1.db.ping().then(dbHealthy => {
|
|
155
|
+
if (!dbHealthy) {
|
|
156
|
+
logger_1.default.warn('Database connection not available - running in degraded mode');
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
logger_1.default.info('Database connection established');
|
|
160
|
+
}
|
|
161
|
+
}).catch(err => {
|
|
162
|
+
logger_1.default.warn({ error: err }, 'Database connection check failed - running in degraded mode');
|
|
163
|
+
});
|
|
164
|
+
const gracefulShutdown = async (signal) => {
|
|
165
|
+
logger_1.default.info({ signal }, 'Received shutdown signal');
|
|
166
|
+
server.close(async () => {
|
|
167
|
+
logger_1.default.info('HTTP server closed');
|
|
168
|
+
try {
|
|
169
|
+
await client_1.db.close();
|
|
170
|
+
await cache_manager_1.cacheManager.close();
|
|
171
|
+
logger_1.default.info('Connections closed successfully');
|
|
172
|
+
process.exit(0);
|
|
173
|
+
}
|
|
174
|
+
catch (error) {
|
|
175
|
+
logger_1.default.error({ error }, 'Error during shutdown');
|
|
176
|
+
process.exit(1);
|
|
177
|
+
}
|
|
178
|
+
});
|
|
179
|
+
setTimeout(() => {
|
|
180
|
+
logger_1.default.error('Forced shutdown after timeout');
|
|
181
|
+
process.exit(1);
|
|
182
|
+
}, 10000);
|
|
183
|
+
};
|
|
184
|
+
process.on('SIGTERM', () => gracefulShutdown('SIGTERM'));
|
|
185
|
+
process.on('SIGINT', () => gracefulShutdown('SIGINT'));
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
logger_1.default.error({ error }, 'Failed to start API server');
|
|
189
|
+
process.exit(1);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
if (require.main === module) {
|
|
193
|
+
startAPIServer();
|
|
194
|
+
}
|
|
195
|
+
//# sourceMappingURL=server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/api/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
export declare class CacheManager {
|
|
2
|
+
private l1Cache;
|
|
3
|
+
private l2Cache;
|
|
4
|
+
private enabled;
|
|
5
|
+
private defaultTTL;
|
|
6
|
+
constructor();
|
|
7
|
+
/**
|
|
8
|
+
* Get value from cache (L1 -> L2 -> null)
|
|
9
|
+
*/
|
|
10
|
+
get<T>(key: string): Promise<T | null>;
|
|
11
|
+
/**
|
|
12
|
+
* Set value in cache (L1 + L2)
|
|
13
|
+
*/
|
|
14
|
+
set<T>(key: string, value: T, ttl?: number): Promise<void>;
|
|
15
|
+
/**
|
|
16
|
+
* Delete value from cache (L1 + L2)
|
|
17
|
+
*/
|
|
18
|
+
delete(key: string): Promise<boolean>;
|
|
19
|
+
/**
|
|
20
|
+
* Delete multiple keys
|
|
21
|
+
*/
|
|
22
|
+
deleteMany(keys: string[]): Promise<number>;
|
|
23
|
+
/**
|
|
24
|
+
* Delete keys matching pattern
|
|
25
|
+
*/
|
|
26
|
+
deletePattern(pattern: string): Promise<number>;
|
|
27
|
+
/**
|
|
28
|
+
* Clear all cache entries
|
|
29
|
+
*/
|
|
30
|
+
clear(): Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* Check if key exists
|
|
33
|
+
*/
|
|
34
|
+
has(key: string): Promise<boolean>;
|
|
35
|
+
/**
|
|
36
|
+
* Get or set pattern - fetch from cache or compute and cache
|
|
37
|
+
*/
|
|
38
|
+
getOrSet<T>(key: string, factory: () => Promise<T>, ttl?: number): Promise<T>;
|
|
39
|
+
/**
|
|
40
|
+
* Wrap a function with caching
|
|
41
|
+
*/
|
|
42
|
+
wrap<T>(keyGenerator: (...args: any[]) => string, ttl?: number): (fn: (...args: any[]) => Promise<T>) => (...args: any[]) => Promise<T>;
|
|
43
|
+
/**
|
|
44
|
+
* Get cache statistics
|
|
45
|
+
*/
|
|
46
|
+
getStats(): {
|
|
47
|
+
enabled: boolean;
|
|
48
|
+
l1: {
|
|
49
|
+
size: number;
|
|
50
|
+
maxSize: number;
|
|
51
|
+
hits: number;
|
|
52
|
+
misses: number;
|
|
53
|
+
hitRate: number;
|
|
54
|
+
};
|
|
55
|
+
l2: {
|
|
56
|
+
connected: boolean;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Health check
|
|
61
|
+
*/
|
|
62
|
+
healthCheck(): Promise<{
|
|
63
|
+
healthy: boolean;
|
|
64
|
+
details: any;
|
|
65
|
+
}>;
|
|
66
|
+
/**
|
|
67
|
+
* Cleanup expired entries in L1
|
|
68
|
+
*/
|
|
69
|
+
cleanup(): Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* Close connections
|
|
72
|
+
*/
|
|
73
|
+
close(): Promise<void>;
|
|
74
|
+
}
|
|
75
|
+
export declare const cacheManager: CacheManager;
|
|
76
|
+
export default cacheManager;
|
|
77
|
+
//# sourceMappingURL=cache-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache-manager.d.ts","sourceRoot":"","sources":["../../src/cache/cache-manager.ts"],"names":[],"mappings":"AASA,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,UAAU,CAAS;;IAe3B;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IA4B5C;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBhE;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB3C;;OAEG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAYjD;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBrD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAW5B;;OAEG;IACG,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAcxC;;OAEG;IACG,QAAQ,CAAC,CAAC,EACd,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACzB,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,CAAC,CAAC;IAWb;;OAEG;IACH,IAAI,CAAC,CAAC,EACJ,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,EACxC,GAAG,CAAC,EAAE,MAAM,GACX,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC;IASzE;;OAEG;IACH,QAAQ;;;;;;;;;;;;;IAWR;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,GAAG,CAAA;KAAE,CAAC;IAoBhE;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ9B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ7B;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC;AAC/C,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.cacheManager = exports.CacheManager = void 0;
|
|
7
|
+
/**
|
|
8
|
+
* Cache Manager - Unified L1 + L2 cache interface
|
|
9
|
+
* Implements cache-aside pattern with memory (L1) and Redis (L2) layers
|
|
10
|
+
*/
|
|
11
|
+
const memory_cache_1 = require("./l1/memory-cache");
|
|
12
|
+
const redis_cache_1 = require("./l2/redis-cache");
|
|
13
|
+
const config_1 = require("@utils/config");
|
|
14
|
+
const logger_1 = __importDefault(require("@utils/logger"));
|
|
15
|
+
class CacheManager {
|
|
16
|
+
l1Cache;
|
|
17
|
+
l2Cache;
|
|
18
|
+
enabled;
|
|
19
|
+
defaultTTL;
|
|
20
|
+
constructor() {
|
|
21
|
+
this.enabled = config_1.config.cache.enabled !== false;
|
|
22
|
+
this.defaultTTL = config_1.config.cache.ttl;
|
|
23
|
+
this.l1Cache = new memory_cache_1.MemoryCache(config_1.config.cache.maxSize, this.defaultTTL);
|
|
24
|
+
this.l2Cache = new redis_cache_1.RedisCache(this.defaultTTL);
|
|
25
|
+
if (this.enabled) {
|
|
26
|
+
logger_1.default.info({ l1MaxSize: config_1.config.cache.maxSize, ttl: this.defaultTTL }, 'Cache manager initialized');
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
logger_1.default.warn('Cache is disabled');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Get value from cache (L1 -> L2 -> null)
|
|
34
|
+
*/
|
|
35
|
+
async get(key) {
|
|
36
|
+
if (!this.enabled)
|
|
37
|
+
return null;
|
|
38
|
+
try {
|
|
39
|
+
// Try L1 first
|
|
40
|
+
const l1Value = await this.l1Cache.get(key);
|
|
41
|
+
if (l1Value !== null) {
|
|
42
|
+
logger_1.default.debug({ key, layer: 'L1' }, 'Cache hit');
|
|
43
|
+
return l1Value;
|
|
44
|
+
}
|
|
45
|
+
// Try L2 if L1 miss
|
|
46
|
+
const l2Value = await this.l2Cache.get(key);
|
|
47
|
+
if (l2Value !== null) {
|
|
48
|
+
// Populate L1 on L2 hit
|
|
49
|
+
await this.l1Cache.set(key, l2Value, this.defaultTTL);
|
|
50
|
+
logger_1.default.debug({ key, layer: 'L2' }, 'Cache hit');
|
|
51
|
+
return l2Value;
|
|
52
|
+
}
|
|
53
|
+
logger_1.default.debug({ key }, 'Cache miss');
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
logger_1.default.error({ key, error }, 'Cache get error, falling through');
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Set value in cache (L1 + L2)
|
|
63
|
+
*/
|
|
64
|
+
async set(key, value, ttl) {
|
|
65
|
+
if (!this.enabled)
|
|
66
|
+
return;
|
|
67
|
+
const cacheTTL = ttl || this.defaultTTL;
|
|
68
|
+
try {
|
|
69
|
+
// Set in both layers
|
|
70
|
+
await Promise.all([
|
|
71
|
+
this.l1Cache.set(key, value, cacheTTL),
|
|
72
|
+
this.l2Cache.set(key, value, cacheTTL),
|
|
73
|
+
]);
|
|
74
|
+
logger_1.default.debug({ key, ttl: cacheTTL }, 'Cache set');
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
logger_1.default.error({ key, error }, 'Cache set error');
|
|
78
|
+
// Don't throw - cache errors shouldn't break application
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Delete value from cache (L1 + L2)
|
|
83
|
+
*/
|
|
84
|
+
async delete(key) {
|
|
85
|
+
if (!this.enabled)
|
|
86
|
+
return false;
|
|
87
|
+
try {
|
|
88
|
+
const [l1Deleted, l2Deleted] = await Promise.all([
|
|
89
|
+
this.l1Cache.delete(key),
|
|
90
|
+
this.l2Cache.delete(key),
|
|
91
|
+
]);
|
|
92
|
+
logger_1.default.debug({ key, l1Deleted, l2Deleted }, 'Cache delete');
|
|
93
|
+
return l1Deleted || l2Deleted;
|
|
94
|
+
}
|
|
95
|
+
catch (error) {
|
|
96
|
+
logger_1.default.error({ key, error }, 'Cache delete error');
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Delete multiple keys
|
|
102
|
+
*/
|
|
103
|
+
async deleteMany(keys) {
|
|
104
|
+
if (!this.enabled || keys.length === 0)
|
|
105
|
+
return 0;
|
|
106
|
+
let deleted = 0;
|
|
107
|
+
for (const key of keys) {
|
|
108
|
+
const wasDeleted = await this.delete(key);
|
|
109
|
+
if (wasDeleted)
|
|
110
|
+
deleted++;
|
|
111
|
+
}
|
|
112
|
+
return deleted;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Delete keys matching pattern
|
|
116
|
+
*/
|
|
117
|
+
async deletePattern(pattern) {
|
|
118
|
+
if (!this.enabled)
|
|
119
|
+
return 0;
|
|
120
|
+
try {
|
|
121
|
+
// For simplicity, only clear L2 by pattern
|
|
122
|
+
// L1 will naturally expire
|
|
123
|
+
const fullPattern = `${config_1.config.redis.keyPrefix}${pattern}`;
|
|
124
|
+
logger_1.default.info({ pattern: fullPattern }, 'Deleting cache keys by pattern');
|
|
125
|
+
// Get all matching keys
|
|
126
|
+
const keys = await this.l2Cache.client.keys(fullPattern);
|
|
127
|
+
if (keys.length > 0) {
|
|
128
|
+
await this.l2Cache.client.del(...keys);
|
|
129
|
+
}
|
|
130
|
+
return keys.length;
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
logger_1.default.error({ pattern, error }, 'Cache pattern delete error');
|
|
134
|
+
return 0;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Clear all cache entries
|
|
139
|
+
*/
|
|
140
|
+
async clear() {
|
|
141
|
+
if (!this.enabled)
|
|
142
|
+
return;
|
|
143
|
+
try {
|
|
144
|
+
await Promise.all([this.l1Cache.clear(), this.l2Cache.clear()]);
|
|
145
|
+
logger_1.default.info('Cache cleared');
|
|
146
|
+
}
|
|
147
|
+
catch (error) {
|
|
148
|
+
logger_1.default.error({ error }, 'Cache clear error');
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Check if key exists
|
|
153
|
+
*/
|
|
154
|
+
async has(key) {
|
|
155
|
+
if (!this.enabled)
|
|
156
|
+
return false;
|
|
157
|
+
try {
|
|
158
|
+
const l1Has = await this.l1Cache.has(key);
|
|
159
|
+
if (l1Has)
|
|
160
|
+
return true;
|
|
161
|
+
return await this.l2Cache.has(key);
|
|
162
|
+
}
|
|
163
|
+
catch (error) {
|
|
164
|
+
logger_1.default.error({ key, error }, 'Cache has check error');
|
|
165
|
+
return false;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Get or set pattern - fetch from cache or compute and cache
|
|
170
|
+
*/
|
|
171
|
+
async getOrSet(key, factory, ttl) {
|
|
172
|
+
const cached = await this.get(key);
|
|
173
|
+
if (cached !== null) {
|
|
174
|
+
return cached;
|
|
175
|
+
}
|
|
176
|
+
const value = await factory();
|
|
177
|
+
await this.set(key, value, ttl);
|
|
178
|
+
return value;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Wrap a function with caching
|
|
182
|
+
*/
|
|
183
|
+
wrap(keyGenerator, ttl) {
|
|
184
|
+
return (fn) => {
|
|
185
|
+
return async (...args) => {
|
|
186
|
+
const key = keyGenerator(...args);
|
|
187
|
+
return this.getOrSet(key, () => fn(...args), ttl);
|
|
188
|
+
};
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Get cache statistics
|
|
193
|
+
*/
|
|
194
|
+
getStats() {
|
|
195
|
+
const l1Stats = this.l1Cache.getStats();
|
|
196
|
+
return {
|
|
197
|
+
enabled: this.enabled,
|
|
198
|
+
l1: l1Stats,
|
|
199
|
+
l2: {
|
|
200
|
+
connected: this.l2Cache.isReady(),
|
|
201
|
+
},
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Health check
|
|
206
|
+
*/
|
|
207
|
+
async healthCheck() {
|
|
208
|
+
try {
|
|
209
|
+
const l2Healthy = await this.l2Cache.ping();
|
|
210
|
+
const stats = this.getStats();
|
|
211
|
+
return {
|
|
212
|
+
healthy: l2Healthy,
|
|
213
|
+
details: {
|
|
214
|
+
...stats,
|
|
215
|
+
l2Healthy,
|
|
216
|
+
},
|
|
217
|
+
};
|
|
218
|
+
}
|
|
219
|
+
catch (error) {
|
|
220
|
+
return {
|
|
221
|
+
healthy: false,
|
|
222
|
+
details: { error: error instanceof Error ? error.message : String(error) },
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Cleanup expired entries in L1
|
|
228
|
+
*/
|
|
229
|
+
async cleanup() {
|
|
230
|
+
try {
|
|
231
|
+
await this.l1Cache.cleanup();
|
|
232
|
+
}
|
|
233
|
+
catch (error) {
|
|
234
|
+
logger_1.default.error({ error }, 'Cache cleanup error');
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Close connections
|
|
239
|
+
*/
|
|
240
|
+
async close() {
|
|
241
|
+
try {
|
|
242
|
+
await this.l2Cache.close();
|
|
243
|
+
logger_1.default.info('Cache manager closed');
|
|
244
|
+
}
|
|
245
|
+
catch (error) {
|
|
246
|
+
logger_1.default.error({ error }, 'Cache close error');
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
exports.CacheManager = CacheManager;
|
|
251
|
+
// Export singleton instance
|
|
252
|
+
exports.cacheManager = new CacheManager();
|
|
253
|
+
exports.default = exports.cacheManager;
|
|
254
|
+
//# sourceMappingURL=cache-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache-manager.js","sourceRoot":"","sources":["../../src/cache/cache-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export declare class MemoryCache {
|
|
2
|
+
private cache;
|
|
3
|
+
private accessOrder;
|
|
4
|
+
private maxSize;
|
|
5
|
+
private defaultTTL;
|
|
6
|
+
private hits;
|
|
7
|
+
private misses;
|
|
8
|
+
constructor(maxSize?: number, defaultTTL?: number);
|
|
9
|
+
/**
|
|
10
|
+
* Get value from cache
|
|
11
|
+
*/
|
|
12
|
+
get<T>(key: string): Promise<T | null>;
|
|
13
|
+
/**
|
|
14
|
+
* Set value in cache
|
|
15
|
+
*/
|
|
16
|
+
set<T>(key: string, value: T, ttl?: number): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Delete value from cache
|
|
19
|
+
*/
|
|
20
|
+
delete(key: string): Promise<boolean>;
|
|
21
|
+
/**
|
|
22
|
+
* Clear all cache entries
|
|
23
|
+
*/
|
|
24
|
+
clear(): Promise<void>;
|
|
25
|
+
/**
|
|
26
|
+
* Check if key exists
|
|
27
|
+
*/
|
|
28
|
+
has(key: string): Promise<boolean>;
|
|
29
|
+
/**
|
|
30
|
+
* Get multiple values
|
|
31
|
+
*/
|
|
32
|
+
mget<T>(keys: string[]): Promise<(T | null)[]>;
|
|
33
|
+
/**
|
|
34
|
+
* Set multiple values
|
|
35
|
+
*/
|
|
36
|
+
mset<T>(entries: Array<{
|
|
37
|
+
key: string;
|
|
38
|
+
value: T;
|
|
39
|
+
ttl?: number;
|
|
40
|
+
}>): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Get cache statistics
|
|
43
|
+
*/
|
|
44
|
+
getStats(): {
|
|
45
|
+
size: number;
|
|
46
|
+
maxSize: number;
|
|
47
|
+
hits: number;
|
|
48
|
+
misses: number;
|
|
49
|
+
hitRate: number;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Evict least recently used entry
|
|
53
|
+
*/
|
|
54
|
+
private evictLRU;
|
|
55
|
+
/**
|
|
56
|
+
* Update access order for LRU
|
|
57
|
+
*/
|
|
58
|
+
private updateAccessOrder;
|
|
59
|
+
/**
|
|
60
|
+
* Remove key from access order
|
|
61
|
+
*/
|
|
62
|
+
private removeFromAccessOrder;
|
|
63
|
+
/**
|
|
64
|
+
* Clean expired entries
|
|
65
|
+
*/
|
|
66
|
+
cleanup(): Promise<number>;
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=memory-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/l1/memory-cache.ts"],"names":[],"mappings":"AAWA,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,WAAW,CAAW;IAC9B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,MAAM,CAAa;gBAEf,OAAO,GAAE,MAAc,EAAE,UAAU,GAAE,MAAY;IAO7D;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IA0B5C;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAehE;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS3C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5B;;OAEG;IACG,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUxC;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;IAIpD;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,CAAC,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrF;;OAEG;IACH,QAAQ,IAAI;QACV,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB;IAWD;;OAEG;IACH,OAAO,CAAC,QAAQ;IAUhB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAO7B;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;CAiBjC"}
|