@stackmemoryai/stackmemory 0.5.58 → 0.5.61
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 +105 -1
- package/dist/scripts/benchmark-performance.js +48 -0
- package/dist/scripts/benchmark-performance.js.map +7 -0
- package/dist/scripts/check-redis.js +42 -0
- package/dist/scripts/check-redis.js.map +7 -0
- package/dist/scripts/initialize.js +116 -0
- package/dist/scripts/initialize.js.map +7 -0
- package/dist/scripts/list-linear-tasks.js +124 -0
- package/dist/scripts/list-linear-tasks.js.map +7 -0
- package/dist/scripts/measure-handoff-impact.js +340 -0
- package/dist/scripts/measure-handoff-impact.js.map +7 -0
- package/dist/scripts/query-chromadb.js +160 -0
- package/dist/scripts/query-chromadb.js.map +7 -0
- package/dist/scripts/show-linear-summary.js +119 -0
- package/dist/scripts/show-linear-summary.js.map +7 -0
- package/dist/scripts/simple-swarm-demo.js +90 -0
- package/dist/scripts/simple-swarm-demo.js.map +7 -0
- package/dist/scripts/status.js +155 -0
- package/dist/scripts/status.js.map +7 -0
- package/dist/scripts/test-chromadb-sync.js +192 -0
- package/dist/scripts/test-chromadb-sync.js.map +7 -0
- package/dist/scripts/test-ralph-iteration-fix.js +86 -0
- package/dist/scripts/test-ralph-iteration-fix.js.map +7 -0
- package/dist/scripts/test-ralph-iterations.js +121 -0
- package/dist/scripts/test-ralph-iterations.js.map +7 -0
- package/dist/scripts/test-redis-storage.js +389 -0
- package/dist/scripts/test-redis-storage.js.map +7 -0
- package/dist/scripts/test-simple-ralph-state-sync.js +115 -0
- package/dist/scripts/test-simple-ralph-state-sync.js.map +7 -0
- package/dist/scripts/test-swarm-fixes.js +125 -0
- package/dist/scripts/test-swarm-fixes.js.map +7 -0
- package/dist/scripts/test-swarm-tui.js +23 -0
- package/dist/scripts/test-swarm-tui.js.map +7 -0
- package/dist/scripts/test-tui-shortcuts.js +52 -0
- package/dist/scripts/test-tui-shortcuts.js.map +7 -0
- package/dist/scripts/validate-tui-shortcuts.js +60 -0
- package/dist/scripts/validate-tui-shortcuts.js.map +7 -0
- package/dist/src/agents/core/agent-task-manager.js.map +7 -0
- package/dist/src/agents/verifiers/base-verifier.js.map +7 -0
- package/dist/src/agents/verifiers/formatter-verifier.js.map +7 -0
- package/dist/src/agents/verifiers/llm-judge.js.map +7 -0
- package/dist/src/cli/auto-detect.js.map +7 -0
- package/dist/src/cli/claude-sm-danger.js.map +7 -0
- package/dist/src/cli/claude-sm.js +1236 -0
- package/dist/src/cli/claude-sm.js.map +7 -0
- package/dist/src/cli/codex-sm-danger.js.map +7 -0
- package/dist/src/cli/codex-sm.js.map +7 -0
- package/dist/src/cli/commands/api.js.map +7 -0
- package/dist/src/cli/commands/auto-background.js.map +7 -0
- package/dist/src/cli/commands/cleanup-processes.js.map +7 -0
- package/dist/src/cli/commands/clear.js.map +7 -0
- package/dist/src/cli/commands/config.js.map +7 -0
- package/dist/src/cli/commands/context-rehydrate.js.map +7 -0
- package/dist/src/cli/commands/context.js.map +7 -0
- package/dist/src/cli/commands/daemon.js.map +7 -0
- package/dist/src/cli/commands/dashboard.js.map +7 -0
- package/dist/src/cli/commands/db.js.map +7 -0
- package/dist/src/cli/commands/decision.js.map +7 -0
- package/dist/src/cli/commands/discovery.js.map +7 -0
- package/dist/src/cli/commands/handoff.js.map +7 -0
- package/dist/src/cli/commands/hooks.js.map +7 -0
- package/dist/src/cli/commands/linear.js.map +7 -0
- package/dist/src/cli/commands/log.js.map +7 -0
- package/dist/src/cli/commands/login.js.map +7 -0
- package/dist/src/cli/commands/migrate.js.map +7 -0
- package/dist/src/cli/commands/model.js.map +7 -0
- package/dist/src/cli/commands/onboard.js.map +7 -0
- package/dist/src/cli/commands/projects.js.map +7 -0
- package/dist/src/cli/commands/ralph.js.map +7 -0
- package/dist/src/cli/commands/retrieval.js.map +7 -0
- package/dist/src/cli/commands/search.js +173 -0
- package/dist/src/cli/commands/search.js.map +7 -0
- package/dist/src/cli/commands/service.js.map +7 -0
- package/dist/src/cli/commands/session.js.map +7 -0
- package/dist/src/cli/commands/settings.js.map +7 -0
- package/dist/src/cli/commands/setup.js.map +7 -0
- package/dist/src/cli/commands/shell.js.map +7 -0
- package/dist/src/cli/commands/signup.js.map +7 -0
- package/dist/src/cli/commands/skills.js.map +7 -0
- package/dist/src/cli/commands/sms-notify.js.map +7 -0
- package/dist/src/cli/commands/storage-tier.js.map +7 -0
- package/dist/src/cli/commands/sweep.js.map +7 -0
- package/dist/src/cli/commands/tasks.js.map +7 -0
- package/dist/src/cli/commands/worktree.js.map +7 -0
- package/dist/src/cli/index.js +609 -0
- package/dist/src/cli/index.js.map +7 -0
- package/dist/src/cli/opencode-sm.js.map +7 -0
- package/dist/src/cli/utils/viewer.js.map +7 -0
- package/dist/src/core/config/config-manager.js.map +7 -0
- package/dist/src/core/config/feature-flags.js.map +7 -0
- package/dist/src/core/config/storage-config.js.map +7 -0
- package/dist/src/core/config/types.js.map +7 -0
- package/dist/src/core/context/auto-context.js.map +7 -0
- package/dist/src/core/context/dual-stack-manager.js.map +7 -0
- package/dist/src/core/context/enhanced-rehydration.js.map +7 -0
- package/dist/src/core/context/frame-database.js.map +7 -0
- package/dist/src/core/context/frame-digest.js.map +7 -0
- package/dist/src/core/context/frame-handoff-manager.js.map +7 -0
- package/dist/src/core/context/frame-lifecycle-hooks.js.map +7 -0
- package/dist/src/core/context/frame-recovery.js.map +7 -0
- package/dist/src/core/context/frame-stack.js.map +7 -0
- package/dist/src/core/context/index.js.map +7 -0
- package/dist/src/core/context/permission-manager.js.map +7 -0
- package/dist/src/core/context/recursive-context-manager.js.map +7 -0
- package/dist/src/core/context/refactored-frame-manager.js.map +7 -0
- package/dist/src/core/context/shared-context-layer.js.map +7 -0
- package/dist/src/core/context/stack-merge-resolver.js.map +7 -0
- package/dist/src/core/context/validation.js.map +7 -0
- package/dist/src/core/database/batch-operations.js.map +7 -0
- package/dist/src/core/database/connection-pool.js.map +7 -0
- package/dist/src/core/database/database-adapter.js.map +7 -0
- package/dist/src/core/database/migration-manager.js.map +7 -0
- package/dist/src/core/database/query-cache.js.map +7 -0
- package/dist/src/core/database/query-router.js.map +7 -0
- package/dist/src/core/database/sqlite-adapter.js +738 -0
- package/dist/src/core/database/sqlite-adapter.js.map +7 -0
- package/dist/src/core/digest/enhanced-hybrid-digest.js.map +7 -0
- package/dist/src/core/digest/frame-digest-integration.js.map +7 -0
- package/dist/src/core/digest/hybrid-digest-generator.js.map +7 -0
- package/dist/src/core/digest/index.js.map +7 -0
- package/dist/src/core/digest/types.js.map +7 -0
- package/dist/src/core/errors/error-utils.js +208 -0
- package/dist/src/core/errors/error-utils.js.map +7 -0
- package/dist/src/core/errors/index.js +521 -0
- package/dist/src/core/errors/index.js.map +7 -0
- package/dist/src/core/errors/recovery.js.map +7 -0
- package/dist/src/core/execution/parallel-executor.js.map +7 -0
- package/dist/src/core/extensions/custom-tools.js +567 -0
- package/dist/src/core/extensions/custom-tools.js.map +7 -0
- package/dist/src/core/extensions/index.js +55 -0
- package/dist/src/core/extensions/index.js.map +7 -0
- package/dist/src/core/extensions/loader.js +709 -0
- package/dist/src/core/extensions/loader.js.map +7 -0
- package/dist/src/core/extensions/plugin-system.js +506 -0
- package/dist/src/core/extensions/plugin-system.js.map +7 -0
- package/dist/src/core/extensions/provider-adapter.js +617 -0
- package/dist/src/core/extensions/provider-adapter.js.map +7 -0
- package/dist/src/core/extensions/sandbox-runtime.js +664 -0
- package/dist/src/core/extensions/sandbox-runtime.js.map +7 -0
- package/dist/src/core/frame/workflow-templates.js.map +7 -0
- package/dist/src/core/merge/conflict-detector.js.map +7 -0
- package/dist/src/core/merge/index.js.map +7 -0
- package/dist/src/core/merge/resolution-engine.js.map +7 -0
- package/dist/src/core/merge/stack-diff.js.map +7 -0
- package/dist/src/core/merge/unified-merge-resolver.js +303 -0
- package/dist/src/core/merge/unified-merge-resolver.js.map +7 -0
- package/dist/src/core/models/fallback-monitor.js.map +7 -0
- package/dist/src/core/models/model-router.js.map +7 -0
- package/dist/src/core/monitoring/error-handler.js.map +7 -0
- package/dist/src/core/monitoring/logger.js +202 -0
- package/dist/src/core/monitoring/logger.js.map +7 -0
- package/dist/src/core/monitoring/metrics.js.map +7 -0
- package/dist/src/core/monitoring/progress-tracker.js.map +7 -0
- package/dist/src/core/monitoring/session-monitor.js.map +7 -0
- package/dist/src/core/performance/context-cache.js.map +7 -0
- package/dist/src/core/performance/index.js.map +7 -0
- package/dist/src/core/performance/lazy-context-loader.js.map +7 -0
- package/dist/src/core/performance/monitor.js.map +7 -0
- package/dist/src/core/performance/optimized-frame-context.js.map +7 -0
- package/dist/src/core/performance/performance-benchmark.js.map +7 -0
- package/dist/src/core/performance/performance-profiler.js.map +7 -0
- package/dist/src/core/performance/streaming-jsonl-parser.js.map +7 -0
- package/dist/src/core/persistence/postgres-adapter.js.map +7 -0
- package/dist/src/core/projects/project-isolation.js.map +7 -0
- package/dist/src/core/projects/project-manager.js.map +7 -0
- package/dist/src/core/query/query-parser.js.map +7 -0
- package/dist/src/core/query/query-templates.js.map +7 -0
- package/dist/src/core/retrieval/context-retriever.js.map +7 -0
- package/dist/src/core/retrieval/index.js.map +7 -0
- package/dist/src/core/retrieval/llm-context-retrieval.js.map +7 -0
- package/dist/src/core/retrieval/llm-provider.js.map +7 -0
- package/dist/src/core/retrieval/retrieval-audit.js.map +7 -0
- package/dist/src/core/retrieval/summary-generator.js.map +7 -0
- package/dist/src/core/retrieval/types.js.map +7 -0
- package/dist/src/core/security/index.js +35 -0
- package/dist/src/core/security/index.js.map +7 -0
- package/dist/src/core/security/input-sanitizer.js +321 -0
- package/dist/src/core/security/input-sanitizer.js.map +7 -0
- package/dist/src/core/session/clear-survival.js.map +7 -0
- package/dist/src/core/session/enhanced-handoff.js.map +7 -0
- package/dist/src/core/session/handoff-generator.js.map +7 -0
- package/dist/src/core/session/index.js.map +7 -0
- package/dist/src/core/session/session-manager.js.map +7 -0
- package/dist/src/core/skills/index.js.map +7 -0
- package/dist/src/core/skills/skill-storage.js.map +7 -0
- package/dist/src/core/skills/types.js.map +7 -0
- package/dist/src/core/storage/chromadb-adapter.js +380 -0
- package/dist/src/core/storage/chromadb-adapter.js.map +7 -0
- package/dist/src/core/storage/infinite-storage.js.map +7 -0
- package/dist/src/core/storage/remote-storage.js.map +7 -0
- package/dist/src/core/storage/two-tier-storage.js.map +7 -0
- package/dist/src/core/trace/cli-trace-wrapper.js.map +7 -0
- package/dist/src/core/trace/db-trace-wrapper.js.map +7 -0
- package/dist/src/core/trace/debug-trace.js.map +7 -0
- package/dist/src/core/trace/index.js.map +7 -0
- package/dist/src/core/trace/linear-api-wrapper.js.map +7 -0
- package/dist/src/core/trace/trace-detector.js.map +7 -0
- package/dist/src/core/trace/trace-store.js.map +7 -0
- package/dist/src/core/trace/types.js.map +7 -0
- package/dist/src/core/utils/async-mutex.js.map +7 -0
- package/dist/src/core/utils/compression.js.map +7 -0
- package/dist/src/core/utils/update-checker.js.map +7 -0
- package/dist/src/core/worktree/worktree-manager.js.map +7 -0
- package/dist/src/daemon/daemon-config.js.map +7 -0
- package/dist/src/daemon/services/context-service.js.map +7 -0
- package/dist/src/daemon/services/linear-service.js.map +7 -0
- package/dist/src/daemon/session-daemon.js.map +7 -0
- package/dist/src/daemon/unified-daemon.js.map +7 -0
- package/dist/src/features/analytics/api/analytics-api.js.map +7 -0
- package/dist/src/features/analytics/core/analytics-service.js.map +7 -0
- package/dist/src/features/analytics/index.js.map +7 -0
- package/dist/src/features/analytics/queries/metrics-queries.js.map +7 -0
- package/dist/src/features/browser/browser-mcp.js.map +7 -0
- package/dist/src/features/sweep/index.js.map +7 -0
- package/dist/src/features/sweep/prediction-client.js.map +7 -0
- package/dist/src/features/sweep/prompt-builder.js.map +7 -0
- package/dist/src/features/sweep/pty-wrapper.js.map +7 -0
- package/dist/src/features/sweep/state-watcher.js.map +7 -0
- package/dist/src/features/sweep/status-bar.js.map +7 -0
- package/dist/src/features/sweep/sweep-server-manager.js.map +7 -0
- package/dist/src/features/sweep/tab-interceptor.js.map +7 -0
- package/dist/src/features/sweep/types.js.map +7 -0
- package/dist/src/features/tasks/linear-task-manager.js.map +7 -0
- package/dist/src/features/tasks/task-aware-context.js.map +7 -0
- package/dist/src/features/tui/simple-monitor.js.map +7 -0
- package/dist/src/features/tui/swarm-monitor.js.map +7 -0
- package/dist/src/features/web/client/stores/task-store.js.map +7 -0
- package/dist/src/features/web/server/index.js.map +7 -0
- package/dist/src/hooks/auto-background.js.map +7 -0
- package/dist/src/hooks/claude-code-whatsapp-hook.js.map +7 -0
- package/dist/src/hooks/config.js.map +7 -0
- package/dist/src/hooks/daemon.js.map +7 -0
- package/dist/src/hooks/events.js.map +7 -0
- package/dist/src/hooks/index.js.map +7 -0
- package/dist/src/hooks/linear-task-picker.js.map +7 -0
- package/dist/src/hooks/schemas.js.map +7 -0
- package/dist/src/hooks/secure-fs.js.map +7 -0
- package/dist/src/hooks/security-logger.js.map +7 -0
- package/dist/src/hooks/session-summary.js.map +7 -0
- package/dist/src/hooks/sms-action-runner.js.map +7 -0
- package/dist/src/hooks/sms-notify.js.map +7 -0
- package/dist/src/hooks/sms-watcher.js.map +7 -0
- package/dist/src/hooks/sms-webhook.js.map +7 -0
- package/dist/src/hooks/whatsapp-commands.js.map +7 -0
- package/dist/src/hooks/whatsapp-scheduler.js.map +7 -0
- package/dist/src/hooks/whatsapp-sync.js.map +7 -0
- package/dist/src/index.js.map +7 -0
- package/dist/src/integrations/anthropic/client.js.map +7 -0
- package/dist/src/integrations/claude-code/agent-bridge.js.map +7 -0
- package/dist/src/integrations/claude-code/enhanced-pre-clear-hooks.js.map +7 -0
- package/dist/src/integrations/claude-code/lifecycle-hooks.js.map +7 -0
- package/dist/src/integrations/claude-code/post-task-hooks.js.map +7 -0
- package/dist/src/integrations/claude-code/subagent-client-stub.js.map +7 -0
- package/dist/src/integrations/claude-code/subagent-client.js.map +7 -0
- package/dist/src/integrations/claude-code/task-coordinator.js.map +7 -0
- package/dist/src/integrations/linear/auth.js.map +7 -0
- package/dist/src/integrations/linear/auto-sync.js.map +7 -0
- package/dist/src/integrations/linear/client.js +634 -0
- package/dist/src/integrations/linear/client.js.map +7 -0
- package/dist/src/integrations/linear/config.js.map +7 -0
- package/dist/src/integrations/linear/migration.js.map +7 -0
- package/dist/src/integrations/linear/oauth-server.js.map +7 -0
- package/dist/src/integrations/linear/rest-client.js.map +7 -0
- package/dist/src/integrations/linear/sync-manager.js.map +7 -0
- package/dist/src/integrations/linear/sync-service.js.map +7 -0
- package/dist/src/integrations/linear/sync.js.map +7 -0
- package/dist/src/integrations/linear/unified-sync.js.map +7 -0
- package/dist/src/integrations/linear/webhook-handler.js.map +7 -0
- package/dist/src/integrations/linear/webhook-server.js.map +7 -0
- package/dist/src/integrations/linear/webhook.js.map +7 -0
- package/dist/src/integrations/mcp/handlers/code-execution-handlers.js.map +7 -0
- package/dist/src/integrations/mcp/handlers/context-handlers.js.map +7 -0
- package/dist/src/integrations/mcp/handlers/discovery-handlers.js.map +7 -0
- package/dist/src/integrations/mcp/handlers/index.js.map +7 -0
- package/dist/src/integrations/mcp/handlers/linear-handlers.js.map +7 -0
- package/dist/src/integrations/mcp/handlers/skill-handlers.js.map +7 -0
- package/dist/src/integrations/mcp/handlers/task-handlers.js.map +7 -0
- package/dist/src/integrations/mcp/handlers/trace-handlers.js.map +7 -0
- package/dist/src/integrations/mcp/index.js.map +7 -0
- package/dist/src/integrations/mcp/middleware/tool-scoring.js.map +7 -0
- package/dist/src/integrations/mcp/refactored-server.js.map +7 -0
- package/dist/src/integrations/mcp/remote-server.js +682 -0
- package/dist/src/integrations/mcp/remote-server.js.map +7 -0
- package/dist/src/integrations/mcp/schemas.js.map +7 -0
- package/dist/src/integrations/mcp/server.js +1975 -0
- package/dist/src/integrations/mcp/server.js.map +7 -0
- package/dist/src/integrations/mcp/tool-definitions-code.js.map +7 -0
- package/dist/src/integrations/mcp/tool-definitions.js.map +7 -0
- package/dist/src/integrations/ralph/bridge/ralph-stackmemory-bridge.js.map +7 -0
- package/dist/src/integrations/ralph/context/context-budget-manager.js.map +7 -0
- package/dist/src/integrations/ralph/context/stackmemory-context-loader.js.map +7 -0
- package/dist/src/integrations/ralph/coordination/enhanced-coordination.js.map +7 -0
- package/dist/src/integrations/ralph/index.js.map +7 -0
- package/dist/src/integrations/ralph/learning/pattern-learner.js.map +7 -0
- package/dist/src/integrations/ralph/lifecycle/iteration-lifecycle.js.map +7 -0
- package/dist/src/integrations/ralph/monitoring/swarm-dashboard.js.map +7 -0
- package/dist/src/integrations/ralph/monitoring/swarm-registry.js.map +7 -0
- package/dist/src/integrations/ralph/orchestration/multi-loop-orchestrator.js.map +7 -0
- package/dist/src/integrations/ralph/patterns/compounding-engineering-pattern.js.map +7 -0
- package/dist/src/integrations/ralph/patterns/extended-coherence-sessions.js.map +7 -0
- package/dist/src/integrations/ralph/patterns/oracle-worker-pattern.js.map +7 -0
- package/dist/src/integrations/ralph/performance/performance-optimizer.js.map +7 -0
- package/dist/src/integrations/ralph/recovery/crash-recovery.js.map +7 -0
- package/dist/src/integrations/ralph/state/state-reconciler.js.map +7 -0
- package/dist/src/integrations/ralph/swarm/git-workflow-manager.js.map +7 -0
- package/dist/src/integrations/ralph/swarm/swarm-coordinator.js.map +7 -0
- package/dist/src/integrations/ralph/types.js +5 -0
- package/dist/src/integrations/ralph/visualization/ralph-debugger.js.map +7 -0
- package/dist/src/mcp/stackmemory-mcp-server.js.map +7 -0
- package/dist/src/middleware/exponential-rate-limiter.js.map +7 -0
- package/dist/src/models/user.model.js.map +7 -0
- package/dist/src/servers/production/auth-middleware.js.map +7 -0
- package/dist/src/services/config-service.js.map +7 -0
- package/dist/src/services/context-service.js.map +7 -0
- package/dist/src/skills/api-discovery.js.map +7 -0
- package/dist/src/skills/api-skill.js.map +7 -0
- package/dist/src/skills/claude-skills.js.map +7 -0
- package/dist/src/skills/dashboard-launcher.js.map +7 -0
- package/dist/src/skills/recursive-agent-orchestrator.js.map +7 -0
- package/dist/src/skills/repo-ingestion-skill.js +632 -0
- package/dist/src/skills/repo-ingestion-skill.js.map +7 -0
- package/dist/src/skills/unified-rlm-orchestrator.js.map +7 -0
- package/dist/src/types/task.js.map +7 -0
- package/dist/src/utils/env.js.map +7 -0
- package/dist/src/utils/formatting.js.map +7 -0
- package/dist/src/utils/process-cleanup.js.map +7 -0
- package/package.json +13 -9
- package/scripts/background-sync-manager.js +145 -83
- package/scripts/claude-sm-autostart.js +17 -12
- package/scripts/gepa/README.md +275 -0
- package/scripts/gepa/config.json +53 -0
- package/scripts/gepa/evals/coding-tasks.jsonl +5 -0
- package/scripts/gepa/evals/fixtures/buggy-loop.js +18 -0
- package/scripts/gepa/evals/fixtures/callback-hell.js +53 -0
- package/scripts/gepa/generations/gen-000/baseline.md +124 -0
- package/scripts/gepa/hooks/auto-optimize.js +494 -0
- package/scripts/gepa/hooks/eval-tracker.js +203 -0
- package/scripts/gepa/hooks/reflect.js +311 -0
- package/scripts/gepa/optimize.js +611 -0
- package/scripts/gepa/state.json +14 -0
- package/scripts/initialize.ts +16 -7
- package/scripts/install.sh +14 -62
- package/scripts/status.ts +111 -46
- package/scripts/test-pre-publish-quick.sh +1 -1
- package/dist/agents/core/agent-task-manager.js.map +0 -7
- package/dist/agents/testing-agent.js +0 -614
- package/dist/agents/testing-agent.js.map +0 -7
- package/dist/agents/verifiers/base-verifier.js.map +0 -7
- package/dist/agents/verifiers/formatter-verifier.js.map +0 -7
- package/dist/agents/verifiers/llm-judge.js.map +0 -7
- package/dist/cli/auto-detect.js.map +0 -7
- package/dist/cli/browser-test.js +0 -33
- package/dist/cli/browser-test.js.map +0 -7
- package/dist/cli/claude-sm-danger.js.map +0 -7
- package/dist/cli/claude-sm.js +0 -1156
- package/dist/cli/claude-sm.js.map +0 -7
- package/dist/cli/codex-sm-danger.js.map +0 -7
- package/dist/cli/codex-sm.js.map +0 -7
- package/dist/cli/commands/api.js.map +0 -7
- package/dist/cli/commands/auto-background.js.map +0 -7
- package/dist/cli/commands/cleanup-processes.js.map +0 -7
- package/dist/cli/commands/clear.js.map +0 -7
- package/dist/cli/commands/config.js.map +0 -7
- package/dist/cli/commands/context-rehydrate.js.map +0 -7
- package/dist/cli/commands/context.js.map +0 -7
- package/dist/cli/commands/daemon.js.map +0 -7
- package/dist/cli/commands/dashboard.js.map +0 -7
- package/dist/cli/commands/db.js.map +0 -7
- package/dist/cli/commands/decision.js.map +0 -7
- package/dist/cli/commands/discovery.js.map +0 -7
- package/dist/cli/commands/handoff.js.map +0 -7
- package/dist/cli/commands/hooks.js.map +0 -7
- package/dist/cli/commands/linear-unified.js +0 -353
- package/dist/cli/commands/linear-unified.js.map +0 -7
- package/dist/cli/commands/linear.js.map +0 -7
- package/dist/cli/commands/log.js.map +0 -7
- package/dist/cli/commands/login.js.map +0 -7
- package/dist/cli/commands/migrate.js.map +0 -7
- package/dist/cli/commands/model.js.map +0 -7
- package/dist/cli/commands/monitor.js +0 -313
- package/dist/cli/commands/monitor.js.map +0 -7
- package/dist/cli/commands/onboard.js.map +0 -7
- package/dist/cli/commands/projects.js.map +0 -7
- package/dist/cli/commands/quality.js +0 -413
- package/dist/cli/commands/quality.js.map +0 -7
- package/dist/cli/commands/ralph.js.map +0 -7
- package/dist/cli/commands/retrieval.js.map +0 -7
- package/dist/cli/commands/search.js +0 -156
- package/dist/cli/commands/search.js.map +0 -7
- package/dist/cli/commands/service.js.map +0 -7
- package/dist/cli/commands/session.js.map +0 -7
- package/dist/cli/commands/settings.js.map +0 -7
- package/dist/cli/commands/setup.js.map +0 -7
- package/dist/cli/commands/shell.js.map +0 -7
- package/dist/cli/commands/signup.js.map +0 -7
- package/dist/cli/commands/skills.js.map +0 -7
- package/dist/cli/commands/sms-notify.js.map +0 -7
- package/dist/cli/commands/storage-tier.js.map +0 -7
- package/dist/cli/commands/storage.js +0 -360
- package/dist/cli/commands/storage.js.map +0 -7
- package/dist/cli/commands/sweep.js.map +0 -7
- package/dist/cli/commands/tasks.js.map +0 -7
- package/dist/cli/commands/test.js +0 -286
- package/dist/cli/commands/test.js.map +0 -7
- package/dist/cli/commands/workflow.js +0 -142
- package/dist/cli/commands/workflow.js.map +0 -7
- package/dist/cli/commands/worktree.js.map +0 -7
- package/dist/cli/index.js +0 -594
- package/dist/cli/index.js.map +0 -7
- package/dist/cli/opencode-sm.js.map +0 -7
- package/dist/cli/utils/viewer.js.map +0 -7
- package/dist/core/analytics/team-analytics.js +0 -378
- package/dist/core/analytics/team-analytics.js.map +0 -7
- package/dist/core/config/config-manager.js.map +0 -7
- package/dist/core/config/feature-flags.js.map +0 -7
- package/dist/core/config/storage-config.js.map +0 -7
- package/dist/core/config/types.js.map +0 -7
- package/dist/core/context/auto-context.js.map +0 -7
- package/dist/core/context/dual-stack-manager.js.map +0 -7
- package/dist/core/context/enhanced-rehydration.js.map +0 -7
- package/dist/core/context/frame-database.js.map +0 -7
- package/dist/core/context/frame-digest.js.map +0 -7
- package/dist/core/context/frame-handoff-manager.js.map +0 -7
- package/dist/core/context/frame-lifecycle-hooks.js.map +0 -7
- package/dist/core/context/frame-manager.js +0 -1069
- package/dist/core/context/frame-manager.js.map +0 -7
- package/dist/core/context/frame-recovery.js.map +0 -7
- package/dist/core/context/frame-stack.js.map +0 -7
- package/dist/core/context/incremental-gc.js +0 -290
- package/dist/core/context/incremental-gc.js.map +0 -7
- package/dist/core/context/index.js.map +0 -7
- package/dist/core/context/model-aware-compaction.js +0 -623
- package/dist/core/context/model-aware-compaction.js.map +0 -7
- package/dist/core/context/permission-manager.js.map +0 -7
- package/dist/core/context/recursive-context-manager.js.map +0 -7
- package/dist/core/context/refactored-frame-manager.js.map +0 -7
- package/dist/core/context/shared-context-layer.js.map +0 -7
- package/dist/core/context/stack-merge-resolver.js.map +0 -7
- package/dist/core/context/validation.js.map +0 -7
- package/dist/core/database/batch-operations.js.map +0 -7
- package/dist/core/database/connection-pool.js.map +0 -7
- package/dist/core/database/database-adapter.js.map +0 -7
- package/dist/core/database/migration-manager.js.map +0 -7
- package/dist/core/database/paradedb-adapter.js +0 -990
- package/dist/core/database/paradedb-adapter.js.map +0 -7
- package/dist/core/database/query-cache.js.map +0 -7
- package/dist/core/database/query-router.js.map +0 -7
- package/dist/core/database/sqlite-adapter.js +0 -728
- package/dist/core/database/sqlite-adapter.js.map +0 -7
- package/dist/core/digest/enhanced-hybrid-digest.js.map +0 -7
- package/dist/core/digest/frame-digest-integration.js.map +0 -7
- package/dist/core/digest/hybrid-digest-generator.js.map +0 -7
- package/dist/core/digest/index.js.map +0 -7
- package/dist/core/digest/types.js.map +0 -7
- package/dist/core/errors/index.js +0 -512
- package/dist/core/errors/index.js.map +0 -7
- package/dist/core/errors/recovery.js.map +0 -7
- package/dist/core/execution/parallel-executor.js.map +0 -7
- package/dist/core/frame/workflow-templates.js.map +0 -7
- package/dist/core/merge/conflict-detector.js.map +0 -7
- package/dist/core/merge/index.js.map +0 -7
- package/dist/core/merge/resolution-engine.js.map +0 -7
- package/dist/core/merge/stack-diff.js.map +0 -7
- package/dist/core/models/fallback-monitor.js.map +0 -7
- package/dist/core/models/model-router.js.map +0 -7
- package/dist/core/monitoring/error-handler.js.map +0 -7
- package/dist/core/monitoring/logger.js +0 -150
- package/dist/core/monitoring/logger.js.map +0 -7
- package/dist/core/monitoring/metrics.js.map +0 -7
- package/dist/core/monitoring/progress-tracker.js.map +0 -7
- package/dist/core/monitoring/session-monitor.js.map +0 -7
- package/dist/core/performance/context-cache.js.map +0 -7
- package/dist/core/performance/index.js.map +0 -7
- package/dist/core/performance/lazy-context-loader.js.map +0 -7
- package/dist/core/performance/monitor.js.map +0 -7
- package/dist/core/performance/optimized-frame-context.js.map +0 -7
- package/dist/core/performance/performance-benchmark.js.map +0 -7
- package/dist/core/performance/performance-profiler.js.map +0 -7
- package/dist/core/performance/streaming-jsonl-parser.js.map +0 -7
- package/dist/core/persistence/postgres-adapter.js.map +0 -7
- package/dist/core/projects/project-isolation.js.map +0 -7
- package/dist/core/projects/project-manager.js.map +0 -7
- package/dist/core/query/query-parser.js.map +0 -7
- package/dist/core/query/query-templates.js.map +0 -7
- package/dist/core/retrieval/context-retriever.js.map +0 -7
- package/dist/core/retrieval/graph-retrieval.js +0 -662
- package/dist/core/retrieval/graph-retrieval.js.map +0 -7
- package/dist/core/retrieval/hierarchical-retrieval.js +0 -656
- package/dist/core/retrieval/hierarchical-retrieval.js.map +0 -7
- package/dist/core/retrieval/index.js.map +0 -7
- package/dist/core/retrieval/llm-context-retrieval.js.map +0 -7
- package/dist/core/retrieval/llm-provider.js.map +0 -7
- package/dist/core/retrieval/retrieval-audit.js.map +0 -7
- package/dist/core/retrieval/retrieval-benchmarks.js +0 -521
- package/dist/core/retrieval/retrieval-benchmarks.js.map +0 -7
- package/dist/core/retrieval/summary-generator.js.map +0 -7
- package/dist/core/retrieval/types.js.map +0 -7
- package/dist/core/session/clear-survival.js.map +0 -7
- package/dist/core/session/enhanced-handoff.js.map +0 -7
- package/dist/core/session/handoff-generator.js.map +0 -7
- package/dist/core/session/index.js.map +0 -7
- package/dist/core/session/session-manager.js.map +0 -7
- package/dist/core/skills/index.js.map +0 -7
- package/dist/core/skills/skill-storage.js.map +0 -7
- package/dist/core/skills/types.js.map +0 -7
- package/dist/core/storage/chromadb-adapter.js +0 -354
- package/dist/core/storage/chromadb-adapter.js.map +0 -7
- package/dist/core/storage/infinite-storage.js.map +0 -7
- package/dist/core/storage/railway-optimized-storage.js +0 -591
- package/dist/core/storage/railway-optimized-storage.js.map +0 -7
- package/dist/core/storage/remote-storage.js.map +0 -7
- package/dist/core/storage/two-tier-storage.js.map +0 -7
- package/dist/core/trace/cli-trace-wrapper.js.map +0 -7
- package/dist/core/trace/db-trace-wrapper.js.map +0 -7
- package/dist/core/trace/debug-trace.js.map +0 -7
- package/dist/core/trace/index.js.map +0 -7
- package/dist/core/trace/linear-api-wrapper.js.map +0 -7
- package/dist/core/trace/trace-demo.js +0 -154
- package/dist/core/trace/trace-demo.js.map +0 -7
- package/dist/core/trace/trace-detector.demo.js +0 -142
- package/dist/core/trace/trace-detector.demo.js.map +0 -7
- package/dist/core/trace/trace-detector.js.map +0 -7
- package/dist/core/trace/trace-store.js.map +0 -7
- package/dist/core/trace/types.js.map +0 -7
- package/dist/core/utils/async-mutex.js.map +0 -7
- package/dist/core/utils/compression.js.map +0 -7
- package/dist/core/utils/update-checker.js.map +0 -7
- package/dist/core/worktree/worktree-manager.js.map +0 -7
- package/dist/daemon/daemon-config.js.map +0 -7
- package/dist/daemon/services/context-service.js.map +0 -7
- package/dist/daemon/services/linear-service.js.map +0 -7
- package/dist/daemon/session-daemon.js.map +0 -7
- package/dist/daemon/unified-daemon.js.map +0 -7
- package/dist/features/analytics/api/analytics-api.js.map +0 -7
- package/dist/features/analytics/core/analytics-service.js.map +0 -7
- package/dist/features/analytics/index.js.map +0 -7
- package/dist/features/analytics/queries/metrics-queries.js.map +0 -7
- package/dist/features/browser/browser-mcp.js.map +0 -7
- package/dist/features/sweep/index.js.map +0 -7
- package/dist/features/sweep/prediction-client.js.map +0 -7
- package/dist/features/sweep/prompt-builder.js.map +0 -7
- package/dist/features/sweep/pty-wrapper.js.map +0 -7
- package/dist/features/sweep/state-watcher.js.map +0 -7
- package/dist/features/sweep/status-bar.js.map +0 -7
- package/dist/features/sweep/sweep-server-manager.js.map +0 -7
- package/dist/features/sweep/tab-interceptor.js.map +0 -7
- package/dist/features/sweep/types.js.map +0 -7
- package/dist/features/tasks/linear-task-manager.js.map +0 -7
- package/dist/features/tasks/task-aware-context.js.map +0 -7
- package/dist/features/tui/simple-monitor.js.map +0 -7
- package/dist/features/tui/swarm-monitor.js.map +0 -7
- package/dist/features/web/client/stores/task-store.js.map +0 -7
- package/dist/features/web/server/index.js.map +0 -7
- package/dist/hooks/auto-background.js.map +0 -7
- package/dist/hooks/claude-code-whatsapp-hook.js.map +0 -7
- package/dist/hooks/config.js.map +0 -7
- package/dist/hooks/daemon.js.map +0 -7
- package/dist/hooks/events.js.map +0 -7
- package/dist/hooks/index.js.map +0 -7
- package/dist/hooks/linear-task-picker.js.map +0 -7
- package/dist/hooks/schemas.js.map +0 -7
- package/dist/hooks/secure-fs.js.map +0 -7
- package/dist/hooks/security-logger.js.map +0 -7
- package/dist/hooks/session-summary.js.map +0 -7
- package/dist/hooks/sms-action-runner.js.map +0 -7
- package/dist/hooks/sms-notify.js.map +0 -7
- package/dist/hooks/sms-watcher.js.map +0 -7
- package/dist/hooks/sms-webhook.js.map +0 -7
- package/dist/hooks/whatsapp-commands.js.map +0 -7
- package/dist/hooks/whatsapp-scheduler.js.map +0 -7
- package/dist/hooks/whatsapp-sync.js.map +0 -7
- package/dist/index.js.map +0 -7
- package/dist/integrations/anthropic/client.js.map +0 -7
- package/dist/integrations/claude-code/agent-bridge.js.map +0 -7
- package/dist/integrations/claude-code/enhanced-pre-clear-hooks.js.map +0 -7
- package/dist/integrations/claude-code/lifecycle-hooks.js.map +0 -7
- package/dist/integrations/claude-code/post-task-hooks.js.map +0 -7
- package/dist/integrations/claude-code/subagent-client-stub.js.map +0 -7
- package/dist/integrations/claude-code/subagent-client.js.map +0 -7
- package/dist/integrations/claude-code/task-coordinator.js.map +0 -7
- package/dist/integrations/linear/auth.js.map +0 -7
- package/dist/integrations/linear/auto-sync.js.map +0 -7
- package/dist/integrations/linear/client.js +0 -630
- package/dist/integrations/linear/client.js.map +0 -7
- package/dist/integrations/linear/config.js.map +0 -7
- package/dist/integrations/linear/migration.js.map +0 -7
- package/dist/integrations/linear/oauth-server.js.map +0 -7
- package/dist/integrations/linear/rest-client.js.map +0 -7
- package/dist/integrations/linear/sync-manager.js.map +0 -7
- package/dist/integrations/linear/sync-service.js.map +0 -7
- package/dist/integrations/linear/sync.js.map +0 -7
- package/dist/integrations/linear/unified-sync.js.map +0 -7
- package/dist/integrations/linear/webhook-handler.js.map +0 -7
- package/dist/integrations/linear/webhook-server.js.map +0 -7
- package/dist/integrations/linear/webhook.js.map +0 -7
- package/dist/integrations/mcp/handlers/code-execution-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/context-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/discovery-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/index.js.map +0 -7
- package/dist/integrations/mcp/handlers/linear-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/skill-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/task-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/trace-handlers.js.map +0 -7
- package/dist/integrations/mcp/index.js.map +0 -7
- package/dist/integrations/mcp/middleware/tool-scoring.js.map +0 -7
- package/dist/integrations/mcp/refactored-server.js.map +0 -7
- package/dist/integrations/mcp/remote-server.js +0 -691
- package/dist/integrations/mcp/remote-server.js.map +0 -7
- package/dist/integrations/mcp/schemas.js.map +0 -7
- package/dist/integrations/mcp/server.js +0 -1960
- package/dist/integrations/mcp/server.js.map +0 -7
- package/dist/integrations/mcp/tool-definitions-code.js.map +0 -7
- package/dist/integrations/mcp/tool-definitions.js.map +0 -7
- package/dist/integrations/mcp/trace-test.js +0 -48
- package/dist/integrations/mcp/trace-test.js.map +0 -7
- package/dist/integrations/pg-aiguide/embedding-provider.js +0 -189
- package/dist/integrations/pg-aiguide/embedding-provider.js.map +0 -7
- package/dist/integrations/pg-aiguide/semantic-search.js +0 -187
- package/dist/integrations/pg-aiguide/semantic-search.js.map +0 -7
- package/dist/integrations/pg-aiguide/timescale-analytics.js +0 -224
- package/dist/integrations/pg-aiguide/timescale-analytics.js.map +0 -7
- package/dist/integrations/ralph/bridge/ralph-stackmemory-bridge.js.map +0 -7
- package/dist/integrations/ralph/context/context-budget-manager.js.map +0 -7
- package/dist/integrations/ralph/context/stackmemory-context-loader.js.map +0 -7
- package/dist/integrations/ralph/coordination/enhanced-coordination.js.map +0 -7
- package/dist/integrations/ralph/index.js.map +0 -7
- package/dist/integrations/ralph/learning/pattern-learner.js.map +0 -7
- package/dist/integrations/ralph/lifecycle/iteration-lifecycle.js.map +0 -7
- package/dist/integrations/ralph/monitoring/swarm-dashboard.js.map +0 -7
- package/dist/integrations/ralph/monitoring/swarm-registry.js.map +0 -7
- package/dist/integrations/ralph/orchestration/multi-loop-orchestrator.js.map +0 -7
- package/dist/integrations/ralph/patterns/compounding-engineering-pattern.js.map +0 -7
- package/dist/integrations/ralph/patterns/extended-coherence-sessions.js.map +0 -7
- package/dist/integrations/ralph/patterns/oracle-worker-pattern.js.map +0 -7
- package/dist/integrations/ralph/performance/performance-optimizer.js.map +0 -7
- package/dist/integrations/ralph/ralph-integration-demo.js +0 -182
- package/dist/integrations/ralph/ralph-integration-demo.js.map +0 -7
- package/dist/integrations/ralph/recovery/crash-recovery.js.map +0 -7
- package/dist/integrations/ralph/state/state-reconciler.js.map +0 -7
- package/dist/integrations/ralph/swarm/git-workflow-manager.js.map +0 -7
- package/dist/integrations/ralph/swarm/swarm-coordinator.js.map +0 -7
- package/dist/integrations/ralph/visualization/ralph-debugger.js.map +0 -7
- package/dist/mcp/stackmemory-mcp-server.js.map +0 -7
- package/dist/middleware/exponential-rate-limiter.js.map +0 -7
- package/dist/models/user.model.js.map +0 -7
- package/dist/servers/production/auth-middleware.js.map +0 -7
- package/dist/servers/railway/config.js +0 -55
- package/dist/servers/railway/config.js.map +0 -7
- package/dist/servers/railway/index-enhanced.js +0 -160
- package/dist/servers/railway/index-enhanced.js.map +0 -7
- package/dist/servers/railway/index.js +0 -1349
- package/dist/servers/railway/index.js.map +0 -7
- package/dist/servers/railway/simple.js +0 -64
- package/dist/servers/railway/simple.js.map +0 -7
- package/dist/servers/railway/storage-test.js +0 -459
- package/dist/servers/railway/storage-test.js.map +0 -7
- package/dist/services/config-service.js.map +0 -7
- package/dist/services/context-service.js.map +0 -7
- package/dist/skills/api-discovery.js.map +0 -7
- package/dist/skills/api-skill.js.map +0 -7
- package/dist/skills/claude-skills.js.map +0 -7
- package/dist/skills/dashboard-launcher.js.map +0 -7
- package/dist/skills/recursive-agent-orchestrator.js.map +0 -7
- package/dist/skills/repo-ingestion-skill.js +0 -609
- package/dist/skills/repo-ingestion-skill.js.map +0 -7
- package/dist/skills/security-secrets-scanner.js +0 -284
- package/dist/skills/security-secrets-scanner.js.map +0 -7
- package/dist/skills/unified-rlm-orchestrator.js.map +0 -7
- package/dist/utils/env.js.map +0 -7
- package/dist/utils/formatting.js.map +0 -7
- package/dist/utils/process-cleanup.js.map +0 -7
- package/dist/validation/schemas.js +0 -222
- package/dist/validation/schemas.js.map +0 -7
- /package/dist/{agents → src/agents}/core/agent-task-manager.js +0 -0
- /package/dist/{agents → src/agents}/verifiers/base-verifier.js +0 -0
- /package/dist/{agents → src/agents}/verifiers/formatter-verifier.js +0 -0
- /package/dist/{agents → src/agents}/verifiers/llm-judge.js +0 -0
- /package/dist/{cli → src/cli}/auto-detect.js +0 -0
- /package/dist/{cli → src/cli}/claude-sm-danger.js +0 -0
- /package/dist/{cli → src/cli}/codex-sm-danger.js +0 -0
- /package/dist/{cli → src/cli}/codex-sm.js +0 -0
- /package/dist/{cli → src/cli}/commands/api.js +0 -0
- /package/dist/{cli → src/cli}/commands/auto-background.js +0 -0
- /package/dist/{cli → src/cli}/commands/cleanup-processes.js +0 -0
- /package/dist/{cli → src/cli}/commands/clear.js +0 -0
- /package/dist/{cli → src/cli}/commands/config.js +0 -0
- /package/dist/{cli → src/cli}/commands/context-rehydrate.js +0 -0
- /package/dist/{cli → src/cli}/commands/context.js +0 -0
- /package/dist/{cli → src/cli}/commands/daemon.js +0 -0
- /package/dist/{cli → src/cli}/commands/dashboard.js +0 -0
- /package/dist/{cli → src/cli}/commands/db.js +0 -0
- /package/dist/{cli → src/cli}/commands/decision.js +0 -0
- /package/dist/{cli → src/cli}/commands/discovery.js +0 -0
- /package/dist/{cli → src/cli}/commands/handoff.js +0 -0
- /package/dist/{cli → src/cli}/commands/hooks.js +0 -0
- /package/dist/{cli → src/cli}/commands/linear.js +0 -0
- /package/dist/{cli → src/cli}/commands/log.js +0 -0
- /package/dist/{cli → src/cli}/commands/login.js +0 -0
- /package/dist/{cli → src/cli}/commands/migrate.js +0 -0
- /package/dist/{cli → src/cli}/commands/model.js +0 -0
- /package/dist/{cli → src/cli}/commands/onboard.js +0 -0
- /package/dist/{cli → src/cli}/commands/projects.js +0 -0
- /package/dist/{cli → src/cli}/commands/ralph.js +0 -0
- /package/dist/{cli → src/cli}/commands/retrieval.js +0 -0
- /package/dist/{cli → src/cli}/commands/service.js +0 -0
- /package/dist/{cli → src/cli}/commands/session.js +0 -0
- /package/dist/{cli → src/cli}/commands/settings.js +0 -0
- /package/dist/{cli → src/cli}/commands/setup.js +0 -0
- /package/dist/{cli → src/cli}/commands/shell.js +0 -0
- /package/dist/{cli → src/cli}/commands/signup.js +0 -0
- /package/dist/{cli → src/cli}/commands/skills.js +0 -0
- /package/dist/{cli → src/cli}/commands/sms-notify.js +0 -0
- /package/dist/{cli → src/cli}/commands/storage-tier.js +0 -0
- /package/dist/{cli → src/cli}/commands/sweep.js +0 -0
- /package/dist/{cli → src/cli}/commands/tasks.js +0 -0
- /package/dist/{cli → src/cli}/commands/worktree.js +0 -0
- /package/dist/{cli → src/cli}/opencode-sm.js +0 -0
- /package/dist/{cli → src/cli}/utils/viewer.js +0 -0
- /package/dist/{core → src/core}/config/config-manager.js +0 -0
- /package/dist/{core → src/core}/config/feature-flags.js +0 -0
- /package/dist/{core → src/core}/config/storage-config.js +0 -0
- /package/dist/{core → src/core}/config/types.js +0 -0
- /package/dist/{core → src/core}/context/auto-context.js +0 -0
- /package/dist/{core → src/core}/context/dual-stack-manager.js +0 -0
- /package/dist/{core → src/core}/context/enhanced-rehydration.js +0 -0
- /package/dist/{core → src/core}/context/frame-database.js +0 -0
- /package/dist/{core → src/core}/context/frame-digest.js +0 -0
- /package/dist/{core → src/core}/context/frame-handoff-manager.js +0 -0
- /package/dist/{core → src/core}/context/frame-lifecycle-hooks.js +0 -0
- /package/dist/{core → src/core}/context/frame-recovery.js +0 -0
- /package/dist/{core → src/core}/context/frame-stack.js +0 -0
- /package/dist/{core → src/core}/context/frame-types.js +0 -0
- /package/dist/{core → src/core}/context/frame-types.js.map +0 -0
- /package/dist/{core → src/core}/context/index.js +0 -0
- /package/dist/{core → src/core}/context/permission-manager.js +0 -0
- /package/dist/{core → src/core}/context/recursive-context-manager.js +0 -0
- /package/dist/{core → src/core}/context/refactored-frame-manager.js +0 -0
- /package/dist/{core → src/core}/context/shared-context-layer.js +0 -0
- /package/dist/{core → src/core}/context/stack-merge-resolver.js +0 -0
- /package/dist/{core → src/core}/context/validation.js +0 -0
- /package/dist/{core → src/core}/database/batch-operations.js +0 -0
- /package/dist/{core → src/core}/database/connection-pool.js +0 -0
- /package/dist/{core → src/core}/database/database-adapter.js +0 -0
- /package/dist/{core → src/core}/database/migration-manager.js +0 -0
- /package/dist/{core → src/core}/database/query-cache.js +0 -0
- /package/dist/{core → src/core}/database/query-router.js +0 -0
- /package/dist/{core → src/core}/digest/enhanced-hybrid-digest.js +0 -0
- /package/dist/{core → src/core}/digest/frame-digest-integration.js +0 -0
- /package/dist/{core → src/core}/digest/hybrid-digest-generator.js +0 -0
- /package/dist/{core → src/core}/digest/index.js +0 -0
- /package/dist/{core → src/core}/digest/types.js +0 -0
- /package/dist/{core → src/core}/errors/recovery.js +0 -0
- /package/dist/{core → src/core}/execution/parallel-executor.js +0 -0
- /package/dist/{core/merge → src/core/extensions}/types.js +0 -0
- /package/dist/{core/merge → src/core/extensions}/types.js.map +0 -0
- /package/dist/{core → src/core}/frame/workflow-templates.js +0 -0
- /package/dist/{core → src/core}/merge/conflict-detector.js +0 -0
- /package/dist/{core → src/core}/merge/index.js +0 -0
- /package/dist/{core → src/core}/merge/resolution-engine.js +0 -0
- /package/dist/{core → src/core}/merge/stack-diff.js +0 -0
- /package/dist/{core → src/core/merge}/types.js +0 -0
- /package/dist/{core → src/core/merge}/types.js.map +0 -0
- /package/dist/{core → src/core}/models/fallback-monitor.js +0 -0
- /package/dist/{core → src/core}/models/model-router.js +0 -0
- /package/dist/{core → src/core}/monitoring/error-handler.js +0 -0
- /package/dist/{core → src/core}/monitoring/metrics.js +0 -0
- /package/dist/{core → src/core}/monitoring/progress-tracker.js +0 -0
- /package/dist/{core → src/core}/monitoring/session-monitor.js +0 -0
- /package/dist/{core → src/core}/performance/context-cache.js +0 -0
- /package/dist/{core → src/core}/performance/index.js +0 -0
- /package/dist/{core → src/core}/performance/lazy-context-loader.js +0 -0
- /package/dist/{core → src/core}/performance/monitor.js +0 -0
- /package/dist/{core → src/core}/performance/optimized-frame-context.js +0 -0
- /package/dist/{core → src/core}/performance/performance-benchmark.js +0 -0
- /package/dist/{core → src/core}/performance/performance-profiler.js +0 -0
- /package/dist/{core → src/core}/performance/streaming-jsonl-parser.js +0 -0
- /package/dist/{core → src/core}/persistence/postgres-adapter.js +0 -0
- /package/dist/{core → src/core}/projects/project-isolation.js +0 -0
- /package/dist/{core → src/core}/projects/project-manager.js +0 -0
- /package/dist/{core → src/core}/query/query-parser.js +0 -0
- /package/dist/{core → src/core}/query/query-templates.js +0 -0
- /package/dist/{core → src/core}/retrieval/context-retriever.js +0 -0
- /package/dist/{core → src/core}/retrieval/index.js +0 -0
- /package/dist/{core → src/core}/retrieval/llm-context-retrieval.js +0 -0
- /package/dist/{core → src/core}/retrieval/llm-provider.js +0 -0
- /package/dist/{core → src/core}/retrieval/retrieval-audit.js +0 -0
- /package/dist/{core → src/core}/retrieval/summary-generator.js +0 -0
- /package/dist/{core → src/core}/retrieval/types.js +0 -0
- /package/dist/{core → src/core}/session/clear-survival.js +0 -0
- /package/dist/{core → src/core}/session/enhanced-handoff.js +0 -0
- /package/dist/{core → src/core}/session/handoff-generator.js +0 -0
- /package/dist/{core → src/core}/session/index.js +0 -0
- /package/dist/{core → src/core}/session/session-manager.js +0 -0
- /package/dist/{core → src/core}/skills/index.js +0 -0
- /package/dist/{core → src/core}/skills/skill-storage.js +0 -0
- /package/dist/{core → src/core}/skills/types.js +0 -0
- /package/dist/{core → src/core}/storage/infinite-storage.js +0 -0
- /package/dist/{core → src/core}/storage/remote-storage.js +0 -0
- /package/dist/{core → src/core}/storage/two-tier-storage.js +0 -0
- /package/dist/{core → src/core}/trace/cli-trace-wrapper.js +0 -0
- /package/dist/{core → src/core}/trace/db-trace-wrapper.js +0 -0
- /package/dist/{core → src/core}/trace/debug-trace.js +0 -0
- /package/dist/{core → src/core}/trace/index.js +0 -0
- /package/dist/{core → src/core}/trace/linear-api-wrapper.js +0 -0
- /package/dist/{core → src/core}/trace/trace-detector.js +0 -0
- /package/dist/{core → src/core}/trace/trace-store.js +0 -0
- /package/dist/{core → src/core}/trace/types.js +0 -0
- /package/dist/{integrations/linear → src/core}/types.js +0 -0
- /package/dist/{integrations/linear → src/core}/types.js.map +0 -0
- /package/dist/{core → src/core}/utils/async-mutex.js +0 -0
- /package/dist/{core → src/core}/utils/compression.js +0 -0
- /package/dist/{core → src/core}/utils/update-checker.js +0 -0
- /package/dist/{core → src/core}/worktree/worktree-manager.js +0 -0
- /package/dist/{daemon → src/daemon}/daemon-config.js +0 -0
- /package/dist/{daemon → src/daemon}/services/context-service.js +0 -0
- /package/dist/{daemon → src/daemon}/services/linear-service.js +0 -0
- /package/dist/{daemon → src/daemon}/session-daemon.js +0 -0
- /package/dist/{daemon → src/daemon}/unified-daemon.js +0 -0
- /package/dist/{features → src/features}/analytics/api/analytics-api.js +0 -0
- /package/dist/{features → src/features}/analytics/core/analytics-service.js +0 -0
- /package/dist/{features → src/features}/analytics/index.js +0 -0
- /package/dist/{features → src/features}/analytics/queries/metrics-queries.js +0 -0
- /package/dist/{features → src/features}/analytics/types/metrics.js +0 -0
- /package/dist/{features → src/features}/analytics/types/metrics.js.map +0 -0
- /package/dist/{features → src/features}/browser/browser-mcp.js +0 -0
- /package/dist/{features → src/features}/sweep/index.js +0 -0
- /package/dist/{features → src/features}/sweep/prediction-client.js +0 -0
- /package/dist/{features → src/features}/sweep/prompt-builder.js +0 -0
- /package/dist/{features → src/features}/sweep/pty-wrapper.js +0 -0
- /package/dist/{features → src/features}/sweep/state-watcher.js +0 -0
- /package/dist/{features → src/features}/sweep/status-bar.js +0 -0
- /package/dist/{features → src/features}/sweep/sweep-server-manager.js +0 -0
- /package/dist/{features → src/features}/sweep/tab-interceptor.js +0 -0
- /package/dist/{features → src/features}/sweep/types.js +0 -0
- /package/dist/{features → src/features}/tasks/linear-task-manager.js +0 -0
- /package/dist/{features → src/features}/tasks/task-aware-context.js +0 -0
- /package/dist/{features → src/features}/tui/simple-monitor.js +0 -0
- /package/dist/{features → src/features}/tui/swarm-monitor.js +0 -0
- /package/dist/{features → src/features}/web/client/stores/task-store.js +0 -0
- /package/dist/{features → src/features}/web/server/index.js +0 -0
- /package/dist/{hooks → src/hooks}/auto-background.js +0 -0
- /package/dist/{hooks → src/hooks}/claude-code-whatsapp-hook.js +0 -0
- /package/dist/{hooks → src/hooks}/config.js +0 -0
- /package/dist/{hooks → src/hooks}/daemon.js +0 -0
- /package/dist/{hooks → src/hooks}/events.js +0 -0
- /package/dist/{hooks → src/hooks}/index.js +0 -0
- /package/dist/{hooks → src/hooks}/linear-task-picker.js +0 -0
- /package/dist/{hooks → src/hooks}/schemas.js +0 -0
- /package/dist/{hooks → src/hooks}/secure-fs.js +0 -0
- /package/dist/{hooks → src/hooks}/security-logger.js +0 -0
- /package/dist/{hooks → src/hooks}/session-summary.js +0 -0
- /package/dist/{hooks → src/hooks}/sms-action-runner.js +0 -0
- /package/dist/{hooks → src/hooks}/sms-notify.js +0 -0
- /package/dist/{hooks → src/hooks}/sms-watcher.js +0 -0
- /package/dist/{hooks → src/hooks}/sms-webhook.js +0 -0
- /package/dist/{hooks → src/hooks}/whatsapp-commands.js +0 -0
- /package/dist/{hooks → src/hooks}/whatsapp-scheduler.js +0 -0
- /package/dist/{hooks → src/hooks}/whatsapp-sync.js +0 -0
- /package/dist/{index.js → src/index.js} +0 -0
- /package/dist/{integrations → src/integrations}/anthropic/client.js +0 -0
- /package/dist/{integrations → src/integrations}/claude-code/agent-bridge.js +0 -0
- /package/dist/{integrations → src/integrations}/claude-code/enhanced-pre-clear-hooks.js +0 -0
- /package/dist/{integrations → src/integrations}/claude-code/lifecycle-hooks.js +0 -0
- /package/dist/{integrations → src/integrations}/claude-code/post-task-hooks.js +0 -0
- /package/dist/{integrations → src/integrations}/claude-code/subagent-client-stub.js +0 -0
- /package/dist/{integrations → src/integrations}/claude-code/subagent-client.js +0 -0
- /package/dist/{integrations → src/integrations}/claude-code/task-coordinator.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/auth.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/auto-sync.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/config.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/migration.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/oauth-server.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/rest-client.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/sync-manager.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/sync-service.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/sync.js +0 -0
- /package/dist/{integrations/ralph → src/integrations/linear}/types.js +0 -0
- /package/dist/{integrations/ralph → src/integrations/linear}/types.js.map +0 -0
- /package/dist/{integrations → src/integrations}/linear/unified-sync.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/webhook-handler.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/webhook-server.js +0 -0
- /package/dist/{integrations → src/integrations}/linear/webhook.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/handlers/code-execution-handlers.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/handlers/context-handlers.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/handlers/discovery-handlers.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/handlers/index.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/handlers/linear-handlers.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/handlers/skill-handlers.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/handlers/task-handlers.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/handlers/trace-handlers.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/index.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/middleware/tool-scoring.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/refactored-server.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/schemas.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/tool-definitions-code.js +0 -0
- /package/dist/{integrations → src/integrations}/mcp/tool-definitions.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/bridge/ralph-stackmemory-bridge.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/context/context-budget-manager.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/context/stackmemory-context-loader.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/coordination/enhanced-coordination.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/index.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/learning/pattern-learner.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/lifecycle/iteration-lifecycle.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/monitoring/swarm-dashboard.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/monitoring/swarm-registry.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/orchestration/multi-loop-orchestrator.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/patterns/compounding-engineering-pattern.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/patterns/extended-coherence-sessions.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/patterns/oracle-worker-pattern.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/performance/performance-optimizer.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/recovery/crash-recovery.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/state/state-reconciler.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/swarm/git-workflow-manager.js +0 -0
- /package/dist/{integrations → src/integrations}/ralph/swarm/swarm-coordinator.js +0 -0
- /package/dist/{types/task.js.map → src/integrations/ralph/types.js.map} +0 -0
- /package/dist/{integrations → src/integrations}/ralph/visualization/ralph-debugger.js +0 -0
- /package/dist/{mcp → src/mcp}/stackmemory-mcp-server.js +0 -0
- /package/dist/{middleware → src/middleware}/exponential-rate-limiter.js +0 -0
- /package/dist/{models → src/models}/user.model.js +0 -0
- /package/dist/{servers → src/servers}/production/auth-middleware.js +0 -0
- /package/dist/{services → src/services}/config-service.js +0 -0
- /package/dist/{services → src/services}/context-service.js +0 -0
- /package/dist/{skills → src/skills}/api-discovery.js +0 -0
- /package/dist/{skills → src/skills}/api-skill.js +0 -0
- /package/dist/{skills → src/skills}/claude-skills.js +0 -0
- /package/dist/{skills → src/skills}/dashboard-launcher.js +0 -0
- /package/dist/{skills → src/skills}/recursive-agent-orchestrator.js +0 -0
- /package/dist/{skills → src/skills}/unified-rlm-orchestrator.js +0 -0
- /package/dist/{types → src/types}/task.js +0 -0
- /package/dist/{utils → src/utils}/env.js +0 -0
- /package/dist/{utils → src/utils}/formatting.js +0 -0
- /package/dist/{utils → src/utils}/process-cleanup.js +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/integrations/linear/auth.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Linear OAuth Authentication Setup\n * Handles initial OAuth flow and token management for Linear integration\n */\n\nimport { createHash, randomBytes } from 'crypto';\nimport { readFileSync, writeFileSync, existsSync } from 'fs';\nimport { join } from 'path';\nimport { logger } from '../../core/monitoring/logger.js';\nimport { IntegrationError, ErrorCode } from '../../core/errors/index.js';\n\nexport interface LinearAuthConfig {\n clientId: string;\n clientSecret: string;\n redirectUri: string;\n scopes: string[];\n}\n\nexport interface LinearTokens {\n accessToken: string;\n refreshToken?: string;\n expiresAt: number; // Unix timestamp\n scope: string[];\n}\n\nexport interface LinearAuthResult {\n accessToken: string;\n refreshToken?: string;\n expiresIn: number;\n scope: string;\n tokenType: string;\n}\n\nexport class LinearAuthManager {\n private configPath: string;\n private tokensPath: string;\n private config?: LinearAuthConfig;\n\n constructor(projectRoot: string) {\n const configDir = join(projectRoot, '.stackmemory');\n this.configPath = join(configDir, 'linear-config.json');\n this.tokensPath = join(configDir, 'linear-tokens.json');\n }\n\n /**\n * Check if Linear integration is configured\n */\n isConfigured(): boolean {\n return existsSync(this.configPath) && existsSync(this.tokensPath);\n }\n\n /**\n * Save OAuth application configuration\n */\n saveConfig(config: LinearAuthConfig): void {\n writeFileSync(this.configPath, JSON.stringify(config, null, 2));\n this.config = config;\n logger.info('Linear OAuth configuration saved');\n }\n\n /**\n * Load OAuth configuration\n */\n loadConfig(): LinearAuthConfig | null {\n if (!existsSync(this.configPath)) {\n return null;\n }\n\n try {\n const configData = readFileSync(this.configPath, 'utf8');\n this.config = JSON.parse(configData);\n return this.config!;\n } catch (error: unknown) {\n logger.error('Failed to load Linear configuration:', error as Error);\n return null;\n }\n }\n\n /**\n * Generate OAuth authorization URL with PKCE\n */\n generateAuthUrl(state?: string): { url: string; codeVerifier: string } {\n if (!this.config) {\n throw new IntegrationError(\n 'Linear OAuth configuration not loaded',\n ErrorCode.LINEAR_AUTH_FAILED\n );\n }\n\n // Generate PKCE parameters\n const codeVerifier = randomBytes(32).toString('base64url');\n const codeChallenge = createHash('sha256')\n .update(codeVerifier)\n .digest('base64url');\n\n const params = new URLSearchParams({\n client_id: this.config.clientId,\n redirect_uri: this.config.redirectUri,\n response_type: 'code',\n scope: this.config.scopes.join(' '),\n code_challenge: codeChallenge,\n code_challenge_method: 'S256',\n actor: 'app', // Enable actor authorization for service accounts\n });\n\n if (state) {\n params.set('state', state);\n }\n\n const authUrl = `https://linear.app/oauth/authorize?${params.toString()}`;\n\n return { url: authUrl, codeVerifier };\n }\n\n /**\n * Exchange authorization code for access token\n */\n async exchangeCodeForToken(\n authCode: string,\n codeVerifier: string\n ): Promise<LinearTokens> {\n if (!this.config) {\n throw new IntegrationError(\n 'Linear OAuth configuration not loaded',\n ErrorCode.LINEAR_AUTH_FAILED\n );\n }\n\n const tokenUrl = 'https://api.linear.app/oauth/token';\n\n const body = new URLSearchParams({\n grant_type: 'authorization_code',\n client_id: this.config.clientId,\n client_secret: this.config.clientSecret,\n redirect_uri: this.config.redirectUri,\n code: authCode,\n code_verifier: codeVerifier,\n });\n\n const response = await fetch(tokenUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n Accept: 'application/json',\n },\n body: body.toString(),\n });\n\n if (!response.ok) {\n const errorText = await response.text();\n throw new IntegrationError(\n `Token exchange failed: ${response.status}`,\n ErrorCode.LINEAR_AUTH_FAILED,\n { status: response.status, body: errorText }\n );\n }\n\n const result = (await response.json()) as LinearAuthResult;\n\n // Calculate expiration time (tokens expire in 24 hours)\n const expiresAt = Date.now() + result.expiresIn * 1000;\n\n const tokens: LinearTokens = {\n accessToken: result.accessToken,\n refreshToken: result.refreshToken,\n expiresAt,\n scope: result.scope.split(' '),\n };\n\n this.saveTokens(tokens);\n return tokens;\n }\n\n /**\n * Refresh access token using refresh token\n */\n async refreshAccessToken(): Promise<LinearTokens> {\n if (!this.config) {\n throw new IntegrationError(\n 'Linear OAuth configuration not loaded',\n ErrorCode.LINEAR_AUTH_FAILED\n );\n }\n\n const currentTokens = this.loadTokens();\n if (!currentTokens?.refreshToken) {\n throw new IntegrationError(\n 'No refresh token available',\n ErrorCode.LINEAR_AUTH_FAILED\n );\n }\n\n const tokenUrl = 'https://api.linear.app/oauth/token';\n\n const body = new URLSearchParams({\n grant_type: 'refresh_token',\n client_id: this.config.clientId,\n client_secret: this.config.clientSecret,\n refresh_token: currentTokens.refreshToken,\n });\n\n const response = await fetch(tokenUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n Accept: 'application/json',\n },\n body: body.toString(),\n });\n\n if (!response.ok) {\n const errorText = await response.text();\n throw new IntegrationError(\n `Token refresh failed: ${response.status}`,\n ErrorCode.LINEAR_AUTH_FAILED,\n { status: response.status, body: errorText }\n );\n }\n\n const result = (await response.json()) as LinearAuthResult;\n\n const tokens: LinearTokens = {\n accessToken: result.accessToken,\n refreshToken: result.refreshToken || currentTokens.refreshToken,\n expiresAt: Date.now() + result.expiresIn * 1000,\n scope: result.scope.split(' '),\n };\n\n this.saveTokens(tokens);\n return tokens;\n }\n\n /**\n * Get valid access token (refresh if needed)\n */\n async getValidToken(): Promise<string> {\n const tokens = this.loadTokens();\n if (!tokens) {\n throw new IntegrationError(\n 'No Linear tokens found. Please complete OAuth setup.',\n ErrorCode.LINEAR_AUTH_FAILED\n );\n }\n\n // Check if token expires in next 5 minutes\n const fiveMinutes = 5 * 60 * 1000;\n if (tokens.expiresAt - Date.now() < fiveMinutes) {\n logger.info('Linear token expiring soon, refreshing...');\n const newTokens = await this.refreshAccessToken();\n return newTokens.accessToken;\n }\n\n return tokens.accessToken;\n }\n\n /**\n * Save tokens to file\n */\n private saveTokens(tokens: LinearTokens): void {\n writeFileSync(this.tokensPath, JSON.stringify(tokens, null, 2));\n logger.info('Linear tokens saved');\n }\n\n /**\n * Load tokens from file\n */\n loadTokens(): LinearTokens | null {\n if (!existsSync(this.tokensPath)) {\n return null;\n }\n\n try {\n const tokensData = readFileSync(this.tokensPath, 'utf8');\n return JSON.parse(tokensData);\n } catch (error: unknown) {\n logger.error('Failed to load Linear tokens:', error as Error);\n return null;\n }\n }\n\n /**\n * Clear stored tokens and config\n */\n clearAuth(): void {\n if (existsSync(this.tokensPath)) {\n writeFileSync(this.tokensPath, '');\n }\n if (existsSync(this.configPath)) {\n writeFileSync(this.configPath, '');\n }\n logger.info('Linear authentication cleared');\n }\n}\n\n/**\n * Default Linear OAuth scopes for task management\n */\nexport const DEFAULT_LINEAR_SCOPES = [\n 'read', // Read issues, projects, teams\n 'write', // Create and update issues\n 'admin', // Manage team settings and workflows\n];\n\n/**\n * Linear OAuth setup helper\n */\nexport class LinearOAuthSetup {\n private authManager: LinearAuthManager;\n\n constructor(projectRoot: string) {\n this.authManager = new LinearAuthManager(projectRoot);\n }\n\n /**\n * Interactive setup for Linear OAuth\n */\n async setupInteractive(): Promise<{\n authUrl: string;\n instructions: string[];\n }> {\n // For now, we'll provide manual setup instructions\n // In a full implementation, this could open a browser or use a local server\n\n const config: LinearAuthConfig = {\n clientId: process.env['LINEAR_CLIENT_ID'] || '',\n clientSecret: process.env['LINEAR_CLIENT_SECRET'] || '',\n redirectUri:\n process.env['LINEAR_REDIRECT_URI'] ||\n 'http://localhost:3456/auth/linear/callback',\n scopes: DEFAULT_LINEAR_SCOPES,\n };\n\n if (!config.clientId || !config.clientSecret) {\n return {\n authUrl: '',\n instructions: [\n '1. Create a Linear OAuth application at https://linear.app/settings/api',\n '2. Set redirect URI to: http://localhost:3456/auth/linear/callback',\n '3. Copy your Client ID and Client Secret',\n '4. Set environment variables:',\n ' export LINEAR_CLIENT_ID=\"your_client_id\"',\n ' export LINEAR_CLIENT_SECRET=\"your_client_secret\"',\n '5. Re-run this setup command',\n ],\n };\n }\n\n this.authManager.saveConfig(config);\n\n const { url, codeVerifier } = this.authManager.generateAuthUrl();\n\n // Store code verifier temporarily (in a real app, this would be in a secure session store)\n process.env['_LINEAR_CODE_VERIFIER'] = codeVerifier;\n\n return {\n authUrl: url,\n instructions: [\n '1. Open this URL in your browser:',\n url,\n '',\n '2. Approve the StackMemory integration',\n '3. Copy the authorization code from the redirect URL',\n '4. Run: stackmemory linear authorize <code>',\n ],\n };\n }\n\n /**\n * Complete OAuth flow with authorization code\n */\n async completeAuth(authCode: string): Promise<boolean> {\n try {\n const codeVerifier = process.env['_LINEAR_CODE_VERIFIER'];\n if (!codeVerifier) {\n throw new IntegrationError(\n 'Code verifier not found. Please restart the setup process.',\n ErrorCode.LINEAR_AUTH_FAILED\n );\n }\n\n await this.authManager.exchangeCodeForToken(authCode, codeVerifier);\n delete process.env['_LINEAR_CODE_VERIFIER'];\n\n logger.info('Linear OAuth setup completed successfully!');\n return true;\n } catch (error: unknown) {\n logger.error('Failed to complete Linear OAuth setup:', error as Error);\n return false;\n }\n }\n\n /**\n * Test the Linear connection\n */\n async testConnection(): Promise<boolean> {\n try {\n const token = await this.authManager.getValidToken();\n\n // Test with a simple GraphQL query\n const response = await fetch('https://api.linear.app/graphql', {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${token}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n query: 'query { viewer { id name email } }',\n }),\n });\n\n if (response.ok) {\n const result = (await response.json()) as {\n data?: { viewer?: { id: string; name: string; email: string } };\n };\n if (result.data?.viewer) {\n logger.info(\n `Connected to Linear as: ${result.data.viewer.name} (${result.data.viewer.email})`\n );\n return true;\n }\n }\n\n return false;\n } catch (error: unknown) {\n logger.error('Linear connection test failed:', error as Error);\n return false;\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/integrations/linear/auto-sync.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Linear Auto-Sync Service\n * Background service for automatic bidirectional synchronization\n */\n\nimport { logger } from '../../core/monitoring/logger.js';\nimport { LinearTaskManager } from '../../features/tasks/linear-task-manager.js';\nimport { LinearAuthManager } from './auth.js';\nimport { LinearSyncEngine, DEFAULT_SYNC_CONFIG, SyncConfig } from './sync.js';\nimport { LinearConfigManager } from './config.js';\nimport { IntegrationError, ErrorCode } from '../../core/errors/index.js';\nimport Database from 'better-sqlite3';\nimport { join } from 'path';\nimport { existsSync } from 'fs';\n\nexport interface AutoSyncConfig extends SyncConfig {\n enabled: boolean;\n interval: number; // minutes\n retryAttempts: number;\n retryDelay: number; // milliseconds\n quietHours?: {\n start: number; // hour 0-23\n end: number; // hour 0-23\n };\n}\n\nexport class LinearAutoSyncService {\n private config: AutoSyncConfig;\n private projectRoot: string;\n private configManager: LinearConfigManager;\n private syncEngine?: LinearSyncEngine;\n private intervalId?: NodeJS.Timeout;\n private isRunning = false;\n private lastSyncTime = 0;\n private retryCount = 0;\n\n constructor(projectRoot: string, config?: Partial<AutoSyncConfig>) {\n this.projectRoot = projectRoot;\n this.configManager = new LinearConfigManager(projectRoot);\n\n // Load persisted config or use defaults\n const persistedConfig = this.configManager.loadConfig();\n const baseConfig = persistedConfig\n ? this.configManager.toAutoSyncConfig(persistedConfig)\n : {\n ...DEFAULT_SYNC_CONFIG,\n enabled: true,\n interval: 5,\n retryAttempts: 3,\n retryDelay: 30000,\n autoSync: true,\n direction: 'bidirectional' as const,\n conflictResolution: 'newest_wins' as const,\n quietHours: { start: 22, end: 7 },\n };\n\n this.config = { ...baseConfig, ...config };\n\n // Save any new config updates\n if (config && Object.keys(config).length > 0) {\n this.configManager.saveConfig(config);\n }\n }\n\n /**\n * Start the auto-sync service\n */\n async start(): Promise<void> {\n if (this.isRunning) {\n logger.warn('Linear auto-sync service is already running');\n return;\n }\n\n try {\n // Verify Linear integration is configured\n const authManager = new LinearAuthManager(this.projectRoot);\n if (!authManager.isConfigured()) {\n throw new IntegrationError(\n 'Linear integration not configured. Run \"stackmemory linear setup\" first.',\n ErrorCode.LINEAR_AUTH_FAILED\n );\n }\n\n // Initialize sync engine\n const dbPath = join(this.projectRoot, '.stackmemory', 'context.db');\n if (!existsSync(dbPath)) {\n throw new IntegrationError(\n 'StackMemory not initialized. Run \"stackmemory init\" first.',\n ErrorCode.LINEAR_SYNC_FAILED\n );\n }\n\n const db = new Database(dbPath);\n const taskStore = new LinearTaskManager(this.projectRoot, db);\n\n this.syncEngine = new LinearSyncEngine(\n taskStore,\n authManager,\n this.config\n );\n\n // Test connection before starting\n const token = await authManager.getValidToken();\n if (!token) {\n throw new IntegrationError(\n 'Unable to get valid Linear token. Check authentication.',\n ErrorCode.LINEAR_AUTH_FAILED\n );\n }\n\n this.isRunning = true;\n this.scheduleNextSync();\n\n logger.info('Linear auto-sync service started', {\n interval: this.config.interval,\n direction: this.config.direction,\n conflictResolution: this.config.conflictResolution,\n });\n\n // Perform initial sync\n this.performSync();\n } catch (error: unknown) {\n logger.error('Failed to start Linear auto-sync service:', error as Error);\n throw error;\n }\n }\n\n /**\n * Stop the auto-sync service\n */\n stop(): void {\n if (this.intervalId) {\n clearTimeout(this.intervalId);\n this.intervalId = undefined;\n }\n\n this.isRunning = false;\n logger.info('Linear auto-sync service stopped');\n }\n\n /**\n * Get service status\n */\n getStatus(): {\n running: boolean;\n lastSyncTime: number;\n nextSyncTime?: number;\n retryCount: number;\n config: AutoSyncConfig;\n } {\n const nextSyncTime = this.intervalId\n ? this.lastSyncTime + this.config.interval * 60 * 1000\n : undefined;\n\n return {\n running: this.isRunning,\n lastSyncTime: this.lastSyncTime,\n nextSyncTime,\n retryCount: this.retryCount,\n config: this.config,\n };\n }\n\n /**\n * Update configuration\n */\n updateConfig(newConfig: Partial<AutoSyncConfig>): void {\n this.config = { ...this.config, ...newConfig };\n\n if (this.isRunning) {\n // Restart with new config\n this.stop();\n this.start();\n }\n\n logger.info('Linear auto-sync config updated', newConfig);\n }\n\n /**\n * Force immediate sync\n */\n async forceSync(): Promise<void> {\n if (!this.syncEngine) {\n throw new IntegrationError(\n 'Sync engine not initialized',\n ErrorCode.LINEAR_SYNC_FAILED\n );\n }\n\n logger.info('Forcing immediate Linear sync');\n await this.performSync();\n }\n\n /**\n * Schedule next sync based on configuration\n */\n private scheduleNextSync(): void {\n if (!this.isRunning) return;\n\n const delay = this.config.interval * 60 * 1000; // Convert minutes to milliseconds\n\n this.intervalId = setTimeout(() => {\n if (this.isRunning) {\n this.performSync();\n }\n }, delay);\n }\n\n /**\n * Perform synchronization with error handling and retries\n */\n private async performSync(): Promise<void> {\n if (!this.syncEngine) {\n logger.error('Sync engine not available');\n return;\n }\n\n // Check quiet hours\n if (this.isInQuietHours()) {\n logger.debug('Skipping sync during quiet hours');\n this.scheduleNextSync();\n return;\n }\n\n try {\n logger.debug('Starting Linear auto-sync');\n\n const result = await this.syncEngine.sync();\n\n if (result.success) {\n this.lastSyncTime = Date.now();\n this.retryCount = 0;\n\n // Log sync results\n const hasChanges =\n result.synced.toLinear > 0 ||\n result.synced.fromLinear > 0 ||\n result.synced.updated > 0;\n\n if (hasChanges) {\n logger.info('Linear auto-sync completed with changes', {\n toLinear: result.synced.toLinear,\n fromLinear: result.synced.fromLinear,\n updated: result.synced.updated,\n conflicts: result.conflicts.length,\n });\n } else {\n logger.debug('Linear auto-sync completed - no changes');\n }\n\n // Handle conflicts\n if (result.conflicts.length > 0) {\n logger.warn('Linear sync conflicts detected', {\n count: result.conflicts.length,\n conflicts: result.conflicts.map((c) => ({\n taskId: c.taskId,\n reason: c.reason,\n })),\n });\n }\n } else {\n throw new IntegrationError(\n `Sync failed: ${result.errors.join(', ')}`,\n ErrorCode.LINEAR_SYNC_FAILED\n );\n }\n } catch (error: unknown) {\n logger.error('Linear auto-sync failed:', error as Error);\n\n this.retryCount++;\n\n if (this.retryCount <= this.config.retryAttempts) {\n logger.info(\n `Retrying Linear sync in ${this.config.retryDelay / 1000}s (attempt ${this.retryCount}/${this.config.retryAttempts})`\n );\n\n // Schedule retry\n setTimeout(() => {\n if (this.isRunning) {\n this.performSync();\n }\n }, this.config.retryDelay);\n\n return; // Don't schedule next sync yet\n } else {\n logger.error(\n `Linear auto-sync failed after ${this.config.retryAttempts} attempts, skipping until next interval`\n );\n this.retryCount = 0;\n }\n }\n\n // Schedule next sync\n this.scheduleNextSync();\n }\n\n /**\n * Check if current time is within quiet hours\n */\n private isInQuietHours(): boolean {\n if (!this.config.quietHours) return false;\n\n const now = new Date();\n const currentHour = now.getHours();\n const { start, end } = this.config.quietHours;\n\n if (start < end) {\n // Quiet hours within same day (e.g., 22:00 - 07:00 next day)\n return currentHour >= start || currentHour < end;\n } else {\n // Quiet hours span midnight (e.g., 10:00 - 18:00)\n return currentHour >= start && currentHour < end;\n }\n }\n}\n\n/**\n * Global auto-sync service instance\n */\nlet autoSyncService: LinearAutoSyncService | null = null;\n\n/**\n * Initialize global auto-sync service\n */\nexport function initializeAutoSync(\n projectRoot: string,\n config?: Partial<AutoSyncConfig>\n): LinearAutoSyncService {\n if (autoSyncService) {\n autoSyncService.stop();\n }\n\n autoSyncService = new LinearAutoSyncService(projectRoot, config);\n return autoSyncService;\n}\n\n/**\n * Get global auto-sync service\n */\nexport function getAutoSyncService(): LinearAutoSyncService | null {\n return autoSyncService;\n}\n\n/**\n * Stop global auto-sync service\n */\nexport function stopAutoSync(): void {\n if (autoSyncService) {\n autoSyncService.stop();\n autoSyncService = null;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|