@stackmemoryai/stackmemory 0.2.8 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agents/core/agent-task-manager.js +512 -0
- package/dist/agents/core/agent-task-manager.js.map +7 -0
- package/dist/agents/verifiers/base-verifier.js +129 -0
- package/dist/agents/verifiers/base-verifier.js.map +7 -0
- package/dist/agents/verifiers/formatter-verifier.js +126 -0
- package/dist/agents/verifiers/formatter-verifier.js.map +7 -0
- package/dist/agents/verifiers/llm-judge.js +248 -0
- package/dist/agents/verifiers/llm-judge.js.map +7 -0
- package/dist/cli/__tests__/index.test.js +290 -0
- package/dist/cli/__tests__/index.test.js.map +7 -0
- package/dist/cli/auto-detect.js +317 -0
- package/dist/cli/auto-detect.js.map +7 -0
- package/dist/cli/browser-test.js +29 -0
- package/dist/cli/browser-test.js.map +7 -0
- package/dist/cli/claude-sm.js +369 -0
- package/dist/cli/claude-sm.js.map +7 -0
- package/dist/cli/codex-sm.js +283 -0
- package/dist/cli/codex-sm.js.map +7 -0
- package/dist/cli/commands/agent.js +286 -0
- package/dist/cli/commands/agent.js.map +7 -0
- package/dist/cli/commands/config.js +199 -0
- package/dist/cli/commands/config.js.map +7 -0
- package/dist/cli/commands/context.js +327 -0
- package/dist/cli/commands/context.js.map +7 -0
- package/dist/cli/commands/handoff.js +191 -0
- package/dist/cli/commands/handoff.js.map +7 -0
- package/dist/cli/commands/linear-test.js +115 -0
- package/dist/cli/commands/linear-test.js.map +7 -0
- package/dist/cli/commands/linear.js +378 -0
- package/dist/cli/commands/linear.js.map +7 -0
- package/dist/cli/commands/log.js +165 -0
- package/dist/cli/commands/log.js.map +7 -0
- package/dist/cli/commands/onboard.js +349 -0
- package/dist/cli/commands/onboard.js.map +7 -0
- package/dist/cli/commands/projects.js +195 -0
- package/dist/cli/commands/projects.js.map +7 -0
- package/dist/cli/commands/search.js +152 -0
- package/dist/cli/commands/search.js.map +7 -0
- package/dist/cli/commands/session.js +179 -0
- package/dist/cli/commands/session.js.map +7 -0
- package/dist/cli/commands/tasks.js +205 -0
- package/dist/cli/commands/tasks.js.map +7 -0
- package/dist/cli/commands/webhook.js +131 -0
- package/dist/cli/commands/webhook.js.map +7 -0
- package/dist/cli/commands/worktree.js +276 -0
- package/dist/cli/commands/worktree.js.map +7 -0
- package/dist/cli/index.js +953 -0
- package/dist/cli/index.js.map +7 -0
- package/dist/cli/utils/viewer.js +92 -0
- package/dist/cli/utils/viewer.js.map +7 -0
- package/dist/core/config/__tests__/config-manager.test.js +248 -0
- package/dist/core/config/__tests__/config-manager.test.js.map +7 -0
- package/dist/core/config/config-manager.js +368 -0
- package/dist/core/config/config-manager.js.map +7 -0
- package/dist/core/config/types.js +140 -0
- package/dist/core/config/types.js.map +7 -0
- package/dist/core/context/__tests__/frame-manager.test.js +879 -0
- package/dist/core/context/__tests__/frame-manager.test.js.map +7 -0
- package/dist/core/context/auto-context.js +72 -0
- package/dist/core/context/auto-context.js.map +7 -0
- package/dist/core/context/compaction-handler.js +326 -0
- package/dist/core/context/compaction-handler.js.map +7 -0
- package/dist/core/context/frame-database.js +376 -0
- package/dist/core/context/frame-database.js.map +7 -0
- package/dist/core/context/frame-digest.js +239 -0
- package/dist/core/context/frame-digest.js.map +7 -0
- package/dist/core/context/frame-manager.js +682 -0
- package/dist/core/context/frame-manager.js.map +7 -0
- package/dist/core/context/frame-stack.js +270 -0
- package/dist/core/context/frame-stack.js.map +7 -0
- package/dist/core/context/frame-types.js +1 -0
- package/dist/core/context/frame-types.js.map +7 -0
- package/dist/core/context/index.js +33 -0
- package/dist/core/context/index.js.map +7 -0
- package/dist/core/context/model-aware-compaction.js +619 -0
- package/dist/core/context/model-aware-compaction.js.map +7 -0
- package/dist/core/context/refactored-frame-manager.js +393 -0
- package/dist/core/context/refactored-frame-manager.js.map +7 -0
- package/dist/core/database/batch-operations.js +329 -0
- package/dist/core/database/batch-operations.js.map +7 -0
- package/dist/core/database/connection-pool.js +224 -0
- package/dist/core/database/connection-pool.js.map +7 -0
- package/dist/core/database/query-cache.js +284 -0
- package/dist/core/database/query-cache.js.map +7 -0
- package/dist/core/digest/__tests__/enhanced-hybrid-digest.test.js +379 -0
- package/dist/core/digest/__tests__/enhanced-hybrid-digest.test.js.map +7 -0
- package/dist/core/digest/__tests__/frame-digest-integration.test.js +230 -0
- package/dist/core/digest/__tests__/frame-digest-integration.test.js.map +7 -0
- package/dist/core/digest/enhanced-hybrid-digest.js +267 -0
- package/dist/core/digest/enhanced-hybrid-digest.js.map +7 -0
- package/dist/core/digest/frame-digest-integration.js +172 -0
- package/dist/core/digest/frame-digest-integration.js.map +7 -0
- package/dist/core/digest/hybrid-digest-generator.js +549 -0
- package/dist/core/digest/hybrid-digest-generator.js.map +7 -0
- package/dist/core/digest/index.js +5 -0
- package/dist/core/digest/index.js.map +7 -0
- package/dist/core/digest/types.js +21 -0
- package/dist/core/digest/types.js.map +7 -0
- package/dist/core/errors/__tests__/error-handling.test.js +270 -0
- package/dist/core/errors/__tests__/error-handling.test.js.map +7 -0
- package/dist/core/errors/index.js +239 -0
- package/dist/core/errors/index.js.map +7 -0
- package/dist/core/errors/recovery.js +258 -0
- package/dist/core/errors/recovery.js.map +7 -0
- package/dist/core/merge/__tests__/conflict-scenarios.test.js +414 -0
- package/dist/core/merge/__tests__/conflict-scenarios.test.js.map +7 -0
- package/dist/core/merge/conflict-detector.js +424 -0
- package/dist/core/merge/conflict-detector.js.map +7 -0
- package/dist/core/merge/index.js +5 -0
- package/dist/core/merge/index.js.map +7 -0
- package/dist/core/merge/resolution-engine.js +565 -0
- package/dist/core/merge/resolution-engine.js.map +7 -0
- package/dist/core/merge/stack-diff.js +528 -0
- package/dist/core/merge/stack-diff.js.map +7 -0
- package/dist/core/merge/types.js +1 -0
- package/dist/core/merge/types.js.map +7 -0
- package/dist/core/monitoring/error-handler.js +278 -0
- package/dist/core/monitoring/error-handler.js.map +7 -0
- package/dist/core/monitoring/logger.js +115 -0
- package/dist/core/monitoring/logger.js.map +7 -0
- package/dist/core/monitoring/metrics.js +157 -0
- package/dist/core/monitoring/metrics.js.map +7 -0
- package/dist/core/monitoring/progress-tracker.js +174 -0
- package/dist/core/monitoring/progress-tracker.js.map +7 -0
- package/dist/core/performance/context-cache.js +269 -0
- package/dist/core/performance/context-cache.js.map +7 -0
- package/dist/core/performance/index.js +7 -0
- package/dist/core/performance/index.js.map +7 -0
- package/dist/core/performance/lazy-context-loader.js +319 -0
- package/dist/core/performance/lazy-context-loader.js.map +7 -0
- package/dist/core/performance/monitor.js +217 -0
- package/dist/core/performance/monitor.js.map +7 -0
- package/dist/core/performance/optimized-frame-context.js +326 -0
- package/dist/core/performance/optimized-frame-context.js.map +7 -0
- package/dist/core/performance/performance-benchmark.js +269 -0
- package/dist/core/performance/performance-benchmark.js.map +7 -0
- package/dist/core/performance/performance-profiler.js +318 -0
- package/dist/core/performance/performance-profiler.js.map +7 -0
- package/dist/core/performance/streaming-jsonl-parser.js +187 -0
- package/dist/core/performance/streaming-jsonl-parser.js.map +7 -0
- package/dist/core/persistence/postgres-adapter.js +345 -0
- package/dist/core/persistence/postgres-adapter.js.map +7 -0
- package/dist/core/projects/project-manager.js +699 -0
- package/dist/core/projects/project-manager.js.map +7 -0
- package/dist/core/query/__tests__/query-parser.test.js +301 -0
- package/dist/core/query/__tests__/query-parser.test.js.map +7 -0
- package/dist/core/query/__tests__/query-templates.test.js +210 -0
- package/dist/core/query/__tests__/query-templates.test.js.map +7 -0
- package/dist/core/query/query-parser.js +366 -0
- package/dist/core/query/query-parser.js.map +7 -0
- package/dist/core/query/query-templates.js +317 -0
- package/dist/core/query/query-templates.js.map +7 -0
- package/dist/core/retrieval/index.js +4 -0
- package/dist/core/retrieval/index.js.map +7 -0
- package/dist/core/retrieval/llm-context-retrieval.js +577 -0
- package/dist/core/retrieval/llm-context-retrieval.js.map +7 -0
- package/dist/core/retrieval/summary-generator.js +585 -0
- package/dist/core/retrieval/summary-generator.js.map +7 -0
- package/dist/core/retrieval/types.js +17 -0
- package/dist/core/retrieval/types.js.map +7 -0
- package/dist/core/session/index.js +11 -0
- package/dist/core/session/index.js.map +7 -0
- package/dist/core/session/session-manager.js +297 -0
- package/dist/core/session/session-manager.js.map +7 -0
- package/dist/core/trace/cli-trace-wrapper.js +110 -0
- package/dist/core/trace/cli-trace-wrapper.js.map +7 -0
- package/dist/core/trace/db-trace-wrapper.js +215 -0
- package/dist/core/trace/db-trace-wrapper.js.map +7 -0
- package/dist/core/trace/debug-trace.js +385 -0
- package/dist/core/trace/debug-trace.js.map +7 -0
- package/dist/core/trace/index.js +158 -0
- package/dist/core/trace/index.js.map +7 -0
- package/dist/core/trace/linear-api-wrapper.js +169 -0
- package/dist/core/trace/linear-api-wrapper.js.map +7 -0
- package/dist/core/trace/trace-demo.js +135 -0
- package/dist/core/trace/trace-demo.js.map +7 -0
- package/dist/core/trace/trace-detector.demo.js +138 -0
- package/dist/core/trace/trace-detector.demo.js.map +7 -0
- package/dist/core/trace/trace-detector.js +386 -0
- package/dist/core/trace/trace-detector.js.map +7 -0
- package/dist/core/trace/trace-detector.test.js +401 -0
- package/dist/core/trace/trace-detector.test.js.map +7 -0
- package/dist/core/trace/trace-store.js +341 -0
- package/dist/core/trace/trace-store.js.map +7 -0
- package/dist/core/trace/types.js +73 -0
- package/dist/core/trace/types.js.map +7 -0
- package/dist/core/types.js +1 -0
- package/dist/core/types.js.map +7 -0
- package/dist/core/utils/update-checker.js +214 -0
- package/dist/core/utils/update-checker.js.map +7 -0
- package/dist/core/worktree/worktree-manager.js +450 -0
- package/dist/core/worktree/worktree-manager.js.map +7 -0
- package/dist/features/analytics/api/analytics-api.js +283 -0
- package/dist/features/analytics/api/analytics-api.js.map +7 -0
- package/dist/features/analytics/core/analytics-service.js +267 -0
- package/dist/features/analytics/core/analytics-service.js.map +7 -0
- package/dist/features/analytics/index.js +14 -0
- package/dist/features/analytics/index.js.map +7 -0
- package/dist/features/analytics/queries/metrics-queries.js +273 -0
- package/dist/features/analytics/queries/metrics-queries.js.map +7 -0
- package/dist/features/analytics/types/metrics.js +1 -0
- package/dist/features/analytics/types/metrics.js.map +7 -0
- package/dist/features/browser/browser-mcp.js +488 -0
- package/dist/features/browser/browser-mcp.js.map +7 -0
- package/dist/features/tasks/__tests__/pebbles-task-store.test.js +747 -0
- package/dist/features/tasks/__tests__/pebbles-task-store.test.js.map +7 -0
- package/dist/features/tasks/pebbles-task-store.js +647 -0
- package/dist/features/tasks/pebbles-task-store.js.map +7 -0
- package/dist/features/tasks/task-aware-context.js +406 -0
- package/dist/features/tasks/task-aware-context.js.map +7 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +7 -0
- package/dist/integrations/linear/__tests__/auth.test.js +558 -0
- package/dist/integrations/linear/__tests__/auth.test.js.map +7 -0
- package/dist/integrations/linear/__tests__/sync-service.test.js +760 -0
- package/dist/integrations/linear/__tests__/sync-service.test.js.map +7 -0
- package/dist/integrations/linear/auth.js +308 -0
- package/dist/integrations/linear/auth.js.map +7 -0
- package/dist/integrations/linear/auto-sync.js +244 -0
- package/dist/integrations/linear/auto-sync.js.map +7 -0
- package/dist/integrations/linear/client.js +448 -0
- package/dist/integrations/linear/client.js.map +7 -0
- package/dist/integrations/linear/config.js +115 -0
- package/dist/integrations/linear/config.js.map +7 -0
- package/dist/integrations/linear/sync-manager.js +233 -0
- package/dist/integrations/linear/sync-manager.js.map +7 -0
- package/dist/integrations/linear/sync-service.js +214 -0
- package/dist/integrations/linear/sync-service.js.map +7 -0
- package/dist/integrations/linear/sync.js +565 -0
- package/dist/integrations/linear/sync.js.map +7 -0
- package/dist/integrations/linear/types.js +1 -0
- package/dist/integrations/linear/types.js.map +7 -0
- package/dist/integrations/linear/webhook-server.js +204 -0
- package/dist/integrations/linear/webhook-server.js.map +7 -0
- package/dist/integrations/linear/webhook.js +269 -0
- package/dist/integrations/linear/webhook.js.map +7 -0
- package/dist/integrations/mcp/__tests__/server.test.js +798 -0
- package/dist/integrations/mcp/__tests__/server.test.js.map +7 -0
- package/dist/integrations/mcp/handlers/context-handlers.js +253 -0
- package/dist/integrations/mcp/handlers/context-handlers.js.map +7 -0
- package/dist/integrations/mcp/handlers/index.js +134 -0
- package/dist/integrations/mcp/handlers/index.js.map +7 -0
- package/dist/integrations/mcp/handlers/linear-handlers.js +243 -0
- package/dist/integrations/mcp/handlers/linear-handlers.js.map +7 -0
- package/dist/integrations/mcp/handlers/task-handlers.js +235 -0
- package/dist/integrations/mcp/handlers/task-handlers.js.map +7 -0
- package/dist/integrations/mcp/handlers/trace-handlers.js +304 -0
- package/dist/integrations/mcp/handlers/trace-handlers.js.map +7 -0
- package/dist/integrations/mcp/index.js +19 -0
- package/dist/integrations/mcp/index.js.map +7 -0
- package/dist/integrations/mcp/refactored-server.js +331 -0
- package/dist/integrations/mcp/refactored-server.js.map +7 -0
- package/dist/integrations/mcp/server.js +1621 -0
- package/dist/integrations/mcp/server.js.map +7 -0
- package/dist/integrations/mcp/tool-definitions.js +562 -0
- package/dist/integrations/mcp/tool-definitions.js.map +7 -0
- package/dist/integrations/mcp/trace-test.js +44 -0
- package/dist/integrations/mcp/trace-test.js.map +7 -0
- package/dist/integrations/pg-aiguide/embedding-provider.js +174 -0
- package/dist/integrations/pg-aiguide/embedding-provider.js.map +7 -0
- package/dist/integrations/pg-aiguide/semantic-search.js +183 -0
- package/dist/integrations/pg-aiguide/semantic-search.js.map +7 -0
- package/dist/integrations/pg-aiguide/timescale-analytics.js +220 -0
- package/dist/integrations/pg-aiguide/timescale-analytics.js.map +7 -0
- package/dist/mcp/stackmemory-mcp-server.js +550 -0
- package/dist/mcp/stackmemory-mcp-server.js.map +7 -0
- package/dist/middleware/exponential-rate-limiter.js +285 -0
- package/dist/middleware/exponential-rate-limiter.js.map +7 -0
- package/dist/models/user.model.js +351 -0
- package/dist/models/user.model.js.map +7 -0
- package/dist/scripts/benchmark-performance.d.ts +7 -0
- package/dist/scripts/benchmark-performance.d.ts.map +1 -0
- package/dist/scripts/benchmark-performance.js +44 -0
- package/dist/scripts/benchmark-performance.js.map +1 -0
- package/dist/scripts/cleanup-duplicate-tasks.d.ts +12 -0
- package/dist/scripts/cleanup-duplicate-tasks.d.ts.map +1 -0
- package/dist/scripts/cleanup-duplicate-tasks.js +215 -0
- package/dist/scripts/cleanup-duplicate-tasks.js.map +1 -0
- package/dist/servers/production/auth-middleware.js +513 -0
- package/dist/servers/production/auth-middleware.js.map +7 -0
- package/dist/servers/railway/index.js +390 -0
- package/dist/servers/railway/index.js.map +7 -0
- package/dist/services/config-service.js +62 -0
- package/dist/services/config-service.js.map +7 -0
- package/dist/services/context-service.js +191 -0
- package/dist/services/context-service.js.map +7 -0
- package/dist/src/agents/core/agent-task-manager.d.ts +154 -0
- package/dist/src/agents/core/agent-task-manager.d.ts.map +1 -0
- package/dist/src/agents/core/agent-task-manager.js +504 -0
- package/dist/src/agents/core/agent-task-manager.js.map +1 -0
- package/dist/src/agents/verifiers/base-verifier.d.ts +112 -0
- package/dist/src/agents/verifiers/base-verifier.d.ts.map +1 -0
- package/dist/src/agents/verifiers/base-verifier.js +130 -0
- package/dist/src/agents/verifiers/base-verifier.js.map +1 -0
- package/dist/src/agents/verifiers/formatter-verifier.d.ts +14 -0
- package/dist/src/agents/verifiers/formatter-verifier.d.ts.map +1 -0
- package/dist/src/agents/verifiers/formatter-verifier.js +107 -0
- package/dist/src/agents/verifiers/formatter-verifier.js.map +1 -0
- package/dist/src/agents/verifiers/llm-judge.d.ts +46 -0
- package/dist/src/agents/verifiers/llm-judge.d.ts.map +1 -0
- package/dist/src/agents/verifiers/llm-judge.js +248 -0
- package/dist/src/agents/verifiers/llm-judge.js.map +1 -0
- package/dist/src/cli/claude-sm.js +55 -0
- package/dist/src/cli/claude-sm.js.map +1 -1
- package/dist/src/cli/commands/agent.d.ts +9 -0
- package/dist/src/cli/commands/agent.d.ts.map +1 -0
- package/dist/src/cli/commands/agent.js +303 -0
- package/dist/src/cli/commands/agent.js.map +1 -0
- package/dist/src/cli/commands/handoff.d.ts +6 -0
- package/dist/src/cli/commands/handoff.d.ts.map +1 -0
- package/dist/src/cli/commands/handoff.js +212 -0
- package/dist/src/cli/commands/handoff.js.map +1 -0
- package/dist/src/cli/index.d.ts.map +1 -1
- package/dist/src/cli/index.js +4 -0
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/core/context/compaction-handler.d.ts.map +1 -1
- package/dist/src/core/context/compaction-handler.js +1 -1
- package/dist/src/core/context/compaction-handler.js.map +1 -1
- package/dist/src/core/context/frame-database.d.ts +59 -0
- package/dist/src/core/context/frame-database.d.ts.map +1 -0
- package/dist/src/core/context/frame-database.js +333 -0
- package/dist/src/core/context/frame-database.js.map +1 -0
- package/dist/src/core/context/frame-digest.d.ts +59 -0
- package/dist/src/core/context/frame-digest.d.ts.map +1 -0
- package/dist/src/core/context/frame-digest.js +264 -0
- package/dist/src/core/context/frame-digest.js.map +1 -0
- package/dist/src/core/context/frame-manager.d.ts +2 -0
- package/dist/src/core/context/frame-manager.d.ts.map +1 -1
- package/dist/src/core/context/frame-manager.js +7 -0
- package/dist/src/core/context/frame-manager.js.map +1 -1
- package/dist/src/core/context/frame-stack.d.ts +85 -0
- package/dist/src/core/context/frame-stack.d.ts.map +1 -0
- package/dist/src/core/context/frame-stack.js +287 -0
- package/dist/src/core/context/frame-stack.js.map +1 -0
- package/dist/src/core/context/frame-types.d.ts +67 -0
- package/dist/src/core/context/frame-types.d.ts.map +1 -0
- package/dist/src/core/context/frame-types.js +6 -0
- package/dist/src/core/context/frame-types.js.map +1 -0
- package/dist/src/core/context/index.d.ts +11 -0
- package/dist/src/core/context/index.d.ts.map +1 -0
- package/dist/src/core/context/index.js +14 -0
- package/dist/src/core/context/index.js.map +1 -0
- package/dist/src/core/context/refactored-frame-manager.d.ts +99 -0
- package/dist/src/core/context/refactored-frame-manager.d.ts.map +1 -0
- package/dist/src/core/context/refactored-frame-manager.js +340 -0
- package/dist/src/core/context/refactored-frame-manager.js.map +1 -0
- package/dist/src/core/database/batch-operations.d.ts +118 -0
- package/dist/src/core/database/batch-operations.d.ts.map +1 -0
- package/dist/src/core/database/batch-operations.js +339 -0
- package/dist/src/core/database/batch-operations.js.map +1 -0
- package/dist/src/core/database/connection-pool.d.ts +79 -0
- package/dist/src/core/database/connection-pool.d.ts.map +1 -0
- package/dist/src/core/database/connection-pool.js +236 -0
- package/dist/src/core/database/connection-pool.js.map +1 -0
- package/dist/src/core/database/query-cache.d.ts +135 -0
- package/dist/src/core/database/query-cache.d.ts.map +1 -0
- package/dist/src/core/database/query-cache.js +294 -0
- package/dist/src/core/database/query-cache.js.map +1 -0
- package/dist/src/core/digest/enhanced-hybrid-digest.d.ts +125 -0
- package/dist/src/core/digest/enhanced-hybrid-digest.d.ts.map +1 -0
- package/dist/src/core/digest/enhanced-hybrid-digest.js +282 -0
- package/dist/src/core/digest/enhanced-hybrid-digest.js.map +1 -0
- package/dist/src/core/digest/frame-digest-integration.d.ts +67 -0
- package/dist/src/core/digest/frame-digest-integration.d.ts.map +1 -0
- package/dist/src/core/digest/frame-digest-integration.js +198 -0
- package/dist/src/core/digest/frame-digest-integration.js.map +1 -0
- package/dist/src/core/digest/hybrid-digest-generator.d.ts +76 -0
- package/dist/src/core/digest/hybrid-digest-generator.d.ts.map +1 -0
- package/dist/src/core/digest/hybrid-digest-generator.js +629 -0
- package/dist/src/core/digest/hybrid-digest-generator.js.map +1 -0
- package/dist/src/core/digest/index.d.ts +9 -0
- package/dist/src/core/digest/index.d.ts.map +1 -0
- package/dist/src/core/digest/index.js +9 -0
- package/dist/src/core/digest/index.js.map +1 -0
- package/dist/src/core/digest/types.d.ts +154 -0
- package/dist/src/core/digest/types.d.ts.map +1 -0
- package/dist/src/core/digest/types.js +18 -0
- package/dist/src/core/digest/types.js.map +1 -0
- package/dist/src/core/errors/index.d.ts +13 -5
- package/dist/src/core/errors/index.d.ts.map +1 -1
- package/dist/src/core/errors/index.js +13 -5
- package/dist/src/core/errors/index.js.map +1 -1
- package/dist/src/core/merge/conflict-detector.d.ts +122 -0
- package/dist/src/core/merge/conflict-detector.d.ts.map +1 -0
- package/dist/src/core/merge/conflict-detector.js +468 -0
- package/dist/src/core/merge/conflict-detector.js.map +1 -0
- package/dist/src/core/merge/index.d.ts +9 -0
- package/dist/src/core/merge/index.d.ts.map +1 -0
- package/dist/src/core/merge/index.js +9 -0
- package/dist/src/core/merge/index.js.map +1 -0
- package/dist/src/core/merge/resolution-engine.d.ts +120 -0
- package/dist/src/core/merge/resolution-engine.d.ts.map +1 -0
- package/dist/src/core/merge/resolution-engine.js +573 -0
- package/dist/src/core/merge/resolution-engine.js.map +1 -0
- package/dist/src/core/merge/stack-diff.d.ts +97 -0
- package/dist/src/core/merge/stack-diff.d.ts.map +1 -0
- package/dist/src/core/merge/stack-diff.js +516 -0
- package/dist/src/core/merge/stack-diff.js.map +1 -0
- package/dist/src/core/merge/types.d.ts +110 -0
- package/dist/src/core/merge/types.d.ts.map +1 -0
- package/dist/src/core/merge/types.js +6 -0
- package/dist/src/core/merge/types.js.map +1 -0
- package/dist/src/core/monitoring/logger.d.ts +2 -2
- package/dist/src/core/monitoring/logger.d.ts.map +1 -1
- package/dist/src/core/monitoring/logger.js +10 -5
- package/dist/src/core/monitoring/logger.js.map +1 -1
- package/dist/src/core/monitoring/metrics.d.ts +3 -0
- package/dist/src/core/monitoring/metrics.d.ts.map +1 -1
- package/dist/src/core/monitoring/metrics.js +142 -3
- package/dist/src/core/monitoring/metrics.js.map +1 -1
- package/dist/src/core/performance/context-cache.d.ts +109 -0
- package/dist/src/core/performance/context-cache.d.ts.map +1 -0
- package/dist/src/core/performance/context-cache.js +280 -0
- package/dist/src/core/performance/context-cache.js.map +1 -0
- package/dist/src/core/performance/index.d.ts +3 -0
- package/dist/src/core/performance/index.d.ts.map +1 -0
- package/dist/src/core/performance/index.js +3 -0
- package/dist/src/core/performance/index.js.map +1 -0
- package/dist/src/core/performance/lazy-context-loader.d.ts +93 -0
- package/dist/src/core/performance/lazy-context-loader.d.ts.map +1 -0
- package/dist/src/core/performance/lazy-context-loader.js +332 -0
- package/dist/src/core/performance/lazy-context-loader.js.map +1 -0
- package/dist/src/core/performance/monitor.d.ts +48 -0
- package/dist/src/core/performance/monitor.d.ts.map +1 -0
- package/dist/src/core/performance/monitor.js +226 -0
- package/dist/src/core/performance/monitor.js.map +1 -0
- package/dist/src/core/performance/optimized-frame-context.d.ts +74 -0
- package/dist/src/core/performance/optimized-frame-context.d.ts.map +1 -0
- package/dist/src/core/performance/optimized-frame-context.js +330 -0
- package/dist/src/core/performance/optimized-frame-context.js.map +1 -0
- package/dist/src/core/performance/performance-benchmark.d.ts +50 -0
- package/dist/src/core/performance/performance-benchmark.d.ts.map +1 -0
- package/dist/src/core/performance/performance-benchmark.js +290 -0
- package/dist/src/core/performance/performance-benchmark.js.map +1 -0
- package/dist/src/core/performance/performance-profiler.d.ts +151 -0
- package/dist/src/core/performance/performance-profiler.d.ts.map +1 -0
- package/dist/src/core/performance/performance-profiler.js +346 -0
- package/dist/src/core/performance/performance-profiler.js.map +1 -0
- package/dist/src/core/performance/streaming-jsonl-parser.d.ts +41 -0
- package/dist/src/core/performance/streaming-jsonl-parser.d.ts.map +1 -0
- package/dist/src/core/performance/streaming-jsonl-parser.js +193 -0
- package/dist/src/core/performance/streaming-jsonl-parser.js.map +1 -0
- package/dist/src/core/persistence/postgres-adapter.d.ts +31 -0
- package/dist/src/core/persistence/postgres-adapter.d.ts.map +1 -0
- package/dist/src/core/persistence/postgres-adapter.js +330 -0
- package/dist/src/core/persistence/postgres-adapter.js.map +1 -0
- package/dist/src/core/query/query-parser.d.ts +5 -0
- package/dist/src/core/query/query-parser.d.ts.map +1 -1
- package/dist/src/core/query/query-parser.js +86 -18
- package/dist/src/core/query/query-parser.js.map +1 -1
- package/dist/src/core/query/query-templates.d.ts +44 -0
- package/dist/src/core/query/query-templates.d.ts.map +1 -0
- package/dist/src/core/query/query-templates.js +326 -0
- package/dist/src/core/query/query-templates.js.map +1 -0
- package/dist/src/core/retrieval/llm-context-retrieval.d.ts +5 -3
- package/dist/src/core/retrieval/llm-context-retrieval.d.ts.map +1 -1
- package/dist/src/core/retrieval/llm-context-retrieval.js +73 -21
- package/dist/src/core/retrieval/llm-context-retrieval.js.map +1 -1
- package/dist/src/core/trace/cli-trace-wrapper.d.ts +23 -0
- package/dist/src/core/trace/cli-trace-wrapper.d.ts.map +1 -0
- package/dist/src/core/trace/cli-trace-wrapper.js +141 -0
- package/dist/src/core/trace/cli-trace-wrapper.js.map +1 -0
- package/dist/src/core/trace/db-trace-wrapper.d.ts +36 -0
- package/dist/src/core/trace/db-trace-wrapper.d.ts.map +1 -0
- package/dist/src/core/trace/db-trace-wrapper.js +252 -0
- package/dist/src/core/trace/db-trace-wrapper.js.map +1 -0
- package/dist/src/core/trace/debug-trace.d.ts +84 -0
- package/dist/src/core/trace/debug-trace.d.ts.map +1 -0
- package/dist/src/core/trace/debug-trace.js +402 -0
- package/dist/src/core/trace/debug-trace.js.map +1 -0
- package/dist/src/core/trace/error-test.d.ts +6 -0
- package/dist/src/core/trace/error-test.d.ts.map +1 -0
- package/dist/src/core/trace/error-test.js +128 -0
- package/dist/src/core/trace/error-test.js.map +1 -0
- package/dist/src/core/trace/index.d.ts +25 -0
- package/dist/src/core/trace/index.d.ts.map +1 -0
- package/dist/src/core/trace/index.js +121 -0
- package/dist/src/core/trace/index.js.map +1 -0
- package/dist/src/core/trace/linear-api-wrapper.d.ts +17 -0
- package/dist/src/core/trace/linear-api-wrapper.d.ts.map +1 -0
- package/dist/src/core/trace/linear-api-wrapper.js +205 -0
- package/dist/src/core/trace/linear-api-wrapper.js.map +1 -0
- package/dist/src/core/trace/performance-test.d.ts +6 -0
- package/dist/src/core/trace/performance-test.d.ts.map +1 -0
- package/dist/src/core/trace/performance-test.js +111 -0
- package/dist/src/core/trace/performance-test.js.map +1 -0
- package/dist/src/core/trace/trace-demo.d.ts +8 -0
- package/dist/src/core/trace/trace-demo.d.ts.map +1 -0
- package/dist/src/core/trace/trace-demo.js +154 -0
- package/dist/src/core/trace/trace-demo.js.map +1 -0
- package/dist/src/core/trace/trace-detector.d.ts +2 -2
- package/dist/src/core/trace/trace-detector.d.ts.map +1 -1
- package/dist/src/core/trace/trace-detector.demo.js +6 -6
- package/dist/src/core/trace/trace-detector.demo.js.map +1 -1
- package/dist/src/core/trace/trace-detector.js +3 -3
- package/dist/src/core/trace/trace-detector.js.map +1 -1
- package/dist/src/core/types.d.ts +35 -0
- package/dist/src/core/types.d.ts.map +1 -0
- package/dist/src/core/types.js +2 -0
- package/dist/src/core/types.js.map +1 -0
- package/dist/src/features/tasks/pebbles-task-store.d.ts +9 -2
- package/dist/src/features/tasks/pebbles-task-store.d.ts.map +1 -1
- package/dist/src/features/tasks/pebbles-task-store.js +97 -18
- package/dist/src/features/tasks/pebbles-task-store.js.map +1 -1
- package/dist/src/integrations/linear/auth.d.ts.map +1 -1
- package/dist/src/integrations/linear/auth.js.map +1 -1
- package/dist/src/integrations/linear/client.d.ts +15 -1
- package/dist/src/integrations/linear/client.d.ts.map +1 -1
- package/dist/src/integrations/linear/client.js +85 -3
- package/dist/src/integrations/linear/client.js.map +1 -1
- package/dist/src/integrations/linear/sync-manager.d.ts +2 -0
- package/dist/src/integrations/linear/sync-manager.d.ts.map +1 -1
- package/dist/src/integrations/linear/sync-manager.js +16 -4
- package/dist/src/integrations/linear/sync-manager.js.map +1 -1
- package/dist/src/integrations/linear/sync-service.d.ts +23 -2
- package/dist/src/integrations/linear/sync-service.d.ts.map +1 -1
- package/dist/src/integrations/linear/sync-service.js +44 -25
- package/dist/src/integrations/linear/sync-service.js.map +1 -1
- package/dist/src/integrations/linear/sync.d.ts +6 -0
- package/dist/src/integrations/linear/sync.d.ts.map +1 -1
- package/dist/src/integrations/linear/sync.js +27 -2
- package/dist/src/integrations/linear/sync.js.map +1 -1
- package/dist/src/integrations/linear/types.d.ts +16 -1
- package/dist/src/integrations/linear/types.d.ts.map +1 -1
- package/dist/src/integrations/linear/webhook-server.d.ts.map +1 -1
- package/dist/src/integrations/linear/webhook-server.js +10 -8
- package/dist/src/integrations/linear/webhook-server.js.map +1 -1
- package/dist/src/integrations/linear/webhook.d.ts +13 -0
- package/dist/src/integrations/linear/webhook.d.ts.map +1 -1
- package/dist/src/integrations/linear/webhook.js +101 -14
- package/dist/src/integrations/linear/webhook.js.map +1 -1
- package/dist/src/integrations/mcp/handlers/context-handlers.d.ts +39 -0
- package/dist/src/integrations/mcp/handlers/context-handlers.d.ts.map +1 -0
- package/dist/src/integrations/mcp/handlers/context-handlers.js +266 -0
- package/dist/src/integrations/mcp/handlers/context-handlers.js.map +1 -0
- package/dist/src/integrations/mcp/handlers/index.d.ts +37 -0
- package/dist/src/integrations/mcp/handlers/index.d.ts.map +1 -0
- package/dist/src/integrations/mcp/handlers/index.js +134 -0
- package/dist/src/integrations/mcp/handlers/index.js.map +1 -0
- package/dist/src/integrations/mcp/handlers/linear-handlers.d.ts +33 -0
- package/dist/src/integrations/mcp/handlers/linear-handlers.d.ts.map +1 -0
- package/dist/src/integrations/mcp/handlers/linear-handlers.js +251 -0
- package/dist/src/integrations/mcp/handlers/linear-handlers.js.map +1 -0
- package/dist/src/integrations/mcp/handlers/task-handlers.d.ts +42 -0
- package/dist/src/integrations/mcp/handlers/task-handlers.d.ts.map +1 -0
- package/dist/src/integrations/mcp/handlers/task-handlers.js +238 -0
- package/dist/src/integrations/mcp/handlers/task-handlers.js.map +1 -0
- package/dist/src/integrations/mcp/handlers/trace-handlers.d.ts +41 -0
- package/dist/src/integrations/mcp/handlers/trace-handlers.d.ts.map +1 -0
- package/dist/src/integrations/mcp/handlers/trace-handlers.js +298 -0
- package/dist/src/integrations/mcp/handlers/trace-handlers.js.map +1 -0
- package/dist/src/integrations/mcp/index.d.ts +13 -0
- package/dist/src/integrations/mcp/index.d.ts.map +1 -0
- package/dist/src/integrations/mcp/index.js +17 -0
- package/dist/src/integrations/mcp/index.js.map +1 -0
- package/dist/src/integrations/mcp/refactored-server.d.ts +76 -0
- package/dist/src/integrations/mcp/refactored-server.d.ts.map +1 -0
- package/dist/src/integrations/mcp/refactored-server.js +351 -0
- package/dist/src/integrations/mcp/refactored-server.js.map +1 -0
- package/dist/src/integrations/mcp/server.js +2 -2
- package/dist/src/integrations/mcp/server.js.map +1 -1
- package/dist/src/integrations/mcp/tool-definitions.d.ts +44 -0
- package/dist/src/integrations/mcp/tool-definitions.d.ts.map +1 -0
- package/dist/src/integrations/mcp/tool-definitions.js +563 -0
- package/dist/src/integrations/mcp/tool-definitions.js.map +1 -0
- package/dist/src/integrations/pg-aiguide/embedding-provider.d.ts +48 -0
- package/dist/src/integrations/pg-aiguide/embedding-provider.d.ts.map +1 -0
- package/dist/src/integrations/pg-aiguide/embedding-provider.js +190 -0
- package/dist/src/integrations/pg-aiguide/embedding-provider.js.map +1 -0
- package/dist/src/integrations/pg-aiguide/semantic-search.d.ts +34 -0
- package/dist/src/integrations/pg-aiguide/semantic-search.d.ts.map +1 -0
- package/dist/src/integrations/pg-aiguide/semantic-search.js +176 -0
- package/dist/src/integrations/pg-aiguide/semantic-search.js.map +1 -0
- package/dist/src/integrations/pg-aiguide/timescale-analytics.d.ts +44 -0
- package/dist/src/integrations/pg-aiguide/timescale-analytics.d.ts.map +1 -0
- package/dist/src/integrations/pg-aiguide/timescale-analytics.js +215 -0
- package/dist/src/integrations/pg-aiguide/timescale-analytics.js.map +1 -0
- package/dist/src/mcp/stackmemory-mcp-server.d.ts +9 -0
- package/dist/src/mcp/stackmemory-mcp-server.d.ts.map +1 -0
- package/dist/src/mcp/stackmemory-mcp-server.js +519 -0
- package/dist/src/mcp/stackmemory-mcp-server.js.map +1 -0
- package/dist/src/middleware/exponential-rate-limiter.d.ts +78 -0
- package/dist/src/middleware/exponential-rate-limiter.d.ts.map +1 -0
- package/dist/src/middleware/exponential-rate-limiter.js +293 -0
- package/dist/src/middleware/exponential-rate-limiter.js.map +1 -0
- package/dist/src/models/user.model.d.ts +62 -0
- package/dist/src/models/user.model.d.ts.map +1 -0
- package/dist/src/models/user.model.js +311 -0
- package/dist/src/models/user.model.js.map +1 -0
- package/dist/src/servers/production/auth-middleware.d.ts +12 -2
- package/dist/src/servers/production/auth-middleware.d.ts.map +1 -1
- package/dist/src/servers/production/auth-middleware.js +240 -28
- package/dist/src/servers/production/auth-middleware.js.map +1 -1
- package/dist/src/servers/railway/index.js.map +1 -1
- package/dist/src/services/context-service.d.ts.map +1 -1
- package/dist/src/services/context-service.js +86 -1
- package/dist/src/services/context-service.js.map +1 -1
- package/dist/src/validation/schemas.d.ts +633 -0
- package/dist/src/validation/schemas.d.ts.map +1 -0
- package/dist/src/validation/schemas.js +347 -0
- package/dist/src/validation/schemas.js.map +1 -0
- package/dist/types/task.js +1 -0
- package/dist/types/task.js.map +7 -0
- package/dist/utils/logger.js +52 -0
- package/dist/utils/logger.js.map +7 -0
- package/dist/validation/schemas.js +218 -0
- package/dist/validation/schemas.js.map +7 -0
- package/package.json +12 -3
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context Module Exports
|
|
3
|
+
* Maintains compatibility while providing access to refactored components
|
|
4
|
+
*/
|
|
5
|
+
// Export refactored components as primary
|
|
6
|
+
export { RefactoredFrameManager as FrameManager } from './refactored-frame-manager.js';
|
|
7
|
+
// Export focused modules for direct access
|
|
8
|
+
export { FrameDatabase } from './frame-database.js';
|
|
9
|
+
export { FrameStack } from './frame-stack.js';
|
|
10
|
+
export { FrameDigestGenerator } from './frame-digest.js';
|
|
11
|
+
// Re-export from old frame-manager for backwards compatibility
|
|
12
|
+
// This allows existing code to continue working without changes
|
|
13
|
+
export { FrameManager as LegacyFrameManager } from './frame-manager.js';
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/context/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,0CAA0C;AAC1C,OAAO,EAAE,sBAAsB,IAAI,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAevF,2CAA2C;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,+DAA+D;AAC/D,gEAAgE;AAChE,OAAO,EAAE,YAAY,IAAI,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Refactored Frame Manager - Modular Implementation
|
|
3
|
+
* Main orchestrator that uses focused modules for frame management
|
|
4
|
+
*/
|
|
5
|
+
import Database from 'better-sqlite3';
|
|
6
|
+
import { Frame, FrameContext, Anchor, Event, FrameType, FrameCreationOptions, FrameManagerConfig, DigestResult } from './frame-types.js';
|
|
7
|
+
export declare class RefactoredFrameManager {
|
|
8
|
+
private frameDb;
|
|
9
|
+
private frameStack;
|
|
10
|
+
private digestGenerator;
|
|
11
|
+
private currentRunId;
|
|
12
|
+
private sessionId;
|
|
13
|
+
private projectId;
|
|
14
|
+
private queryMode;
|
|
15
|
+
private config;
|
|
16
|
+
constructor(db: Database.Database, projectId: string, config?: Partial<FrameManagerConfig>);
|
|
17
|
+
/**
|
|
18
|
+
* Initialize the frame manager
|
|
19
|
+
*/
|
|
20
|
+
initialize(): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Create a new frame
|
|
23
|
+
*/
|
|
24
|
+
createFrame(options: FrameCreationOptions): string;
|
|
25
|
+
createFrame(type: FrameType, name: string, inputs?: Record<string, any>, parentFrameId?: string): string;
|
|
26
|
+
private _createFrame;
|
|
27
|
+
/**
|
|
28
|
+
* Close a frame and generate digest
|
|
29
|
+
*/
|
|
30
|
+
closeFrame(frameId?: string, outputs?: Record<string, any>): void;
|
|
31
|
+
private _closeFrame;
|
|
32
|
+
/**
|
|
33
|
+
* Add an event to the current frame
|
|
34
|
+
*/
|
|
35
|
+
addEvent(eventType: Event['event_type'], payload: Record<string, any>, frameId?: string): string;
|
|
36
|
+
private _addEvent;
|
|
37
|
+
/**
|
|
38
|
+
* Add an anchor (important fact) to current frame
|
|
39
|
+
*/
|
|
40
|
+
addAnchor(type: Anchor['type'], text: string, priority?: number, metadata?: Record<string, any>, frameId?: string): string;
|
|
41
|
+
private _addAnchor;
|
|
42
|
+
/**
|
|
43
|
+
* Get hot stack context
|
|
44
|
+
*/
|
|
45
|
+
getHotStackContext(maxEvents?: number): FrameContext[];
|
|
46
|
+
/**
|
|
47
|
+
* Get active frame path (root to current)
|
|
48
|
+
*/
|
|
49
|
+
getActiveFramePath(): Frame[];
|
|
50
|
+
/**
|
|
51
|
+
* Get current frame ID
|
|
52
|
+
*/
|
|
53
|
+
getCurrentFrameId(): string | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* Get stack depth
|
|
56
|
+
*/
|
|
57
|
+
getStackDepth(): number;
|
|
58
|
+
/**
|
|
59
|
+
* Get frame by ID
|
|
60
|
+
*/
|
|
61
|
+
getFrame(frameId: string): Frame | undefined;
|
|
62
|
+
/**
|
|
63
|
+
* Get frame events
|
|
64
|
+
*/
|
|
65
|
+
getFrameEvents(frameId: string, limit?: number): Event[];
|
|
66
|
+
/**
|
|
67
|
+
* Get frame anchors
|
|
68
|
+
*/
|
|
69
|
+
getFrameAnchors(frameId: string): Anchor[];
|
|
70
|
+
/**
|
|
71
|
+
* Generate digest for a frame
|
|
72
|
+
*/
|
|
73
|
+
generateDigest(frameId: string): DigestResult;
|
|
74
|
+
/**
|
|
75
|
+
* Validate stack consistency
|
|
76
|
+
*/
|
|
77
|
+
validateStack(): {
|
|
78
|
+
isValid: boolean;
|
|
79
|
+
errors: string[];
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Get database statistics
|
|
83
|
+
*/
|
|
84
|
+
getStatistics(): Record<string, number>;
|
|
85
|
+
/**
|
|
86
|
+
* Close all child frames recursively
|
|
87
|
+
*/
|
|
88
|
+
private closeChildFrames;
|
|
89
|
+
/**
|
|
90
|
+
* Extract active artifacts from frame events
|
|
91
|
+
*/
|
|
92
|
+
getActiveArtifacts(frameId: string): string[];
|
|
93
|
+
/**
|
|
94
|
+
* Extract constraints from frame inputs
|
|
95
|
+
*/
|
|
96
|
+
extractConstraints(inputs: Record<string, any>): string[];
|
|
97
|
+
}
|
|
98
|
+
export { Frame, FrameContext, Anchor, Event, FrameType, FrameState, FrameCreationOptions, FrameManagerConfig, DigestResult, } from './frame-types.js';
|
|
99
|
+
//# sourceMappingURL=refactored-frame-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"refactored-frame-manager.d.ts","sourceRoot":"","sources":["../../../../src/core/context/refactored-frame-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Refactored Frame Manager - Modular Implementation
|
|
3
|
+
* Main orchestrator that uses focused modules for frame management
|
|
4
|
+
*/
|
|
5
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
6
|
+
import { logger } from '../monitoring/logger.js';
|
|
7
|
+
import { trace } from '../trace/index.js';
|
|
8
|
+
import { FrameError, SystemError, ErrorCode, } from '../errors/index.js';
|
|
9
|
+
import { FrameQueryMode } from '../session/index.js';
|
|
10
|
+
import { FrameDatabase } from './frame-database.js';
|
|
11
|
+
import { FrameStack } from './frame-stack.js';
|
|
12
|
+
import { FrameDigestGenerator } from './frame-digest.js';
|
|
13
|
+
export class RefactoredFrameManager {
|
|
14
|
+
frameDb;
|
|
15
|
+
frameStack;
|
|
16
|
+
digestGenerator;
|
|
17
|
+
currentRunId;
|
|
18
|
+
sessionId;
|
|
19
|
+
projectId;
|
|
20
|
+
queryMode = FrameQueryMode.PROJECT_ACTIVE;
|
|
21
|
+
config;
|
|
22
|
+
constructor(db, projectId, config) {
|
|
23
|
+
this.projectId = projectId;
|
|
24
|
+
this.config = {
|
|
25
|
+
projectId,
|
|
26
|
+
runId: config?.runId || uuidv4(),
|
|
27
|
+
sessionId: config?.sessionId || uuidv4(),
|
|
28
|
+
maxStackDepth: config?.maxStackDepth || 50,
|
|
29
|
+
};
|
|
30
|
+
this.currentRunId = this.config.runId;
|
|
31
|
+
this.sessionId = this.config.sessionId;
|
|
32
|
+
// Initialize modules
|
|
33
|
+
this.frameDb = new FrameDatabase(db);
|
|
34
|
+
this.frameStack = new FrameStack(this.frameDb, projectId, this.currentRunId);
|
|
35
|
+
this.digestGenerator = new FrameDigestGenerator(this.frameDb);
|
|
36
|
+
// Initialize database schema
|
|
37
|
+
this.frameDb.initSchema();
|
|
38
|
+
logger.info('RefactoredFrameManager initialized', {
|
|
39
|
+
projectId: this.projectId,
|
|
40
|
+
runId: this.currentRunId,
|
|
41
|
+
sessionId: this.sessionId,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Initialize the frame manager
|
|
46
|
+
*/
|
|
47
|
+
async initialize() {
|
|
48
|
+
try {
|
|
49
|
+
await this.frameStack.initialize();
|
|
50
|
+
logger.info('Frame manager initialization completed', {
|
|
51
|
+
stackDepth: this.frameStack.getDepth(),
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
throw new SystemError('Failed to initialize frame manager', ErrorCode.SYSTEM_INIT_FAILED, { projectId: this.projectId }, error instanceof Error ? error : undefined);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
createFrame(typeOrOptions, name, inputs, parentFrameId) {
|
|
59
|
+
return trace.traceSync('function', 'FrameManager.createFrame', { typeOrOptions, name }, () => this._createFrame(typeOrOptions, name, inputs, parentFrameId));
|
|
60
|
+
}
|
|
61
|
+
_createFrame(typeOrOptions, name, inputs, parentFrameId) {
|
|
62
|
+
let frameOptions;
|
|
63
|
+
// Handle both function signatures
|
|
64
|
+
if (typeof typeOrOptions === 'string') {
|
|
65
|
+
frameOptions = {
|
|
66
|
+
type: typeOrOptions,
|
|
67
|
+
name: name,
|
|
68
|
+
inputs: inputs || {},
|
|
69
|
+
parentFrameId,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
frameOptions = typeOrOptions;
|
|
74
|
+
}
|
|
75
|
+
// Validate inputs
|
|
76
|
+
if (!frameOptions.name || frameOptions.name.trim().length === 0) {
|
|
77
|
+
throw new FrameError('Frame name is required', ErrorCode.FRAME_INVALID_INPUT, { frameOptions });
|
|
78
|
+
}
|
|
79
|
+
// Check stack depth limit
|
|
80
|
+
if (this.frameStack.getDepth() >= this.config.maxStackDepth) {
|
|
81
|
+
throw new FrameError(`Maximum stack depth reached: ${this.config.maxStackDepth}`, ErrorCode.FRAME_STACK_OVERFLOW, { currentDepth: this.frameStack.getDepth() });
|
|
82
|
+
}
|
|
83
|
+
// Determine parent frame
|
|
84
|
+
const resolvedParentId = frameOptions.parentFrameId || this.frameStack.getCurrentFrameId();
|
|
85
|
+
const depth = resolvedParentId
|
|
86
|
+
? this.frameStack.getFrameStackDepth(resolvedParentId) + 1
|
|
87
|
+
: 0;
|
|
88
|
+
// Create frame data
|
|
89
|
+
const frameId = uuidv4();
|
|
90
|
+
const frame = {
|
|
91
|
+
frame_id: frameId,
|
|
92
|
+
run_id: this.currentRunId,
|
|
93
|
+
project_id: this.projectId,
|
|
94
|
+
parent_frame_id: resolvedParentId,
|
|
95
|
+
depth,
|
|
96
|
+
type: frameOptions.type,
|
|
97
|
+
name: frameOptions.name,
|
|
98
|
+
state: 'active',
|
|
99
|
+
inputs: frameOptions.inputs || {},
|
|
100
|
+
outputs: {},
|
|
101
|
+
digest_json: {},
|
|
102
|
+
};
|
|
103
|
+
// Insert into database
|
|
104
|
+
const createdFrame = this.frameDb.insertFrame(frame);
|
|
105
|
+
// Add to stack
|
|
106
|
+
this.frameStack.pushFrame(frameId);
|
|
107
|
+
logger.info('Created frame', {
|
|
108
|
+
frameId,
|
|
109
|
+
name: frameOptions.name,
|
|
110
|
+
type: frameOptions.type,
|
|
111
|
+
parentFrameId: resolvedParentId,
|
|
112
|
+
stackDepth: this.frameStack.getDepth(),
|
|
113
|
+
});
|
|
114
|
+
return frameId;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Close a frame and generate digest
|
|
118
|
+
*/
|
|
119
|
+
closeFrame(frameId, outputs) {
|
|
120
|
+
trace.traceSync('function', 'FrameManager.closeFrame', { frameId, outputs }, () => this._closeFrame(frameId, outputs));
|
|
121
|
+
}
|
|
122
|
+
_closeFrame(frameId, outputs) {
|
|
123
|
+
const targetFrameId = frameId || this.frameStack.getCurrentFrameId();
|
|
124
|
+
if (!targetFrameId) {
|
|
125
|
+
throw new FrameError('No active frame to close', ErrorCode.FRAME_INVALID_STATE, {
|
|
126
|
+
operation: 'closeFrame',
|
|
127
|
+
stackDepth: this.frameStack.getDepth(),
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
// Get frame details
|
|
131
|
+
const frame = this.frameDb.getFrame(targetFrameId);
|
|
132
|
+
if (!frame) {
|
|
133
|
+
throw new FrameError(`Frame not found: ${targetFrameId}`, ErrorCode.FRAME_NOT_FOUND, {
|
|
134
|
+
frameId: targetFrameId,
|
|
135
|
+
operation: 'closeFrame',
|
|
136
|
+
runId: this.currentRunId,
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
if (frame.state === 'closed') {
|
|
140
|
+
logger.warn('Attempted to close already closed frame', {
|
|
141
|
+
frameId: targetFrameId,
|
|
142
|
+
});
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
// Generate digest before closing
|
|
146
|
+
const digest = this.digestGenerator.generateDigest(targetFrameId);
|
|
147
|
+
const finalOutputs = { ...outputs, ...digest.structured };
|
|
148
|
+
// Update frame to closed state
|
|
149
|
+
this.frameDb.updateFrame(targetFrameId, {
|
|
150
|
+
state: 'closed',
|
|
151
|
+
outputs: finalOutputs,
|
|
152
|
+
digest_text: digest.text,
|
|
153
|
+
digest_json: digest.structured,
|
|
154
|
+
closed_at: Math.floor(Date.now() / 1000),
|
|
155
|
+
});
|
|
156
|
+
// Remove from stack (this will also remove any child frames)
|
|
157
|
+
this.frameStack.popFrame(targetFrameId);
|
|
158
|
+
// Close all child frames recursively
|
|
159
|
+
this.closeChildFrames(targetFrameId);
|
|
160
|
+
logger.info('Closed frame', {
|
|
161
|
+
frameId: targetFrameId,
|
|
162
|
+
name: frame.name,
|
|
163
|
+
duration: Math.floor(Date.now() / 1000) - frame.created_at,
|
|
164
|
+
digestLength: digest.text.length,
|
|
165
|
+
stackDepth: this.frameStack.getDepth(),
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Add an event to the current frame
|
|
170
|
+
*/
|
|
171
|
+
addEvent(eventType, payload, frameId) {
|
|
172
|
+
return trace.traceSync('function', 'FrameManager.addEvent', { eventType, frameId }, () => this._addEvent(eventType, payload, frameId));
|
|
173
|
+
}
|
|
174
|
+
_addEvent(eventType, payload, frameId) {
|
|
175
|
+
const targetFrameId = frameId || this.frameStack.getCurrentFrameId();
|
|
176
|
+
if (!targetFrameId) {
|
|
177
|
+
throw new FrameError('No active frame for event', ErrorCode.FRAME_INVALID_STATE, {
|
|
178
|
+
eventType,
|
|
179
|
+
operation: 'addEvent',
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
const eventId = uuidv4();
|
|
183
|
+
const sequence = this.frameDb.getNextEventSequence(targetFrameId);
|
|
184
|
+
const event = {
|
|
185
|
+
event_id: eventId,
|
|
186
|
+
frame_id: targetFrameId,
|
|
187
|
+
run_id: this.currentRunId,
|
|
188
|
+
seq: sequence,
|
|
189
|
+
event_type: eventType,
|
|
190
|
+
payload,
|
|
191
|
+
};
|
|
192
|
+
const createdEvent = this.frameDb.insertEvent(event);
|
|
193
|
+
logger.debug('Added event', {
|
|
194
|
+
eventId,
|
|
195
|
+
frameId: targetFrameId,
|
|
196
|
+
eventType,
|
|
197
|
+
sequence,
|
|
198
|
+
});
|
|
199
|
+
return eventId;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Add an anchor (important fact) to current frame
|
|
203
|
+
*/
|
|
204
|
+
addAnchor(type, text, priority = 5, metadata = {}, frameId) {
|
|
205
|
+
return trace.traceSync('function', 'FrameManager.addAnchor', { type, frameId }, () => this._addAnchor(type, text, priority, metadata, frameId));
|
|
206
|
+
}
|
|
207
|
+
_addAnchor(type, text, priority, metadata, frameId) {
|
|
208
|
+
const targetFrameId = frameId || this.frameStack.getCurrentFrameId();
|
|
209
|
+
if (!targetFrameId) {
|
|
210
|
+
throw new FrameError('No active frame for anchor', ErrorCode.FRAME_INVALID_STATE, {
|
|
211
|
+
anchorType: type,
|
|
212
|
+
operation: 'addAnchor',
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
const anchorId = uuidv4();
|
|
216
|
+
const anchor = {
|
|
217
|
+
anchor_id: anchorId,
|
|
218
|
+
frame_id: targetFrameId,
|
|
219
|
+
type,
|
|
220
|
+
text,
|
|
221
|
+
priority,
|
|
222
|
+
metadata,
|
|
223
|
+
};
|
|
224
|
+
const createdAnchor = this.frameDb.insertAnchor(anchor);
|
|
225
|
+
logger.debug('Added anchor', {
|
|
226
|
+
anchorId,
|
|
227
|
+
frameId: targetFrameId,
|
|
228
|
+
type,
|
|
229
|
+
priority,
|
|
230
|
+
});
|
|
231
|
+
return anchorId;
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Get hot stack context
|
|
235
|
+
*/
|
|
236
|
+
getHotStackContext(maxEvents = 20) {
|
|
237
|
+
return this.frameStack.getHotStackContext(maxEvents);
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Get active frame path (root to current)
|
|
241
|
+
*/
|
|
242
|
+
getActiveFramePath() {
|
|
243
|
+
return this.frameStack.getStackFrames();
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Get current frame ID
|
|
247
|
+
*/
|
|
248
|
+
getCurrentFrameId() {
|
|
249
|
+
return this.frameStack.getCurrentFrameId();
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Get stack depth
|
|
253
|
+
*/
|
|
254
|
+
getStackDepth() {
|
|
255
|
+
return this.frameStack.getDepth();
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Get frame by ID
|
|
259
|
+
*/
|
|
260
|
+
getFrame(frameId) {
|
|
261
|
+
return this.frameDb.getFrame(frameId);
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Get frame events
|
|
265
|
+
*/
|
|
266
|
+
getFrameEvents(frameId, limit) {
|
|
267
|
+
return this.frameDb.getFrameEvents(frameId, limit);
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Get frame anchors
|
|
271
|
+
*/
|
|
272
|
+
getFrameAnchors(frameId) {
|
|
273
|
+
return this.frameDb.getFrameAnchors(frameId);
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Generate digest for a frame
|
|
277
|
+
*/
|
|
278
|
+
generateDigest(frameId) {
|
|
279
|
+
return this.digestGenerator.generateDigest(frameId);
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Validate stack consistency
|
|
283
|
+
*/
|
|
284
|
+
validateStack() {
|
|
285
|
+
return this.frameStack.validateStack();
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Get database statistics
|
|
289
|
+
*/
|
|
290
|
+
getStatistics() {
|
|
291
|
+
return this.frameDb.getStatistics();
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Close all child frames recursively
|
|
295
|
+
*/
|
|
296
|
+
closeChildFrames(parentFrameId) {
|
|
297
|
+
try {
|
|
298
|
+
const activeFrames = this.frameDb.getFramesByProject(this.projectId, 'active');
|
|
299
|
+
const childFrames = activeFrames.filter(f => f.parent_frame_id === parentFrameId);
|
|
300
|
+
for (const childFrame of childFrames) {
|
|
301
|
+
if (this.frameStack.isFrameActive(childFrame.frame_id)) {
|
|
302
|
+
this.closeFrame(childFrame.frame_id);
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
catch (error) {
|
|
307
|
+
logger.warn('Failed to close child frames', { parentFrameId, error });
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* Extract active artifacts from frame events
|
|
312
|
+
*/
|
|
313
|
+
getActiveArtifacts(frameId) {
|
|
314
|
+
const events = this.frameDb.getFrameEvents(frameId);
|
|
315
|
+
const artifacts = [];
|
|
316
|
+
for (const event of events) {
|
|
317
|
+
if (event.event_type === 'artifact' && event.payload.path) {
|
|
318
|
+
artifacts.push(event.payload.path);
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
return [...new Set(artifacts)];
|
|
322
|
+
}
|
|
323
|
+
/**
|
|
324
|
+
* Extract constraints from frame inputs
|
|
325
|
+
*/
|
|
326
|
+
extractConstraints(inputs) {
|
|
327
|
+
const constraints = [];
|
|
328
|
+
if (inputs.constraints && Array.isArray(inputs.constraints)) {
|
|
329
|
+
constraints.push(...inputs.constraints);
|
|
330
|
+
}
|
|
331
|
+
if (inputs.requirements && Array.isArray(inputs.requirements)) {
|
|
332
|
+
constraints.push(...inputs.requirements);
|
|
333
|
+
}
|
|
334
|
+
if (inputs.limitations && Array.isArray(inputs.limitations)) {
|
|
335
|
+
constraints.push(...inputs.limitations);
|
|
336
|
+
}
|
|
337
|
+
return constraints;
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
//# sourceMappingURL=refactored-frame-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"refactored-frame-manager.js","sourceRoot":"","sources":["../../../../src/core/context/refactored-frame-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Batch Database Operations
|
|
3
|
+
* High-performance bulk operations with transaction management
|
|
4
|
+
*/
|
|
5
|
+
import Database from 'better-sqlite3';
|
|
6
|
+
export interface BatchOperation {
|
|
7
|
+
table: string;
|
|
8
|
+
operation: 'insert' | 'update' | 'delete';
|
|
9
|
+
data: Record<string, any>[];
|
|
10
|
+
onConflict?: 'ignore' | 'replace' | 'update';
|
|
11
|
+
}
|
|
12
|
+
export interface BulkInsertOptions {
|
|
13
|
+
batchSize?: number;
|
|
14
|
+
onConflict?: 'ignore' | 'replace' | 'update';
|
|
15
|
+
enableTransactions?: boolean;
|
|
16
|
+
parallelTables?: boolean;
|
|
17
|
+
}
|
|
18
|
+
export interface BatchStats {
|
|
19
|
+
totalRecords: number;
|
|
20
|
+
batchesProcessed: number;
|
|
21
|
+
successfulInserts: number;
|
|
22
|
+
failedInserts: number;
|
|
23
|
+
totalTimeMs: number;
|
|
24
|
+
avgBatchTimeMs: number;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* High-performance batch operations manager
|
|
28
|
+
*/
|
|
29
|
+
export declare class BatchOperationsManager {
|
|
30
|
+
private db;
|
|
31
|
+
private preparedStatements;
|
|
32
|
+
private batchQueue;
|
|
33
|
+
private isProcessing;
|
|
34
|
+
constructor(db?: Database.Database);
|
|
35
|
+
/**
|
|
36
|
+
* Add events in bulk with optimized batching
|
|
37
|
+
*/
|
|
38
|
+
bulkInsertEvents(events: Array<{
|
|
39
|
+
frame_id: string;
|
|
40
|
+
run_id: string;
|
|
41
|
+
seq: number;
|
|
42
|
+
event_type: string;
|
|
43
|
+
payload: any;
|
|
44
|
+
ts: number;
|
|
45
|
+
}>, options?: BulkInsertOptions): Promise<BatchStats>;
|
|
46
|
+
/**
|
|
47
|
+
* Add anchors in bulk
|
|
48
|
+
*/
|
|
49
|
+
bulkInsertAnchors(anchors: Array<{
|
|
50
|
+
frame_id: string;
|
|
51
|
+
type: string;
|
|
52
|
+
text: string;
|
|
53
|
+
priority: number;
|
|
54
|
+
metadata: any;
|
|
55
|
+
}>, options?: BulkInsertOptions): Promise<BatchStats>;
|
|
56
|
+
/**
|
|
57
|
+
* Bulk update frame digests
|
|
58
|
+
*/
|
|
59
|
+
bulkUpdateFrameDigests(updates: Array<{
|
|
60
|
+
frame_id: string;
|
|
61
|
+
digest_text: string;
|
|
62
|
+
digest_json: any;
|
|
63
|
+
closed_at?: number;
|
|
64
|
+
}>, options?: BulkInsertOptions): Promise<BatchStats>;
|
|
65
|
+
/**
|
|
66
|
+
* Generic bulk insert with preprocessing
|
|
67
|
+
*/
|
|
68
|
+
private performBulkInsert;
|
|
69
|
+
/**
|
|
70
|
+
* Process records in batches
|
|
71
|
+
*/
|
|
72
|
+
private processBatches;
|
|
73
|
+
/**
|
|
74
|
+
* Queue batch operation for later processing
|
|
75
|
+
*/
|
|
76
|
+
queueBatchOperation(operation: BatchOperation): void;
|
|
77
|
+
/**
|
|
78
|
+
* Process queued batch operations
|
|
79
|
+
*/
|
|
80
|
+
processBatchQueue(): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Flush any remaining queued operations
|
|
83
|
+
*/
|
|
84
|
+
flush(): Promise<void>;
|
|
85
|
+
/**
|
|
86
|
+
* Get SQL conflict clause
|
|
87
|
+
*/
|
|
88
|
+
private getConflictClause;
|
|
89
|
+
/**
|
|
90
|
+
* Group operations by table for efficient processing
|
|
91
|
+
*/
|
|
92
|
+
private groupOperationsByTable;
|
|
93
|
+
/**
|
|
94
|
+
* Process all operations for a specific table
|
|
95
|
+
*/
|
|
96
|
+
private processTableOperations;
|
|
97
|
+
/**
|
|
98
|
+
* Initialize commonly used prepared statements
|
|
99
|
+
*/
|
|
100
|
+
private initializePreparedStatements;
|
|
101
|
+
/**
|
|
102
|
+
* Cleanup resources
|
|
103
|
+
*/
|
|
104
|
+
cleanup(): void;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Get or create global batch operations manager
|
|
108
|
+
*/
|
|
109
|
+
export declare function getBatchManager(db?: Database.Database): BatchOperationsManager;
|
|
110
|
+
/**
|
|
111
|
+
* Convenience function for bulk event insertion
|
|
112
|
+
*/
|
|
113
|
+
export declare function bulkInsertEvents(events: any[], options?: BulkInsertOptions): Promise<BatchStats>;
|
|
114
|
+
/**
|
|
115
|
+
* Convenience function for bulk anchor insertion
|
|
116
|
+
*/
|
|
117
|
+
export declare function bulkInsertAnchors(anchors: any[], options?: BulkInsertOptions): Promise<BatchStats>;
|
|
118
|
+
//# sourceMappingURL=batch-operations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batch-operations.d.ts","sourceRoot":"","sources":["../../../../src/core/database/batch-operations.ts"],"names":[],"mappings":"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"}
|