@stackmemoryai/stackmemory 0.8.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (793) hide show
  1. package/LICENSE +64 -0
  2. package/README.md +54 -4
  3. package/dist/src/agents/core/agent-task-manager.js +0 -1
  4. package/dist/src/agents/verifiers/base-verifier.js +0 -1
  5. package/dist/src/agents/verifiers/formatter-verifier.js +0 -1
  6. package/dist/src/agents/verifiers/llm-judge.js +0 -1
  7. package/dist/src/cli/auto-detect.js +0 -1
  8. package/dist/src/cli/claude-sm-danger.js +0 -1
  9. package/dist/src/cli/claude-sm.js +69 -373
  10. package/dist/src/cli/codex-sm-danger.js +0 -1
  11. package/dist/src/cli/codex-sm.js +28 -1
  12. package/dist/src/cli/commands/api.js +0 -1
  13. package/dist/src/cli/commands/auto-background.js +0 -1
  14. package/dist/src/cli/commands/cleanup-processes.js +0 -1
  15. package/dist/src/cli/commands/clear.js +0 -1
  16. package/dist/src/cli/commands/config.js +0 -1
  17. package/dist/src/cli/commands/context-rehydrate.js +0 -1
  18. package/dist/src/cli/commands/context.js +0 -1
  19. package/dist/src/cli/commands/daemon.js +0 -1
  20. package/dist/src/cli/commands/dashboard.js +4 -5
  21. package/dist/src/cli/commands/db.js +0 -1
  22. package/dist/src/cli/commands/decision.js +0 -1
  23. package/dist/src/cli/commands/discovery.js +0 -1
  24. package/dist/src/cli/commands/handoff.js +0 -1
  25. package/dist/src/cli/commands/hooks.js +0 -1
  26. package/dist/src/cli/commands/linear.js +0 -1
  27. package/dist/src/cli/commands/log.js +0 -1
  28. package/dist/src/cli/commands/login.js +0 -1
  29. package/dist/src/cli/commands/migrate.js +0 -1
  30. package/dist/src/cli/commands/model.js +0 -1
  31. package/dist/src/cli/commands/onboard.js +22 -7
  32. package/dist/src/cli/commands/ping.js +0 -1
  33. package/dist/src/cli/commands/projects.js +0 -1
  34. package/dist/src/cli/commands/ralph.js +0 -1
  35. package/dist/src/cli/commands/retrieval.js +0 -1
  36. package/dist/src/cli/commands/search.js +0 -1
  37. package/dist/src/cli/commands/service.js +0 -1
  38. package/dist/src/cli/commands/session.js +0 -1
  39. package/dist/src/cli/commands/setup.js +1 -6
  40. package/dist/src/cli/commands/shell.js +0 -1
  41. package/dist/src/cli/commands/signup.js +0 -1
  42. package/dist/src/cli/commands/skills.js +4 -3
  43. package/dist/src/cli/commands/storage-tier.js +0 -1
  44. package/dist/src/cli/commands/sweep.js +0 -1
  45. package/dist/src/cli/commands/tasks.js +0 -1
  46. package/dist/src/cli/commands/worktree.js +10 -5
  47. package/dist/src/cli/index.js +9 -76
  48. package/dist/src/cli/opencode-sm.js +28 -1
  49. package/dist/src/cli/utils/viewer.js +0 -1
  50. package/dist/src/core/config/config-manager.js +0 -1
  51. package/dist/src/core/config/feature-flags.js +1 -14
  52. package/dist/src/core/config/storage-config.js +0 -1
  53. package/dist/src/core/config/types.js +0 -1
  54. package/dist/src/core/context/auto-context.js +0 -1
  55. package/dist/src/core/context/dual-stack-manager.js +0 -1
  56. package/dist/src/core/context/enhanced-rehydration.js +0 -2
  57. package/dist/src/core/context/frame-database.js +60 -6
  58. package/dist/src/core/context/frame-digest.js +0 -1
  59. package/dist/src/core/context/frame-handoff-manager.js +0 -1
  60. package/dist/src/core/context/frame-lifecycle-hooks.js +0 -1
  61. package/dist/src/core/context/frame-recovery.js +0 -1
  62. package/dist/src/core/context/frame-stack.js +0 -1
  63. package/dist/src/core/context/frame-types.js +0 -1
  64. package/dist/src/core/context/index.js +0 -1
  65. package/dist/src/core/context/permission-manager.js +0 -1
  66. package/dist/src/core/context/recursive-context-manager.js +3 -2
  67. package/dist/src/core/context/refactored-frame-manager.js +0 -1
  68. package/dist/src/core/context/shared-context-layer.js +0 -1
  69. package/dist/src/core/context/stack-merge-resolver.js +0 -1
  70. package/dist/src/core/context/validation.js +0 -1
  71. package/dist/src/core/database/batch-operations.js +0 -1
  72. package/dist/src/core/database/connection-pool.js +0 -1
  73. package/dist/src/core/database/database-adapter.js +0 -1
  74. package/dist/src/core/database/embedding-provider-factory.js +0 -1
  75. package/dist/src/core/database/embedding-provider.js +0 -1
  76. package/dist/src/core/database/migration-manager.js +0 -1
  77. package/dist/src/core/database/ollama-embedding-provider.js +0 -1
  78. package/dist/src/core/database/openai-embedding-provider.js +0 -1
  79. package/dist/src/core/database/query-cache.js +0 -1
  80. package/dist/src/core/database/query-router.js +0 -1
  81. package/dist/src/core/database/sqlite-adapter.js +18 -108
  82. package/dist/src/core/database/transformers-embedding-provider.js +0 -1
  83. package/dist/src/core/digest/enhanced-hybrid-digest.js +0 -1
  84. package/dist/src/core/digest/frame-digest-integration.js +0 -1
  85. package/dist/src/core/digest/hybrid-digest-generator.js +0 -1
  86. package/dist/src/core/digest/index.js +0 -1
  87. package/dist/src/core/digest/types.js +0 -1
  88. package/dist/src/core/errors/error-utils.js +0 -1
  89. package/dist/src/core/errors/index.js +0 -1
  90. package/dist/src/core/errors/recovery.js +0 -1
  91. package/dist/src/core/execution/parallel-executor.js +0 -1
  92. package/dist/src/core/extensions/custom-tools.js +0 -1
  93. package/dist/src/core/extensions/index.js +0 -1
  94. package/dist/src/core/extensions/loader.js +0 -1
  95. package/dist/src/core/extensions/plugin-system.js +0 -1
  96. package/dist/src/core/extensions/provider-adapter.js +0 -1
  97. package/dist/src/core/extensions/sandbox-runtime.js +0 -1
  98. package/dist/src/core/extensions/types.js +0 -1
  99. package/dist/src/core/frame/workflow-templates.js +0 -1
  100. package/dist/src/core/merge/conflict-detector.js +0 -1
  101. package/dist/src/core/merge/index.js +0 -1
  102. package/dist/src/core/merge/resolution-engine.js +0 -1
  103. package/dist/src/core/merge/stack-diff.js +0 -1
  104. package/dist/src/core/merge/types.js +0 -1
  105. package/dist/src/core/merge/unified-merge-resolver.js +0 -1
  106. package/dist/src/core/models/fallback-monitor.js +0 -1
  107. package/dist/src/core/models/model-router.js +0 -1
  108. package/dist/src/core/monitoring/error-handler.js +0 -1
  109. package/dist/src/core/monitoring/logger.js +0 -1
  110. package/dist/src/core/monitoring/metrics.js +0 -1
  111. package/dist/src/core/monitoring/progress-tracker.js +0 -1
  112. package/dist/src/core/monitoring/session-monitor.js +0 -1
  113. package/dist/src/core/performance/context-cache.js +0 -1
  114. package/dist/src/core/performance/index.js +0 -1
  115. package/dist/src/core/performance/lazy-context-loader.js +3 -8
  116. package/dist/src/core/performance/monitor.js +0 -1
  117. package/dist/src/core/performance/optimized-frame-context.js +0 -1
  118. package/dist/src/core/performance/performance-benchmark.js +0 -1
  119. package/dist/src/core/performance/performance-profiler.js +0 -1
  120. package/dist/src/core/performance/streaming-jsonl-parser.js +0 -1
  121. package/dist/src/core/persistence/postgres-adapter.js +0 -1
  122. package/dist/src/core/projects/project-isolation.js +0 -1
  123. package/dist/src/core/projects/project-manager.js +0 -1
  124. package/dist/src/core/query/query-parser.js +0 -1
  125. package/dist/src/core/query/query-templates.js +0 -1
  126. package/dist/src/core/retrieval/context-retriever.js +0 -1
  127. package/dist/src/core/retrieval/index.js +0 -1
  128. package/dist/src/core/retrieval/llm-context-retrieval.js +0 -1
  129. package/dist/src/core/retrieval/llm-provider.js +0 -1
  130. package/dist/src/core/retrieval/privacy-filter.js +0 -1
  131. package/dist/src/core/retrieval/retrieval-audit.js +0 -1
  132. package/dist/src/core/retrieval/summary-generator.js +15 -6
  133. package/dist/src/core/retrieval/types.js +0 -1
  134. package/dist/src/core/retrieval/unified-context-assembler.js +0 -1
  135. package/dist/src/core/security/index.js +0 -1
  136. package/dist/src/core/security/input-sanitizer.js +0 -1
  137. package/dist/src/core/session/clear-survival.js +0 -1
  138. package/dist/src/core/session/enhanced-handoff.js +0 -1
  139. package/dist/src/core/session/handoff-generator.js +0 -1
  140. package/dist/src/core/session/index.js +0 -1
  141. package/dist/src/core/session/session-manager.js +0 -1
  142. package/dist/src/core/skills/index.js +0 -1
  143. package/dist/src/core/skills/skill-storage.js +0 -1
  144. package/dist/src/core/skills/types.js +0 -1
  145. package/dist/src/core/storage/chromadb-adapter.js +0 -1
  146. package/dist/src/core/storage/infinite-storage.js +0 -1
  147. package/dist/src/core/storage/project-registry.js +0 -1
  148. package/dist/src/core/storage/remote-storage.js +4 -2
  149. package/dist/src/core/storage/storage-tier-manager.js +0 -1
  150. package/dist/src/core/storage/two-tier-storage.js +0 -1
  151. package/dist/src/core/trace/cli-trace-wrapper.js +0 -1
  152. package/dist/src/core/trace/db-trace-wrapper.js +0 -1
  153. package/dist/src/core/trace/debug-trace.js +0 -1
  154. package/dist/src/core/trace/index.js +0 -1
  155. package/dist/src/core/trace/linear-api-wrapper.js +0 -1
  156. package/dist/src/core/trace/trace-detector.js +0 -1
  157. package/dist/src/core/trace/trace-store.js +4 -5
  158. package/dist/src/core/trace/types.js +0 -1
  159. package/dist/src/core/types.js +0 -1
  160. package/dist/src/core/utils/async-mutex.js +0 -1
  161. package/dist/src/core/utils/compression.js +0 -1
  162. package/dist/src/core/utils/update-checker.js +0 -1
  163. package/dist/src/core/worktree/worktree-manager.js +0 -1
  164. package/dist/src/daemon/daemon-config.js +0 -1
  165. package/dist/src/daemon/services/context-service.js +0 -1
  166. package/dist/src/daemon/services/linear-service.js +0 -1
  167. package/dist/src/daemon/services/maintenance-service.js +0 -1
  168. package/dist/src/daemon/services/memory-service.js +0 -1
  169. package/dist/src/daemon/session-daemon.js +0 -1
  170. package/dist/src/daemon/unified-daemon.js +0 -1
  171. package/dist/src/features/analytics/api/analytics-api.js +0 -1
  172. package/dist/src/features/analytics/core/analytics-service.js +1 -2
  173. package/dist/src/features/analytics/index.js +0 -1
  174. package/dist/src/features/analytics/queries/metrics-queries.js +8 -9
  175. package/dist/src/features/analytics/types/metrics.js +0 -1
  176. package/dist/src/features/browser/browser-mcp.js +0 -1
  177. package/dist/src/features/sweep/index.js +0 -1
  178. package/dist/src/features/sweep/prediction-client.js +0 -1
  179. package/dist/src/features/sweep/prompt-builder.js +0 -1
  180. package/dist/src/features/sweep/pty-wrapper.js +11 -2
  181. package/dist/src/features/sweep/state-watcher.js +0 -1
  182. package/dist/src/features/sweep/status-bar.js +0 -1
  183. package/dist/src/features/sweep/sweep-server-manager.js +0 -1
  184. package/dist/src/features/sweep/tab-interceptor.js +0 -1
  185. package/dist/src/features/sweep/types.js +0 -1
  186. package/dist/src/features/tasks/linear-task-manager.js +0 -1
  187. package/dist/src/features/tasks/task-aware-context.js +0 -1
  188. package/dist/src/features/tui/simple-monitor.js +0 -1
  189. package/dist/src/features/tui/swarm-monitor.js +0 -1
  190. package/dist/src/features/web/client/stores/task-store.js +0 -1
  191. package/dist/src/features/web/server/index.js +0 -1
  192. package/dist/src/features/workers/tmux-manager.js +0 -1
  193. package/dist/src/features/workers/worker-registry.js +0 -1
  194. package/dist/src/hooks/auto-background.js +0 -1
  195. package/dist/src/hooks/config.js +0 -1
  196. package/dist/src/hooks/daemon.js +0 -1
  197. package/dist/src/hooks/diffmem-hooks.js +0 -1
  198. package/dist/src/hooks/events.js +0 -1
  199. package/dist/src/hooks/index.js +0 -4
  200. package/dist/src/hooks/linear-task-picker.js +0 -1
  201. package/dist/src/hooks/schemas.js +0 -118
  202. package/dist/src/hooks/secure-fs.js +0 -1
  203. package/dist/src/hooks/security-logger.js +0 -1
  204. package/dist/src/hooks/session-summary.js +0 -1
  205. package/dist/src/index.js +0 -1
  206. package/dist/src/integrations/anthropic/client.js +0 -1
  207. package/dist/src/integrations/claude-code/agent-bridge.js +0 -1
  208. package/dist/src/integrations/claude-code/enhanced-pre-clear-hooks.js +0 -1
  209. package/dist/src/integrations/claude-code/lifecycle-hooks.js +0 -1
  210. package/dist/src/integrations/claude-code/post-task-hooks.js +0 -1
  211. package/dist/src/integrations/claude-code/subagent-client-stub.js +0 -1
  212. package/dist/src/integrations/claude-code/subagent-client.js +0 -1
  213. package/dist/src/integrations/claude-code/task-coordinator.js +0 -1
  214. package/dist/src/integrations/diffmem/client.js +0 -1
  215. package/dist/src/integrations/diffmem/config.js +0 -1
  216. package/dist/src/integrations/diffmem/index.js +0 -1
  217. package/dist/src/integrations/diffmem/types.js +0 -1
  218. package/dist/src/integrations/linear/auth.js +0 -1
  219. package/dist/src/integrations/linear/auto-sync.js +0 -1
  220. package/dist/src/integrations/linear/client.js +0 -1
  221. package/dist/src/integrations/linear/config.js +0 -1
  222. package/dist/src/integrations/linear/migration.js +0 -1
  223. package/dist/src/integrations/linear/oauth-server.js +0 -1
  224. package/dist/src/integrations/linear/rest-client.js +0 -1
  225. package/dist/src/integrations/linear/sync-manager.js +0 -1
  226. package/dist/src/integrations/linear/sync-service.js +0 -1
  227. package/dist/src/integrations/linear/sync.js +0 -1
  228. package/dist/src/integrations/linear/types.js +0 -1
  229. package/dist/src/integrations/linear/unified-sync.js +0 -1
  230. package/dist/src/integrations/linear/webhook-handler.js +0 -1
  231. package/dist/src/integrations/linear/webhook-server.js +0 -1
  232. package/dist/src/integrations/linear/webhook.js +0 -1
  233. package/dist/src/integrations/mcp/handlers/code-execution-handlers.js +0 -1
  234. package/dist/src/integrations/mcp/handlers/context-handlers.js +43 -30
  235. package/dist/src/integrations/mcp/handlers/diffmem-handlers.js +0 -1
  236. package/dist/src/integrations/mcp/handlers/discovery-handlers.js +0 -1
  237. package/dist/src/integrations/mcp/handlers/index.js +1 -3
  238. package/dist/src/integrations/mcp/handlers/linear-handlers.js +24 -61
  239. package/dist/src/integrations/mcp/handlers/skill-handlers.js +0 -1
  240. package/dist/src/integrations/mcp/handlers/task-handlers.js +0 -1
  241. package/dist/src/integrations/mcp/handlers/trace-handlers.js +0 -1
  242. package/dist/src/integrations/mcp/index.js +0 -1
  243. package/dist/src/integrations/mcp/middleware/tool-scoring.js +3 -2
  244. package/dist/src/integrations/mcp/pending-utils.js +0 -1
  245. package/dist/src/integrations/mcp/refactored-server.js +0 -1
  246. package/dist/src/integrations/mcp/remote-server.js +0 -1
  247. package/dist/src/integrations/mcp/schemas.js +0 -1
  248. package/dist/src/integrations/mcp/server.js +20 -24
  249. package/dist/src/integrations/mcp/tool-definitions-code.js +0 -1
  250. package/dist/src/integrations/mcp/tool-definitions.js +0 -1
  251. package/dist/src/integrations/ralph/bridge/ralph-stackmemory-bridge.js +0 -1
  252. package/dist/src/integrations/ralph/context/context-budget-manager.js +0 -1
  253. package/dist/src/integrations/ralph/context/stackmemory-context-loader.js +0 -1
  254. package/dist/src/integrations/ralph/coordination/enhanced-coordination.js +0 -1
  255. package/dist/src/integrations/ralph/index.js +0 -1
  256. package/dist/src/integrations/ralph/learning/pattern-learner.js +0 -1
  257. package/dist/src/integrations/ralph/lifecycle/iteration-lifecycle.js +5 -5
  258. package/dist/src/integrations/ralph/monitoring/swarm-dashboard.js +0 -1
  259. package/dist/src/integrations/ralph/monitoring/swarm-registry.js +0 -1
  260. package/dist/src/integrations/ralph/orchestration/multi-loop-orchestrator.js +0 -1
  261. package/dist/src/integrations/ralph/patterns/compounding-engineering-pattern.js +0 -1
  262. package/dist/src/integrations/ralph/patterns/extended-coherence-sessions.js +0 -1
  263. package/dist/src/integrations/ralph/patterns/oracle-worker-pattern.js +0 -1
  264. package/dist/src/integrations/ralph/performance/performance-optimizer.js +0 -1
  265. package/dist/src/integrations/ralph/recovery/crash-recovery.js +0 -1
  266. package/dist/src/integrations/ralph/state/state-reconciler.js +25 -9
  267. package/dist/src/integrations/ralph/swarm/git-workflow-manager.js +0 -1
  268. package/dist/src/integrations/ralph/swarm/swarm-coordinator.js +0 -1
  269. package/dist/src/integrations/ralph/types.js +0 -1
  270. package/dist/src/integrations/ralph/visualization/ralph-debugger.js +0 -1
  271. package/dist/src/mcp/stackmemory-mcp-server.js +0 -1
  272. package/dist/src/middleware/exponential-rate-limiter.js +0 -1
  273. package/dist/src/models/user.model.js +0 -1
  274. package/dist/src/orchestrators/multimodal/constants.js +0 -1
  275. package/dist/src/orchestrators/multimodal/harness.js +0 -1
  276. package/dist/src/orchestrators/multimodal/providers.js +0 -1
  277. package/dist/src/orchestrators/multimodal/types.js +0 -1
  278. package/dist/src/orchestrators/multimodal/utils.js +0 -1
  279. package/dist/src/servers/production/auth-middleware.js +0 -1
  280. package/dist/src/services/config-service.js +0 -1
  281. package/dist/src/services/context-service.js +0 -1
  282. package/dist/src/skills/api-discovery.js +0 -1
  283. package/dist/src/skills/api-skill.js +0 -1
  284. package/dist/src/skills/claude-skills.js +0 -1
  285. package/dist/src/skills/dashboard-launcher.js +0 -1
  286. package/dist/src/skills/linear-task-runner.js +0 -1
  287. package/dist/src/skills/recursive-agent-orchestrator.js +0 -1
  288. package/dist/src/skills/repo-ingestion-skill.js +0 -1
  289. package/dist/src/skills/spec-generator-skill.js +0 -1
  290. package/dist/src/skills/unified-rlm-orchestrator.js +0 -1
  291. package/dist/src/types/task.js +0 -1
  292. package/dist/src/utils/env.js +0 -1
  293. package/dist/src/utils/formatting.js +0 -1
  294. package/dist/src/utils/process-cleanup.js +0 -1
  295. package/package.json +33 -8
  296. package/scripts/smoke-init-db.sh +77 -0
  297. package/dist/scripts/benchmark-performance.js +0 -48
  298. package/dist/scripts/benchmark-performance.js.map +0 -7
  299. package/dist/scripts/check-redis.js +0 -42
  300. package/dist/scripts/check-redis.js.map +0 -7
  301. package/dist/scripts/initialize.js +0 -183
  302. package/dist/scripts/initialize.js.map +0 -7
  303. package/dist/scripts/list-linear-tasks.js +0 -124
  304. package/dist/scripts/list-linear-tasks.js.map +0 -7
  305. package/dist/scripts/measure-handoff-impact.js +0 -340
  306. package/dist/scripts/measure-handoff-impact.js.map +0 -7
  307. package/dist/scripts/query-chromadb.js +0 -160
  308. package/dist/scripts/query-chromadb.js.map +0 -7
  309. package/dist/scripts/show-linear-summary.js +0 -119
  310. package/dist/scripts/show-linear-summary.js.map +0 -7
  311. package/dist/scripts/simple-swarm-demo.js +0 -90
  312. package/dist/scripts/simple-swarm-demo.js.map +0 -7
  313. package/dist/scripts/status.js +0 -155
  314. package/dist/scripts/status.js.map +0 -7
  315. package/dist/scripts/test-chromadb-sync.js +0 -192
  316. package/dist/scripts/test-chromadb-sync.js.map +0 -7
  317. package/dist/scripts/test-ralph-iteration-fix.js +0 -86
  318. package/dist/scripts/test-ralph-iteration-fix.js.map +0 -7
  319. package/dist/scripts/test-ralph-iterations.js +0 -121
  320. package/dist/scripts/test-ralph-iterations.js.map +0 -7
  321. package/dist/scripts/test-redis-storage.js +0 -389
  322. package/dist/scripts/test-redis-storage.js.map +0 -7
  323. package/dist/scripts/test-simple-ralph-state-sync.js +0 -115
  324. package/dist/scripts/test-simple-ralph-state-sync.js.map +0 -7
  325. package/dist/scripts/test-swarm-fixes.js +0 -125
  326. package/dist/scripts/test-swarm-fixes.js.map +0 -7
  327. package/dist/scripts/test-swarm-tui.js +0 -23
  328. package/dist/scripts/test-swarm-tui.js.map +0 -7
  329. package/dist/scripts/test-tui-shortcuts.js +0 -52
  330. package/dist/scripts/test-tui-shortcuts.js.map +0 -7
  331. package/dist/scripts/validate-tui-shortcuts.js +0 -60
  332. package/dist/scripts/validate-tui-shortcuts.js.map +0 -7
  333. package/dist/src/agents/core/agent-task-manager.js.map +0 -7
  334. package/dist/src/agents/verifiers/base-verifier.js.map +0 -7
  335. package/dist/src/agents/verifiers/formatter-verifier.js.map +0 -7
  336. package/dist/src/agents/verifiers/llm-judge.js.map +0 -7
  337. package/dist/src/cli/auto-detect.js.map +0 -7
  338. package/dist/src/cli/claude-sm-danger.js.map +0 -7
  339. package/dist/src/cli/claude-sm.js.map +0 -7
  340. package/dist/src/cli/codex-sm-danger.js.map +0 -7
  341. package/dist/src/cli/codex-sm.js.map +0 -7
  342. package/dist/src/cli/commands/api.js.map +0 -7
  343. package/dist/src/cli/commands/auto-background.js.map +0 -7
  344. package/dist/src/cli/commands/cleanup-processes.js.map +0 -7
  345. package/dist/src/cli/commands/clear.js.map +0 -7
  346. package/dist/src/cli/commands/config.js.map +0 -7
  347. package/dist/src/cli/commands/context-rehydrate.js.map +0 -7
  348. package/dist/src/cli/commands/context.js.map +0 -7
  349. package/dist/src/cli/commands/daemon.js.map +0 -7
  350. package/dist/src/cli/commands/dashboard.js.map +0 -7
  351. package/dist/src/cli/commands/db.js.map +0 -7
  352. package/dist/src/cli/commands/decision.js.map +0 -7
  353. package/dist/src/cli/commands/discovery.js.map +0 -7
  354. package/dist/src/cli/commands/handoff.js.map +0 -7
  355. package/dist/src/cli/commands/hooks.js.map +0 -7
  356. package/dist/src/cli/commands/linear.js.map +0 -7
  357. package/dist/src/cli/commands/log.js.map +0 -7
  358. package/dist/src/cli/commands/login.js.map +0 -7
  359. package/dist/src/cli/commands/migrate.js.map +0 -7
  360. package/dist/src/cli/commands/model.js.map +0 -7
  361. package/dist/src/cli/commands/onboard.js.map +0 -7
  362. package/dist/src/cli/commands/ping.js.map +0 -7
  363. package/dist/src/cli/commands/projects.js.map +0 -7
  364. package/dist/src/cli/commands/ralph.js.map +0 -7
  365. package/dist/src/cli/commands/retrieval.js.map +0 -7
  366. package/dist/src/cli/commands/search.js.map +0 -7
  367. package/dist/src/cli/commands/service.js.map +0 -7
  368. package/dist/src/cli/commands/session.js.map +0 -7
  369. package/dist/src/cli/commands/settings.js +0 -306
  370. package/dist/src/cli/commands/settings.js.map +0 -7
  371. package/dist/src/cli/commands/setup.js.map +0 -7
  372. package/dist/src/cli/commands/shell.js.map +0 -7
  373. package/dist/src/cli/commands/signup.js.map +0 -7
  374. package/dist/src/cli/commands/skills.js.map +0 -7
  375. package/dist/src/cli/commands/sms-notify.js +0 -795
  376. package/dist/src/cli/commands/sms-notify.js.map +0 -7
  377. package/dist/src/cli/commands/storage-tier.js.map +0 -7
  378. package/dist/src/cli/commands/sweep.js.map +0 -7
  379. package/dist/src/cli/commands/tasks.js.map +0 -7
  380. package/dist/src/cli/commands/worktree.js.map +0 -7
  381. package/dist/src/cli/index.js.map +0 -7
  382. package/dist/src/cli/opencode-sm.js.map +0 -7
  383. package/dist/src/cli/utils/viewer.js.map +0 -7
  384. package/dist/src/core/config/config-manager.js.map +0 -7
  385. package/dist/src/core/config/feature-flags.js.map +0 -7
  386. package/dist/src/core/config/storage-config.js.map +0 -7
  387. package/dist/src/core/config/types.js.map +0 -7
  388. package/dist/src/core/context/auto-context.js.map +0 -7
  389. package/dist/src/core/context/dual-stack-manager.js.map +0 -7
  390. package/dist/src/core/context/enhanced-rehydration.js.map +0 -7
  391. package/dist/src/core/context/frame-database.js.map +0 -7
  392. package/dist/src/core/context/frame-digest.js.map +0 -7
  393. package/dist/src/core/context/frame-handoff-manager.js.map +0 -7
  394. package/dist/src/core/context/frame-lifecycle-hooks.js.map +0 -7
  395. package/dist/src/core/context/frame-recovery.js.map +0 -7
  396. package/dist/src/core/context/frame-stack.js.map +0 -7
  397. package/dist/src/core/context/frame-types.js.map +0 -7
  398. package/dist/src/core/context/index.js.map +0 -7
  399. package/dist/src/core/context/permission-manager.js.map +0 -7
  400. package/dist/src/core/context/recursive-context-manager.js.map +0 -7
  401. package/dist/src/core/context/refactored-frame-manager.js.map +0 -7
  402. package/dist/src/core/context/shared-context-layer.js.map +0 -7
  403. package/dist/src/core/context/stack-merge-resolver.js.map +0 -7
  404. package/dist/src/core/context/validation.js.map +0 -7
  405. package/dist/src/core/database/batch-operations.js.map +0 -7
  406. package/dist/src/core/database/connection-pool.js.map +0 -7
  407. package/dist/src/core/database/database-adapter.js.map +0 -7
  408. package/dist/src/core/database/embedding-provider-factory.js.map +0 -7
  409. package/dist/src/core/database/embedding-provider.js.map +0 -7
  410. package/dist/src/core/database/migration-manager.js.map +0 -7
  411. package/dist/src/core/database/ollama-embedding-provider.js.map +0 -7
  412. package/dist/src/core/database/openai-embedding-provider.js.map +0 -7
  413. package/dist/src/core/database/query-cache.js.map +0 -7
  414. package/dist/src/core/database/query-router.js.map +0 -7
  415. package/dist/src/core/database/sqlite-adapter.js.map +0 -7
  416. package/dist/src/core/database/transformers-embedding-provider.js.map +0 -7
  417. package/dist/src/core/digest/enhanced-hybrid-digest.js.map +0 -7
  418. package/dist/src/core/digest/frame-digest-integration.js.map +0 -7
  419. package/dist/src/core/digest/hybrid-digest-generator.js.map +0 -7
  420. package/dist/src/core/digest/index.js.map +0 -7
  421. package/dist/src/core/digest/types.js.map +0 -7
  422. package/dist/src/core/errors/error-utils.js.map +0 -7
  423. package/dist/src/core/errors/index.js.map +0 -7
  424. package/dist/src/core/errors/recovery.js.map +0 -7
  425. package/dist/src/core/execution/parallel-executor.js.map +0 -7
  426. package/dist/src/core/extensions/custom-tools.js.map +0 -7
  427. package/dist/src/core/extensions/index.js.map +0 -7
  428. package/dist/src/core/extensions/loader.js.map +0 -7
  429. package/dist/src/core/extensions/plugin-system.js.map +0 -7
  430. package/dist/src/core/extensions/provider-adapter.js.map +0 -7
  431. package/dist/src/core/extensions/sandbox-runtime.js.map +0 -7
  432. package/dist/src/core/extensions/types.js.map +0 -7
  433. package/dist/src/core/frame/workflow-templates.js.map +0 -7
  434. package/dist/src/core/merge/conflict-detector.js.map +0 -7
  435. package/dist/src/core/merge/index.js.map +0 -7
  436. package/dist/src/core/merge/resolution-engine.js.map +0 -7
  437. package/dist/src/core/merge/stack-diff.js.map +0 -7
  438. package/dist/src/core/merge/types.js.map +0 -7
  439. package/dist/src/core/merge/unified-merge-resolver.js.map +0 -7
  440. package/dist/src/core/models/fallback-monitor.js.map +0 -7
  441. package/dist/src/core/models/model-router.js.map +0 -7
  442. package/dist/src/core/monitoring/error-handler.js.map +0 -7
  443. package/dist/src/core/monitoring/logger.js.map +0 -7
  444. package/dist/src/core/monitoring/metrics.js.map +0 -7
  445. package/dist/src/core/monitoring/progress-tracker.js.map +0 -7
  446. package/dist/src/core/monitoring/session-monitor.js.map +0 -7
  447. package/dist/src/core/performance/context-cache.js.map +0 -7
  448. package/dist/src/core/performance/index.js.map +0 -7
  449. package/dist/src/core/performance/lazy-context-loader.js.map +0 -7
  450. package/dist/src/core/performance/monitor.js.map +0 -7
  451. package/dist/src/core/performance/optimized-frame-context.js.map +0 -7
  452. package/dist/src/core/performance/performance-benchmark.js.map +0 -7
  453. package/dist/src/core/performance/performance-profiler.js.map +0 -7
  454. package/dist/src/core/performance/streaming-jsonl-parser.js.map +0 -7
  455. package/dist/src/core/persistence/postgres-adapter.js.map +0 -7
  456. package/dist/src/core/projects/project-isolation.js.map +0 -7
  457. package/dist/src/core/projects/project-manager.js.map +0 -7
  458. package/dist/src/core/query/query-parser.js.map +0 -7
  459. package/dist/src/core/query/query-templates.js.map +0 -7
  460. package/dist/src/core/retrieval/context-retriever.js.map +0 -7
  461. package/dist/src/core/retrieval/index.js.map +0 -7
  462. package/dist/src/core/retrieval/llm-context-retrieval.js.map +0 -7
  463. package/dist/src/core/retrieval/llm-provider.js.map +0 -7
  464. package/dist/src/core/retrieval/privacy-filter.js.map +0 -7
  465. package/dist/src/core/retrieval/retrieval-audit.js.map +0 -7
  466. package/dist/src/core/retrieval/summary-generator.js.map +0 -7
  467. package/dist/src/core/retrieval/types.js.map +0 -7
  468. package/dist/src/core/retrieval/unified-context-assembler.js.map +0 -7
  469. package/dist/src/core/security/index.js.map +0 -7
  470. package/dist/src/core/security/input-sanitizer.js.map +0 -7
  471. package/dist/src/core/session/clear-survival.js.map +0 -7
  472. package/dist/src/core/session/enhanced-handoff.js.map +0 -7
  473. package/dist/src/core/session/handoff-generator.js.map +0 -7
  474. package/dist/src/core/session/index.js.map +0 -7
  475. package/dist/src/core/session/session-manager.js.map +0 -7
  476. package/dist/src/core/skills/index.js.map +0 -7
  477. package/dist/src/core/skills/skill-storage.js.map +0 -7
  478. package/dist/src/core/skills/types.js.map +0 -7
  479. package/dist/src/core/storage/chromadb-adapter.js.map +0 -7
  480. package/dist/src/core/storage/infinite-storage.js.map +0 -7
  481. package/dist/src/core/storage/project-registry.js.map +0 -7
  482. package/dist/src/core/storage/remote-storage.js.map +0 -7
  483. package/dist/src/core/storage/storage-tier-manager.js.map +0 -7
  484. package/dist/src/core/storage/two-tier-storage.js.map +0 -7
  485. package/dist/src/core/trace/cli-trace-wrapper.js.map +0 -7
  486. package/dist/src/core/trace/db-trace-wrapper.js.map +0 -7
  487. package/dist/src/core/trace/debug-trace.js.map +0 -7
  488. package/dist/src/core/trace/index.js.map +0 -7
  489. package/dist/src/core/trace/linear-api-wrapper.js.map +0 -7
  490. package/dist/src/core/trace/trace-detector.js.map +0 -7
  491. package/dist/src/core/trace/trace-store.js.map +0 -7
  492. package/dist/src/core/trace/types.js.map +0 -7
  493. package/dist/src/core/types.js.map +0 -7
  494. package/dist/src/core/utils/async-mutex.js.map +0 -7
  495. package/dist/src/core/utils/compression.js.map +0 -7
  496. package/dist/src/core/utils/update-checker.js.map +0 -7
  497. package/dist/src/core/worktree/worktree-manager.js.map +0 -7
  498. package/dist/src/daemon/daemon-config.js.map +0 -7
  499. package/dist/src/daemon/services/context-service.js.map +0 -7
  500. package/dist/src/daemon/services/linear-service.js.map +0 -7
  501. package/dist/src/daemon/services/maintenance-service.js.map +0 -7
  502. package/dist/src/daemon/services/memory-service.js.map +0 -7
  503. package/dist/src/daemon/session-daemon.js.map +0 -7
  504. package/dist/src/daemon/unified-daemon.js.map +0 -7
  505. package/dist/src/features/analytics/api/analytics-api.js.map +0 -7
  506. package/dist/src/features/analytics/core/analytics-service.js.map +0 -7
  507. package/dist/src/features/analytics/index.js.map +0 -7
  508. package/dist/src/features/analytics/queries/metrics-queries.js.map +0 -7
  509. package/dist/src/features/analytics/types/metrics.js.map +0 -7
  510. package/dist/src/features/browser/browser-mcp.js.map +0 -7
  511. package/dist/src/features/sweep/index.js.map +0 -7
  512. package/dist/src/features/sweep/prediction-client.js.map +0 -7
  513. package/dist/src/features/sweep/prompt-builder.js.map +0 -7
  514. package/dist/src/features/sweep/pty-wrapper.js.map +0 -7
  515. package/dist/src/features/sweep/state-watcher.js.map +0 -7
  516. package/dist/src/features/sweep/status-bar.js.map +0 -7
  517. package/dist/src/features/sweep/sweep-server-manager.js.map +0 -7
  518. package/dist/src/features/sweep/tab-interceptor.js.map +0 -7
  519. package/dist/src/features/sweep/types.js.map +0 -7
  520. package/dist/src/features/tasks/linear-task-manager.js.map +0 -7
  521. package/dist/src/features/tasks/task-aware-context.js.map +0 -7
  522. package/dist/src/features/tui/simple-monitor.js.map +0 -7
  523. package/dist/src/features/tui/swarm-monitor.js.map +0 -7
  524. package/dist/src/features/web/client/stores/task-store.js.map +0 -7
  525. package/dist/src/features/web/server/index.js.map +0 -7
  526. package/dist/src/features/workers/tmux-manager.js.map +0 -7
  527. package/dist/src/features/workers/worker-registry.js.map +0 -7
  528. package/dist/src/hooks/auto-background.js.map +0 -7
  529. package/dist/src/hooks/claude-code-whatsapp-hook.js +0 -197
  530. package/dist/src/hooks/claude-code-whatsapp-hook.js.map +0 -7
  531. package/dist/src/hooks/config.js.map +0 -7
  532. package/dist/src/hooks/daemon.js.map +0 -7
  533. package/dist/src/hooks/diffmem-hooks.js.map +0 -7
  534. package/dist/src/hooks/events.js.map +0 -7
  535. package/dist/src/hooks/index.js.map +0 -7
  536. package/dist/src/hooks/linear-task-picker.js.map +0 -7
  537. package/dist/src/hooks/schemas.js.map +0 -7
  538. package/dist/src/hooks/secure-fs.js.map +0 -7
  539. package/dist/src/hooks/security-logger.js.map +0 -7
  540. package/dist/src/hooks/session-summary.js.map +0 -7
  541. package/dist/src/hooks/sms-action-runner.js +0 -371
  542. package/dist/src/hooks/sms-action-runner.js.map +0 -7
  543. package/dist/src/hooks/sms-notify.js +0 -506
  544. package/dist/src/hooks/sms-notify.js.map +0 -7
  545. package/dist/src/hooks/sms-watcher.js +0 -93
  546. package/dist/src/hooks/sms-watcher.js.map +0 -7
  547. package/dist/src/hooks/sms-webhook.js +0 -555
  548. package/dist/src/hooks/sms-webhook.js.map +0 -7
  549. package/dist/src/hooks/whatsapp-commands.js +0 -479
  550. package/dist/src/hooks/whatsapp-commands.js.map +0 -7
  551. package/dist/src/hooks/whatsapp-scheduler.js +0 -317
  552. package/dist/src/hooks/whatsapp-scheduler.js.map +0 -7
  553. package/dist/src/hooks/whatsapp-sync.js +0 -409
  554. package/dist/src/hooks/whatsapp-sync.js.map +0 -7
  555. package/dist/src/index.js.map +0 -7
  556. package/dist/src/integrations/anthropic/client.js.map +0 -7
  557. package/dist/src/integrations/claude-code/agent-bridge.js.map +0 -7
  558. package/dist/src/integrations/claude-code/enhanced-pre-clear-hooks.js.map +0 -7
  559. package/dist/src/integrations/claude-code/lifecycle-hooks.js.map +0 -7
  560. package/dist/src/integrations/claude-code/post-task-hooks.js.map +0 -7
  561. package/dist/src/integrations/claude-code/subagent-client-stub.js.map +0 -7
  562. package/dist/src/integrations/claude-code/subagent-client.js.map +0 -7
  563. package/dist/src/integrations/claude-code/task-coordinator.js.map +0 -7
  564. package/dist/src/integrations/diffmem/client.js.map +0 -7
  565. package/dist/src/integrations/diffmem/config.js.map +0 -7
  566. package/dist/src/integrations/diffmem/index.js.map +0 -7
  567. package/dist/src/integrations/diffmem/types.js.map +0 -7
  568. package/dist/src/integrations/linear/auth.js.map +0 -7
  569. package/dist/src/integrations/linear/auto-sync.js.map +0 -7
  570. package/dist/src/integrations/linear/client.js.map +0 -7
  571. package/dist/src/integrations/linear/config.js.map +0 -7
  572. package/dist/src/integrations/linear/migration.js.map +0 -7
  573. package/dist/src/integrations/linear/oauth-server.js.map +0 -7
  574. package/dist/src/integrations/linear/rest-client.js.map +0 -7
  575. package/dist/src/integrations/linear/sync-manager.js.map +0 -7
  576. package/dist/src/integrations/linear/sync-service.js.map +0 -7
  577. package/dist/src/integrations/linear/sync.js.map +0 -7
  578. package/dist/src/integrations/linear/types.js.map +0 -7
  579. package/dist/src/integrations/linear/unified-sync.js.map +0 -7
  580. package/dist/src/integrations/linear/webhook-handler.js.map +0 -7
  581. package/dist/src/integrations/linear/webhook-server.js.map +0 -7
  582. package/dist/src/integrations/linear/webhook.js.map +0 -7
  583. package/dist/src/integrations/mcp/handlers/code-execution-handlers.js.map +0 -7
  584. package/dist/src/integrations/mcp/handlers/context-handlers.js.map +0 -7
  585. package/dist/src/integrations/mcp/handlers/diffmem-handlers.js.map +0 -7
  586. package/dist/src/integrations/mcp/handlers/discovery-handlers.js.map +0 -7
  587. package/dist/src/integrations/mcp/handlers/index.js.map +0 -7
  588. package/dist/src/integrations/mcp/handlers/linear-handlers.js.map +0 -7
  589. package/dist/src/integrations/mcp/handlers/skill-handlers.js.map +0 -7
  590. package/dist/src/integrations/mcp/handlers/task-handlers.js.map +0 -7
  591. package/dist/src/integrations/mcp/handlers/trace-handlers.js.map +0 -7
  592. package/dist/src/integrations/mcp/index.js.map +0 -7
  593. package/dist/src/integrations/mcp/middleware/tool-scoring.js.map +0 -7
  594. package/dist/src/integrations/mcp/pending-utils.js.map +0 -7
  595. package/dist/src/integrations/mcp/refactored-server.js.map +0 -7
  596. package/dist/src/integrations/mcp/remote-server.js.map +0 -7
  597. package/dist/src/integrations/mcp/schemas.js.map +0 -7
  598. package/dist/src/integrations/mcp/server.js.map +0 -7
  599. package/dist/src/integrations/mcp/tool-definitions-code.js.map +0 -7
  600. package/dist/src/integrations/mcp/tool-definitions.js.map +0 -7
  601. package/dist/src/integrations/ralph/bridge/ralph-stackmemory-bridge.js.map +0 -7
  602. package/dist/src/integrations/ralph/context/context-budget-manager.js.map +0 -7
  603. package/dist/src/integrations/ralph/context/stackmemory-context-loader.js.map +0 -7
  604. package/dist/src/integrations/ralph/coordination/enhanced-coordination.js.map +0 -7
  605. package/dist/src/integrations/ralph/index.js.map +0 -7
  606. package/dist/src/integrations/ralph/learning/pattern-learner.js.map +0 -7
  607. package/dist/src/integrations/ralph/lifecycle/iteration-lifecycle.js.map +0 -7
  608. package/dist/src/integrations/ralph/monitoring/swarm-dashboard.js.map +0 -7
  609. package/dist/src/integrations/ralph/monitoring/swarm-registry.js.map +0 -7
  610. package/dist/src/integrations/ralph/orchestration/multi-loop-orchestrator.js.map +0 -7
  611. package/dist/src/integrations/ralph/patterns/compounding-engineering-pattern.js.map +0 -7
  612. package/dist/src/integrations/ralph/patterns/extended-coherence-sessions.js.map +0 -7
  613. package/dist/src/integrations/ralph/patterns/oracle-worker-pattern.js.map +0 -7
  614. package/dist/src/integrations/ralph/performance/performance-optimizer.js.map +0 -7
  615. package/dist/src/integrations/ralph/recovery/crash-recovery.js.map +0 -7
  616. package/dist/src/integrations/ralph/state/state-reconciler.js.map +0 -7
  617. package/dist/src/integrations/ralph/swarm/git-workflow-manager.js.map +0 -7
  618. package/dist/src/integrations/ralph/swarm/swarm-coordinator.js.map +0 -7
  619. package/dist/src/integrations/ralph/types.js.map +0 -7
  620. package/dist/src/integrations/ralph/visualization/ralph-debugger.js.map +0 -7
  621. package/dist/src/mcp/stackmemory-mcp-server.js.map +0 -7
  622. package/dist/src/middleware/exponential-rate-limiter.js.map +0 -7
  623. package/dist/src/models/user.model.js.map +0 -7
  624. package/dist/src/orchestrators/multimodal/constants.js.map +0 -7
  625. package/dist/src/orchestrators/multimodal/harness.js.map +0 -7
  626. package/dist/src/orchestrators/multimodal/providers.js.map +0 -7
  627. package/dist/src/orchestrators/multimodal/types.js.map +0 -7
  628. package/dist/src/orchestrators/multimodal/utils.js.map +0 -7
  629. package/dist/src/servers/production/auth-middleware.js.map +0 -7
  630. package/dist/src/services/config-service.js.map +0 -7
  631. package/dist/src/services/context-service.js.map +0 -7
  632. package/dist/src/skills/api-discovery.js.map +0 -7
  633. package/dist/src/skills/api-skill.js.map +0 -7
  634. package/dist/src/skills/claude-skills.js.map +0 -7
  635. package/dist/src/skills/dashboard-launcher.js.map +0 -7
  636. package/dist/src/skills/linear-task-runner.js.map +0 -7
  637. package/dist/src/skills/recursive-agent-orchestrator.js.map +0 -7
  638. package/dist/src/skills/repo-ingestion-skill.js.map +0 -7
  639. package/dist/src/skills/spec-generator-skill.js.map +0 -7
  640. package/dist/src/skills/unified-rlm-orchestrator.js.map +0 -7
  641. package/dist/src/types/task.js.map +0 -7
  642. package/dist/src/utils/env.js.map +0 -7
  643. package/dist/src/utils/formatting.js.map +0 -7
  644. package/dist/src/utils/process-cleanup.js.map +0 -7
  645. package/scripts/README-TESTING.md +0 -186
  646. package/scripts/analyze-cli-security.js +0 -288
  647. package/scripts/archive/add-phase-tasks-to-linear.js +0 -163
  648. package/scripts/archive/analyze-linear-duplicates.js +0 -214
  649. package/scripts/archive/analyze-remaining-duplicates.js +0 -230
  650. package/scripts/archive/analyze-sta-duplicates.js +0 -292
  651. package/scripts/archive/analyze-sta-graphql.js +0 -399
  652. package/scripts/archive/cancel-duplicate-tasks.ts +0 -246
  653. package/scripts/archive/check-all-duplicates.ts +0 -419
  654. package/scripts/archive/clean-duplicate-tasks.js +0 -114
  655. package/scripts/archive/cleanup-duplicate-tasks.ts +0 -286
  656. package/scripts/archive/create-phase-tasks.js +0 -387
  657. package/scripts/archive/delete-linear-duplicates.js +0 -182
  658. package/scripts/archive/delete-remaining-duplicates.js +0 -158
  659. package/scripts/archive/delete-sta-duplicates.js +0 -201
  660. package/scripts/archive/delete-sta-oauth.js +0 -201
  661. package/scripts/archive/export-sta-tasks.js +0 -62
  662. package/scripts/archive/install-auto-sync.js +0 -266
  663. package/scripts/archive/install-chromadb-hooks.sh +0 -133
  664. package/scripts/archive/install-enhanced-clear-hooks.sh +0 -431
  665. package/scripts/archive/install-post-task-hooks.sh +0 -289
  666. package/scripts/archive/install-stackmemory-hooks.sh +0 -420
  667. package/scripts/archive/merge-linear-duplicates-safe.ts +0 -362
  668. package/scripts/archive/merge-linear-duplicates.ts +0 -182
  669. package/scripts/archive/remove-sta-tasks.js +0 -70
  670. package/scripts/archive/setup-background-sync.sh +0 -168
  671. package/scripts/archive/setup-claude-auto-triggers.sh +0 -181
  672. package/scripts/archive/setup-claude-autostart.sh +0 -305
  673. package/scripts/archive/setup-git-hooks.sh +0 -25
  674. package/scripts/archive/setup-linear-oauth.sh +0 -46
  675. package/scripts/archive/setup-mcp.sh +0 -113
  676. package/scripts/archive/setup-railway-deployment.sh +0 -81
  677. package/scripts/auto-handoff.sh +0 -262
  678. package/scripts/background-sync-manager.js +0 -478
  679. package/scripts/benchmark-performance.ts +0 -57
  680. package/scripts/check-redis.ts +0 -48
  681. package/scripts/chromadb-auto-loader.sh +0 -128
  682. package/scripts/chromadb-context-loader.js +0 -479
  683. package/scripts/claude-chromadb-hook.js +0 -460
  684. package/scripts/claude-linear-skill.js +0 -455
  685. package/scripts/claude-pre-commit.sh +0 -302
  686. package/scripts/claude-sm-autostart.js +0 -579
  687. package/scripts/claude-with-chromadb.sh +0 -69
  688. package/scripts/clean-linear-backlog.js +0 -273
  689. package/scripts/cleanup-old-sessions.sh +0 -57
  690. package/scripts/create-cleanup-issues.js +0 -302
  691. package/scripts/create-sandbox.sh +0 -269
  692. package/scripts/debug-linear-update.js +0 -174
  693. package/scripts/delete-linear-tasks.js +0 -167
  694. package/scripts/demos/browser-test.ts +0 -39
  695. package/scripts/demos/ralph-integration-demo.ts +0 -245
  696. package/scripts/demos/trace-demo.ts +0 -200
  697. package/scripts/demos/trace-detector.demo.ts +0 -171
  698. package/scripts/demos/trace-test.ts +0 -79
  699. package/scripts/deploy-ralph-swarm.sh +0 -365
  700. package/scripts/deploy.sh +0 -89
  701. package/scripts/deployment/test-deployment.js +0 -194
  702. package/scripts/detect-and-rehydrate.js +0 -162
  703. package/scripts/detect-and-rehydrate.mjs +0 -165
  704. package/scripts/development/create-demo-tasks.js +0 -143
  705. package/scripts/development/debug-frame-test.js +0 -16
  706. package/scripts/development/demo-auto-sync.js +0 -128
  707. package/scripts/development/fix-all-imports.js +0 -213
  708. package/scripts/development/fix-imports.js +0 -229
  709. package/scripts/development/fix-lint-loop.cjs +0 -103
  710. package/scripts/development/fix-project-id.ts +0 -161
  711. package/scripts/development/fix-strict-mode-issues.ts +0 -291
  712. package/scripts/development/reorganize-structure.sh +0 -228
  713. package/scripts/development/test-persistence-direct.js +0 -148
  714. package/scripts/development/test-persistence.js +0 -114
  715. package/scripts/development/test-tasks.js +0 -93
  716. package/scripts/development/update-imports.js +0 -212
  717. package/scripts/fetch-linear-status.js +0 -125
  718. package/scripts/initialize.ts +0 -220
  719. package/scripts/install-notify-hook.sh +0 -84
  720. package/scripts/linear-auto-sync.js +0 -262
  721. package/scripts/linear-auto-sync.sh +0 -161
  722. package/scripts/linear-sync-daemon.js +0 -150
  723. package/scripts/linear-task-review.js +0 -237
  724. package/scripts/list-linear-tasks.ts +0 -178
  725. package/scripts/mcp-proxy.js +0 -66
  726. package/scripts/measure-handoff-impact.mjs +0 -395
  727. package/scripts/measure-handoff-impact.ts +0 -450
  728. package/scripts/publish-local.js +0 -74
  729. package/scripts/query-chromadb.ts +0 -201
  730. package/scripts/ralph-integration-test.js +0 -274
  731. package/scripts/reconcile-local-tasks.js +0 -170
  732. package/scripts/recreate-frames-db.js +0 -89
  733. package/scripts/setup-notify-webhook.sh +0 -103
  734. package/scripts/show-linear-summary.ts +0 -172
  735. package/scripts/simple-swarm-demo.ts +0 -114
  736. package/scripts/stackmemory-auto-handoff.sh +0 -231
  737. package/scripts/start-linear-sync-daemon.sh +0 -141
  738. package/scripts/start-temporal-paradox.sh +0 -214
  739. package/scripts/status.ts +0 -224
  740. package/scripts/stop-notify-webhook.sh +0 -19
  741. package/scripts/swarm-monitor.js +0 -509
  742. package/scripts/sync-and-clean-tasks.js +0 -258
  743. package/scripts/sync-linear-graphql.js +0 -303
  744. package/scripts/sync-linear-tasks.js +0 -186
  745. package/scripts/test-auto-triggers.sh +0 -57
  746. package/scripts/test-browser-mcp.js +0 -74
  747. package/scripts/test-chromadb-full.js +0 -115
  748. package/scripts/test-chromadb-hooks.sh +0 -28
  749. package/scripts/test-chromadb-sync.ts +0 -245
  750. package/scripts/test-claude-config.sh +0 -123
  751. package/scripts/test-cli-security.js +0 -293
  752. package/scripts/test-code-execution.js +0 -143
  753. package/scripts/test-hooks-persistence.sh +0 -220
  754. package/scripts/test-installation-scenarios.sh +0 -359
  755. package/scripts/test-installation.sh +0 -224
  756. package/scripts/test-mcp.js +0 -163
  757. package/scripts/test-parallel-swarms.js +0 -443
  758. package/scripts/test-pre-publish-quick.sh +0 -77
  759. package/scripts/test-quality-gates.sh +0 -263
  760. package/scripts/test-ralph-iteration-fix.ts +0 -118
  761. package/scripts/test-ralph-iterations.ts +0 -164
  762. package/scripts/test-redis-storage.ts +0 -490
  763. package/scripts/test-rlm-basic.sh +0 -122
  764. package/scripts/test-rlm-comprehensive.sh +0 -260
  765. package/scripts/test-rlm-e2e.sh +0 -268
  766. package/scripts/test-rlm-simple.js +0 -90
  767. package/scripts/test-rlm.js +0 -110
  768. package/scripts/test-session-handoff.sh +0 -165
  769. package/scripts/test-setup-e2e.sh +0 -154
  770. package/scripts/test-shell-integration.sh +0 -275
  771. package/scripts/test-simple-ralph-state-sync.ts +0 -178
  772. package/scripts/test-swarm-fixes.ts +0 -161
  773. package/scripts/test-swarm-git-workflow.js +0 -338
  774. package/scripts/test-swarm-tui.ts +0 -34
  775. package/scripts/test-tui-shortcuts.ts +0 -66
  776. package/scripts/testing/ab-test-runner.ts +0 -510
  777. package/scripts/testing/collect-metrics.ts +0 -457
  778. package/scripts/testing/quick-effectiveness-demo.js +0 -187
  779. package/scripts/testing/ralph-cli-test.js +0 -88
  780. package/scripts/testing/ralph-integration-validation.js +0 -727
  781. package/scripts/testing/ralph-swarm-test-scenarios.js +0 -613
  782. package/scripts/testing/real-performance-test.js +0 -422
  783. package/scripts/testing/results/real-performance-results.json +0 -90
  784. package/scripts/testing/run-effectiveness-tests.sh +0 -176
  785. package/scripts/testing/simple-effectiveness-test.js +0 -310
  786. package/scripts/testing/test-tier-migration.js +0 -100
  787. package/scripts/update-linear-status.js +0 -268
  788. package/scripts/update-linear-tasks-fixed.js +0 -284
  789. package/scripts/validate-claude-config.sh +0 -155
  790. package/scripts/validate-swarm-implementation.js +0 -467
  791. package/scripts/validate-tui-shortcuts.ts +0 -83
  792. package/templates/claude-hooks/notify-review-hook.js +0 -360
  793. package/templates/claude-hooks/sms-response-handler.js +0 -174
