@gzoo/cortex 0.5.9
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 +21 -0
- package/CLAUDE.md +180 -0
- package/CONTRIBUTING.md +52 -0
- package/LICENSE +21 -0
- package/README.md +259 -0
- package/dist/cortex-mcp.mjs +3153 -0
- package/dist/cortex.mjs +8213 -0
- package/icon.png +0 -0
- package/logo.png +0 -0
- package/package.json +86 -0
- package/packages/cli/dist/commands/config.d.ts +4 -0
- package/packages/cli/dist/commands/config.d.ts.map +1 -0
- package/packages/cli/dist/commands/config.js +419 -0
- package/packages/cli/dist/commands/config.js.map +1 -0
- package/packages/cli/dist/commands/contradictions.d.ts +3 -0
- package/packages/cli/dist/commands/contradictions.d.ts.map +1 -0
- package/packages/cli/dist/commands/contradictions.js +74 -0
- package/packages/cli/dist/commands/contradictions.js.map +1 -0
- package/packages/cli/dist/commands/costs.d.ts +3 -0
- package/packages/cli/dist/commands/costs.d.ts.map +1 -0
- package/packages/cli/dist/commands/costs.js +168 -0
- package/packages/cli/dist/commands/costs.js.map +1 -0
- package/packages/cli/dist/commands/db.d.ts +3 -0
- package/packages/cli/dist/commands/db.d.ts.map +1 -0
- package/packages/cli/dist/commands/db.js +139 -0
- package/packages/cli/dist/commands/db.js.map +1 -0
- package/packages/cli/dist/commands/find.d.ts +3 -0
- package/packages/cli/dist/commands/find.d.ts.map +1 -0
- package/packages/cli/dist/commands/find.js +139 -0
- package/packages/cli/dist/commands/find.js.map +1 -0
- package/packages/cli/dist/commands/ingest.d.ts +3 -0
- package/packages/cli/dist/commands/ingest.d.ts.map +1 -0
- package/packages/cli/dist/commands/ingest.js +179 -0
- package/packages/cli/dist/commands/ingest.js.map +1 -0
- package/packages/cli/dist/commands/init.d.ts +3 -0
- package/packages/cli/dist/commands/init.d.ts.map +1 -0
- package/packages/cli/dist/commands/init.js +285 -0
- package/packages/cli/dist/commands/init.js.map +1 -0
- package/packages/cli/dist/commands/mcp.d.ts +3 -0
- package/packages/cli/dist/commands/mcp.d.ts.map +1 -0
- package/packages/cli/dist/commands/mcp.js +65 -0
- package/packages/cli/dist/commands/mcp.js.map +1 -0
- package/packages/cli/dist/commands/models.d.ts +3 -0
- package/packages/cli/dist/commands/models.d.ts.map +1 -0
- package/packages/cli/dist/commands/models.js +245 -0
- package/packages/cli/dist/commands/models.js.map +1 -0
- package/packages/cli/dist/commands/privacy.d.ts +3 -0
- package/packages/cli/dist/commands/privacy.d.ts.map +1 -0
- package/packages/cli/dist/commands/privacy.js +140 -0
- package/packages/cli/dist/commands/privacy.js.map +1 -0
- package/packages/cli/dist/commands/projects.d.ts +3 -0
- package/packages/cli/dist/commands/projects.d.ts.map +1 -0
- package/packages/cli/dist/commands/projects.js +142 -0
- package/packages/cli/dist/commands/projects.js.map +1 -0
- package/packages/cli/dist/commands/query.d.ts +3 -0
- package/packages/cli/dist/commands/query.d.ts.map +1 -0
- package/packages/cli/dist/commands/query.js +153 -0
- package/packages/cli/dist/commands/query.js.map +1 -0
- package/packages/cli/dist/commands/report.d.ts +3 -0
- package/packages/cli/dist/commands/report.d.ts.map +1 -0
- package/packages/cli/dist/commands/report.js +144 -0
- package/packages/cli/dist/commands/report.js.map +1 -0
- package/packages/cli/dist/commands/resolve.d.ts +3 -0
- package/packages/cli/dist/commands/resolve.d.ts.map +1 -0
- package/packages/cli/dist/commands/resolve.js +119 -0
- package/packages/cli/dist/commands/resolve.js.map +1 -0
- package/packages/cli/dist/commands/serve.d.ts +3 -0
- package/packages/cli/dist/commands/serve.d.ts.map +1 -0
- package/packages/cli/dist/commands/serve.js +108 -0
- package/packages/cli/dist/commands/serve.js.map +1 -0
- package/packages/cli/dist/commands/status.d.ts +3 -0
- package/packages/cli/dist/commands/status.d.ts.map +1 -0
- package/packages/cli/dist/commands/status.js +230 -0
- package/packages/cli/dist/commands/status.js.map +1 -0
- package/packages/cli/dist/commands/stop.d.ts +5 -0
- package/packages/cli/dist/commands/stop.d.ts.map +1 -0
- package/packages/cli/dist/commands/stop.js +80 -0
- package/packages/cli/dist/commands/stop.js.map +1 -0
- package/packages/cli/dist/commands/watch.d.ts +3 -0
- package/packages/cli/dist/commands/watch.d.ts.map +1 -0
- package/packages/cli/dist/commands/watch.js +235 -0
- package/packages/cli/dist/commands/watch.js.map +1 -0
- package/packages/cli/dist/index.d.ts +9 -0
- package/packages/cli/dist/index.d.ts.map +1 -0
- package/packages/cli/dist/index.js +68 -0
- package/packages/cli/dist/index.js.map +1 -0
- package/packages/cli/package.json +37 -0
- package/packages/cli/tsconfig.json +16 -0
- package/packages/core/dist/config/loader.d.ts +11 -0
- package/packages/core/dist/config/loader.d.ts.map +1 -0
- package/packages/core/dist/config/loader.js +133 -0
- package/packages/core/dist/config/loader.js.map +1 -0
- package/packages/core/dist/config/project-registry.d.ts +71 -0
- package/packages/core/dist/config/project-registry.d.ts.map +1 -0
- package/packages/core/dist/config/project-registry.js +89 -0
- package/packages/core/dist/config/project-registry.js.map +1 -0
- package/packages/core/dist/config/schema.d.ts +909 -0
- package/packages/core/dist/config/schema.d.ts.map +1 -0
- package/packages/core/dist/config/schema.js +125 -0
- package/packages/core/dist/config/schema.js.map +1 -0
- package/packages/core/dist/errors/cortex-error.d.ts +58 -0
- package/packages/core/dist/errors/cortex-error.d.ts.map +1 -0
- package/packages/core/dist/errors/cortex-error.js +68 -0
- package/packages/core/dist/errors/cortex-error.js.map +1 -0
- package/packages/core/dist/events/event-bus.d.ts +10 -0
- package/packages/core/dist/events/event-bus.d.ts.map +1 -0
- package/packages/core/dist/events/event-bus.js +42 -0
- package/packages/core/dist/events/event-bus.js.map +1 -0
- package/packages/core/dist/index.d.ts +8 -0
- package/packages/core/dist/index.d.ts.map +1 -0
- package/packages/core/dist/index.js +22 -0
- package/packages/core/dist/index.js.map +1 -0
- package/packages/core/dist/logger.d.ts +16 -0
- package/packages/core/dist/logger.d.ts.map +1 -0
- package/packages/core/dist/logger.js +57 -0
- package/packages/core/dist/logger.js.map +1 -0
- package/packages/core/dist/types/config.d.ts +107 -0
- package/packages/core/dist/types/config.d.ts.map +1 -0
- package/packages/core/dist/types/config.js +2 -0
- package/packages/core/dist/types/config.js.map +1 -0
- package/packages/core/dist/types/entity.d.ts +35 -0
- package/packages/core/dist/types/entity.d.ts.map +1 -0
- package/packages/core/dist/types/entity.js +2 -0
- package/packages/core/dist/types/entity.js.map +1 -0
- package/packages/core/dist/types/events.d.ts +76 -0
- package/packages/core/dist/types/events.d.ts.map +1 -0
- package/packages/core/dist/types/events.js +2 -0
- package/packages/core/dist/types/events.js.map +1 -0
- package/packages/core/dist/types/file.d.ts +15 -0
- package/packages/core/dist/types/file.d.ts.map +1 -0
- package/packages/core/dist/types/file.js +2 -0
- package/packages/core/dist/types/file.js.map +1 -0
- package/packages/core/dist/types/graph.d.ts +93 -0
- package/packages/core/dist/types/graph.d.ts.map +1 -0
- package/packages/core/dist/types/graph.js +2 -0
- package/packages/core/dist/types/graph.js.map +1 -0
- package/packages/core/dist/types/index.d.ts +10 -0
- package/packages/core/dist/types/index.d.ts.map +1 -0
- package/packages/core/dist/types/index.js +2 -0
- package/packages/core/dist/types/index.js.map +1 -0
- package/packages/core/dist/types/llm.d.ts +95 -0
- package/packages/core/dist/types/llm.d.ts.map +1 -0
- package/packages/core/dist/types/llm.js +10 -0
- package/packages/core/dist/types/llm.js.map +1 -0
- package/packages/core/dist/types/project.d.ts +11 -0
- package/packages/core/dist/types/project.d.ts.map +1 -0
- package/packages/core/dist/types/project.js +2 -0
- package/packages/core/dist/types/project.js.map +1 -0
- package/packages/core/dist/types/relationship.d.ts +26 -0
- package/packages/core/dist/types/relationship.d.ts.map +1 -0
- package/packages/core/dist/types/relationship.js +2 -0
- package/packages/core/dist/types/relationship.js.map +1 -0
- package/packages/core/package.json +22 -0
- package/packages/core/tsconfig.json +9 -0
- package/packages/graph/dist/index.d.ts +4 -0
- package/packages/graph/dist/index.d.ts.map +1 -0
- package/packages/graph/dist/index.js +4 -0
- package/packages/graph/dist/index.js.map +1 -0
- package/packages/graph/dist/migrations/001-initial.d.ts +4 -0
- package/packages/graph/dist/migrations/001-initial.d.ts.map +1 -0
- package/packages/graph/dist/migrations/001-initial.js +134 -0
- package/packages/graph/dist/migrations/001-initial.js.map +1 -0
- package/packages/graph/dist/query-engine.d.ts +35 -0
- package/packages/graph/dist/query-engine.d.ts.map +1 -0
- package/packages/graph/dist/query-engine.js +185 -0
- package/packages/graph/dist/query-engine.js.map +1 -0
- package/packages/graph/dist/sqlite-store.d.ts +125 -0
- package/packages/graph/dist/sqlite-store.d.ts.map +1 -0
- package/packages/graph/dist/sqlite-store.js +632 -0
- package/packages/graph/dist/sqlite-store.js.map +1 -0
- package/packages/graph/dist/vector-store.d.ts +27 -0
- package/packages/graph/dist/vector-store.d.ts.map +1 -0
- package/packages/graph/dist/vector-store.js +85 -0
- package/packages/graph/dist/vector-store.js.map +1 -0
- package/packages/graph/package.json +27 -0
- package/packages/graph/tsconfig.json +12 -0
- package/packages/ingest/dist/chunker.d.ts +21 -0
- package/packages/ingest/dist/chunker.d.ts.map +1 -0
- package/packages/ingest/dist/chunker.js +118 -0
- package/packages/ingest/dist/chunker.js.map +1 -0
- package/packages/ingest/dist/index.d.ts +11 -0
- package/packages/ingest/dist/index.d.ts.map +1 -0
- package/packages/ingest/dist/index.js +14 -0
- package/packages/ingest/dist/index.js.map +1 -0
- package/packages/ingest/dist/parsers/conversation.d.ts +10 -0
- package/packages/ingest/dist/parsers/conversation.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/conversation.js +150 -0
- package/packages/ingest/dist/parsers/conversation.js.map +1 -0
- package/packages/ingest/dist/parsers/index.d.ts +11 -0
- package/packages/ingest/dist/parsers/index.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/index.js +42 -0
- package/packages/ingest/dist/parsers/index.js.map +1 -0
- package/packages/ingest/dist/parsers/json-parser.d.ts +6 -0
- package/packages/ingest/dist/parsers/json-parser.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/json-parser.js +114 -0
- package/packages/ingest/dist/parsers/json-parser.js.map +1 -0
- package/packages/ingest/dist/parsers/markdown.d.ts +6 -0
- package/packages/ingest/dist/parsers/markdown.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/markdown.js +116 -0
- package/packages/ingest/dist/parsers/markdown.js.map +1 -0
- package/packages/ingest/dist/parsers/types.d.ts +18 -0
- package/packages/ingest/dist/parsers/types.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/types.js +2 -0
- package/packages/ingest/dist/parsers/types.js.map +1 -0
- package/packages/ingest/dist/parsers/typescript.d.ts +11 -0
- package/packages/ingest/dist/parsers/typescript.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/typescript.js +197 -0
- package/packages/ingest/dist/parsers/typescript.js.map +1 -0
- package/packages/ingest/dist/parsers/yaml-parser.d.ts +6 -0
- package/packages/ingest/dist/parsers/yaml-parser.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/yaml-parser.js +52 -0
- package/packages/ingest/dist/parsers/yaml-parser.js.map +1 -0
- package/packages/ingest/dist/pipeline.d.ts +30 -0
- package/packages/ingest/dist/pipeline.d.ts.map +1 -0
- package/packages/ingest/dist/pipeline.js +311 -0
- package/packages/ingest/dist/pipeline.js.map +1 -0
- package/packages/ingest/dist/post-ingest.d.ts +25 -0
- package/packages/ingest/dist/post-ingest.d.ts.map +1 -0
- package/packages/ingest/dist/post-ingest.js +171 -0
- package/packages/ingest/dist/post-ingest.js.map +1 -0
- package/packages/ingest/dist/watcher.d.ts +26 -0
- package/packages/ingest/dist/watcher.d.ts.map +1 -0
- package/packages/ingest/dist/watcher.js +142 -0
- package/packages/ingest/dist/watcher.js.map +1 -0
- package/packages/ingest/package.json +30 -0
- package/packages/ingest/tsconfig.json +14 -0
- package/packages/llm/dist/cache.d.ts +26 -0
- package/packages/llm/dist/cache.d.ts.map +1 -0
- package/packages/llm/dist/cache.js +60 -0
- package/packages/llm/dist/cache.js.map +1 -0
- package/packages/llm/dist/index.d.ts +15 -0
- package/packages/llm/dist/index.d.ts.map +1 -0
- package/packages/llm/dist/index.js +19 -0
- package/packages/llm/dist/index.js.map +1 -0
- package/packages/llm/dist/output-parser.d.ts +4 -0
- package/packages/llm/dist/output-parser.d.ts.map +1 -0
- package/packages/llm/dist/output-parser.js +207 -0
- package/packages/llm/dist/output-parser.js.map +1 -0
- package/packages/llm/dist/prompts/context-ranking.d.ts +33 -0
- package/packages/llm/dist/prompts/context-ranking.d.ts.map +1 -0
- package/packages/llm/dist/prompts/context-ranking.js +30 -0
- package/packages/llm/dist/prompts/context-ranking.js.map +1 -0
- package/packages/llm/dist/prompts/contradiction-detection.d.ts +46 -0
- package/packages/llm/dist/prompts/contradiction-detection.d.ts.map +1 -0
- package/packages/llm/dist/prompts/contradiction-detection.js +45 -0
- package/packages/llm/dist/prompts/contradiction-detection.js.map +1 -0
- package/packages/llm/dist/prompts/conversational-query.d.ts +29 -0
- package/packages/llm/dist/prompts/conversational-query.d.ts.map +1 -0
- package/packages/llm/dist/prompts/conversational-query.js +34 -0
- package/packages/llm/dist/prompts/conversational-query.js.map +1 -0
- package/packages/llm/dist/prompts/entity-extraction.d.ts +67 -0
- package/packages/llm/dist/prompts/entity-extraction.d.ts.map +1 -0
- package/packages/llm/dist/prompts/entity-extraction.js +76 -0
- package/packages/llm/dist/prompts/entity-extraction.js.map +1 -0
- package/packages/llm/dist/prompts/follow-up-generation.d.ts +25 -0
- package/packages/llm/dist/prompts/follow-up-generation.d.ts.map +1 -0
- package/packages/llm/dist/prompts/follow-up-generation.js +25 -0
- package/packages/llm/dist/prompts/follow-up-generation.js.map +1 -0
- package/packages/llm/dist/prompts/merge-detection.d.ts +41 -0
- package/packages/llm/dist/prompts/merge-detection.d.ts.map +1 -0
- package/packages/llm/dist/prompts/merge-detection.js +31 -0
- package/packages/llm/dist/prompts/merge-detection.js.map +1 -0
- package/packages/llm/dist/prompts/relationship-inference.d.ts +60 -0
- package/packages/llm/dist/prompts/relationship-inference.d.ts.map +1 -0
- package/packages/llm/dist/prompts/relationship-inference.js +66 -0
- package/packages/llm/dist/prompts/relationship-inference.js.map +1 -0
- package/packages/llm/dist/providers/anthropic.d.ts +39 -0
- package/packages/llm/dist/providers/anthropic.d.ts.map +1 -0
- package/packages/llm/dist/providers/anthropic.js +157 -0
- package/packages/llm/dist/providers/anthropic.js.map +1 -0
- package/packages/llm/dist/providers/ollama.d.ts +52 -0
- package/packages/llm/dist/providers/ollama.d.ts.map +1 -0
- package/packages/llm/dist/providers/ollama.js +297 -0
- package/packages/llm/dist/providers/ollama.js.map +1 -0
- package/packages/llm/dist/providers/openai-compatible.d.ts +40 -0
- package/packages/llm/dist/providers/openai-compatible.d.ts.map +1 -0
- package/packages/llm/dist/providers/openai-compatible.js +164 -0
- package/packages/llm/dist/providers/openai-compatible.js.map +1 -0
- package/packages/llm/dist/router.d.ts +87 -0
- package/packages/llm/dist/router.d.ts.map +1 -0
- package/packages/llm/dist/router.js +399 -0
- package/packages/llm/dist/router.js.map +1 -0
- package/packages/llm/dist/token-tracker.d.ts +24 -0
- package/packages/llm/dist/token-tracker.d.ts.map +1 -0
- package/packages/llm/dist/token-tracker.js +114 -0
- package/packages/llm/dist/token-tracker.js.map +1 -0
- package/packages/llm/package.json +25 -0
- package/packages/llm/tsconfig.json +12 -0
- package/packages/mcp/dist/index.d.ts +10 -0
- package/packages/mcp/dist/index.d.ts.map +1 -0
- package/packages/mcp/dist/index.js +33 -0
- package/packages/mcp/dist/index.js.map +1 -0
- package/packages/mcp/dist/server.d.ts +5 -0
- package/packages/mcp/dist/server.d.ts.map +1 -0
- package/packages/mcp/dist/server.js +87 -0
- package/packages/mcp/dist/server.js.map +1 -0
- package/packages/mcp/dist/store-factory.d.ts +8 -0
- package/packages/mcp/dist/store-factory.d.ts.map +1 -0
- package/packages/mcp/dist/store-factory.js +24 -0
- package/packages/mcp/dist/store-factory.js.map +1 -0
- package/packages/mcp/dist/tools/contradictions.d.ts +14 -0
- package/packages/mcp/dist/tools/contradictions.d.ts.map +1 -0
- package/packages/mcp/dist/tools/contradictions.js +33 -0
- package/packages/mcp/dist/tools/contradictions.js.map +1 -0
- package/packages/mcp/dist/tools/find.d.ts +37 -0
- package/packages/mcp/dist/tools/find.d.ts.map +1 -0
- package/packages/mcp/dist/tools/find.js +52 -0
- package/packages/mcp/dist/tools/find.js.map +1 -0
- package/packages/mcp/dist/tools/projects.d.ts +16 -0
- package/packages/mcp/dist/tools/projects.d.ts.map +1 -0
- package/packages/mcp/dist/tools/projects.js +17 -0
- package/packages/mcp/dist/tools/projects.js.map +1 -0
- package/packages/mcp/dist/tools/query.d.ts +20 -0
- package/packages/mcp/dist/tools/query.d.ts.map +1 -0
- package/packages/mcp/dist/tools/query.js +65 -0
- package/packages/mcp/dist/tools/query.js.map +1 -0
- package/packages/mcp/dist/tools/status.d.ts +15 -0
- package/packages/mcp/dist/tools/status.d.ts.map +1 -0
- package/packages/mcp/dist/tools/status.js +17 -0
- package/packages/mcp/dist/tools/status.js.map +1 -0
- package/packages/mcp/package.json +27 -0
- package/packages/mcp/tsconfig.json +14 -0
- package/packages/server/dist/index.d.ts +17 -0
- package/packages/server/dist/index.d.ts.map +1 -0
- package/packages/server/dist/index.js +170 -0
- package/packages/server/dist/index.js.map +1 -0
- package/packages/server/dist/middleware/auth.d.ts +9 -0
- package/packages/server/dist/middleware/auth.d.ts.map +1 -0
- package/packages/server/dist/middleware/auth.js +94 -0
- package/packages/server/dist/middleware/auth.js.map +1 -0
- package/packages/server/dist/routes/contradictions.d.ts +4 -0
- package/packages/server/dist/routes/contradictions.d.ts.map +1 -0
- package/packages/server/dist/routes/contradictions.js +63 -0
- package/packages/server/dist/routes/contradictions.js.map +1 -0
- package/packages/server/dist/routes/entities.d.ts +4 -0
- package/packages/server/dist/routes/entities.d.ts.map +1 -0
- package/packages/server/dist/routes/entities.js +61 -0
- package/packages/server/dist/routes/entities.js.map +1 -0
- package/packages/server/dist/routes/projects.d.ts +4 -0
- package/packages/server/dist/routes/projects.d.ts.map +1 -0
- package/packages/server/dist/routes/projects.js +35 -0
- package/packages/server/dist/routes/projects.js.map +1 -0
- package/packages/server/dist/routes/query.d.ts +4 -0
- package/packages/server/dist/routes/query.d.ts.map +1 -0
- package/packages/server/dist/routes/query.js +93 -0
- package/packages/server/dist/routes/query.js.map +1 -0
- package/packages/server/dist/routes/relationships.d.ts +4 -0
- package/packages/server/dist/routes/relationships.d.ts.map +1 -0
- package/packages/server/dist/routes/relationships.js +52 -0
- package/packages/server/dist/routes/relationships.js.map +1 -0
- package/packages/server/dist/routes/status.d.ts +4 -0
- package/packages/server/dist/routes/status.d.ts.map +1 -0
- package/packages/server/dist/routes/status.js +85 -0
- package/packages/server/dist/routes/status.js.map +1 -0
- package/packages/server/dist/ws/event-relay.d.ts +10 -0
- package/packages/server/dist/ws/event-relay.d.ts.map +1 -0
- package/packages/server/dist/ws/event-relay.js +83 -0
- package/packages/server/dist/ws/event-relay.js.map +1 -0
- package/packages/server/package.json +32 -0
- package/packages/server/tsconfig.json +15 -0
- package/packages/web/dist/assets/index-Bxjfq4I0.css +1 -0
- package/packages/web/dist/assets/index-MqwNS5FD.js +248 -0
- package/packages/web/dist/assets/index-MqwNS5FD.js.map +1 -0
- package/packages/web/dist/cortex-icon.svg +9 -0
- package/packages/web/dist/icon.png +0 -0
- package/packages/web/dist/index.html +14 -0
- package/packages/web/dist/logo.png +0 -0
- package/packages/web/index.html +13 -0
- package/packages/web/package.json +34 -0
- package/packages/web/public/cortex-icon.svg +9 -0
- package/packages/web/public/icon.png +0 -0
- package/packages/web/public/logo.png +0 -0
- package/packages/web/tsconfig.json +22 -0
- package/packages/web/vite.config.ts +20 -0
- package/tsconfig.base.json +18 -0
- package/tsconfig.json +12 -0
- package/vitest.config.ts +14 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB7B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;EAQ5B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;EAI1B,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;EAIzB,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;EASzB,CAAC;AAEH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWzB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqB1B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAa9B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;EAG3B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK7B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export const ingestConfigSchema = z.object({
|
|
3
|
+
watchDirs: z.array(z.string()).default(['.']),
|
|
4
|
+
exclude: z.array(z.string()).default([
|
|
5
|
+
'node_modules', 'dist', 'build', 'out', '.git',
|
|
6
|
+
'*.min.js', '*.min.css', '*.map',
|
|
7
|
+
'package-lock.json', 'yarn.lock', 'pnpm-lock.yaml',
|
|
8
|
+
'__pycache__', '*.pyc', '.DS_Store', 'Thumbs.db',
|
|
9
|
+
]),
|
|
10
|
+
fileTypes: z.array(z.string()).default(['md', 'ts', 'tsx', 'js', 'jsx', 'json', 'yaml', 'yml']),
|
|
11
|
+
maxFileSize: z.number().positive().default(10_485_760),
|
|
12
|
+
maxFilesPerDir: z.number().positive().default(10_000),
|
|
13
|
+
maxTotalFiles: z.number().positive().default(50_000),
|
|
14
|
+
debounceMs: z.number().nonnegative().default(500),
|
|
15
|
+
parseTimeoutMs: z.number().positive().default(30_000),
|
|
16
|
+
batchSize: z.number().positive().default(5),
|
|
17
|
+
followSymlinks: z.boolean().default(false),
|
|
18
|
+
confirmCost: z.boolean().default(true),
|
|
19
|
+
});
|
|
20
|
+
export const graphConfigSchema = z.object({
|
|
21
|
+
dbPath: z.string().default('~/.cortex/cortex.db'),
|
|
22
|
+
vectorDbPath: z.string().default('~/.cortex/vector.lance'),
|
|
23
|
+
walMode: z.boolean().default(true),
|
|
24
|
+
backupOnStartup: z.boolean().default(true),
|
|
25
|
+
integrityCheckInterval: z.enum(['daily', 'weekly', 'monthly', 'never']).default('weekly'),
|
|
26
|
+
softDelete: z.boolean().default(true),
|
|
27
|
+
mergeConfidenceThreshold: z.number().min(0).max(1).default(0.95),
|
|
28
|
+
});
|
|
29
|
+
export const llmBudgetSchema = z.object({
|
|
30
|
+
monthlyLimitUsd: z.number().nonnegative().default(25),
|
|
31
|
+
warningThresholds: z.array(z.number().min(0).max(1)).default([0.5, 0.8, 0.9]),
|
|
32
|
+
enforcementAction: z.enum(['warn', 'fallback-local', 'stop']).default('fallback-local'),
|
|
33
|
+
});
|
|
34
|
+
export const llmCacheSchema = z.object({
|
|
35
|
+
enabled: z.boolean().default(true),
|
|
36
|
+
ttlDays: z.number().positive().default(7),
|
|
37
|
+
maxSizeMb: z.number().positive().default(500),
|
|
38
|
+
});
|
|
39
|
+
export const llmLocalSchema = z.object({
|
|
40
|
+
provider: z.string().default('ollama'),
|
|
41
|
+
host: z.string().url().default('http://localhost:11434'),
|
|
42
|
+
model: z.string().default('mistral:7b-instruct-q5_K_M'),
|
|
43
|
+
embeddingModel: z.string().default('nomic-embed-text'),
|
|
44
|
+
numCtx: z.number().positive().default(8192),
|
|
45
|
+
numGpu: z.number().default(-1),
|
|
46
|
+
timeoutMs: z.number().positive().default(90_000), // 90 seconds
|
|
47
|
+
keepAlive: z.string().default('5m'),
|
|
48
|
+
});
|
|
49
|
+
export const llmCloudSchema = z.object({
|
|
50
|
+
provider: z.string().default('anthropic'),
|
|
51
|
+
baseUrl: z.string().url().optional(),
|
|
52
|
+
apiKeySource: z.string().default('env:CORTEX_ANTHROPIC_API_KEY'),
|
|
53
|
+
models: z.object({
|
|
54
|
+
primary: z.string().default('claude-sonnet-4-5-20250929'),
|
|
55
|
+
fast: z.string().default('claude-haiku-4-5-20251001'),
|
|
56
|
+
}).default({}),
|
|
57
|
+
timeoutMs: z.number().positive().default(60_000),
|
|
58
|
+
maxRetries: z.number().nonnegative().default(3),
|
|
59
|
+
promptCaching: z.boolean().default(true),
|
|
60
|
+
});
|
|
61
|
+
export const llmConfigSchema = z.object({
|
|
62
|
+
mode: z.enum(['cloud-first', 'hybrid', 'local-first', 'local-only']).default('cloud-first'),
|
|
63
|
+
taskRouting: z.record(z.string(), z.enum(['auto', 'local', 'cloud'])).default({
|
|
64
|
+
entity_extraction: 'auto',
|
|
65
|
+
relationship_inference: 'auto',
|
|
66
|
+
contradiction_detection: 'local',
|
|
67
|
+
conversational_query: 'auto',
|
|
68
|
+
context_ranking: 'auto',
|
|
69
|
+
embedding_generation: 'local',
|
|
70
|
+
}),
|
|
71
|
+
temperature: z.record(z.string(), z.number().min(0).max(2)).default({
|
|
72
|
+
extraction: 0.1,
|
|
73
|
+
chat: 0.7,
|
|
74
|
+
ranking: 0.1,
|
|
75
|
+
proactive: 0.5,
|
|
76
|
+
}),
|
|
77
|
+
maxContextTokens: z.number().positive().default(50_000),
|
|
78
|
+
cache: llmCacheSchema.default({}),
|
|
79
|
+
budget: llmBudgetSchema.default({}),
|
|
80
|
+
local: llmLocalSchema.default({}),
|
|
81
|
+
cloud: llmCloudSchema.default({}),
|
|
82
|
+
});
|
|
83
|
+
export const privacyConfigSchema = z.object({
|
|
84
|
+
defaultLevel: z.enum(['standard', 'sensitive', 'restricted']).default('standard'),
|
|
85
|
+
directoryOverrides: z.record(z.string(), z.enum(['standard', 'sensitive', 'restricted'])).default({}),
|
|
86
|
+
autoClassify: z.boolean().default(true),
|
|
87
|
+
logTransmissions: z.boolean().default(true),
|
|
88
|
+
showTransmissionIndicator: z.boolean().default(true),
|
|
89
|
+
secretPatterns: z.array(z.string()).default([
|
|
90
|
+
'(?i)(api[_-]?key|secret[_-]?key|access[_-]?token)\\s*[:=]\\s*[\\w\\-]{20,}',
|
|
91
|
+
'AKIA[0-9A-Z]{16}',
|
|
92
|
+
'sk-ant-[a-zA-Z0-9\\-]{40,}',
|
|
93
|
+
'ghp_[a-zA-Z0-9]{36}',
|
|
94
|
+
'(?i)password\\s*[:=]\\s*\\S{8,}',
|
|
95
|
+
]),
|
|
96
|
+
});
|
|
97
|
+
export const serverAuthSchema = z.object({
|
|
98
|
+
enabled: z.boolean().default(false),
|
|
99
|
+
token: z.string().optional(),
|
|
100
|
+
});
|
|
101
|
+
export const serverConfigSchema = z.object({
|
|
102
|
+
port: z.number().int().min(1).max(65535).default(3710),
|
|
103
|
+
host: z.string().default('127.0.0.1'),
|
|
104
|
+
cors: z.array(z.string()).default(['http://localhost:5173']),
|
|
105
|
+
auth: serverAuthSchema.default({}),
|
|
106
|
+
});
|
|
107
|
+
export const loggingConfigSchema = z.object({
|
|
108
|
+
level: z.enum(['debug', 'info', 'warn', 'error']).default('info'),
|
|
109
|
+
file: z.string().default('~/.cortex/logs/cortex.log'),
|
|
110
|
+
structured: z.boolean().default(true),
|
|
111
|
+
maxSizeMb: z.number().positive().default(10),
|
|
112
|
+
maxFiles: z.number().positive().default(5),
|
|
113
|
+
redactPrompts: z.boolean().default(false),
|
|
114
|
+
});
|
|
115
|
+
export const cortexConfigSchema = z.object({
|
|
116
|
+
$schema: z.string().optional(),
|
|
117
|
+
version: z.string().default('1.0'),
|
|
118
|
+
ingest: ingestConfigSchema.default({}),
|
|
119
|
+
graph: graphConfigSchema.default({}),
|
|
120
|
+
llm: llmConfigSchema.default({}),
|
|
121
|
+
privacy: privacyConfigSchema.default({}),
|
|
122
|
+
server: serverConfigSchema.default({}),
|
|
123
|
+
logging: loggingConfigSchema.default({}),
|
|
124
|
+
});
|
|
125
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export type ErrorSeverity = 'critical' | 'high' | 'medium' | 'low';
|
|
2
|
+
export type ErrorLayer = 'ingest' | 'graph' | 'llm' | 'interface' | 'config' | 'privacy';
|
|
3
|
+
export declare class CortexError extends Error {
|
|
4
|
+
readonly code: string;
|
|
5
|
+
readonly severity: ErrorSeverity;
|
|
6
|
+
readonly layer: ErrorLayer;
|
|
7
|
+
readonly context?: Record<string, unknown> | undefined;
|
|
8
|
+
readonly recoveryAction?: string | undefined;
|
|
9
|
+
readonly retryable: boolean;
|
|
10
|
+
readonly httpStatus?: number | undefined;
|
|
11
|
+
readonly name = "CortexError";
|
|
12
|
+
constructor(code: string, severity: ErrorSeverity, layer: ErrorLayer, message: string, context?: Record<string, unknown> | undefined, recoveryAction?: string | undefined, retryable?: boolean, httpStatus?: number | undefined);
|
|
13
|
+
}
|
|
14
|
+
export declare const INGEST_PARSE_FAILED = "INGEST_PARSE_FAILED";
|
|
15
|
+
export declare const INGEST_FILE_TOO_LARGE = "INGEST_FILE_TOO_LARGE";
|
|
16
|
+
export declare const INGEST_WATCHER_ERROR = "INGEST_WATCHER_ERROR";
|
|
17
|
+
export declare const INGEST_PERMISSION_DENIED = "INGEST_PERMISSION_DENIED";
|
|
18
|
+
export declare const INGEST_UNSUPPORTED_TYPE = "INGEST_UNSUPPORTED_TYPE";
|
|
19
|
+
export declare const INGEST_ENCODING_ERROR = "INGEST_ENCODING_ERROR";
|
|
20
|
+
export declare const INGEST_TIMEOUT = "INGEST_TIMEOUT";
|
|
21
|
+
export declare const LLM_PROVIDER_UNAVAILABLE = "LLM_PROVIDER_UNAVAILABLE";
|
|
22
|
+
export declare const LLM_EXTRACTION_FAILED = "LLM_EXTRACTION_FAILED";
|
|
23
|
+
export declare const LLM_CONTEXT_OVERFLOW = "LLM_CONTEXT_OVERFLOW";
|
|
24
|
+
export declare const LLM_RATE_LIMITED = "LLM_RATE_LIMITED";
|
|
25
|
+
export declare const LLM_BUDGET_EXHAUSTED = "LLM_BUDGET_EXHAUSTED";
|
|
26
|
+
export declare const LLM_AUTH_FAILED = "LLM_AUTH_FAILED";
|
|
27
|
+
export declare const LLM_MODEL_NOT_FOUND = "LLM_MODEL_NOT_FOUND";
|
|
28
|
+
export declare const LLM_TIMEOUT = "LLM_TIMEOUT";
|
|
29
|
+
export declare const GRAPH_DB_ERROR = "GRAPH_DB_ERROR";
|
|
30
|
+
export declare const GRAPH_ENTITY_NOT_FOUND = "GRAPH_ENTITY_NOT_FOUND";
|
|
31
|
+
export declare const GRAPH_RELATIONSHIP_INVALID = "GRAPH_RELATIONSHIP_INVALID";
|
|
32
|
+
export declare const GRAPH_VECTOR_ERROR = "GRAPH_VECTOR_ERROR";
|
|
33
|
+
export declare const GRAPH_MERGE_CONFLICT = "GRAPH_MERGE_CONFLICT";
|
|
34
|
+
export declare const GRAPH_INTEGRITY_ERROR = "GRAPH_INTEGRITY_ERROR";
|
|
35
|
+
export declare const PRIVACY_VIOLATION = "PRIVACY_VIOLATION";
|
|
36
|
+
export declare const PRIVACY_SECRET_DETECTED = "PRIVACY_SECRET_DETECTED";
|
|
37
|
+
export declare const CONFIG_INVALID = "CONFIG_INVALID";
|
|
38
|
+
export declare const CONFIG_MISSING = "CONFIG_MISSING";
|
|
39
|
+
export declare const INTERFACE_PORT_IN_USE = "INTERFACE_PORT_IN_USE";
|
|
40
|
+
export declare const SERVER_AUTH_REQUIRED = "SERVER_AUTH_REQUIRED";
|
|
41
|
+
export declare const SERVER_AUTH_INVALID = "SERVER_AUTH_INVALID";
|
|
42
|
+
export declare const EXIT_CODES: {
|
|
43
|
+
readonly SUCCESS: 0;
|
|
44
|
+
readonly GENERAL_ERROR: 1;
|
|
45
|
+
readonly INVALID_ARGUMENTS: 2;
|
|
46
|
+
readonly CONFIG_ERROR: 3;
|
|
47
|
+
readonly LLM_UNAVAILABLE: 4;
|
|
48
|
+
readonly BUDGET_EXHAUSTED: 5;
|
|
49
|
+
};
|
|
50
|
+
export interface RetryConfig {
|
|
51
|
+
maxRetries: number;
|
|
52
|
+
baseDelayMs?: number;
|
|
53
|
+
maxDelayMs?: number;
|
|
54
|
+
backoffMultiplier?: number;
|
|
55
|
+
jitterMs?: number;
|
|
56
|
+
}
|
|
57
|
+
export declare const RETRY_CONFIGS: Record<string, RetryConfig>;
|
|
58
|
+
//# sourceMappingURL=cortex-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cortex-error.d.ts","sourceRoot":"","sources":["../../src/errors/cortex-error.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AACnE,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEzF,qBAAa,WAAY,SAAQ,KAAK;aAIlB,IAAI,EAAE,MAAM;aACZ,QAAQ,EAAE,aAAa;aACvB,KAAK,EAAE,UAAU;aAEjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;aACjC,cAAc,CAAC,EAAE,MAAM;aACvB,SAAS,EAAE,OAAO;aAClB,UAAU,CAAC,EAAE,MAAM;IAVrC,SAAkB,IAAI,iBAAiB;gBAGrB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,UAAU,EACjC,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA,EACjC,cAAc,CAAC,EAAE,MAAM,YAAA,EACvB,SAAS,GAAE,OAAe,EAC1B,UAAU,CAAC,EAAE,MAAM,YAAA;CAItC;AAID,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AACzD,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAC7D,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAC3D,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AACnE,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AACjE,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAC7D,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAI/C,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AACnE,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAC7D,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAC3D,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAC3D,eAAO,MAAM,eAAe,oBAAoB,CAAC;AACjD,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AACzD,eAAO,MAAM,WAAW,gBAAgB,CAAC;AAIzC,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAC/C,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAC/D,eAAO,MAAM,0BAA0B,+BAA+B,CAAC;AACvE,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AACvD,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAC3D,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAI7D,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AACrD,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AACjE,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAC/C,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAC/C,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAC7D,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAC3D,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AAIzD,eAAO,MAAM,UAAU;;;;;;;CAOb,CAAC;AAIX,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAKrD,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export class CortexError extends Error {
|
|
2
|
+
code;
|
|
3
|
+
severity;
|
|
4
|
+
layer;
|
|
5
|
+
context;
|
|
6
|
+
recoveryAction;
|
|
7
|
+
retryable;
|
|
8
|
+
httpStatus;
|
|
9
|
+
name = 'CortexError';
|
|
10
|
+
constructor(code, severity, layer, message, context, recoveryAction, retryable = false, httpStatus) {
|
|
11
|
+
super(message);
|
|
12
|
+
this.code = code;
|
|
13
|
+
this.severity = severity;
|
|
14
|
+
this.layer = layer;
|
|
15
|
+
this.context = context;
|
|
16
|
+
this.recoveryAction = recoveryAction;
|
|
17
|
+
this.retryable = retryable;
|
|
18
|
+
this.httpStatus = httpStatus;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
// --- Ingest Layer ---
|
|
22
|
+
export const INGEST_PARSE_FAILED = 'INGEST_PARSE_FAILED';
|
|
23
|
+
export const INGEST_FILE_TOO_LARGE = 'INGEST_FILE_TOO_LARGE';
|
|
24
|
+
export const INGEST_WATCHER_ERROR = 'INGEST_WATCHER_ERROR';
|
|
25
|
+
export const INGEST_PERMISSION_DENIED = 'INGEST_PERMISSION_DENIED';
|
|
26
|
+
export const INGEST_UNSUPPORTED_TYPE = 'INGEST_UNSUPPORTED_TYPE';
|
|
27
|
+
export const INGEST_ENCODING_ERROR = 'INGEST_ENCODING_ERROR';
|
|
28
|
+
export const INGEST_TIMEOUT = 'INGEST_TIMEOUT';
|
|
29
|
+
// --- LLM Layer ---
|
|
30
|
+
export const LLM_PROVIDER_UNAVAILABLE = 'LLM_PROVIDER_UNAVAILABLE';
|
|
31
|
+
export const LLM_EXTRACTION_FAILED = 'LLM_EXTRACTION_FAILED';
|
|
32
|
+
export const LLM_CONTEXT_OVERFLOW = 'LLM_CONTEXT_OVERFLOW';
|
|
33
|
+
export const LLM_RATE_LIMITED = 'LLM_RATE_LIMITED';
|
|
34
|
+
export const LLM_BUDGET_EXHAUSTED = 'LLM_BUDGET_EXHAUSTED';
|
|
35
|
+
export const LLM_AUTH_FAILED = 'LLM_AUTH_FAILED';
|
|
36
|
+
export const LLM_MODEL_NOT_FOUND = 'LLM_MODEL_NOT_FOUND';
|
|
37
|
+
export const LLM_TIMEOUT = 'LLM_TIMEOUT';
|
|
38
|
+
// --- Graph Layer ---
|
|
39
|
+
export const GRAPH_DB_ERROR = 'GRAPH_DB_ERROR';
|
|
40
|
+
export const GRAPH_ENTITY_NOT_FOUND = 'GRAPH_ENTITY_NOT_FOUND';
|
|
41
|
+
export const GRAPH_RELATIONSHIP_INVALID = 'GRAPH_RELATIONSHIP_INVALID';
|
|
42
|
+
export const GRAPH_VECTOR_ERROR = 'GRAPH_VECTOR_ERROR';
|
|
43
|
+
export const GRAPH_MERGE_CONFLICT = 'GRAPH_MERGE_CONFLICT';
|
|
44
|
+
export const GRAPH_INTEGRITY_ERROR = 'GRAPH_INTEGRITY_ERROR';
|
|
45
|
+
// --- Privacy / Config / Interface ---
|
|
46
|
+
export const PRIVACY_VIOLATION = 'PRIVACY_VIOLATION';
|
|
47
|
+
export const PRIVACY_SECRET_DETECTED = 'PRIVACY_SECRET_DETECTED';
|
|
48
|
+
export const CONFIG_INVALID = 'CONFIG_INVALID';
|
|
49
|
+
export const CONFIG_MISSING = 'CONFIG_MISSING';
|
|
50
|
+
export const INTERFACE_PORT_IN_USE = 'INTERFACE_PORT_IN_USE';
|
|
51
|
+
export const SERVER_AUTH_REQUIRED = 'SERVER_AUTH_REQUIRED';
|
|
52
|
+
export const SERVER_AUTH_INVALID = 'SERVER_AUTH_INVALID';
|
|
53
|
+
// --- Exit Codes ---
|
|
54
|
+
export const EXIT_CODES = {
|
|
55
|
+
SUCCESS: 0,
|
|
56
|
+
GENERAL_ERROR: 1,
|
|
57
|
+
INVALID_ARGUMENTS: 2,
|
|
58
|
+
CONFIG_ERROR: 3,
|
|
59
|
+
LLM_UNAVAILABLE: 4,
|
|
60
|
+
BUDGET_EXHAUSTED: 5,
|
|
61
|
+
};
|
|
62
|
+
export const RETRY_CONFIGS = {
|
|
63
|
+
network: { maxRetries: 3, baseDelayMs: 1000, maxDelayMs: 30000, backoffMultiplier: 2, jitterMs: 500 },
|
|
64
|
+
rate_limit: { maxRetries: 5, baseDelayMs: 5000, maxDelayMs: 120000, backoffMultiplier: 2, jitterMs: 2000 },
|
|
65
|
+
ollama_cold_start: { maxRetries: 3, baseDelayMs: 3000, maxDelayMs: 15000, backoffMultiplier: 1.5, jitterMs: 1000 },
|
|
66
|
+
parse_error: { maxRetries: 0 },
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=cortex-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cortex-error.js","sourceRoot":"","sources":["../../src/errors/cortex-error.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CortexEvent, EventHandler, EventBusInterface } from '../types/events.js';
|
|
2
|
+
export declare class EventBus implements EventBusInterface {
|
|
3
|
+
private handlers;
|
|
4
|
+
emit(event: CortexEvent): void;
|
|
5
|
+
on(type: string, handler: EventHandler): () => void;
|
|
6
|
+
off(type: string, handler: EventHandler): void;
|
|
7
|
+
once(type: string, handler: EventHandler): void;
|
|
8
|
+
}
|
|
9
|
+
export declare const eventBus: EventBus;
|
|
10
|
+
//# sourceMappingURL=event-bus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../src/events/event-bus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvF,qBAAa,QAAS,YAAW,iBAAiB;IAChD,OAAO,CAAC,QAAQ,CAA6C;IAE7D,IAAI,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAc9B,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,MAAM,IAAI;IASnD,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAU9C,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;CAOhD;AAED,eAAO,MAAM,QAAQ,UAAiB,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export class EventBus {
|
|
2
|
+
handlers = new Map();
|
|
3
|
+
emit(event) {
|
|
4
|
+
const typeHandlers = this.handlers.get(event.type);
|
|
5
|
+
if (!typeHandlers)
|
|
6
|
+
return;
|
|
7
|
+
for (const handler of typeHandlers) {
|
|
8
|
+
try {
|
|
9
|
+
handler(event);
|
|
10
|
+
}
|
|
11
|
+
catch {
|
|
12
|
+
// Swallow handler errors to prevent breaking the event chain.
|
|
13
|
+
// In production this would go to the structured logger.
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
on(type, handler) {
|
|
18
|
+
if (!this.handlers.has(type)) {
|
|
19
|
+
this.handlers.set(type, new Set());
|
|
20
|
+
}
|
|
21
|
+
this.handlers.get(type).add(handler);
|
|
22
|
+
return () => this.off(type, handler);
|
|
23
|
+
}
|
|
24
|
+
off(type, handler) {
|
|
25
|
+
const typeHandlers = this.handlers.get(type);
|
|
26
|
+
if (!typeHandlers)
|
|
27
|
+
return;
|
|
28
|
+
typeHandlers.delete(handler);
|
|
29
|
+
if (typeHandlers.size === 0) {
|
|
30
|
+
this.handlers.delete(type);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
once(type, handler) {
|
|
34
|
+
const wrappedHandler = (event) => {
|
|
35
|
+
this.off(type, wrappedHandler);
|
|
36
|
+
handler(event);
|
|
37
|
+
};
|
|
38
|
+
this.on(type, wrappedHandler);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
export const eventBus = new EventBus();
|
|
42
|
+
//# sourceMappingURL=event-bus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../src/events/event-bus.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,QAAQ;IACX,QAAQ,GAAmC,IAAI,GAAG,EAAE,CAAC;IAE7D,IAAI,CAAC,KAAkB;QACrB,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC;YAAC,MAAM,CAAC;gBACP,8DAA8D;gBAC9D,wDAAwD;YAC1D,CAAC;QACH,CAAC;IACH,CAAC;IAED,EAAE,CAAC,IAAY,EAAE,OAAqB;QACpC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEtC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,GAAG,CAAC,IAAY,EAAE,OAAqB;QACrC,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7B,IAAI,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,IAAI,CAAC,IAAY,EAAE,OAAqB;QACtC,MAAM,cAAc,GAAiB,CAAC,KAAK,EAAE,EAAE;YAC7C,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,CAAC;QACF,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAChC,CAAC;CACF;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './types/index.js';
|
|
2
|
+
export { CortexError, type ErrorSeverity, type ErrorLayer, type RetryConfig, RETRY_CONFIGS, EXIT_CODES, INGEST_PARSE_FAILED, INGEST_FILE_TOO_LARGE, INGEST_WATCHER_ERROR, INGEST_PERMISSION_DENIED, INGEST_UNSUPPORTED_TYPE, INGEST_ENCODING_ERROR, INGEST_TIMEOUT, LLM_PROVIDER_UNAVAILABLE, LLM_EXTRACTION_FAILED, LLM_CONTEXT_OVERFLOW, LLM_RATE_LIMITED, LLM_BUDGET_EXHAUSTED, LLM_AUTH_FAILED, LLM_MODEL_NOT_FOUND, LLM_TIMEOUT, GRAPH_DB_ERROR, GRAPH_ENTITY_NOT_FOUND, GRAPH_RELATIONSHIP_INVALID, GRAPH_VECTOR_ERROR, GRAPH_MERGE_CONFLICT, GRAPH_INTEGRITY_ERROR, PRIVACY_VIOLATION, PRIVACY_SECRET_DETECTED, CONFIG_INVALID, CONFIG_MISSING, INTERFACE_PORT_IN_USE, SERVER_AUTH_REQUIRED, SERVER_AUTH_INVALID, } from './errors/cortex-error.js';
|
|
3
|
+
export { EventBus, eventBus } from './events/event-bus.js';
|
|
4
|
+
export { cortexConfigSchema, type CortexConfigInput } from './config/schema.js';
|
|
5
|
+
export { loadConfig, getDefaultConfig, findConfigFile, type LoadConfigOptions } from './config/loader.js';
|
|
6
|
+
export { loadProjectRegistry, saveProjectRegistry, addProject, removeProject, getProject, listProjects, updateProjectLastWatched, findProjectByPath, type ProjectEntry, type ProjectRegistry, } from './config/project-registry.js';
|
|
7
|
+
export { Logger, createLogger, setGlobalLogLevel } from './logger.js';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EACL,WAAW,EACX,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,aAAa,EACb,UAAU,EAEV,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,cAAc,EAEd,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,WAAW,EAEX,cAAc,EACd,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EAErB,iBAAiB,EACjB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAG3D,OAAO,EAAE,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAG1G,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,UAAU,EACV,YAAY,EACZ,wBAAwB,EACxB,iBAAiB,EACjB,KAAK,YAAY,EACjB,KAAK,eAAe,GACrB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// Types
|
|
2
|
+
export * from './types/index.js';
|
|
3
|
+
// Errors
|
|
4
|
+
export { CortexError, RETRY_CONFIGS, EXIT_CODES,
|
|
5
|
+
// Ingest error codes
|
|
6
|
+
INGEST_PARSE_FAILED, INGEST_FILE_TOO_LARGE, INGEST_WATCHER_ERROR, INGEST_PERMISSION_DENIED, INGEST_UNSUPPORTED_TYPE, INGEST_ENCODING_ERROR, INGEST_TIMEOUT,
|
|
7
|
+
// LLM error codes
|
|
8
|
+
LLM_PROVIDER_UNAVAILABLE, LLM_EXTRACTION_FAILED, LLM_CONTEXT_OVERFLOW, LLM_RATE_LIMITED, LLM_BUDGET_EXHAUSTED, LLM_AUTH_FAILED, LLM_MODEL_NOT_FOUND, LLM_TIMEOUT,
|
|
9
|
+
// Graph error codes
|
|
10
|
+
GRAPH_DB_ERROR, GRAPH_ENTITY_NOT_FOUND, GRAPH_RELATIONSHIP_INVALID, GRAPH_VECTOR_ERROR, GRAPH_MERGE_CONFLICT, GRAPH_INTEGRITY_ERROR,
|
|
11
|
+
// Privacy / Config / Interface error codes
|
|
12
|
+
PRIVACY_VIOLATION, PRIVACY_SECRET_DETECTED, CONFIG_INVALID, CONFIG_MISSING, INTERFACE_PORT_IN_USE, SERVER_AUTH_REQUIRED, SERVER_AUTH_INVALID, } from './errors/cortex-error.js';
|
|
13
|
+
// EventBus
|
|
14
|
+
export { EventBus, eventBus } from './events/event-bus.js';
|
|
15
|
+
// Config
|
|
16
|
+
export { cortexConfigSchema } from './config/schema.js';
|
|
17
|
+
export { loadConfig, getDefaultConfig, findConfigFile } from './config/loader.js';
|
|
18
|
+
// Project Registry
|
|
19
|
+
export { loadProjectRegistry, saveProjectRegistry, addProject, removeProject, getProject, listProjects, updateProjectLastWatched, findProjectByPath, } from './config/project-registry.js';
|
|
20
|
+
// Logger
|
|
21
|
+
export { Logger, createLogger, setGlobalLogLevel } from './logger.js';
|
|
22
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,QAAQ;AACR,cAAc,kBAAkB,CAAC;AAEjC,SAAS;AACT,OAAO,EACL,WAAW,EAIX,aAAa,EACb,UAAU;AACV,qBAAqB;AACrB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,cAAc;AACd,kBAAkB;AAClB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,WAAW;AACX,oBAAoB;AACpB,cAAc,EACd,sBAAsB,EACtB,0BAA0B,EAC1B,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB;AACrB,2CAA2C;AAC3C,iBAAiB,EACjB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAElC,WAAW;AACX,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE3D,SAAS;AACT,OAAO,EAAE,kBAAkB,EAA0B,MAAM,oBAAoB,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAA0B,MAAM,oBAAoB,CAAC;AAE1G,mBAAmB;AACnB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,UAAU,EACV,YAAY,EACZ,wBAAwB,EACxB,iBAAiB,GAGlB,MAAM,8BAA8B,CAAC;AAEtC,SAAS;AACT,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { LogLevel } from './types/config.js';
|
|
2
|
+
export declare function setGlobalLogLevel(level: LogLevel): void;
|
|
3
|
+
export declare class Logger {
|
|
4
|
+
private level;
|
|
5
|
+
private source;
|
|
6
|
+
constructor(source: string, level?: LogLevel);
|
|
7
|
+
setLevel(level: LogLevel): void;
|
|
8
|
+
debug(message: string, context?: Record<string, unknown>): void;
|
|
9
|
+
info(message: string, context?: Record<string, unknown>): void;
|
|
10
|
+
warn(message: string, context?: Record<string, unknown>): void;
|
|
11
|
+
error(message: string, context?: Record<string, unknown>): void;
|
|
12
|
+
child(source: string): Logger;
|
|
13
|
+
private log;
|
|
14
|
+
}
|
|
15
|
+
export declare function createLogger(source: string, level?: LogLevel): Logger;
|
|
16
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAWlD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAEvD;AAUD,qBAAa,MAAM;IACjB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,QAAiB;IAKpD,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAI/B,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI/D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI9D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI9D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI/D,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAM7B,OAAO,CAAC,GAAG;CAeZ;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,CAGrE"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
const LOG_LEVELS = {
|
|
2
|
+
debug: 0,
|
|
3
|
+
info: 1,
|
|
4
|
+
warn: 2,
|
|
5
|
+
error: 3,
|
|
6
|
+
};
|
|
7
|
+
let globalLogLevel = null;
|
|
8
|
+
export function setGlobalLogLevel(level) {
|
|
9
|
+
globalLogLevel = LOG_LEVELS[level];
|
|
10
|
+
}
|
|
11
|
+
export class Logger {
|
|
12
|
+
level;
|
|
13
|
+
source;
|
|
14
|
+
constructor(source, level = 'info') {
|
|
15
|
+
this.source = source;
|
|
16
|
+
this.level = LOG_LEVELS[level];
|
|
17
|
+
}
|
|
18
|
+
setLevel(level) {
|
|
19
|
+
this.level = LOG_LEVELS[level];
|
|
20
|
+
}
|
|
21
|
+
debug(message, context) {
|
|
22
|
+
this.log('debug', message, context);
|
|
23
|
+
}
|
|
24
|
+
info(message, context) {
|
|
25
|
+
this.log('info', message, context);
|
|
26
|
+
}
|
|
27
|
+
warn(message, context) {
|
|
28
|
+
this.log('warn', message, context);
|
|
29
|
+
}
|
|
30
|
+
error(message, context) {
|
|
31
|
+
this.log('error', message, context);
|
|
32
|
+
}
|
|
33
|
+
child(source) {
|
|
34
|
+
const childLogger = new Logger(`${this.source}:${source}`);
|
|
35
|
+
childLogger.level = this.level;
|
|
36
|
+
return childLogger;
|
|
37
|
+
}
|
|
38
|
+
log(level, message, context) {
|
|
39
|
+
const effectiveLevel = globalLogLevel ?? this.level;
|
|
40
|
+
if (LOG_LEVELS[level] < effectiveLevel)
|
|
41
|
+
return;
|
|
42
|
+
const entry = {
|
|
43
|
+
level,
|
|
44
|
+
message,
|
|
45
|
+
timestamp: new Date().toISOString(),
|
|
46
|
+
source: this.source,
|
|
47
|
+
...(context && { context }),
|
|
48
|
+
};
|
|
49
|
+
const output = level === 'error' || level === 'warn' ? process.stderr : process.stdout;
|
|
50
|
+
output.write(JSON.stringify(entry) + '\n');
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
export function createLogger(source, level) {
|
|
54
|
+
const effectiveLevel = level ?? process.env['CORTEX_LOG_LEVEL'] ?? 'info';
|
|
55
|
+
return new Logger(source, effectiveLevel);
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAA6B;IAC3C,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACT,CAAC;AAEF,IAAI,cAAc,GAAkB,IAAI,CAAC;AAEzC,MAAM,UAAU,iBAAiB,CAAC,KAAe;IAC/C,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAUD,MAAM,OAAO,MAAM;IACT,KAAK,CAAS;IACd,MAAM,CAAS;IAEvB,YAAY,MAAc,EAAE,QAAkB,MAAM;QAClD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,QAAQ,CAAC,KAAe;QACtB,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,OAAiC;QACtD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,OAAiC;QACrD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,OAAiC;QACrD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,OAAiC;QACtD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,MAAc;QAClB,MAAM,WAAW,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;QAC3D,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC/B,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,GAAG,CAAC,KAAe,EAAE,OAAe,EAAE,OAAiC;QAC7E,MAAM,cAAc,GAAG,cAAc,IAAI,IAAI,CAAC,KAAK,CAAC;QACpD,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,cAAc;YAAE,OAAO;QAE/C,MAAM,KAAK,GAAa;YACtB,KAAK;YACL,OAAO;YACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,CAAC;SAC5B,CAAC;QAEF,MAAM,MAAM,GAAG,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACvF,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,KAAgB;IAC3D,MAAM,cAAc,GAAG,KAAK,IAAK,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAA0B,IAAI,MAAM,CAAC;IACpG,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAC5C,CAAC"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
export type LLMMode = 'cloud-first' | 'hybrid' | 'local-first' | 'local-only';
|
|
2
|
+
export type TaskRouting = 'auto' | 'local' | 'cloud';
|
|
3
|
+
export type PrivacyLevel = 'standard' | 'sensitive' | 'restricted';
|
|
4
|
+
export type LogLevel = 'debug' | 'info' | 'warn' | 'error';
|
|
5
|
+
export type IntegrityCheckInterval = 'daily' | 'weekly' | 'monthly' | 'never';
|
|
6
|
+
export type BudgetEnforcementAction = 'warn' | 'fallback-local' | 'stop';
|
|
7
|
+
export interface IngestConfig {
|
|
8
|
+
watchDirs: string[];
|
|
9
|
+
exclude: string[];
|
|
10
|
+
fileTypes: string[];
|
|
11
|
+
maxFileSize: number;
|
|
12
|
+
maxFilesPerDir: number;
|
|
13
|
+
maxTotalFiles: number;
|
|
14
|
+
debounceMs: number;
|
|
15
|
+
parseTimeoutMs: number;
|
|
16
|
+
batchSize: number;
|
|
17
|
+
followSymlinks: boolean;
|
|
18
|
+
confirmCost: boolean;
|
|
19
|
+
}
|
|
20
|
+
export interface GraphConfig {
|
|
21
|
+
dbPath: string;
|
|
22
|
+
vectorDbPath: string;
|
|
23
|
+
walMode: boolean;
|
|
24
|
+
backupOnStartup: boolean;
|
|
25
|
+
integrityCheckInterval: IntegrityCheckInterval;
|
|
26
|
+
softDelete: boolean;
|
|
27
|
+
mergeConfidenceThreshold: number;
|
|
28
|
+
}
|
|
29
|
+
export interface LLMBudgetConfig {
|
|
30
|
+
monthlyLimitUsd: number;
|
|
31
|
+
warningThresholds: number[];
|
|
32
|
+
enforcementAction: BudgetEnforcementAction;
|
|
33
|
+
}
|
|
34
|
+
export interface LLMCacheConfig {
|
|
35
|
+
enabled: boolean;
|
|
36
|
+
ttlDays: number;
|
|
37
|
+
maxSizeMb: number;
|
|
38
|
+
}
|
|
39
|
+
export interface LLMLocalConfig {
|
|
40
|
+
provider: string;
|
|
41
|
+
host: string;
|
|
42
|
+
model: string;
|
|
43
|
+
embeddingModel: string;
|
|
44
|
+
numCtx: number;
|
|
45
|
+
numGpu: number;
|
|
46
|
+
timeoutMs: number;
|
|
47
|
+
keepAlive: string;
|
|
48
|
+
}
|
|
49
|
+
export interface LLMCloudConfig {
|
|
50
|
+
provider: string;
|
|
51
|
+
baseUrl?: string;
|
|
52
|
+
apiKeySource: string;
|
|
53
|
+
models: {
|
|
54
|
+
primary: string;
|
|
55
|
+
fast: string;
|
|
56
|
+
};
|
|
57
|
+
timeoutMs: number;
|
|
58
|
+
maxRetries: number;
|
|
59
|
+
promptCaching: boolean;
|
|
60
|
+
}
|
|
61
|
+
export interface LLMConfig {
|
|
62
|
+
mode: LLMMode;
|
|
63
|
+
taskRouting: Record<string, TaskRouting>;
|
|
64
|
+
temperature: Record<string, number>;
|
|
65
|
+
maxContextTokens: number;
|
|
66
|
+
cache: LLMCacheConfig;
|
|
67
|
+
budget: LLMBudgetConfig;
|
|
68
|
+
local: LLMLocalConfig;
|
|
69
|
+
cloud: LLMCloudConfig;
|
|
70
|
+
}
|
|
71
|
+
export interface PrivacyConfig {
|
|
72
|
+
defaultLevel: PrivacyLevel;
|
|
73
|
+
directoryOverrides: Record<string, PrivacyLevel>;
|
|
74
|
+
autoClassify: boolean;
|
|
75
|
+
logTransmissions: boolean;
|
|
76
|
+
showTransmissionIndicator: boolean;
|
|
77
|
+
secretPatterns: string[];
|
|
78
|
+
}
|
|
79
|
+
export interface ServerAuthConfig {
|
|
80
|
+
enabled: boolean;
|
|
81
|
+
token?: string;
|
|
82
|
+
}
|
|
83
|
+
export interface ServerConfig {
|
|
84
|
+
port: number;
|
|
85
|
+
host: string;
|
|
86
|
+
cors: string[];
|
|
87
|
+
auth: ServerAuthConfig;
|
|
88
|
+
}
|
|
89
|
+
export interface LoggingConfig {
|
|
90
|
+
level: LogLevel;
|
|
91
|
+
file: string;
|
|
92
|
+
structured: boolean;
|
|
93
|
+
maxSizeMb: number;
|
|
94
|
+
maxFiles: number;
|
|
95
|
+
redactPrompts: boolean;
|
|
96
|
+
}
|
|
97
|
+
export interface CortexConfig {
|
|
98
|
+
$schema?: string;
|
|
99
|
+
version: string;
|
|
100
|
+
ingest: IngestConfig;
|
|
101
|
+
graph: GraphConfig;
|
|
102
|
+
llm: LLMConfig;
|
|
103
|
+
privacy: PrivacyConfig;
|
|
104
|
+
server: ServerConfig;
|
|
105
|
+
logging: LoggingConfig;
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export type EntityType = 'Decision' | 'Requirement' | 'Pattern' | 'Component' | 'Dependency' | 'Interface' | 'Constraint' | 'ActionItem' | 'Risk' | 'Note';
|
|
2
|
+
export interface ExtractionMetadata {
|
|
3
|
+
promptId: string;
|
|
4
|
+
promptVersion: string;
|
|
5
|
+
model: string;
|
|
6
|
+
provider: string;
|
|
7
|
+
tokensUsed: {
|
|
8
|
+
input: number;
|
|
9
|
+
output: number;
|
|
10
|
+
};
|
|
11
|
+
timestamp: string;
|
|
12
|
+
}
|
|
13
|
+
export interface SourceRange {
|
|
14
|
+
startLine: number;
|
|
15
|
+
endLine: number;
|
|
16
|
+
}
|
|
17
|
+
export interface Entity {
|
|
18
|
+
id: string;
|
|
19
|
+
type: EntityType;
|
|
20
|
+
name: string;
|
|
21
|
+
content: string;
|
|
22
|
+
summary?: string;
|
|
23
|
+
properties: Record<string, unknown>;
|
|
24
|
+
confidence: number;
|
|
25
|
+
sourceFile: string;
|
|
26
|
+
sourceRange?: SourceRange;
|
|
27
|
+
projectId: string;
|
|
28
|
+
extractedBy: ExtractionMetadata;
|
|
29
|
+
embedding?: Float32Array;
|
|
30
|
+
tags: string[];
|
|
31
|
+
status: 'active' | 'superseded' | 'deleted';
|
|
32
|
+
createdAt: string;
|
|
33
|
+
updatedAt: string;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=entity.d.ts.map
|