@stackmemoryai/stackmemory 0.2.6 → 0.2.8
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/README.md +262 -83
- package/dist/scripts/cancel-duplicate-tasks.d.ts +7 -0
- package/dist/scripts/cancel-duplicate-tasks.d.ts.map +1 -0
- package/dist/scripts/cancel-duplicate-tasks.js +172 -0
- package/dist/scripts/cancel-duplicate-tasks.js.map +1 -0
- package/dist/scripts/list-linear-tasks.d.ts +6 -0
- package/dist/scripts/list-linear-tasks.d.ts.map +1 -0
- package/dist/scripts/list-linear-tasks.js +121 -0
- package/dist/scripts/list-linear-tasks.js.map +1 -0
- package/dist/scripts/merge-linear-duplicates-safe.d.ts +7 -0
- package/dist/scripts/merge-linear-duplicates-safe.d.ts.map +1 -0
- package/dist/scripts/merge-linear-duplicates-safe.js +267 -0
- package/dist/scripts/merge-linear-duplicates-safe.js.map +1 -0
- package/dist/scripts/show-linear-summary.d.ts +6 -0
- package/dist/scripts/show-linear-summary.d.ts.map +1 -0
- package/dist/scripts/show-linear-summary.js +120 -0
- package/dist/scripts/show-linear-summary.js.map +1 -0
- package/dist/scripts/status.js +6 -2
- package/dist/scripts/status.js.map +1 -1
- package/dist/src/cli/auto-detect.d.ts +61 -0
- package/dist/src/cli/auto-detect.d.ts.map +1 -0
- package/dist/src/cli/auto-detect.js +350 -0
- package/dist/src/cli/auto-detect.js.map +1 -0
- package/dist/src/cli/claude-sm.d.ts +7 -0
- package/dist/src/cli/claude-sm.d.ts.map +1 -0
- package/dist/src/cli/claude-sm.js +357 -0
- package/dist/src/cli/claude-sm.js.map +1 -0
- package/dist/src/cli/commands/config.d.ts +6 -0
- package/dist/src/cli/commands/config.d.ts.map +1 -0
- package/dist/src/cli/commands/config.js +224 -0
- package/dist/src/cli/commands/config.js.map +1 -0
- package/dist/src/cli/commands/context.d.ts +7 -0
- package/dist/src/cli/commands/context.d.ts.map +1 -0
- package/dist/src/cli/commands/context.js +365 -0
- package/dist/src/cli/commands/context.js.map +1 -0
- package/dist/src/cli/commands/linear-test.d.ts +6 -0
- package/dist/src/cli/commands/linear-test.d.ts.map +1 -0
- package/dist/src/cli/commands/linear-test.js +123 -0
- package/dist/src/cli/commands/linear-test.js.map +1 -0
- package/dist/src/cli/commands/linear.d.ts +6 -0
- package/dist/src/cli/commands/linear.d.ts.map +1 -0
- package/dist/src/cli/commands/linear.js +393 -0
- package/dist/src/cli/commands/linear.js.map +1 -0
- package/dist/src/cli/commands/log.d.ts +7 -0
- package/dist/src/cli/commands/log.d.ts.map +1 -0
- package/dist/src/cli/commands/log.js +168 -0
- package/dist/src/cli/commands/log.js.map +1 -0
- package/dist/src/cli/commands/onboard.d.ts +8 -0
- package/dist/src/cli/commands/onboard.d.ts.map +1 -0
- package/dist/src/cli/commands/onboard.js +363 -0
- package/dist/src/cli/commands/onboard.js.map +1 -0
- package/dist/src/cli/commands/projects.js +1 -1
- package/dist/src/cli/commands/projects.js.map +1 -1
- package/dist/src/cli/commands/search.d.ts +7 -0
- package/dist/src/cli/commands/search.d.ts.map +1 -0
- package/dist/src/cli/commands/search.js +162 -0
- package/dist/src/cli/commands/search.js.map +1 -0
- package/dist/src/cli/commands/session.d.ts +7 -0
- package/dist/src/cli/commands/session.d.ts.map +1 -0
- package/dist/src/cli/commands/session.js +222 -0
- package/dist/src/cli/commands/session.js.map +1 -0
- package/dist/src/cli/commands/tasks.d.ts +7 -0
- package/dist/src/cli/commands/tasks.d.ts.map +1 -0
- package/dist/src/cli/commands/tasks.js +229 -0
- package/dist/src/cli/commands/tasks.js.map +1 -0
- package/dist/src/cli/commands/webhook.d.ts +3 -0
- package/dist/src/cli/commands/webhook.d.ts.map +1 -0
- package/dist/src/cli/commands/webhook.js +157 -0
- package/dist/src/cli/commands/webhook.js.map +1 -0
- package/dist/src/cli/commands/worktree.d.ts +8 -0
- package/dist/src/cli/commands/worktree.d.ts.map +1 -0
- package/dist/src/cli/commands/worktree.js +339 -0
- package/dist/src/cli/commands/worktree.js.map +1 -0
- package/dist/src/cli/index.d.ts +2 -1
- package/dist/src/cli/index.d.ts.map +1 -1
- package/dist/src/cli/index.js +337 -50
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/utils/viewer.d.ts.map +1 -1
- package/dist/src/cli/utils/viewer.js +3 -1
- package/dist/src/cli/utils/viewer.js.map +1 -1
- package/dist/src/core/config/config-manager.d.ts +95 -0
- package/dist/src/core/config/config-manager.d.ts.map +1 -0
- package/dist/src/core/config/config-manager.js +359 -0
- package/dist/src/core/config/config-manager.js.map +1 -0
- package/dist/src/core/config/types.d.ts +72 -0
- package/dist/src/core/config/types.d.ts.map +1 -0
- package/dist/src/core/config/types.js +127 -0
- package/dist/src/core/config/types.js.map +1 -0
- package/dist/src/core/context/auto-context.d.ts +22 -0
- package/dist/src/core/context/auto-context.d.ts.map +1 -0
- package/dist/src/core/context/auto-context.js +77 -0
- package/dist/src/core/context/auto-context.js.map +1 -0
- package/dist/src/core/context/compaction-handler.d.ts +119 -0
- package/dist/src/core/context/compaction-handler.d.ts.map +1 -0
- package/dist/src/core/context/compaction-handler.js +306 -0
- package/dist/src/core/context/compaction-handler.js.map +1 -0
- package/dist/src/core/context/frame-manager.d.ts +4 -0
- package/dist/src/core/context/frame-manager.d.ts.map +1 -1
- package/dist/src/core/context/frame-manager.js +350 -144
- package/dist/src/core/context/frame-manager.js.map +1 -1
- package/dist/src/core/context/model-aware-compaction.d.ts +101 -0
- package/dist/src/core/context/model-aware-compaction.d.ts.map +1 -0
- package/dist/src/core/context/model-aware-compaction.js +616 -0
- package/dist/src/core/context/model-aware-compaction.js.map +1 -0
- package/dist/src/core/errors/index.d.ts +135 -0
- package/dist/src/core/errors/index.d.ts.map +1 -0
- package/dist/src/core/errors/index.js +274 -0
- package/dist/src/core/errors/index.js.map +1 -0
- package/dist/src/core/errors/recovery.d.ts +86 -0
- package/dist/src/core/errors/recovery.d.ts.map +1 -0
- package/dist/src/core/errors/recovery.js +274 -0
- package/dist/src/core/errors/recovery.js.map +1 -0
- package/dist/src/core/projects/project-manager.d.ts.map +1 -1
- package/dist/src/core/projects/project-manager.js +240 -122
- package/dist/src/core/projects/project-manager.js.map +1 -1
- package/dist/src/core/query/query-parser.d.ts +104 -0
- package/dist/src/core/query/query-parser.d.ts.map +1 -0
- package/dist/src/core/query/query-parser.js +347 -0
- package/dist/src/core/query/query-parser.js.map +1 -0
- package/dist/src/core/retrieval/index.d.ts +8 -0
- package/dist/src/core/retrieval/index.d.ts.map +1 -0
- package/dist/src/core/retrieval/index.js +8 -0
- package/dist/src/core/retrieval/index.js.map +1 -0
- package/dist/src/core/retrieval/llm-context-retrieval.d.ts +71 -0
- package/dist/src/core/retrieval/llm-context-retrieval.d.ts.map +1 -0
- package/dist/src/core/retrieval/llm-context-retrieval.js +545 -0
- package/dist/src/core/retrieval/llm-context-retrieval.js.map +1 -0
- package/dist/src/core/retrieval/summary-generator.d.ts +63 -0
- package/dist/src/core/retrieval/summary-generator.d.ts.map +1 -0
- package/dist/src/core/retrieval/summary-generator.js +622 -0
- package/dist/src/core/retrieval/summary-generator.js.map +1 -0
- package/dist/src/core/retrieval/types.d.ts +257 -0
- package/dist/src/core/retrieval/types.d.ts.map +1 -0
- package/dist/src/core/retrieval/types.js +18 -0
- package/dist/src/core/retrieval/types.js.map +1 -0
- package/dist/src/core/session/index.d.ts +2 -0
- package/dist/src/core/session/index.d.ts.map +1 -0
- package/dist/src/core/session/index.js +2 -0
- package/dist/src/core/session/index.js.map +1 -0
- package/dist/src/core/session/session-manager.d.ts +69 -0
- package/dist/src/core/session/session-manager.d.ts.map +1 -0
- package/dist/src/core/session/session-manager.js +311 -0
- package/dist/src/core/session/session-manager.js.map +1 -0
- package/dist/src/core/trace/trace-detector.d.ts +108 -0
- package/dist/src/core/trace/trace-detector.d.ts.map +1 -0
- package/dist/src/core/trace/trace-detector.demo.d.ts +5 -0
- package/dist/src/core/trace/trace-detector.demo.d.ts.map +1 -0
- package/dist/src/core/trace/trace-detector.demo.js +145 -0
- package/dist/src/core/trace/trace-detector.demo.js.map +1 -0
- package/dist/src/core/trace/trace-detector.js +425 -0
- package/dist/src/core/trace/trace-detector.js.map +1 -0
- package/dist/src/core/trace/trace-store.d.ts +60 -0
- package/dist/src/core/trace/trace-store.d.ts.map +1 -0
- package/dist/src/core/trace/trace-store.js +323 -0
- package/dist/src/core/trace/trace-store.js.map +1 -0
- package/dist/src/core/trace/types.d.ts +81 -0
- package/dist/src/core/trace/types.d.ts.map +1 -0
- package/dist/src/core/trace/types.js +70 -0
- package/dist/src/core/trace/types.js.map +1 -0
- package/dist/src/core/utils/update-checker.d.ts.map +1 -1
- package/dist/src/core/utils/update-checker.js +82 -25
- package/dist/src/core/utils/update-checker.js.map +1 -1
- package/dist/src/core/worktree/worktree-manager.d.ts +110 -0
- package/dist/src/core/worktree/worktree-manager.d.ts.map +1 -0
- package/dist/src/core/worktree/worktree-manager.js +456 -0
- package/dist/src/core/worktree/worktree-manager.js.map +1 -0
- package/dist/src/features/analytics/core/analytics-service.d.ts +6 -0
- package/dist/src/features/analytics/core/analytics-service.d.ts.map +1 -1
- package/dist/src/features/analytics/core/analytics-service.js +125 -10
- package/dist/src/features/analytics/core/analytics-service.js.map +1 -1
- package/dist/src/features/analytics/queries/metrics-queries.d.ts.map +1 -1
- package/dist/src/features/analytics/queries/metrics-queries.js +220 -163
- package/dist/src/features/analytics/queries/metrics-queries.js.map +1 -1
- package/dist/src/features/browser/browser-mcp.d.ts.map +1 -1
- package/dist/src/features/browser/browser-mcp.js +3 -0
- package/dist/src/features/browser/browser-mcp.js.map +1 -1
- package/dist/src/features/tasks/pebbles-task-store.d.ts +4 -0
- package/dist/src/features/tasks/pebbles-task-store.d.ts.map +1 -1
- package/dist/src/features/tasks/pebbles-task-store.js +299 -141
- package/dist/src/features/tasks/pebbles-task-store.js.map +1 -1
- package/dist/src/integrations/linear/client.d.ts +28 -1
- package/dist/src/integrations/linear/client.d.ts.map +1 -1
- package/dist/src/integrations/linear/client.js +87 -0
- package/dist/src/integrations/linear/client.js.map +1 -1
- package/dist/src/integrations/linear/sync-manager.d.ts +76 -0
- package/dist/src/integrations/linear/sync-manager.d.ts.map +1 -0
- package/dist/src/integrations/linear/sync-manager.js +223 -0
- package/dist/src/integrations/linear/sync-manager.js.map +1 -0
- package/dist/src/integrations/linear/sync-service.d.ts +25 -0
- package/dist/src/integrations/linear/sync-service.d.ts.map +1 -0
- package/dist/src/integrations/linear/sync-service.js +198 -0
- package/dist/src/integrations/linear/sync-service.js.map +1 -0
- package/dist/src/integrations/linear/sync.d.ts +23 -1
- package/dist/src/integrations/linear/sync.d.ts.map +1 -1
- package/dist/src/integrations/linear/sync.js +156 -9
- package/dist/src/integrations/linear/sync.js.map +1 -1
- package/dist/src/integrations/linear/types.d.ts +75 -0
- package/dist/src/integrations/linear/types.d.ts.map +1 -0
- package/dist/src/integrations/linear/types.js +2 -0
- package/dist/src/integrations/linear/types.js.map +1 -0
- package/dist/src/integrations/linear/webhook-server.d.ts +32 -0
- package/dist/src/integrations/linear/webhook-server.d.ts.map +1 -0
- package/dist/src/integrations/linear/webhook-server.js +188 -0
- package/dist/src/integrations/linear/webhook-server.js.map +1 -0
- package/dist/src/integrations/linear/webhook.d.ts +95 -0
- package/dist/src/integrations/linear/webhook.d.ts.map +1 -0
- package/dist/src/integrations/linear/webhook.js +204 -0
- package/dist/src/integrations/linear/webhook.js.map +1 -0
- package/dist/src/integrations/mcp/server.d.ts +14 -0
- package/dist/src/integrations/mcp/server.d.ts.map +1 -1
- package/dist/src/integrations/mcp/server.js +849 -61
- package/dist/src/integrations/mcp/server.js.map +1 -1
- package/dist/src/integrations/mcp/trace-test.d.ts +5 -0
- package/dist/src/integrations/mcp/trace-test.d.ts.map +1 -0
- package/dist/src/integrations/mcp/trace-test.js +54 -0
- package/dist/src/integrations/mcp/trace-test.js.map +1 -0
- package/dist/src/servers/production/auth-middleware.d.ts +2 -2
- package/dist/src/servers/production/auth-middleware.d.ts.map +1 -1
- package/dist/src/servers/production/auth-middleware.js +1 -1
- package/dist/src/servers/production/auth-middleware.js.map +1 -1
- package/dist/src/services/config-service.d.ts +44 -0
- package/dist/src/services/config-service.d.ts.map +1 -0
- package/dist/src/services/config-service.js +61 -0
- package/dist/src/services/config-service.js.map +1 -0
- package/dist/src/services/context-service.d.ts +17 -0
- package/dist/src/services/context-service.d.ts.map +1 -0
- package/dist/src/services/context-service.js +88 -0
- package/dist/src/services/context-service.js.map +1 -0
- package/dist/src/types/task.d.ts +27 -0
- package/dist/src/types/task.d.ts.map +1 -0
- package/dist/src/types/task.js +2 -0
- package/dist/src/types/task.js.map +1 -0
- package/dist/src/utils/logger.d.ts +13 -0
- package/dist/src/utils/logger.d.ts.map +1 -0
- package/dist/src/utils/logger.js +52 -0
- package/dist/src/utils/logger.js.map +1 -0
- package/package.json +24 -10
- package/dist/attention-scoring/src/attention-tracker.d.ts +0 -79
- package/dist/attention-scoring/src/attention-tracker.d.ts.map +0 -1
- package/dist/attention-scoring/src/attention-tracker.js +0 -488
- package/dist/attention-scoring/src/attention-tracker.js.map +0 -1
- package/dist/attention-scoring/src/mcp-integration.d.ts +0 -56
- package/dist/attention-scoring/src/mcp-integration.d.ts.map +0 -1
- package/dist/attention-scoring/src/mcp-integration.js +0 -369
- package/dist/attention-scoring/src/mcp-integration.js.map +0 -1
- package/dist/index.js +0 -382
- package/dist/p2p-sync/src/p2p-sync.d.ts +0 -81
- package/dist/p2p-sync/src/p2p-sync.d.ts.map +0 -1
- package/dist/p2p-sync/src/p2p-sync.js +0 -457
- package/dist/p2p-sync/src/p2p-sync.js.map +0 -1
- package/dist/p2p-sync/src/team-context-sync.d.ts +0 -99
- package/dist/p2p-sync/src/team-context-sync.d.ts.map +0 -1
- package/dist/p2p-sync/src/team-context-sync.js +0 -491
- package/dist/p2p-sync/src/team-context-sync.js.map +0 -1
- package/dist/src/analytics/api/analytics-api.d.ts +0 -24
- package/dist/src/analytics/api/analytics-api.d.ts.map +0 -1
- package/dist/src/analytics/api/analytics-api.js +0 -279
- package/dist/src/analytics/api/analytics-api.js.map +0 -1
- package/dist/src/analytics/core/analytics-service.d.ts +0 -23
- package/dist/src/analytics/core/analytics-service.d.ts.map +0 -1
- package/dist/src/analytics/core/analytics-service.js +0 -160
- package/dist/src/analytics/core/analytics-service.js.map +0 -1
- package/dist/src/analytics/index.d.ts +0 -12
- package/dist/src/analytics/index.d.ts.map +0 -1
- package/dist/src/analytics/index.js +0 -11
- package/dist/src/analytics/index.js.map +0 -1
- package/dist/src/analytics/queries/metrics-queries.d.ts +0 -11
- package/dist/src/analytics/queries/metrics-queries.d.ts.map +0 -1
- package/dist/src/analytics/queries/metrics-queries.js +0 -179
- package/dist/src/analytics/queries/metrics-queries.js.map +0 -1
- package/dist/src/analytics/types/metrics.d.ts +0 -60
- package/dist/src/analytics/types/metrics.d.ts.map +0 -1
- package/dist/src/analytics/types/metrics.js +0 -2
- package/dist/src/analytics/types/metrics.js.map +0 -1
- package/dist/src/beads/beads-task-store.d.ts +0 -117
- package/dist/src/beads/beads-task-store.d.ts.map +0 -1
- package/dist/src/beads/beads-task-store.js +0 -318
- package/dist/src/beads/beads-task-store.js.map +0 -1
- package/dist/src/beads/task-aware-context.d.ts +0 -103
- package/dist/src/beads/task-aware-context.d.ts.map +0 -1
- package/dist/src/beads/task-aware-context.js +0 -395
- package/dist/src/beads/task-aware-context.js.map +0 -1
- package/dist/src/beads-task-store.d.ts +0 -117
- package/dist/src/beads-task-store.d.ts.map +0 -1
- package/dist/src/beads-task-store.js +0 -318
- package/dist/src/beads-task-store.js.map +0 -1
- package/dist/src/cli/analytics-viewer.d.ts +0 -3
- package/dist/src/cli/analytics-viewer.d.ts.map +0 -1
- package/dist/src/cli/analytics-viewer.js +0 -89
- package/dist/src/cli/analytics-viewer.js.map +0 -1
- package/dist/src/cli/cli.d.ts +0 -7
- package/dist/src/cli/cli.d.ts.map +0 -1
- package/dist/src/cli/cli.js +0 -704
- package/dist/src/cli/cli.js.map +0 -1
- package/dist/src/cli/project-commands.d.ts +0 -8
- package/dist/src/cli/project-commands.d.ts.map +0 -1
- package/dist/src/cli/project-commands.js +0 -212
- package/dist/src/cli/project-commands.js.map +0 -1
- package/dist/src/cli.d.ts +0 -7
- package/dist/src/cli.d.ts.map +0 -1
- package/dist/src/cli.js +0 -73
- package/dist/src/cli.js.map +0 -1
- package/dist/src/core/error-handler.d.ts +0 -46
- package/dist/src/core/error-handler.d.ts.map +0 -1
- package/dist/src/core/error-handler.js +0 -212
- package/dist/src/core/error-handler.js.map +0 -1
- package/dist/src/core/frame-manager.d.ts +0 -106
- package/dist/src/core/frame-manager.d.ts.map +0 -1
- package/dist/src/core/frame-manager.js +0 -387
- package/dist/src/core/frame-manager.js.map +0 -1
- package/dist/src/core/logger.d.ts +0 -24
- package/dist/src/core/logger.d.ts.map +0 -1
- package/dist/src/core/logger.js +0 -121
- package/dist/src/core/logger.js.map +0 -1
- package/dist/src/core/logger.test.d.ts +0 -2
- package/dist/src/core/logger.test.d.ts.map +0 -1
- package/dist/src/core/logger.test.js +0 -31
- package/dist/src/core/logger.test.js.map +0 -1
- package/dist/src/core/progress-tracker.d.ts +0 -95
- package/dist/src/core/progress-tracker.d.ts.map +0 -1
- package/dist/src/core/progress-tracker.js +0 -178
- package/dist/src/core/progress-tracker.js.map +0 -1
- package/dist/src/core/project-manager.d.ts +0 -130
- package/dist/src/core/project-manager.d.ts.map +0 -1
- package/dist/src/core/project-manager.js +0 -582
- package/dist/src/core/project-manager.js.map +0 -1
- package/dist/src/core/update-checker.d.ts +0 -38
- package/dist/src/core/update-checker.d.ts.map +0 -1
- package/dist/src/core/update-checker.js +0 -156
- package/dist/src/core/update-checker.js.map +0 -1
- package/dist/src/error-handler.d.ts +0 -42
- package/dist/src/error-handler.d.ts.map +0 -1
- package/dist/src/error-handler.js +0 -155
- package/dist/src/error-handler.js.map +0 -1
- package/dist/src/frame-manager.d.ts +0 -106
- package/dist/src/frame-manager.d.ts.map +0 -1
- package/dist/src/frame-manager.js +0 -361
- package/dist/src/frame-manager.js.map +0 -1
- package/dist/src/integrations/browser-mcp.d.ts +0 -94
- package/dist/src/integrations/browser-mcp.d.ts.map +0 -1
- package/dist/src/integrations/browser-mcp.js +0 -431
- package/dist/src/integrations/browser-mcp.js.map +0 -1
- package/dist/src/integrations/linear-auth.d.ts +0 -99
- package/dist/src/integrations/linear-auth.d.ts.map +0 -1
- package/dist/src/integrations/linear-auth.js +0 -319
- package/dist/src/integrations/linear-auth.js.map +0 -1
- package/dist/src/integrations/linear-auto-sync.d.ts +0 -77
- package/dist/src/integrations/linear-auto-sync.d.ts.map +0 -1
- package/dist/src/integrations/linear-auto-sync.js +0 -268
- package/dist/src/integrations/linear-auto-sync.js.map +0 -1
- package/dist/src/integrations/linear-client.d.ts +0 -86
- package/dist/src/integrations/linear-client.d.ts.map +0 -1
- package/dist/src/integrations/linear-client.js +0 -277
- package/dist/src/integrations/linear-client.js.map +0 -1
- package/dist/src/integrations/linear-config.d.ts +0 -51
- package/dist/src/integrations/linear-config.d.ts.map +0 -1
- package/dist/src/integrations/linear-config.js +0 -103
- package/dist/src/integrations/linear-config.js.map +0 -1
- package/dist/src/integrations/linear-sync.d.ts +0 -97
- package/dist/src/integrations/linear-sync.d.ts.map +0 -1
- package/dist/src/integrations/linear-sync.js +0 -391
- package/dist/src/integrations/linear-sync.js.map +0 -1
- package/dist/src/logger.d.ts +0 -24
- package/dist/src/logger.d.ts.map +0 -1
- package/dist/src/logger.js +0 -120
- package/dist/src/logger.js.map +0 -1
- package/dist/src/mcp/mcp-server.d.ts +0 -40
- package/dist/src/mcp/mcp-server.d.ts.map +0 -1
- package/dist/src/mcp/mcp-server.js +0 -828
- package/dist/src/mcp/mcp-server.js.map +0 -1
- package/dist/src/mcp-server.d.ts +0 -32
- package/dist/src/mcp-server.d.ts.map +0 -1
- package/dist/src/mcp-server.js +0 -441
- package/dist/src/mcp-server.js.map +0 -1
- package/dist/src/pebbles/pebbles-task-store.d.ts +0 -117
- package/dist/src/pebbles/pebbles-task-store.d.ts.map +0 -1
- package/dist/src/pebbles/pebbles-task-store.js +0 -335
- package/dist/src/pebbles/pebbles-task-store.js.map +0 -1
- package/dist/src/pebbles/task-aware-context.d.ts +0 -103
- package/dist/src/pebbles/task-aware-context.d.ts.map +0 -1
- package/dist/src/pebbles/task-aware-context.js +0 -412
- package/dist/src/pebbles/task-aware-context.js.map +0 -1
- package/dist/src/railway/index.d.ts +0 -7
- package/dist/src/railway/index.d.ts.map +0 -1
- package/dist/src/railway/index.js +0 -401
- package/dist/src/railway/index.js.map +0 -1
- package/dist/src/runway/auth/auth-middleware.d.ts +0 -66
- package/dist/src/runway/auth/auth-middleware.d.ts.map +0 -1
- package/dist/src/runway/auth/auth-middleware.js +0 -337
- package/dist/src/runway/auth/auth-middleware.js.map +0 -1
- package/dist/src/runway/server/runway-mcp-server.d.ts +0 -46
- package/dist/src/runway/server/runway-mcp-server.d.ts.map +0 -1
- package/dist/src/runway/server/runway-mcp-server.js +0 -601
- package/dist/src/runway/server/runway-mcp-server.js.map +0 -1
- package/dist/src/runway.bak/auth/auth-middleware.d.ts +0 -66
- package/dist/src/runway.bak/auth/auth-middleware.d.ts.map +0 -1
- package/dist/src/runway.bak/auth/auth-middleware.js +0 -337
- package/dist/src/runway.bak/auth/auth-middleware.js.map +0 -1
- package/dist/src/runway.bak/server/runway-mcp-server.d.ts +0 -46
- package/dist/src/runway.bak/server/runway-mcp-server.d.ts.map +0 -1
- package/dist/src/runway.bak/server/runway-mcp-server.js +0 -601
- package/dist/src/runway.bak/server/runway-mcp-server.js.map +0 -1
- package/dist/src/task-aware-context.d.ts +0 -103
- package/dist/src/task-aware-context.d.ts.map +0 -1
- package/dist/src/task-aware-context.js +0 -395
- package/dist/src/task-aware-context.js.map +0 -1
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Update checker for StackMemory
|
|
3
|
-
* Checks npm registry for newer versions
|
|
4
|
-
*/
|
|
5
|
-
import { execSync } from 'child_process';
|
|
6
|
-
import { existsSync, readFileSync, writeFileSync } from 'fs';
|
|
7
|
-
import { join } from 'path';
|
|
8
|
-
import { homedir } from 'os';
|
|
9
|
-
import { logger } from './logger.js';
|
|
10
|
-
export class UpdateChecker {
|
|
11
|
-
static CACHE_FILE = join(homedir(), '.stackmemory', 'update-check.json');
|
|
12
|
-
static CHECK_INTERVAL = 24 * 60 * 60 * 1000; // 24 hours
|
|
13
|
-
static PACKAGE_NAME = '@stackmemoryai/stackmemory';
|
|
14
|
-
/**
|
|
15
|
-
* Check for updates and display notification if needed
|
|
16
|
-
*/
|
|
17
|
-
static async checkForUpdates(currentVersion, silent = false) {
|
|
18
|
-
try {
|
|
19
|
-
// Check cache first
|
|
20
|
-
const cache = this.loadCache();
|
|
21
|
-
const now = Date.now();
|
|
22
|
-
// Skip check if we checked recently
|
|
23
|
-
if (cache && now - cache.lastChecked < this.CHECK_INTERVAL) {
|
|
24
|
-
if (!silent &&
|
|
25
|
-
cache.latestVersion &&
|
|
26
|
-
cache.latestVersion !== currentVersion) {
|
|
27
|
-
this.displayUpdateNotification(currentVersion, cache.latestVersion);
|
|
28
|
-
}
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
// Fetch latest version from npm
|
|
32
|
-
const latestVersion = await this.fetchLatestVersion();
|
|
33
|
-
// Update cache
|
|
34
|
-
this.saveCache({
|
|
35
|
-
lastChecked: now,
|
|
36
|
-
latestVersion,
|
|
37
|
-
currentVersion,
|
|
38
|
-
});
|
|
39
|
-
// Display notification if update available
|
|
40
|
-
if (!silent &&
|
|
41
|
-
latestVersion &&
|
|
42
|
-
this.isNewerVersion(currentVersion, latestVersion)) {
|
|
43
|
-
this.displayUpdateNotification(currentVersion, latestVersion);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
catch (error) {
|
|
47
|
-
// Silently fail - don't interrupt user workflow
|
|
48
|
-
logger.debug('Update check failed:', { error: error.message });
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Fetch latest version from npm registry
|
|
53
|
-
*/
|
|
54
|
-
static async fetchLatestVersion() {
|
|
55
|
-
try {
|
|
56
|
-
const output = execSync(`npm view ${this.PACKAGE_NAME} version`, {
|
|
57
|
-
encoding: 'utf-8',
|
|
58
|
-
stdio: ['pipe', 'pipe', 'ignore'],
|
|
59
|
-
}).trim();
|
|
60
|
-
return output;
|
|
61
|
-
}
|
|
62
|
-
catch (error) {
|
|
63
|
-
logger.debug('Failed to fetch latest version:', {
|
|
64
|
-
error: error.message,
|
|
65
|
-
});
|
|
66
|
-
return '';
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Compare version strings
|
|
71
|
-
*/
|
|
72
|
-
static isNewerVersion(current, latest) {
|
|
73
|
-
const currentParts = current.split('.').map(Number);
|
|
74
|
-
const latestParts = latest.split('.').map(Number);
|
|
75
|
-
for (let i = 0; i < 3; i++) {
|
|
76
|
-
if (latestParts[i] > currentParts[i])
|
|
77
|
-
return true;
|
|
78
|
-
if (latestParts[i] < currentParts[i])
|
|
79
|
-
return false;
|
|
80
|
-
}
|
|
81
|
-
return false;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Display update notification
|
|
85
|
-
*/
|
|
86
|
-
static displayUpdateNotification(current, latest) {
|
|
87
|
-
console.log('\n' + '─'.repeat(60));
|
|
88
|
-
console.log('📦 StackMemory Update Available!');
|
|
89
|
-
console.log(` Current: v${current}`);
|
|
90
|
-
console.log(` Latest: v${latest}`);
|
|
91
|
-
console.log('\n Update with:');
|
|
92
|
-
console.log(' npm install -g @stackmemoryai/stackmemory@latest');
|
|
93
|
-
console.log('─'.repeat(60) + '\n');
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Load update cache
|
|
97
|
-
*/
|
|
98
|
-
static loadCache() {
|
|
99
|
-
try {
|
|
100
|
-
if (existsSync(this.CACHE_FILE)) {
|
|
101
|
-
const data = readFileSync(this.CACHE_FILE, 'utf-8');
|
|
102
|
-
return JSON.parse(data);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
catch (error) {
|
|
106
|
-
logger.debug('Failed to load update cache:', {
|
|
107
|
-
error: error.message,
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
return null;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Save update cache
|
|
114
|
-
*/
|
|
115
|
-
static saveCache(cache) {
|
|
116
|
-
try {
|
|
117
|
-
const dir = join(homedir(), '.stackmemory');
|
|
118
|
-
if (!existsSync(dir)) {
|
|
119
|
-
// Create directory if it doesn't exist
|
|
120
|
-
execSync(`mkdir -p "${dir}"`, { stdio: 'ignore' });
|
|
121
|
-
}
|
|
122
|
-
writeFileSync(this.CACHE_FILE, JSON.stringify(cache, null, 2));
|
|
123
|
-
}
|
|
124
|
-
catch (error) {
|
|
125
|
-
logger.debug('Failed to save update cache:', {
|
|
126
|
-
error: error.message,
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Force check for updates (ignores cache)
|
|
132
|
-
*/
|
|
133
|
-
static async forceCheck(currentVersion) {
|
|
134
|
-
try {
|
|
135
|
-
const latestVersion = await this.fetchLatestVersion();
|
|
136
|
-
// Update cache
|
|
137
|
-
this.saveCache({
|
|
138
|
-
lastChecked: Date.now(),
|
|
139
|
-
latestVersion,
|
|
140
|
-
currentVersion,
|
|
141
|
-
});
|
|
142
|
-
if (latestVersion) {
|
|
143
|
-
if (this.isNewerVersion(currentVersion, latestVersion)) {
|
|
144
|
-
this.displayUpdateNotification(currentVersion, latestVersion);
|
|
145
|
-
}
|
|
146
|
-
else {
|
|
147
|
-
console.log(`✅ StackMemory is up to date (v${currentVersion})`);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
catch (error) {
|
|
152
|
-
console.error('❌ Update check failed:', error.message);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
//# sourceMappingURL=update-checker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"update-checker.js","sourceRoot":"","sources":["../../../src/core/update-checker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Comprehensive error handling for StackMemory CLI
|
|
3
|
-
*/
|
|
4
|
-
export declare enum ErrorCode {
|
|
5
|
-
AUTH_FAILED = "AUTH_FAILED",
|
|
6
|
-
TOKEN_EXPIRED = "TOKEN_EXPIRED",
|
|
7
|
-
INVALID_CREDENTIALS = "INVALID_CREDENTIALS",
|
|
8
|
-
FILE_NOT_FOUND = "FILE_NOT_FOUND",
|
|
9
|
-
PERMISSION_DENIED = "PERMISSION_DENIED",
|
|
10
|
-
DISK_FULL = "DISK_FULL",
|
|
11
|
-
NOT_GIT_REPO = "NOT_GIT_REPO",
|
|
12
|
-
GIT_COMMAND_FAILED = "GIT_COMMAND_FAILED",
|
|
13
|
-
INVALID_BRANCH = "INVALID_BRANCH",
|
|
14
|
-
DB_CONNECTION_FAILED = "DB_CONNECTION_FAILED",
|
|
15
|
-
DB_QUERY_FAILED = "DB_QUERY_FAILED",
|
|
16
|
-
DB_CORRUPTION = "DB_CORRUPTION",
|
|
17
|
-
NETWORK_ERROR = "NETWORK_ERROR",
|
|
18
|
-
API_ERROR = "API_ERROR",
|
|
19
|
-
TIMEOUT = "TIMEOUT",
|
|
20
|
-
INVALID_INPUT = "INVALID_INPUT",
|
|
21
|
-
VALIDATION_FAILED = "VALIDATION_FAILED",
|
|
22
|
-
UNKNOWN_ERROR = "UNKNOWN_ERROR",
|
|
23
|
-
OPERATION_FAILED = "OPERATION_FAILED",
|
|
24
|
-
CONFIGURATION_ERROR = "CONFIGURATION_ERROR"
|
|
25
|
-
}
|
|
26
|
-
export declare class StackMemoryError extends Error {
|
|
27
|
-
readonly code: ErrorCode;
|
|
28
|
-
readonly context: Record<string, unknown>;
|
|
29
|
-
readonly userMessage: string;
|
|
30
|
-
readonly recoverable: boolean;
|
|
31
|
-
constructor(code: ErrorCode, message: string, userMessage?: string, context?: Record<string, unknown>, recoverable?: boolean, cause?: Error);
|
|
32
|
-
private getDefaultUserMessage;
|
|
33
|
-
static fromNodeError(nodeError: NodeJS.ErrnoException, context?: Record<string, unknown>): StackMemoryError;
|
|
34
|
-
}
|
|
35
|
-
export declare class ErrorHandler {
|
|
36
|
-
static handle(error: unknown, operation: string): never;
|
|
37
|
-
static safeExecute<T>(operation: () => Promise<T> | T, operationName: string, fallback?: T): Promise<T | undefined>;
|
|
38
|
-
}
|
|
39
|
-
export declare const validateInput: (value: unknown, name: string, validator: (val: unknown) => boolean) => asserts value is NonNullable<unknown>;
|
|
40
|
-
export declare const validateEmail: (email: string) => asserts email is string;
|
|
41
|
-
export declare const validatePath: (filePath: string) => asserts filePath is string;
|
|
42
|
-
//# sourceMappingURL=error-handler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"error-handler.d.ts","sourceRoot":"","sources":["../../src/error-handler.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,oBAAY,SAAS;IAEnB,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,mBAAmB,wBAAwB;IAG3C,cAAc,mBAAmB;IACjC,iBAAiB,sBAAsB;IACvC,SAAS,cAAc;IAGvB,YAAY,iBAAiB;IAC7B,kBAAkB,uBAAuB;IACzC,cAAc,mBAAmB;IAGjC,oBAAoB,yBAAyB;IAC7C,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAG/B,aAAa,kBAAkB;IAC/B,SAAS,cAAc;IACvB,OAAO,YAAY;IAGnB,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;IAGvC,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,mBAAmB,wBAAwB;CAC5C;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,SAAgB,IAAI,EAAE,SAAS,CAAC;IAChC,SAAgB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjD,SAAgB,WAAW,EAAE,MAAM,CAAC;IACpC,SAAgB,WAAW,EAAE,OAAO,CAAC;gBAGnC,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EACrC,WAAW,GAAE,OAAe,EAC5B,KAAK,CAAC,EAAE,KAAK;IAsBf,OAAO,CAAC,qBAAqB;IAqB7B,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,cAAc,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,gBAAgB;CAwDhH;AAED,qBAAa,YAAY;IACvB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK;WAkD1C,WAAW,CAAC,CAAC,EACxB,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAC/B,aAAa,EAAE,MAAM,EACrB,QAAQ,CAAC,EAAE,CAAC,GACX,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAY1B;AAGD,eAAO,MAAM,aAAa,GAAI,OAAO,OAAO,EAAE,MAAM,MAAM,EAAE,WAAW,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,KAAG,QAAQ,KAAK,IAAI,WAAW,CAAC,OAAO,CAUtI,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,KAAG,QAAQ,KAAK,IAAI,MAW9D,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,UAAU,MAAM,KAAG,QAAQ,QAAQ,IAAI,MAUnE,CAAC"}
|
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Comprehensive error handling for StackMemory CLI
|
|
3
|
-
*/
|
|
4
|
-
import { logger } from './logger.js';
|
|
5
|
-
export var ErrorCode;
|
|
6
|
-
(function (ErrorCode) {
|
|
7
|
-
// Authentication errors
|
|
8
|
-
ErrorCode["AUTH_FAILED"] = "AUTH_FAILED";
|
|
9
|
-
ErrorCode["TOKEN_EXPIRED"] = "TOKEN_EXPIRED";
|
|
10
|
-
ErrorCode["INVALID_CREDENTIALS"] = "INVALID_CREDENTIALS";
|
|
11
|
-
// File system errors
|
|
12
|
-
ErrorCode["FILE_NOT_FOUND"] = "FILE_NOT_FOUND";
|
|
13
|
-
ErrorCode["PERMISSION_DENIED"] = "PERMISSION_DENIED";
|
|
14
|
-
ErrorCode["DISK_FULL"] = "DISK_FULL";
|
|
15
|
-
// Git operation errors
|
|
16
|
-
ErrorCode["NOT_GIT_REPO"] = "NOT_GIT_REPO";
|
|
17
|
-
ErrorCode["GIT_COMMAND_FAILED"] = "GIT_COMMAND_FAILED";
|
|
18
|
-
ErrorCode["INVALID_BRANCH"] = "INVALID_BRANCH";
|
|
19
|
-
// Database errors
|
|
20
|
-
ErrorCode["DB_CONNECTION_FAILED"] = "DB_CONNECTION_FAILED";
|
|
21
|
-
ErrorCode["DB_QUERY_FAILED"] = "DB_QUERY_FAILED";
|
|
22
|
-
ErrorCode["DB_CORRUPTION"] = "DB_CORRUPTION";
|
|
23
|
-
// Network errors
|
|
24
|
-
ErrorCode["NETWORK_ERROR"] = "NETWORK_ERROR";
|
|
25
|
-
ErrorCode["API_ERROR"] = "API_ERROR";
|
|
26
|
-
ErrorCode["TIMEOUT"] = "TIMEOUT";
|
|
27
|
-
// Validation errors
|
|
28
|
-
ErrorCode["INVALID_INPUT"] = "INVALID_INPUT";
|
|
29
|
-
ErrorCode["VALIDATION_FAILED"] = "VALIDATION_FAILED";
|
|
30
|
-
// General errors
|
|
31
|
-
ErrorCode["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
|
|
32
|
-
ErrorCode["OPERATION_FAILED"] = "OPERATION_FAILED";
|
|
33
|
-
ErrorCode["CONFIGURATION_ERROR"] = "CONFIGURATION_ERROR";
|
|
34
|
-
})(ErrorCode || (ErrorCode = {}));
|
|
35
|
-
export class StackMemoryError extends Error {
|
|
36
|
-
code;
|
|
37
|
-
context;
|
|
38
|
-
userMessage;
|
|
39
|
-
recoverable;
|
|
40
|
-
constructor(code, message, userMessage, context = {}, recoverable = false, cause) {
|
|
41
|
-
super(message);
|
|
42
|
-
this.name = 'StackMemoryError';
|
|
43
|
-
this.code = code;
|
|
44
|
-
this.context = context;
|
|
45
|
-
this.userMessage = userMessage || this.getDefaultUserMessage(code);
|
|
46
|
-
this.recoverable = recoverable;
|
|
47
|
-
if (cause && Error.captureStackTrace) {
|
|
48
|
-
Error.captureStackTrace(this, StackMemoryError);
|
|
49
|
-
}
|
|
50
|
-
// Log the error
|
|
51
|
-
logger.error(message, cause, {
|
|
52
|
-
code,
|
|
53
|
-
context,
|
|
54
|
-
recoverable,
|
|
55
|
-
userMessage: this.userMessage
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
getDefaultUserMessage(code) {
|
|
59
|
-
switch (code) {
|
|
60
|
-
case ErrorCode.AUTH_FAILED:
|
|
61
|
-
return 'Authentication failed. Please check your credentials and try again.';
|
|
62
|
-
case ErrorCode.NOT_GIT_REPO:
|
|
63
|
-
return 'This command requires a git repository. Please run it from within a git repository.';
|
|
64
|
-
case ErrorCode.PERMISSION_DENIED:
|
|
65
|
-
return 'Permission denied. Please check file permissions or run with appropriate privileges.';
|
|
66
|
-
case ErrorCode.NETWORK_ERROR:
|
|
67
|
-
return 'Network error. Please check your internet connection and try again.';
|
|
68
|
-
case ErrorCode.INVALID_INPUT:
|
|
69
|
-
return 'Invalid input provided. Please check your command and try again.';
|
|
70
|
-
case ErrorCode.DB_CONNECTION_FAILED:
|
|
71
|
-
return 'Database connection failed. Please try again or contact support if the issue persists.';
|
|
72
|
-
case ErrorCode.GIT_COMMAND_FAILED:
|
|
73
|
-
return 'Git operation failed. Please ensure your repository is in a valid state.';
|
|
74
|
-
default:
|
|
75
|
-
return 'An unexpected error occurred. Please try again or contact support.';
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
static fromNodeError(nodeError, context = {}) {
|
|
79
|
-
const code = nodeError.code;
|
|
80
|
-
switch (code) {
|
|
81
|
-
case 'ENOENT':
|
|
82
|
-
return new StackMemoryError(ErrorCode.FILE_NOT_FOUND, `File or directory not found: ${nodeError.path}`, 'The requested file or directory was not found.', { ...context, path: nodeError.path }, false, nodeError);
|
|
83
|
-
case 'EACCES':
|
|
84
|
-
case 'EPERM':
|
|
85
|
-
return new StackMemoryError(ErrorCode.PERMISSION_DENIED, `Permission denied: ${nodeError.path}`, 'Permission denied. Please check file permissions.', { ...context, path: nodeError.path }, true, nodeError);
|
|
86
|
-
case 'ENOSPC':
|
|
87
|
-
return new StackMemoryError(ErrorCode.DISK_FULL, 'No space left on device', 'Insufficient disk space. Please free up space and try again.', context, true, nodeError);
|
|
88
|
-
case 'ETIMEDOUT':
|
|
89
|
-
return new StackMemoryError(ErrorCode.TIMEOUT, 'Operation timed out', 'The operation timed out. Please try again.', context, true, nodeError);
|
|
90
|
-
default:
|
|
91
|
-
return new StackMemoryError(ErrorCode.UNKNOWN_ERROR, nodeError.message, 'An unexpected system error occurred.', { ...context, nodeErrorCode: code }, false, nodeError);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
export class ErrorHandler {
|
|
96
|
-
static handle(error, operation) {
|
|
97
|
-
if (error instanceof StackMemoryError) {
|
|
98
|
-
// Already a well-formed StackMemory error
|
|
99
|
-
console.error(`❌ ${error.userMessage}`);
|
|
100
|
-
if (error.recoverable) {
|
|
101
|
-
console.error('💡 This error may be recoverable. Please try again.');
|
|
102
|
-
}
|
|
103
|
-
process.exit(1);
|
|
104
|
-
}
|
|
105
|
-
if (error instanceof Error) {
|
|
106
|
-
// Convert Node.js error to StackMemoryError
|
|
107
|
-
let stackMemoryError;
|
|
108
|
-
if ('code' in error && typeof error.code === 'string') {
|
|
109
|
-
stackMemoryError = StackMemoryError.fromNodeError(error, { operation });
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
stackMemoryError = new StackMemoryError(ErrorCode.OPERATION_FAILED, `Operation '${operation}' failed: ${error.message}`, `Operation failed: ${error.message}`, { operation }, false, error);
|
|
113
|
-
}
|
|
114
|
-
console.error(`❌ ${stackMemoryError.userMessage}`);
|
|
115
|
-
if (stackMemoryError.recoverable) {
|
|
116
|
-
console.error('💡 This error may be recoverable. Please try again.');
|
|
117
|
-
}
|
|
118
|
-
process.exit(1);
|
|
119
|
-
}
|
|
120
|
-
// Unknown error type
|
|
121
|
-
const unknownError = new StackMemoryError(ErrorCode.UNKNOWN_ERROR, `Unknown error in operation '${operation}': ${String(error)}`, 'An unexpected error occurred.', { operation, errorType: typeof error }, false);
|
|
122
|
-
console.error(`❌ ${unknownError.userMessage}`);
|
|
123
|
-
process.exit(1);
|
|
124
|
-
}
|
|
125
|
-
static async safeExecute(operation, operationName, fallback) {
|
|
126
|
-
try {
|
|
127
|
-
return await operation();
|
|
128
|
-
}
|
|
129
|
-
catch (error) {
|
|
130
|
-
if (fallback !== undefined) {
|
|
131
|
-
logger.warn(`Operation '${operationName}' failed, using fallback`, { error: String(error) });
|
|
132
|
-
return fallback;
|
|
133
|
-
}
|
|
134
|
-
ErrorHandler.handle(error, operationName);
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
// Utility functions for common error scenarios
|
|
139
|
-
export const validateInput = (value, name, validator) => {
|
|
140
|
-
if (!validator(value)) {
|
|
141
|
-
throw new StackMemoryError(ErrorCode.INVALID_INPUT, `Invalid ${name}: ${String(value)}`, `Please provide a valid ${name}.`, { name, value }, true);
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
|
-
export const validateEmail = (email) => {
|
|
145
|
-
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
146
|
-
if (!emailRegex.test(email) || email.length > 254) {
|
|
147
|
-
throw new StackMemoryError(ErrorCode.INVALID_INPUT, `Invalid email format: ${email}`, 'Please provide a valid email address.', { email }, true);
|
|
148
|
-
}
|
|
149
|
-
};
|
|
150
|
-
export const validatePath = (filePath) => {
|
|
151
|
-
if (!filePath || filePath.includes('..') || filePath.includes('\0')) {
|
|
152
|
-
throw new StackMemoryError(ErrorCode.INVALID_INPUT, `Invalid path: ${filePath}`, 'Invalid file path provided.', { path: filePath }, true);
|
|
153
|
-
}
|
|
154
|
-
};
|
|
155
|
-
//# sourceMappingURL=error-handler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"error-handler.js","sourceRoot":"","sources":["../../src/error-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* StackMemory Frame Manager - Call Stack Implementation
|
|
3
|
-
* Manages nested frames representing the call stack of work
|
|
4
|
-
*/
|
|
5
|
-
import Database from 'better-sqlite3';
|
|
6
|
-
export type FrameType = 'task' | 'subtask' | 'tool_scope' | 'review' | 'write' | 'debug';
|
|
7
|
-
export type FrameState = 'active' | 'closed';
|
|
8
|
-
export interface Frame {
|
|
9
|
-
frame_id: string;
|
|
10
|
-
run_id: string;
|
|
11
|
-
project_id: string;
|
|
12
|
-
parent_frame_id?: string;
|
|
13
|
-
depth: number;
|
|
14
|
-
type: FrameType;
|
|
15
|
-
name: string;
|
|
16
|
-
state: FrameState;
|
|
17
|
-
inputs: Record<string, any>;
|
|
18
|
-
outputs: Record<string, any>;
|
|
19
|
-
digest_text?: string;
|
|
20
|
-
digest_json: Record<string, any>;
|
|
21
|
-
created_at: number;
|
|
22
|
-
closed_at?: number;
|
|
23
|
-
}
|
|
24
|
-
export interface FrameContext {
|
|
25
|
-
frameId: string;
|
|
26
|
-
header: {
|
|
27
|
-
goal: string;
|
|
28
|
-
constraints?: string[];
|
|
29
|
-
definitions?: Record<string, string>;
|
|
30
|
-
};
|
|
31
|
-
anchors: Anchor[];
|
|
32
|
-
recentEvents: Event[];
|
|
33
|
-
activeArtifacts: string[];
|
|
34
|
-
}
|
|
35
|
-
export interface Anchor {
|
|
36
|
-
anchor_id: string;
|
|
37
|
-
frame_id: string;
|
|
38
|
-
type: 'FACT' | 'DECISION' | 'CONSTRAINT' | 'INTERFACE_CONTRACT' | 'TODO' | 'RISK';
|
|
39
|
-
text: string;
|
|
40
|
-
priority: number;
|
|
41
|
-
metadata: Record<string, any>;
|
|
42
|
-
}
|
|
43
|
-
export interface Event {
|
|
44
|
-
event_id: string;
|
|
45
|
-
frame_id: string;
|
|
46
|
-
run_id: string;
|
|
47
|
-
seq: number;
|
|
48
|
-
event_type: 'user_message' | 'assistant_message' | 'tool_call' | 'tool_result' | 'decision' | 'constraint' | 'artifact' | 'observation';
|
|
49
|
-
payload: Record<string, any>;
|
|
50
|
-
ts: number;
|
|
51
|
-
}
|
|
52
|
-
export declare class FrameManager {
|
|
53
|
-
private db;
|
|
54
|
-
private currentRunId;
|
|
55
|
-
private projectId;
|
|
56
|
-
private activeStack;
|
|
57
|
-
constructor(db: Database.Database, projectId: string, runId?: string);
|
|
58
|
-
private initializeSchema;
|
|
59
|
-
private loadActiveStack;
|
|
60
|
-
private buildStackOrder;
|
|
61
|
-
/**
|
|
62
|
-
* Create a new frame and push to stack
|
|
63
|
-
*/
|
|
64
|
-
createFrame(options: {
|
|
65
|
-
type: FrameType;
|
|
66
|
-
name: string;
|
|
67
|
-
inputs?: Record<string, any>;
|
|
68
|
-
parentFrameId?: string;
|
|
69
|
-
}): string;
|
|
70
|
-
/**
|
|
71
|
-
* Close the current frame and generate digest
|
|
72
|
-
*/
|
|
73
|
-
closeFrame(frameId?: string, outputs?: Record<string, any>): void;
|
|
74
|
-
private closeChildFrames;
|
|
75
|
-
/**
|
|
76
|
-
* Generate digest for a frame
|
|
77
|
-
*/
|
|
78
|
-
private generateDigest;
|
|
79
|
-
private generateDigestText;
|
|
80
|
-
/**
|
|
81
|
-
* Add event to current frame
|
|
82
|
-
*/
|
|
83
|
-
addEvent(eventType: Event['event_type'], payload: Record<string, any>, frameId?: string): string;
|
|
84
|
-
/**
|
|
85
|
-
* Add anchor to frame
|
|
86
|
-
*/
|
|
87
|
-
addAnchor(type: Anchor['type'], text: string, priority?: number, metadata?: Record<string, any>, frameId?: string): string;
|
|
88
|
-
/**
|
|
89
|
-
* Get hot stack context for current active frames
|
|
90
|
-
*/
|
|
91
|
-
getHotStackContext(maxEvents?: number): FrameContext[];
|
|
92
|
-
/**
|
|
93
|
-
* Get active frame path (root to current)
|
|
94
|
-
*/
|
|
95
|
-
getActiveFramePath(): Frame[];
|
|
96
|
-
getCurrentFrameId(): string | undefined;
|
|
97
|
-
getStackDepth(): number;
|
|
98
|
-
private getFrameDepth;
|
|
99
|
-
private getFrame;
|
|
100
|
-
private getFrameEvents;
|
|
101
|
-
private getFrameAnchors;
|
|
102
|
-
private getNextEventSequence;
|
|
103
|
-
private extractConstraints;
|
|
104
|
-
private getActiveArtifacts;
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=frame-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"frame-manager.d.ts","sourceRoot":"","sources":["../../src/frame-manager.ts"],"names":[],"mappings":"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"}
|