@@ -1,201 +0,0 @@
1
- #!/usr/bin/env tsx
2
-
3
- /**
4
- * Query ChromaDB for stored contexts
5
- */
6
-
7
- import { ChromaClient } from 'chromadb';
8
- import dotenv from 'dotenv';
9
- import chalk from 'chalk';
10
-
11
- // Load environment variables
12
- dotenv.config();
13
-
14
- async function queryChromaDB() {
15
- const apiKey = process.env.CHROMADB_API_KEY;
16
- const tenant = process.env.CHROMADB_TENANT;
17
- const database = process.env.CHROMADB_DATABASE || 'stackmemory';
18
-
19
- console.log(chalk.cyan('šŸ” Querying ChromaDB Contexts\n'));
20
-
21
- // Connect to ChromaDB
22
- const client = new ChromaClient({
23
- ssl: true,
24
- host: 'api.trychroma.com',
25
- port: 443,
26
- headers: {
27
- 'X-Chroma-Token': apiKey
28
- },
29
- tenant: tenant,
30
- database: database
31
- });
32
-
33
- // List all collections first
34
- const collections = await client.listCollections();
35
- console.log(chalk.yellow('šŸ“š Available Collections:'));
36
- collections.forEach(col => {
37
- console.log(` - ${col.name}`);
38
- });
39
- console.log();
40
-
41
- // Get collection - try claude_context first (from hooks), then stackmemory_contexts
42
- let collection;
43
- try {
44
- collection = await client.getCollection({
45
- name: 'claude_context'
46
- });
47
- console.log(chalk.green('āœ“ Using collection: claude_context\n'));
48
- } catch {
49
- collection = await client.getCollection({
50
- name: 'stackmemory_contexts'
51
- });
52
- console.log(chalk.green('āœ“ Using collection: stackmemory_contexts\n'));
53
- }
54
-
55
- console.log(chalk.yellow('šŸ“Š Collection Stats:'));
56
- const count = await collection.count();
57
- console.log(` Total documents: ${count}\n`);
58
-
59
- // Query 1: Get all documents
60
- console.log(chalk.cyan('šŸ“š All Stored Contexts:\n'));
61
-
62
- const allDocs = await collection.get({
63
- limit: 100
64
- });
65
-
66
- if (allDocs.ids.length > 0) {
67
- for (let i = 0; i < allDocs.ids.length; i++) {
68
- const metadata = allDocs.metadatas[i];
69
- const document = allDocs.documents[i];
70
-
71
- console.log(chalk.green(`${i + 1}. ${allDocs.ids[i]}`));
72
- console.log(` Type: ${metadata.type}`);
73
- console.log(` Timestamp: ${metadata.timestamp}`);
74
- console.log(` User: ${metadata.user_id}`);
75
- console.log(` Project: ${metadata.project}`);
76
- console.log(` Content: ${document?.substring(0, 100)}...`);
77
- console.log();
78
- }
79
- }
80
-
81
- // Query 2: Search for specific content
82
- console.log(chalk.cyan('\nšŸ”Ž Search Results for "TypeScript lint error":\n'));
83
-
84
- const searchResults = await collection.query({
85
- queryTexts: ['TypeScript lint error fix'],
86
- nResults: 5
87
- });
88
-
89
- if (searchResults.ids[0].length > 0) {
90
- for (let i = 0; i < searchResults.ids[0].length; i++) {
91
- const metadata = searchResults.metadatas[0][i];
92
- const document = searchResults.documents[0][i];
93
- const distance = searchResults.distances[0][i];
94
-
95
- console.log(chalk.yellow(`Match ${i + 1} (distance: ${distance.toFixed(3)}):`));
96
- console.log(` ID: ${searchResults.ids[0][i]}`);
97
- console.log(` Type: ${metadata.type}`);
98
- console.log(` Timestamp: ${metadata.timestamp}`);
99
- console.log(` Content: ${document?.substring(0, 150)}...`);
100
- console.log();
101
- }
102
- } else {
103
- console.log('No results found');
104
- }
105
-
106
- // Query 3: Filter by metadata
107
- console.log(chalk.cyan('\nšŸ“‹ Recent Task Completions:\n'));
108
-
109
- const taskCompletions = await collection.get({
110
- where: {
111
- type: 'task_complete'
112
- },
113
- limit: 10
114
- });
115
-
116
- if (taskCompletions.ids.length > 0) {
117
- for (let i = 0; i < taskCompletions.ids.length; i++) {
118
- const metadata = taskCompletions.metadatas[i];
119
- const document = taskCompletions.documents[i];
120
-
121
- console.log(chalk.green(`Task ${i + 1}:`));
122
- console.log(` ID: ${taskCompletions.ids[i]}`);
123
- console.log(` Timestamp: ${metadata.timestamp}`);
124
- console.log(` Task ID: ${metadata.task_id}`);
125
- console.log(` Duration: ${metadata.duration}ms`);
126
- console.log(` Files Changed: ${metadata.files_changed}`);
127
- console.log(` Content: ${document?.substring(0, 100)}...`);
128
- console.log();
129
- }
130
- } else {
131
- console.log('No task completions found');
132
- }
133
-
134
- // Query 4: Get periodic saves
135
- console.log(chalk.cyan('\nā° Periodic Checkpoints:\n'));
136
-
137
- const periodicSaves = await collection.get({
138
- where: {
139
- type: 'periodic_save'
140
- },
141
- limit: 10
142
- });
143
-
144
- if (periodicSaves.ids.length > 0) {
145
- for (let i = 0; i < periodicSaves.ids.length; i++) {
146
- const metadata = periodicSaves.metadatas[i];
147
- const document = periodicSaves.documents[i];
148
-
149
- console.log(chalk.blue(`Checkpoint ${i + 1}:`));
150
- console.log(` Timestamp: ${metadata.timestamp}`);
151
- console.log(` Interval: ${metadata.interval}`);
152
- console.log(` Active Files: ${metadata.active_files}`);
153
- console.log(` Git Status: ${document?.substring(0, 150)}...`);
154
- console.log();
155
- }
156
- } else {
157
- console.log('No periodic saves found');
158
- }
159
-
160
- // Query 5: Get decisions
161
- console.log(chalk.cyan('\nšŸ’” Decisions Made:\n'));
162
-
163
- const decisions = await collection.get({
164
- where: {
165
- type: 'decision_made'
166
- },
167
- limit: 10
168
- });
169
-
170
- if (decisions.ids.length > 0) {
171
- for (let i = 0; i < decisions.ids.length; i++) {
172
- const metadata = decisions.metadatas[i];
173
- const document = decisions.documents[i];
174
-
175
- console.log(chalk.magenta(`Decision ${i + 1}:`));
176
- console.log(` Category: ${metadata.category}`);
177
- console.log(` Alternatives: ${metadata.alternatives}`);
178
- console.log(` Reasoning: ${metadata.reasoning}`);
179
- console.log(` Decision: ${document?.substring(0, 200)}...`);
180
- console.log();
181
- }
182
- } else {
183
- console.log('No decisions found');
184
- }
185
-
186
- // Query 6: Group by type
187
- console.log(chalk.cyan('\nšŸ“ˆ Context Types Summary:\n'));
188
-
189
- const types = new Map();
190
- for (let i = 0; i < allDocs.ids.length; i++) {
191
- const type = allDocs.metadatas[i].type || 'unknown';
192
- types.set(type, (types.get(type) || 0) + 1);
193
- }
194
-
195
- for (const [type, count] of types.entries()) {
196
- console.log(` ${type}: ${count} documents`);
197
- }
198
- }
199
-
200
- // Run query
201
- queryChromaDB().catch(console.error);
@@ -1,274 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * Ralph-StackMemory Integration Test Script
5
- * Simple CLI to test the integration functionality
6
- */
7
-
8
- import { RalphIntegrationDemo } from '../dist/integrations/ralph/ralph-integration-demo.js';
9
- import { performance } from 'perf_hooks';
10
-
11
- async function main() {
12
- const args = process.argv.slice(2);
13
- const command = args[0] || 'demo';
14
-
15
- console.log('\n🧪 Ralph-StackMemory Integration Test');
16
- console.log('=====================================\n');
17
-
18
- const startTime = performance.now();
19
-
20
- try {
21
- switch (command) {
22
- case 'demo':
23
- await runDemo();
24
- break;
25
- case 'quick':
26
- await runQuickTest();
27
- break;
28
- case 'validate':
29
- await runValidation();
30
- break;
31
- default:
32
- showUsage();
33
- return;
34
- }
35
-
36
- const endTime = performance.now();
37
- const duration = Math.round(endTime - startTime);
38
-
39
- console.log(`\nāœ… Test completed successfully in ${duration}ms`);
40
-
41
- } catch (error) {
42
- console.error(`\nāŒ Test failed: ${error.message}`);
43
-
44
- if (process.env.DEBUG) {
45
- console.error('\nDebug info:');
46
- console.error(error.stack);
47
- }
48
-
49
- process.exit(1);
50
- }
51
- }
52
-
53
- async function runDemo() {
54
- console.log('šŸŽ¬ Running full integration demo...\n');
55
-
56
- const demo = new RalphIntegrationDemo();
57
- await demo.run();
58
- }
59
-
60
- async function runQuickTest() {
61
- console.log('⚔ Running quick validation test...\n');
62
-
63
- // Import the core classes to test they load correctly
64
- try {
65
- await import('../dist/integrations/ralph/index.js');
66
- console.log('āœ“ Core bridge class loaded');
67
-
68
- const { ContextBudgetManager } = await import('../dist/integrations/ralph/index.js');
69
- console.log('āœ“ Context budget manager loaded');
70
-
71
- const { StateReconciler } = await import('../dist/integrations/ralph/index.js');
72
- console.log('āœ“ State reconciler loaded');
73
-
74
- await import('../dist/integrations/ralph/index.js');
75
- console.log('āœ“ Iteration lifecycle loaded');
76
-
77
- await import('../dist/integrations/ralph/index.js');
78
- console.log('āœ“ Performance optimizer loaded');
79
-
80
- // Test basic instantiation
81
- const budgetManager = new ContextBudgetManager();
82
- const tokenEstimate = budgetManager.estimateTokens('Hello, world!');
83
- console.log(`āœ“ Token estimation working: ${tokenEstimate} tokens`);
84
-
85
- new StateReconciler();
86
- console.log('āœ“ State reconciler instantiated');
87
-
88
- console.log('\nšŸŽÆ All core components validated successfully!');
89
-
90
- } catch (error) {
91
- throw new Error(`Component loading failed: ${error.message}`);
92
- }
93
- }
94
-
95
- async function runValidation() {
96
- console.log('šŸ” Running detailed validation...\n');
97
-
98
- // Test context budget manager
99
- await testContextBudgetManager();
100
-
101
- // Test state reconciler
102
- await testStateReconciler();
103
-
104
- // Test performance optimizer
105
- await testPerformanceOptimizer();
106
-
107
- console.log('\n✨ All validation tests passed!');
108
- }
109
-
110
- async function testContextBudgetManager() {
111
- console.log('šŸ“Š Testing Context Budget Manager...');
112
-
113
- const { ContextBudgetManager } = await import('../dist/integrations/ralph/index.js');
114
-
115
- const manager = new ContextBudgetManager({
116
- maxTokens: 100,
117
- compressionEnabled: true
118
- });
119
-
120
- // Test token estimation
121
- const shortText = 'Short text';
122
- const longText = 'This is a much longer piece of text that should have more tokens estimated for it than the shorter version above.';
123
-
124
- const shortTokens = manager.estimateTokens(shortText);
125
- const longTokens = manager.estimateTokens(longText);
126
-
127
- if (longTokens <= shortTokens) {
128
- throw new Error('Token estimation not working correctly');
129
- }
130
-
131
- // Test empty text
132
- const emptyTokens = manager.estimateTokens('');
133
- if (emptyTokens !== 0) {
134
- throw new Error('Empty text should have 0 tokens');
135
- }
136
-
137
- console.log(' āœ“ Token estimation working correctly');
138
-
139
- // Test usage tracking
140
- const usage = manager.getUsage();
141
- if (typeof usage.used !== 'number' || typeof usage.available !== 'number') {
142
- throw new Error('Usage tracking not working');
143
- }
144
-
145
- console.log(' āœ“ Usage tracking functional');
146
- }
147
-
148
- async function testStateReconciler() {
149
- console.log('šŸ”„ Testing State Reconciler...');
150
-
151
- const { StateReconciler } = await import('../dist/integrations/ralph/index.js');
152
-
153
- const reconciler = new StateReconciler({
154
- precedence: ['git', 'files', 'memory'],
155
- conflictResolution: 'automatic'
156
- });
157
-
158
- // Test conflict detection
159
- const sources = [
160
- {
161
- type: 'git',
162
- state: { iteration: 5, status: 'running' },
163
- timestamp: Date.now(),
164
- confidence: 0.9
165
- },
166
- {
167
- type: 'files',
168
- state: { iteration: 5, status: 'running' },
169
- timestamp: Date.now(),
170
- confidence: 0.95
171
- }
172
- ];
173
-
174
- const conflicts = reconciler.detectConflicts(sources);
175
- if (conflicts.length !== 0) {
176
- throw new Error('Should not detect conflicts in matching sources');
177
- }
178
-
179
- console.log(' āœ“ Conflict detection working');
180
-
181
- // Test state sources
182
- const gitState = await reconciler.getGitState();
183
- const fileState = await reconciler.getFileState();
184
- const memoryState = await reconciler.getMemoryState('test-loop');
185
-
186
- if (gitState.type !== 'git' || fileState.type !== 'files' || memoryState.type !== 'memory') {
187
- throw new Error('State source types incorrect');
188
- }
189
-
190
- console.log(' āœ“ State source loading functional');
191
- }
192
-
193
- async function testPerformanceOptimizer() {
194
- console.log('⚔ Testing Performance Optimizer...');
195
-
196
- const { PerformanceOptimizer } = await import('../dist/integrations/ralph/index.js');
197
-
198
- const optimizer = new PerformanceOptimizer({
199
- asyncSaves: true,
200
- compressionLevel: 1,
201
- cacheEnabled: true
202
- });
203
-
204
- // Test metrics
205
- const metrics = optimizer.getMetrics();
206
- const requiredMetrics = ['iterationTime', 'contextLoadTime', 'stateSaveTime', 'memoryUsage', 'tokenCount', 'cacheHitRate'];
207
-
208
- for (const metric of requiredMetrics) {
209
- if (typeof metrics[metric] !== 'number') {
210
- throw new Error(`Missing or invalid metric: ${metric}`);
211
- }
212
- }
213
-
214
- console.log(' āœ“ Performance metrics available');
215
-
216
- // Test compression
217
- const testData = { message: 'Hello, world!', array: [1, 2, 3, 4, 5] };
218
- const compressed = await optimizer.compressData(testData);
219
-
220
- if (compressed.compressed !== true) {
221
- throw new Error('Data compression not working');
222
- }
223
-
224
- const decompressed = await optimizer.decompressData(compressed);
225
- if (JSON.stringify(decompressed) !== JSON.stringify(testData)) {
226
- throw new Error('Data decompression failed');
227
- }
228
-
229
- console.log(' āœ“ Compression/decompression working');
230
-
231
- // Cleanup
232
- optimizer.cleanup();
233
- }
234
-
235
- function showUsage() {
236
- console.log(`
237
- Usage: node ralph-integration-test.js [command]
238
-
239
- Commands:
240
- demo Run the full integration demonstration (default)
241
- quick Quick validation of core components
242
- validate Detailed validation of all functionality
243
-
244
- Examples:
245
- node ralph-integration-test.js
246
- node ralph-integration-test.js quick
247
- DEBUG=1 node ralph-integration-test.js validate
248
-
249
- Environment Variables:
250
- DEBUG=1 Show detailed error information
251
- `);
252
- }
253
-
254
- // Handle unhandled promise rejections
255
- process.on('unhandledRejection', (reason, _promise) => {
256
- console.error('\nšŸ’„ Unhandled Promise Rejection:');
257
- console.error(reason);
258
- process.exit(1);
259
- });
260
-
261
- // Handle uncaught exceptions
262
- process.on('uncaughtException', (error) => {
263
- console.error('\nšŸ’„ Uncaught Exception:');
264
- console.error(error.message);
265
- if (process.env.DEBUG) {
266
- console.error(error.stack);
267
- }
268
- process.exit(1);
269
- });
270
-
271
- // Run if called directly
272
- if (import.meta.url === `file://${process.argv[1]}`) {
273
- main().catch(console.error);
274
- }
@@ -1,170 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- import fs from 'fs';
4
- import path from 'path';
5
- import { fileURLToPath } from 'url';
6
-
7
- const __dirname = path.dirname(fileURLToPath(import.meta.url));
8
-
9
- function reconcileLocalTasks() {
10
- const tasksFile = path.join(__dirname, '..', '.stackmemory', 'tasks.jsonl');
11
-
12
- if (!fs.existsSync(tasksFile)) {
13
- console.error('āŒ Tasks file not found:', tasksFile);
14
- return;
15
- }
16
-
17
- // Read all tasks
18
- const lines = fs.readFileSync(tasksFile, 'utf8').split('\n').filter(l => l.trim());
19
- const tasks = new Map();
20
- const tasksByLinearId = new Map();
21
- const tasksByTitle = new Map();
22
-
23
- console.log('šŸ“Š Analyzing local tasks...\n');
24
-
25
- // Parse and organize tasks
26
- for (const line of lines) {
27
- try {
28
- const task = JSON.parse(line);
29
-
30
- // Store latest version of each task
31
- if (!tasks.has(task.id) || task.timestamp > tasks.get(task.id).timestamp) {
32
- tasks.set(task.id, task);
33
- }
34
-
35
- // Extract Linear ID if present
36
- const linearMatch = task.title?.match(/\[(STA-\d+|ENG-\d+)\]/);
37
- if (linearMatch) {
38
- const linearId = linearMatch[1];
39
- if (!tasksByLinearId.has(linearId)) {
40
- tasksByLinearId.set(linearId, []);
41
- }
42
- tasksByLinearId.get(linearId).push(task);
43
- }
44
-
45
- // Normalize title for duplicate detection
46
- const normalizedTitle = task.title
47
- ?.replace(/^\[[^\]]+\]\s*/, '') // Remove [STA-XXX] or [ENG-XXX]
48
- ?.replace(/^\[.*?\]\s*/, '') // Remove priority markers
49
- ?.trim();
50
-
51
- if (normalizedTitle) {
52
- if (!tasksByTitle.has(normalizedTitle)) {
53
- tasksByTitle.set(normalizedTitle, []);
54
- }
55
- tasksByTitle.get(normalizedTitle).push(task);
56
- }
57
- } catch (e) {
58
- // Skip invalid lines
59
- }
60
- }
61
-
62
- console.log(`šŸ“‹ Total unique tasks: ${tasks.size}`);
63
- console.log(`šŸ”— Tasks with Linear IDs: ${tasksByLinearId.size}`);
64
-
65
- // Find duplicates by Linear ID
66
- const duplicateLinearIds = [];
67
- for (const [linearId, taskList] of tasksByLinearId.entries()) {
68
- if (taskList.length > 1) {
69
- duplicateLinearIds.push({ linearId, count: taskList.length, tasks: taskList });
70
- }
71
- }
72
-
73
- if (duplicateLinearIds.length > 0) {
74
- console.log(`\nāš ļø Duplicate Linear IDs found (${duplicateLinearIds.length}):`);
75
- for (const dup of duplicateLinearIds.slice(0, 5)) {
76
- console.log(` - ${dup.linearId}: ${dup.count} duplicates`);
77
- for (const task of dup.tasks) {
78
- console.log(` • ${task.id}: ${task.status} (${new Date(task.timestamp).toISOString()})`);
79
- }
80
- }
81
- }
82
-
83
- // Find duplicate titles
84
- const duplicateTitles = [];
85
- for (const [title, taskList] of tasksByTitle.entries()) {
86
- if (taskList.length > 1) {
87
- // Check if they have different Linear IDs
88
- const linearIds = new Set();
89
- for (const task of taskList) {
90
- const match = task.title?.match(/\[(STA-\d+|ENG-\d+)\]/);
91
- if (match) linearIds.add(match[1]);
92
- }
93
-
94
- if (linearIds.size > 1 || linearIds.size === 0) {
95
- duplicateTitles.push({ title, count: taskList.length, tasks: taskList });
96
- }
97
- }
98
- }
99
-
100
- if (duplicateTitles.length > 0) {
101
- console.log(`\nāš ļø Duplicate titles found (${duplicateTitles.length}):`);
102
- for (const dup of duplicateTitles.slice(0, 5)) {
103
- console.log(` - "${dup.title}": ${dup.count} duplicates`);
104
- }
105
- }
106
-
107
- // Show task status breakdown
108
- const statusCounts = {};
109
- for (const task of tasks.values()) {
110
- const status = task.status || 'unknown';
111
- statusCounts[status] = (statusCounts[status] || 0) + 1;
112
- }
113
-
114
- console.log('\nšŸ“Š Task Status Breakdown:');
115
- for (const [status, count] of Object.entries(statusCounts)) {
116
- const emoji = status === 'completed' ? 'āœ…' :
117
- status === 'in_progress' ? 'šŸ”„' :
118
- status === 'cancelled' ? 'āŒ' : 'ā³';
119
- console.log(` ${emoji} ${status}: ${count}`);
120
- }
121
-
122
- // Priority breakdown
123
- const priorityCounts = {};
124
- for (const task of tasks.values()) {
125
- const priority = task.priority || 'none';
126
- priorityCounts[priority] = (priorityCounts[priority] || 0) + 1;
127
- }
128
-
129
- console.log('\nšŸŽÆ Priority Breakdown:');
130
- for (const [priority, count] of Object.entries(priorityCounts)) {
131
- console.log(` - ${priority}: ${count}`);
132
- }
133
-
134
- // Recent active tasks
135
- const recentTasks = Array.from(tasks.values())
136
- .filter(t => t.status === 'in_progress' || (t.timestamp > Date.now() - 7 * 24 * 60 * 60 * 1000))
137
- .sort((a, b) => b.timestamp - a.timestamp)
138
- .slice(0, 10);
139
-
140
- console.log('\nšŸ•’ Recent Active Tasks:');
141
- for (const task of recentTasks) {
142
- const status = task.status === 'completed' ? 'āœ…' :
143
- task.status === 'in_progress' ? 'šŸ”„' : 'ā³';
144
- const linearId = task.title?.match(/\[(STA-\d+|ENG-\d+)\]/)?.[1] || '';
145
- console.log(` ${status} ${linearId ? `[${linearId}]` : ''} ${task.title}`);
146
- }
147
-
148
- // Recommendations
149
- console.log('\nšŸ’” Recommendations:');
150
- if (duplicateLinearIds.length > 0) {
151
- console.log(` - ${duplicateLinearIds.length} tasks have duplicate Linear IDs - consider deduplication`);
152
- }
153
- if (duplicateTitles.length > 0) {
154
- console.log(` - ${duplicateTitles.length} task titles are duplicated - review for consolidation`);
155
- }
156
-
157
- const pendingCount = statusCounts.pending || 0;
158
- const inProgressCount = statusCounts.in_progress || 0;
159
-
160
- if (pendingCount > 20) {
161
- console.log(` - ${pendingCount} pending tasks - consider prioritizing or archiving old tasks`);
162
- }
163
- if (inProgressCount > 5) {
164
- console.log(` - ${inProgressCount} tasks in progress - consider focusing on completion`);
165
- }
166
-
167
- console.log('\nāœ… Task reconciliation complete!');
168
- }
169
-
170
- reconcileLocalTasks();