@stackmemoryai/stackmemory 0.2.7 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -8
- package/dist/scripts/cancel-duplicate-tasks.js +2 -1
- package/dist/scripts/cancel-duplicate-tasks.js.map +1 -1
- package/dist/scripts/list-linear-tasks.js +3 -4
- package/dist/scripts/list-linear-tasks.js.map +1 -1
- package/dist/scripts/merge-linear-duplicates-safe.js +4 -2
- package/dist/scripts/merge-linear-duplicates-safe.js.map +1 -1
- package/dist/scripts/show-linear-summary.js +4 -1
- package/dist/scripts/show-linear-summary.js.map +1 -1
- package/dist/scripts/status.js +6 -2
- package/dist/scripts/status.js.map +1 -1
- package/dist/src/cli/auto-detect.js.map +1 -1
- package/dist/src/cli/claude-sm.js.map +1 -1
- package/dist/src/cli/commands/config.d.ts +6 -0
- package/dist/src/cli/commands/config.d.ts.map +1 -0
- package/dist/src/cli/commands/config.js +224 -0
- package/dist/src/cli/commands/config.js.map +1 -0
- package/dist/src/cli/commands/linear.d.ts.map +1 -1
- package/dist/src/cli/commands/linear.js +123 -47
- package/dist/src/cli/commands/linear.js.map +1 -1
- package/dist/src/cli/index.d.ts.map +1 -1
- package/dist/src/cli/index.js +48 -1
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/core/config/config-manager.d.ts +95 -0
- package/dist/src/core/config/config-manager.d.ts.map +1 -0
- package/dist/src/core/config/config-manager.js +359 -0
- package/dist/src/core/config/config-manager.js.map +1 -0
- package/dist/src/core/config/types.d.ts +72 -0
- package/dist/src/core/config/types.d.ts.map +1 -0
- package/dist/src/core/config/types.js +127 -0
- package/dist/src/core/config/types.js.map +1 -0
- package/dist/src/core/context/compaction-handler.d.ts +119 -0
- package/dist/src/core/context/compaction-handler.d.ts.map +1 -0
- package/dist/src/core/context/compaction-handler.js +306 -0
- package/dist/src/core/context/compaction-handler.js.map +1 -0
- package/dist/src/core/context/model-aware-compaction.d.ts +101 -0
- package/dist/src/core/context/model-aware-compaction.d.ts.map +1 -0
- package/dist/src/core/context/model-aware-compaction.js +616 -0
- package/dist/src/core/context/model-aware-compaction.js.map +1 -0
- package/dist/src/core/query/query-parser.d.ts +104 -0
- package/dist/src/core/query/query-parser.d.ts.map +1 -0
- package/dist/src/core/query/query-parser.js +347 -0
- package/dist/src/core/query/query-parser.js.map +1 -0
- package/dist/src/core/retrieval/index.d.ts +8 -0
- package/dist/src/core/retrieval/index.d.ts.map +1 -0
- package/dist/src/core/retrieval/index.js +8 -0
- package/dist/src/core/retrieval/index.js.map +1 -0
- package/dist/src/core/retrieval/llm-context-retrieval.d.ts +71 -0
- package/dist/src/core/retrieval/llm-context-retrieval.d.ts.map +1 -0
- package/dist/src/core/retrieval/llm-context-retrieval.js +545 -0
- package/dist/src/core/retrieval/llm-context-retrieval.js.map +1 -0
- package/dist/src/core/retrieval/summary-generator.d.ts +63 -0
- package/dist/src/core/retrieval/summary-generator.d.ts.map +1 -0
- package/dist/src/core/retrieval/summary-generator.js +622 -0
- package/dist/src/core/retrieval/summary-generator.js.map +1 -0
- package/dist/src/core/retrieval/types.d.ts +257 -0
- package/dist/src/core/retrieval/types.d.ts.map +1 -0
- package/dist/src/core/retrieval/types.js +18 -0
- package/dist/src/core/retrieval/types.js.map +1 -0
- package/dist/src/core/trace/trace-detector.d.ts +108 -0
- package/dist/src/core/trace/trace-detector.d.ts.map +1 -0
- package/dist/src/core/trace/trace-detector.demo.d.ts +5 -0
- package/dist/src/core/trace/trace-detector.demo.d.ts.map +1 -0
- package/dist/src/core/trace/trace-detector.demo.js +145 -0
- package/dist/src/core/trace/trace-detector.demo.js.map +1 -0
- package/dist/src/core/trace/trace-detector.js +425 -0
- package/dist/src/core/trace/trace-detector.js.map +1 -0
- package/dist/src/core/trace/trace-store.d.ts +60 -0
- package/dist/src/core/trace/trace-store.d.ts.map +1 -0
- package/dist/src/core/trace/trace-store.js +323 -0
- package/dist/src/core/trace/trace-store.js.map +1 -0
- package/dist/src/core/trace/types.d.ts +81 -0
- package/dist/src/core/trace/types.d.ts.map +1 -0
- package/dist/src/core/trace/types.js +70 -0
- package/dist/src/core/trace/types.js.map +1 -0
- package/dist/src/integrations/linear/sync-manager.d.ts +76 -0
- package/dist/src/integrations/linear/sync-manager.d.ts.map +1 -0
- package/dist/src/integrations/linear/sync-manager.js +223 -0
- package/dist/src/integrations/linear/sync-manager.js.map +1 -0
- package/dist/src/integrations/mcp/server.d.ts +8 -0
- package/dist/src/integrations/mcp/server.d.ts.map +1 -1
- package/dist/src/integrations/mcp/server.js +368 -16
- package/dist/src/integrations/mcp/server.js.map +1 -1
- package/dist/src/integrations/mcp/trace-test.d.ts +5 -0
- package/dist/src/integrations/mcp/trace-test.d.ts.map +1 -0
- package/dist/src/integrations/mcp/trace-test.js +54 -0
- package/dist/src/integrations/mcp/trace-test.js.map +1 -0
- package/dist/src/services/config-service.d.ts +1 -1
- package/dist/src/services/config-service.d.ts.map +1 -1
- package/dist/src/services/config-service.js.map +1 -1
- package/dist/src/types/task.d.ts +11 -1
- package/dist/src/types/task.d.ts.map +1 -1
- package/dist/src/utils/logger.d.ts +4 -4
- package/dist/src/utils/logger.d.ts.map +1 -1
- package/dist/src/utils/logger.js.map +1 -1
- package/package.json +9 -8
- package/dist/attention-scoring/src/attention-tracker.d.ts +0 -79
- package/dist/attention-scoring/src/attention-tracker.d.ts.map +0 -1
- package/dist/attention-scoring/src/attention-tracker.js +0 -488
- package/dist/attention-scoring/src/attention-tracker.js.map +0 -1
- package/dist/attention-scoring/src/mcp-integration.d.ts +0 -56
- package/dist/attention-scoring/src/mcp-integration.d.ts.map +0 -1
- package/dist/attention-scoring/src/mcp-integration.js +0 -369
- package/dist/attention-scoring/src/mcp-integration.js.map +0 -1
- package/dist/index.js +0 -382
- package/dist/p2p-sync/src/p2p-sync.d.ts +0 -81
- package/dist/p2p-sync/src/p2p-sync.d.ts.map +0 -1
- package/dist/p2p-sync/src/p2p-sync.js +0 -457
- package/dist/p2p-sync/src/p2p-sync.js.map +0 -1
- package/dist/p2p-sync/src/team-context-sync.d.ts +0 -99
- package/dist/p2p-sync/src/team-context-sync.d.ts.map +0 -1
- package/dist/p2p-sync/src/team-context-sync.js +0 -491
- package/dist/p2p-sync/src/team-context-sync.js.map +0 -1
- package/dist/scripts/merge-linear-duplicates.d.ts +0 -7
- package/dist/scripts/merge-linear-duplicates.d.ts.map +0 -1
- package/dist/scripts/merge-linear-duplicates.js +0 -126
- package/dist/scripts/merge-linear-duplicates.js.map +0 -1
- package/dist/src/analytics/api/analytics-api.d.ts +0 -24
- package/dist/src/analytics/api/analytics-api.d.ts.map +0 -1
- package/dist/src/analytics/api/analytics-api.js +0 -279
- package/dist/src/analytics/api/analytics-api.js.map +0 -1
- package/dist/src/analytics/core/analytics-service.d.ts +0 -23
- package/dist/src/analytics/core/analytics-service.d.ts.map +0 -1
- package/dist/src/analytics/core/analytics-service.js +0 -160
- package/dist/src/analytics/core/analytics-service.js.map +0 -1
- package/dist/src/analytics/index.d.ts +0 -12
- package/dist/src/analytics/index.d.ts.map +0 -1
- package/dist/src/analytics/index.js +0 -11
- package/dist/src/analytics/index.js.map +0 -1
- package/dist/src/analytics/queries/metrics-queries.d.ts +0 -11
- package/dist/src/analytics/queries/metrics-queries.d.ts.map +0 -1
- package/dist/src/analytics/queries/metrics-queries.js +0 -179
- package/dist/src/analytics/queries/metrics-queries.js.map +0 -1
- package/dist/src/analytics/types/metrics.d.ts +0 -60
- package/dist/src/analytics/types/metrics.d.ts.map +0 -1
- package/dist/src/analytics/types/metrics.js +0 -2
- package/dist/src/analytics/types/metrics.js.map +0 -1
- package/dist/src/beads/beads-task-store.d.ts +0 -117
- package/dist/src/beads/beads-task-store.d.ts.map +0 -1
- package/dist/src/beads/beads-task-store.js +0 -318
- package/dist/src/beads/beads-task-store.js.map +0 -1
- package/dist/src/beads/task-aware-context.d.ts +0 -103
- package/dist/src/beads/task-aware-context.d.ts.map +0 -1
- package/dist/src/beads/task-aware-context.js +0 -395
- package/dist/src/beads/task-aware-context.js.map +0 -1
- package/dist/src/beads-task-store.d.ts +0 -117
- package/dist/src/beads-task-store.d.ts.map +0 -1
- package/dist/src/beads-task-store.js +0 -318
- package/dist/src/beads-task-store.js.map +0 -1
- package/dist/src/cli/__tests__/index.test.d.ts +0 -5
- package/dist/src/cli/__tests__/index.test.d.ts.map +0 -1
- package/dist/src/cli/__tests__/index.test.js +0 -726
- package/dist/src/cli/__tests__/index.test.js.map +0 -1
- package/dist/src/cli/analytics-viewer.d.ts +0 -3
- package/dist/src/cli/analytics-viewer.d.ts.map +0 -1
- package/dist/src/cli/analytics-viewer.js +0 -89
- package/dist/src/cli/analytics-viewer.js.map +0 -1
- package/dist/src/cli/cli.d.ts +0 -7
- package/dist/src/cli/cli.d.ts.map +0 -1
- package/dist/src/cli/cli.js +0 -704
- package/dist/src/cli/cli.js.map +0 -1
- package/dist/src/cli/project-commands.d.ts +0 -8
- package/dist/src/cli/project-commands.d.ts.map +0 -1
- package/dist/src/cli/project-commands.js +0 -212
- package/dist/src/cli/project-commands.js.map +0 -1
- package/dist/src/cli.d.ts +0 -7
- package/dist/src/cli.d.ts.map +0 -1
- package/dist/src/cli.js +0 -73
- package/dist/src/cli.js.map +0 -1
- package/dist/src/core/context/__tests__/frame-manager.test.d.ts +0 -5
- package/dist/src/core/context/__tests__/frame-manager.test.d.ts.map +0 -1
- package/dist/src/core/context/__tests__/frame-manager.test.js +0 -892
- package/dist/src/core/context/__tests__/frame-manager.test.js.map +0 -1
- package/dist/src/core/error-handler.d.ts +0 -46
- package/dist/src/core/error-handler.d.ts.map +0 -1
- package/dist/src/core/error-handler.js +0 -212
- package/dist/src/core/error-handler.js.map +0 -1
- package/dist/src/core/errors/__tests__/error-handling.test.d.ts +0 -5
- package/dist/src/core/errors/__tests__/error-handling.test.d.ts.map +0 -1
- package/dist/src/core/errors/__tests__/error-handling.test.js +0 -239
- package/dist/src/core/errors/__tests__/error-handling.test.js.map +0 -1
- package/dist/src/core/frame-manager.d.ts +0 -106
- package/dist/src/core/frame-manager.d.ts.map +0 -1
- package/dist/src/core/frame-manager.js +0 -387
- package/dist/src/core/frame-manager.js.map +0 -1
- package/dist/src/core/logger.d.ts +0 -24
- package/dist/src/core/logger.d.ts.map +0 -1
- package/dist/src/core/logger.js +0 -121
- package/dist/src/core/logger.js.map +0 -1
- package/dist/src/core/logger.test.d.ts +0 -2
- package/dist/src/core/logger.test.d.ts.map +0 -1
- package/dist/src/core/logger.test.js +0 -31
- package/dist/src/core/logger.test.js.map +0 -1
- package/dist/src/core/progress-tracker.d.ts +0 -95
- package/dist/src/core/progress-tracker.d.ts.map +0 -1
- package/dist/src/core/progress-tracker.js +0 -178
- package/dist/src/core/progress-tracker.js.map +0 -1
- package/dist/src/core/project-manager.d.ts +0 -130
- package/dist/src/core/project-manager.d.ts.map +0 -1
- package/dist/src/core/project-manager.js +0 -582
- package/dist/src/core/project-manager.js.map +0 -1
- package/dist/src/core/update-checker.d.ts +0 -38
- package/dist/src/core/update-checker.d.ts.map +0 -1
- package/dist/src/core/update-checker.js +0 -156
- package/dist/src/core/update-checker.js.map +0 -1
- package/dist/src/error-handler.d.ts +0 -42
- package/dist/src/error-handler.d.ts.map +0 -1
- package/dist/src/error-handler.js +0 -155
- package/dist/src/error-handler.js.map +0 -1
- package/dist/src/features/tasks/__tests__/pebbles-task-store.test.d.ts +0 -5
- package/dist/src/features/tasks/__tests__/pebbles-task-store.test.d.ts.map +0 -1
- package/dist/src/features/tasks/__tests__/pebbles-task-store.test.js +0 -712
- package/dist/src/features/tasks/__tests__/pebbles-task-store.test.js.map +0 -1
- package/dist/src/frame-manager.d.ts +0 -106
- package/dist/src/frame-manager.d.ts.map +0 -1
- package/dist/src/frame-manager.js +0 -361
- package/dist/src/frame-manager.js.map +0 -1
- package/dist/src/integrations/browser-mcp.d.ts +0 -94
- package/dist/src/integrations/browser-mcp.d.ts.map +0 -1
- package/dist/src/integrations/browser-mcp.js +0 -431
- package/dist/src/integrations/browser-mcp.js.map +0 -1
- package/dist/src/integrations/linear/__tests__/auth.test.d.ts +0 -5
- package/dist/src/integrations/linear/__tests__/auth.test.d.ts.map +0 -1
- package/dist/src/integrations/linear/__tests__/auth.test.js +0 -517
- package/dist/src/integrations/linear/__tests__/auth.test.js.map +0 -1
- package/dist/src/integrations/linear/__tests__/sync-service.test.d.ts +0 -5
- package/dist/src/integrations/linear/__tests__/sync-service.test.d.ts.map +0 -1
- package/dist/src/integrations/linear/__tests__/sync-service.test.js +0 -700
- package/dist/src/integrations/linear/__tests__/sync-service.test.js.map +0 -1
- package/dist/src/integrations/linear-auth.d.ts +0 -99
- package/dist/src/integrations/linear-auth.d.ts.map +0 -1
- package/dist/src/integrations/linear-auth.js +0 -319
- package/dist/src/integrations/linear-auth.js.map +0 -1
- package/dist/src/integrations/linear-auto-sync.d.ts +0 -77
- package/dist/src/integrations/linear-auto-sync.d.ts.map +0 -1
- package/dist/src/integrations/linear-auto-sync.js +0 -268
- package/dist/src/integrations/linear-auto-sync.js.map +0 -1
- package/dist/src/integrations/linear-client.d.ts +0 -86
- package/dist/src/integrations/linear-client.d.ts.map +0 -1
- package/dist/src/integrations/linear-client.js +0 -277
- package/dist/src/integrations/linear-client.js.map +0 -1
- package/dist/src/integrations/linear-config.d.ts +0 -51
- package/dist/src/integrations/linear-config.d.ts.map +0 -1
- package/dist/src/integrations/linear-config.js +0 -103
- package/dist/src/integrations/linear-config.js.map +0 -1
- package/dist/src/integrations/linear-sync.d.ts +0 -97
- package/dist/src/integrations/linear-sync.d.ts.map +0 -1
- package/dist/src/integrations/linear-sync.js +0 -391
- package/dist/src/integrations/linear-sync.js.map +0 -1
- package/dist/src/integrations/mcp/__tests__/server.test.d.ts +0 -5
- package/dist/src/integrations/mcp/__tests__/server.test.d.ts.map +0 -1
- package/dist/src/integrations/mcp/__tests__/server.test.js +0 -790
- package/dist/src/integrations/mcp/__tests__/server.test.js.map +0 -1
- package/dist/src/logger.d.ts +0 -24
- package/dist/src/logger.d.ts.map +0 -1
- package/dist/src/logger.js +0 -120
- package/dist/src/logger.js.map +0 -1
- package/dist/src/mcp/mcp-server.d.ts +0 -40
- package/dist/src/mcp/mcp-server.d.ts.map +0 -1
- package/dist/src/mcp/mcp-server.js +0 -828
- package/dist/src/mcp/mcp-server.js.map +0 -1
- package/dist/src/mcp-server.d.ts +0 -32
- package/dist/src/mcp-server.d.ts.map +0 -1
- package/dist/src/mcp-server.js +0 -441
- package/dist/src/mcp-server.js.map +0 -1
- package/dist/src/pebbles/pebbles-task-store.d.ts +0 -117
- package/dist/src/pebbles/pebbles-task-store.d.ts.map +0 -1
- package/dist/src/pebbles/pebbles-task-store.js +0 -335
- package/dist/src/pebbles/pebbles-task-store.js.map +0 -1
- package/dist/src/pebbles/task-aware-context.d.ts +0 -103
- package/dist/src/pebbles/task-aware-context.d.ts.map +0 -1
- package/dist/src/pebbles/task-aware-context.js +0 -412
- package/dist/src/pebbles/task-aware-context.js.map +0 -1
- package/dist/src/railway/index.d.ts +0 -7
- package/dist/src/railway/index.d.ts.map +0 -1
- package/dist/src/railway/index.js +0 -401
- package/dist/src/railway/index.js.map +0 -1
- package/dist/src/runway/auth/auth-middleware.d.ts +0 -66
- package/dist/src/runway/auth/auth-middleware.d.ts.map +0 -1
- package/dist/src/runway/auth/auth-middleware.js +0 -337
- package/dist/src/runway/auth/auth-middleware.js.map +0 -1
- package/dist/src/runway/server/runway-mcp-server.d.ts +0 -46
- package/dist/src/runway/server/runway-mcp-server.d.ts.map +0 -1
- package/dist/src/runway/server/runway-mcp-server.js +0 -601
- package/dist/src/runway/server/runway-mcp-server.js.map +0 -1
- package/dist/src/runway.bak/auth/auth-middleware.d.ts +0 -66
- package/dist/src/runway.bak/auth/auth-middleware.d.ts.map +0 -1
- package/dist/src/runway.bak/auth/auth-middleware.js +0 -337
- package/dist/src/runway.bak/auth/auth-middleware.js.map +0 -1
- package/dist/src/runway.bak/server/runway-mcp-server.d.ts +0 -46
- package/dist/src/runway.bak/server/runway-mcp-server.d.ts.map +0 -1
- package/dist/src/runway.bak/server/runway-mcp-server.js +0 -601
- package/dist/src/runway.bak/server/runway-mcp-server.js.map +0 -1
- package/dist/src/task-aware-context.d.ts +0 -103
- package/dist/src/task-aware-context.d.ts.map +0 -1
- package/dist/src/task-aware-context.js +0 -395
- package/dist/src/task-aware-context.js.map +0 -1
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trace Store - Database persistence for traces
|
|
3
|
+
*/
|
|
4
|
+
import { TraceType, } from './types.js';
|
|
5
|
+
import { logger } from '../monitoring/logger.js';
|
|
6
|
+
export class TraceStore {
|
|
7
|
+
db;
|
|
8
|
+
constructor(db) {
|
|
9
|
+
this.db = db;
|
|
10
|
+
this.initializeSchema();
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Initialize database schema for traces
|
|
14
|
+
*/
|
|
15
|
+
initializeSchema() {
|
|
16
|
+
// Check if frames table exists (it may not in all contexts)
|
|
17
|
+
const hasFramesTable = this.db
|
|
18
|
+
.prepare(`
|
|
19
|
+
SELECT name FROM sqlite_master
|
|
20
|
+
WHERE type='table' AND name='frames'
|
|
21
|
+
`)
|
|
22
|
+
.get();
|
|
23
|
+
// Create traces table with optional foreign key
|
|
24
|
+
if (hasFramesTable) {
|
|
25
|
+
this.db.exec(`
|
|
26
|
+
CREATE TABLE IF NOT EXISTS traces (
|
|
27
|
+
id TEXT PRIMARY KEY,
|
|
28
|
+
type TEXT NOT NULL,
|
|
29
|
+
score REAL NOT NULL,
|
|
30
|
+
summary TEXT NOT NULL,
|
|
31
|
+
start_time INTEGER NOT NULL,
|
|
32
|
+
end_time INTEGER NOT NULL,
|
|
33
|
+
frame_id TEXT,
|
|
34
|
+
user_id TEXT,
|
|
35
|
+
files_modified TEXT,
|
|
36
|
+
errors_encountered TEXT,
|
|
37
|
+
decisions_recorded TEXT,
|
|
38
|
+
causal_chain INTEGER,
|
|
39
|
+
compressed_data TEXT,
|
|
40
|
+
created_at INTEGER DEFAULT (unixepoch()),
|
|
41
|
+
FOREIGN KEY (frame_id) REFERENCES frames(frame_id) ON DELETE SET NULL
|
|
42
|
+
)
|
|
43
|
+
`);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
// Create without foreign key constraint
|
|
47
|
+
this.db.exec(`
|
|
48
|
+
CREATE TABLE IF NOT EXISTS traces (
|
|
49
|
+
id TEXT PRIMARY KEY,
|
|
50
|
+
type TEXT NOT NULL,
|
|
51
|
+
score REAL NOT NULL,
|
|
52
|
+
summary TEXT NOT NULL,
|
|
53
|
+
start_time INTEGER NOT NULL,
|
|
54
|
+
end_time INTEGER NOT NULL,
|
|
55
|
+
frame_id TEXT,
|
|
56
|
+
user_id TEXT,
|
|
57
|
+
files_modified TEXT,
|
|
58
|
+
errors_encountered TEXT,
|
|
59
|
+
decisions_recorded TEXT,
|
|
60
|
+
causal_chain INTEGER,
|
|
61
|
+
compressed_data TEXT,
|
|
62
|
+
created_at INTEGER DEFAULT (unixepoch())
|
|
63
|
+
)
|
|
64
|
+
`);
|
|
65
|
+
}
|
|
66
|
+
// Create tool_calls table
|
|
67
|
+
this.db.exec(`
|
|
68
|
+
CREATE TABLE IF NOT EXISTS tool_calls (
|
|
69
|
+
id TEXT PRIMARY KEY,
|
|
70
|
+
trace_id TEXT NOT NULL,
|
|
71
|
+
tool TEXT NOT NULL,
|
|
72
|
+
arguments TEXT,
|
|
73
|
+
timestamp INTEGER NOT NULL,
|
|
74
|
+
result TEXT,
|
|
75
|
+
error TEXT,
|
|
76
|
+
files_affected TEXT,
|
|
77
|
+
duration INTEGER,
|
|
78
|
+
sequence_number INTEGER NOT NULL,
|
|
79
|
+
FOREIGN KEY (trace_id) REFERENCES traces(id) ON DELETE CASCADE
|
|
80
|
+
)
|
|
81
|
+
`);
|
|
82
|
+
// Create indexes
|
|
83
|
+
this.db.exec(`
|
|
84
|
+
CREATE INDEX IF NOT EXISTS idx_traces_type ON traces(type);
|
|
85
|
+
CREATE INDEX IF NOT EXISTS idx_traces_frame_id ON traces(frame_id);
|
|
86
|
+
CREATE INDEX IF NOT EXISTS idx_traces_start_time ON traces(start_time);
|
|
87
|
+
CREATE INDEX IF NOT EXISTS idx_traces_score ON traces(score);
|
|
88
|
+
CREATE INDEX IF NOT EXISTS idx_tool_calls_trace_id ON tool_calls(trace_id);
|
|
89
|
+
CREATE INDEX IF NOT EXISTS idx_tool_calls_timestamp ON tool_calls(timestamp);
|
|
90
|
+
`);
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Save a trace to the database
|
|
94
|
+
*/
|
|
95
|
+
saveTrace(trace) {
|
|
96
|
+
const traceStmt = this.db.prepare(`
|
|
97
|
+
INSERT OR REPLACE INTO traces (
|
|
98
|
+
id, type, score, summary, start_time, end_time,
|
|
99
|
+
frame_id, user_id, files_modified, errors_encountered,
|
|
100
|
+
decisions_recorded, causal_chain, compressed_data
|
|
101
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
102
|
+
`);
|
|
103
|
+
const toolCallStmt = this.db.prepare(`
|
|
104
|
+
INSERT OR REPLACE INTO tool_calls (
|
|
105
|
+
id, trace_id, tool, arguments, timestamp, result,
|
|
106
|
+
error, files_affected, duration, sequence_number
|
|
107
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
108
|
+
`);
|
|
109
|
+
try {
|
|
110
|
+
this.db.transaction(() => {
|
|
111
|
+
// Save trace
|
|
112
|
+
traceStmt.run(trace.id, trace.type, trace.score, trace.summary, trace.metadata.startTime, trace.metadata.endTime, trace.metadata.frameId || null, trace.metadata.userId || null, JSON.stringify(trace.metadata.filesModified), JSON.stringify(trace.metadata.errorsEncountered), JSON.stringify(trace.metadata.decisionsRecorded), trace.metadata.causalChain ? 1 : 0, trace.compressed ? JSON.stringify(trace.compressed) : null);
|
|
113
|
+
// Save tool calls
|
|
114
|
+
trace.tools.forEach((tool, index) => {
|
|
115
|
+
toolCallStmt.run(tool.id, trace.id, tool.tool, tool.arguments ? JSON.stringify(tool.arguments) : null, tool.timestamp, tool.result ? JSON.stringify(tool.result) : null, tool.error || null, tool.filesAffected ? JSON.stringify(tool.filesAffected) : null, tool.duration || null, index);
|
|
116
|
+
});
|
|
117
|
+
})();
|
|
118
|
+
logger.debug(`Saved trace ${trace.id} with ${trace.tools.length} tool calls`);
|
|
119
|
+
}
|
|
120
|
+
catch (error) {
|
|
121
|
+
logger.error(`Failed to save trace ${trace.id}:`, error);
|
|
122
|
+
throw error;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Load a trace by ID
|
|
127
|
+
*/
|
|
128
|
+
getTrace(id) {
|
|
129
|
+
const traceRow = this.db
|
|
130
|
+
.prepare(`
|
|
131
|
+
SELECT * FROM traces WHERE id = ?
|
|
132
|
+
`)
|
|
133
|
+
.get(id);
|
|
134
|
+
if (!traceRow) {
|
|
135
|
+
return null;
|
|
136
|
+
}
|
|
137
|
+
const toolRows = this.db
|
|
138
|
+
.prepare(`
|
|
139
|
+
SELECT * FROM tool_calls WHERE trace_id = ? ORDER BY sequence_number
|
|
140
|
+
`)
|
|
141
|
+
.all(id);
|
|
142
|
+
return this.rowsToTrace(traceRow, toolRows);
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Load all traces
|
|
146
|
+
*/
|
|
147
|
+
getAllTraces() {
|
|
148
|
+
const traceRows = this.db
|
|
149
|
+
.prepare(`
|
|
150
|
+
SELECT * FROM traces ORDER BY start_time DESC
|
|
151
|
+
`)
|
|
152
|
+
.all();
|
|
153
|
+
return traceRows.map((traceRow) => {
|
|
154
|
+
const toolRows = this.db
|
|
155
|
+
.prepare(`
|
|
156
|
+
SELECT * FROM tool_calls WHERE trace_id = ? ORDER BY sequence_number
|
|
157
|
+
`)
|
|
158
|
+
.all(traceRow.id);
|
|
159
|
+
return this.rowsToTrace(traceRow, toolRows);
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Load traces by type
|
|
164
|
+
*/
|
|
165
|
+
getTracesByType(type) {
|
|
166
|
+
const traceRows = this.db
|
|
167
|
+
.prepare(`
|
|
168
|
+
SELECT * FROM traces WHERE type = ? ORDER BY start_time DESC
|
|
169
|
+
`)
|
|
170
|
+
.all(type);
|
|
171
|
+
return traceRows.map((traceRow) => {
|
|
172
|
+
const toolRows = this.db
|
|
173
|
+
.prepare(`
|
|
174
|
+
SELECT * FROM tool_calls WHERE trace_id = ? ORDER BY sequence_number
|
|
175
|
+
`)
|
|
176
|
+
.all(traceRow.id);
|
|
177
|
+
return this.rowsToTrace(traceRow, toolRows);
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Load traces by frame
|
|
182
|
+
*/
|
|
183
|
+
getTracesByFrame(frameId) {
|
|
184
|
+
const traceRows = this.db
|
|
185
|
+
.prepare(`
|
|
186
|
+
SELECT * FROM traces WHERE frame_id = ? ORDER BY start_time DESC
|
|
187
|
+
`)
|
|
188
|
+
.all(frameId);
|
|
189
|
+
return traceRows.map((traceRow) => {
|
|
190
|
+
const toolRows = this.db
|
|
191
|
+
.prepare(`
|
|
192
|
+
SELECT * FROM tool_calls WHERE trace_id = ? ORDER BY sequence_number
|
|
193
|
+
`)
|
|
194
|
+
.all(traceRow.id);
|
|
195
|
+
return this.rowsToTrace(traceRow, toolRows);
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Load high-importance traces
|
|
200
|
+
*/
|
|
201
|
+
getHighImportanceTraces(minScore = 0.7) {
|
|
202
|
+
const traceRows = this.db
|
|
203
|
+
.prepare(`
|
|
204
|
+
SELECT * FROM traces WHERE score >= ? ORDER BY score DESC, start_time DESC
|
|
205
|
+
`)
|
|
206
|
+
.all(minScore);
|
|
207
|
+
return traceRows.map((traceRow) => {
|
|
208
|
+
const toolRows = this.db
|
|
209
|
+
.prepare(`
|
|
210
|
+
SELECT * FROM tool_calls WHERE trace_id = ? ORDER BY sequence_number
|
|
211
|
+
`)
|
|
212
|
+
.all(traceRow.id);
|
|
213
|
+
return this.rowsToTrace(traceRow, toolRows);
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Load error traces
|
|
218
|
+
*/
|
|
219
|
+
getErrorTraces() {
|
|
220
|
+
const traceRows = this.db
|
|
221
|
+
.prepare(`
|
|
222
|
+
SELECT * FROM traces
|
|
223
|
+
WHERE type = ? OR errors_encountered != '[]'
|
|
224
|
+
ORDER BY start_time DESC
|
|
225
|
+
`)
|
|
226
|
+
.all(TraceType.ERROR_RECOVERY);
|
|
227
|
+
return traceRows.map((traceRow) => {
|
|
228
|
+
const toolRows = this.db
|
|
229
|
+
.prepare(`
|
|
230
|
+
SELECT * FROM tool_calls WHERE trace_id = ? ORDER BY sequence_number
|
|
231
|
+
`)
|
|
232
|
+
.all(traceRow.id);
|
|
233
|
+
return this.rowsToTrace(traceRow, toolRows);
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Get trace statistics
|
|
238
|
+
*/
|
|
239
|
+
getStatistics() {
|
|
240
|
+
const stats = this.db
|
|
241
|
+
.prepare(`
|
|
242
|
+
SELECT
|
|
243
|
+
COUNT(*) as total,
|
|
244
|
+
AVG(score) as avg_score,
|
|
245
|
+
AVG((
|
|
246
|
+
SELECT COUNT(*) FROM tool_calls WHERE trace_id = traces.id
|
|
247
|
+
)) as avg_length,
|
|
248
|
+
SUM(CASE WHEN type = ? OR errors_encountered != '[]' THEN 1 ELSE 0 END) * 100.0 / COUNT(*) as error_rate
|
|
249
|
+
FROM traces
|
|
250
|
+
`)
|
|
251
|
+
.get(TraceType.ERROR_RECOVERY);
|
|
252
|
+
const typeStats = this.db
|
|
253
|
+
.prepare(`
|
|
254
|
+
SELECT type, COUNT(*) as count
|
|
255
|
+
FROM traces
|
|
256
|
+
GROUP BY type
|
|
257
|
+
`)
|
|
258
|
+
.all();
|
|
259
|
+
const tracesByType = {};
|
|
260
|
+
typeStats.forEach((row) => {
|
|
261
|
+
tracesByType[row.type] = row.count;
|
|
262
|
+
});
|
|
263
|
+
return {
|
|
264
|
+
totalTraces: stats.total || 0,
|
|
265
|
+
tracesByType,
|
|
266
|
+
averageScore: stats.avg_score || 0,
|
|
267
|
+
averageLength: stats.avg_length || 0,
|
|
268
|
+
errorRate: stats.error_rate || 0,
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Delete old traces
|
|
273
|
+
*/
|
|
274
|
+
deleteOldTraces(olderThanMs) {
|
|
275
|
+
const cutoff = Date.now() - olderThanMs;
|
|
276
|
+
const result = this.db
|
|
277
|
+
.prepare(`
|
|
278
|
+
DELETE FROM traces WHERE start_time < ?
|
|
279
|
+
`)
|
|
280
|
+
.run(cutoff);
|
|
281
|
+
return result.changes;
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
* Convert database rows to Trace object
|
|
285
|
+
*/
|
|
286
|
+
rowsToTrace(traceRow, toolRows) {
|
|
287
|
+
const tools = toolRows.map((row) => ({
|
|
288
|
+
id: row.id,
|
|
289
|
+
tool: row.tool,
|
|
290
|
+
arguments: row.arguments ? JSON.parse(row.arguments) : undefined,
|
|
291
|
+
timestamp: row.timestamp,
|
|
292
|
+
result: row.result ? JSON.parse(row.result) : undefined,
|
|
293
|
+
error: row.error || undefined,
|
|
294
|
+
filesAffected: row.files_affected
|
|
295
|
+
? JSON.parse(row.files_affected)
|
|
296
|
+
: undefined,
|
|
297
|
+
duration: row.duration || undefined,
|
|
298
|
+
}));
|
|
299
|
+
const metadata = {
|
|
300
|
+
startTime: traceRow.start_time,
|
|
301
|
+
endTime: traceRow.end_time,
|
|
302
|
+
frameId: traceRow.frame_id || undefined,
|
|
303
|
+
userId: traceRow.user_id || undefined,
|
|
304
|
+
filesModified: JSON.parse(traceRow.files_modified || '[]'),
|
|
305
|
+
errorsEncountered: JSON.parse(traceRow.errors_encountered || '[]'),
|
|
306
|
+
decisionsRecorded: JSON.parse(traceRow.decisions_recorded || '[]'),
|
|
307
|
+
causalChain: traceRow.causal_chain === 1,
|
|
308
|
+
};
|
|
309
|
+
const trace = {
|
|
310
|
+
id: traceRow.id,
|
|
311
|
+
type: traceRow.type,
|
|
312
|
+
tools,
|
|
313
|
+
score: traceRow.score,
|
|
314
|
+
summary: traceRow.summary,
|
|
315
|
+
metadata,
|
|
316
|
+
};
|
|
317
|
+
if (traceRow.compressed_data) {
|
|
318
|
+
trace.compressed = JSON.parse(traceRow.compressed_data);
|
|
319
|
+
}
|
|
320
|
+
return trace;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
//# sourceMappingURL=trace-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace-store.js","sourceRoot":"","sources":["../../../../src/core/trace/trace-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types for Trace Detection and Bundling System
|
|
3
|
+
*/
|
|
4
|
+
export interface ToolCall {
|
|
5
|
+
id: string;
|
|
6
|
+
tool: string;
|
|
7
|
+
arguments?: Record<string, any>;
|
|
8
|
+
timestamp: number;
|
|
9
|
+
result?: any;
|
|
10
|
+
error?: string;
|
|
11
|
+
filesAffected?: string[];
|
|
12
|
+
duration?: number;
|
|
13
|
+
}
|
|
14
|
+
export interface Trace {
|
|
15
|
+
id: string;
|
|
16
|
+
type: TraceType;
|
|
17
|
+
tools: ToolCall[];
|
|
18
|
+
score: number;
|
|
19
|
+
summary: string;
|
|
20
|
+
compressed?: CompressedTrace;
|
|
21
|
+
metadata: TraceMetadata;
|
|
22
|
+
}
|
|
23
|
+
export interface CompressedTrace {
|
|
24
|
+
pattern: string;
|
|
25
|
+
summary: string;
|
|
26
|
+
score: number;
|
|
27
|
+
toolCount: number;
|
|
28
|
+
duration: number;
|
|
29
|
+
timestamp: number;
|
|
30
|
+
}
|
|
31
|
+
export interface TraceMetadata {
|
|
32
|
+
startTime: number;
|
|
33
|
+
endTime: number;
|
|
34
|
+
frameId?: string;
|
|
35
|
+
userId?: string;
|
|
36
|
+
filesModified: string[];
|
|
37
|
+
errorsEncountered: string[];
|
|
38
|
+
decisionsRecorded: string[];
|
|
39
|
+
causalChain: boolean;
|
|
40
|
+
}
|
|
41
|
+
export declare enum TraceType {
|
|
42
|
+
SEARCH_DRIVEN = "search_driven",
|
|
43
|
+
ERROR_RECOVERY = "error_recovery",
|
|
44
|
+
FEATURE_IMPLEMENTATION = "feature_implementation",
|
|
45
|
+
REFACTORING = "refactoring",
|
|
46
|
+
TESTING = "testing",
|
|
47
|
+
EXPLORATION = "exploration",
|
|
48
|
+
DEBUGGING = "debugging",
|
|
49
|
+
DOCUMENTATION = "documentation",
|
|
50
|
+
BUILD_DEPLOY = "build_deploy",
|
|
51
|
+
UNKNOWN = "unknown"
|
|
52
|
+
}
|
|
53
|
+
export interface TraceBoundaryConfig {
|
|
54
|
+
timeProximityMs: number;
|
|
55
|
+
sameDirThreshold: boolean;
|
|
56
|
+
causalRelationship: boolean;
|
|
57
|
+
maxTraceSize: number;
|
|
58
|
+
compressionThreshold: number;
|
|
59
|
+
}
|
|
60
|
+
export declare const DEFAULT_TRACE_CONFIG: TraceBoundaryConfig;
|
|
61
|
+
export interface TracePattern {
|
|
62
|
+
pattern: RegExp | string[];
|
|
63
|
+
type: TraceType;
|
|
64
|
+
description: string;
|
|
65
|
+
}
|
|
66
|
+
export declare const TRACE_PATTERNS: TracePattern[];
|
|
67
|
+
export interface TraceScoringFactors {
|
|
68
|
+
toolScores: number[];
|
|
69
|
+
hasDecisions: boolean;
|
|
70
|
+
hasErrors: boolean;
|
|
71
|
+
filesModifiedCount: number;
|
|
72
|
+
isPermanent: boolean;
|
|
73
|
+
referenceCount: number;
|
|
74
|
+
}
|
|
75
|
+
export declare enum CompressionStrategy {
|
|
76
|
+
SUMMARY_ONLY = "summary_only",// Keep only summary and score
|
|
77
|
+
PATTERN_BASED = "pattern_based",// Keep pattern and outcome
|
|
78
|
+
SELECTIVE = "selective",// Keep high-score tools only
|
|
79
|
+
FULL_COMPRESSION = "full_compression"
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/trace/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,oBAAY,SAAS;IACnB,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,sBAAsB,2BAA2B;IACjD,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,OAAO,YAAY;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,oBAAoB,EAAE,mBAMlC,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAGD,eAAO,MAAM,cAAc,EAAE,YAAY,EAoCxC,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAGD,oBAAY,mBAAmB;IAC7B,YAAY,iBAAiB,CAAE,8BAA8B;IAC7D,aAAa,kBAAkB,CAAE,2BAA2B;IAC5D,SAAS,cAAc,CAAE,6BAA6B;IACtD,gBAAgB,qBAAqB;CACtC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types for Trace Detection and Bundling System
|
|
3
|
+
*/
|
|
4
|
+
export var TraceType;
|
|
5
|
+
(function (TraceType) {
|
|
6
|
+
TraceType["SEARCH_DRIVEN"] = "search_driven";
|
|
7
|
+
TraceType["ERROR_RECOVERY"] = "error_recovery";
|
|
8
|
+
TraceType["FEATURE_IMPLEMENTATION"] = "feature_implementation";
|
|
9
|
+
TraceType["REFACTORING"] = "refactoring";
|
|
10
|
+
TraceType["TESTING"] = "testing";
|
|
11
|
+
TraceType["EXPLORATION"] = "exploration";
|
|
12
|
+
TraceType["DEBUGGING"] = "debugging";
|
|
13
|
+
TraceType["DOCUMENTATION"] = "documentation";
|
|
14
|
+
TraceType["BUILD_DEPLOY"] = "build_deploy";
|
|
15
|
+
TraceType["UNKNOWN"] = "unknown";
|
|
16
|
+
})(TraceType || (TraceType = {}));
|
|
17
|
+
export const DEFAULT_TRACE_CONFIG = {
|
|
18
|
+
timeProximityMs: 30000, // 30 seconds
|
|
19
|
+
sameDirThreshold: true,
|
|
20
|
+
causalRelationship: true,
|
|
21
|
+
maxTraceSize: 50,
|
|
22
|
+
compressionThreshold: 24, // Compress after 24 hours
|
|
23
|
+
};
|
|
24
|
+
// Common patterns for trace type detection
|
|
25
|
+
export const TRACE_PATTERNS = [
|
|
26
|
+
{
|
|
27
|
+
pattern: ['search', 'grep', 'read', 'edit'],
|
|
28
|
+
type: TraceType.SEARCH_DRIVEN,
|
|
29
|
+
description: 'Search-driven code modification',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
pattern: ['bash', 'error', 'edit', 'bash'],
|
|
33
|
+
type: TraceType.ERROR_RECOVERY,
|
|
34
|
+
description: 'Error recovery sequence',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
pattern: ['write', 'edit', 'test'],
|
|
38
|
+
type: TraceType.FEATURE_IMPLEMENTATION,
|
|
39
|
+
description: 'New feature implementation',
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
pattern: ['read', 'edit', 'edit', 'test'],
|
|
43
|
+
type: TraceType.REFACTORING,
|
|
44
|
+
description: 'Code refactoring',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
pattern: ['test', 'bash', 'test'],
|
|
48
|
+
type: TraceType.TESTING,
|
|
49
|
+
description: 'Test execution and validation',
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
pattern: ['grep', 'search', 'read'],
|
|
53
|
+
type: TraceType.EXPLORATION,
|
|
54
|
+
description: 'Codebase exploration',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
pattern: ['bash', 'build', 'deploy'],
|
|
58
|
+
type: TraceType.BUILD_DEPLOY,
|
|
59
|
+
description: 'Build and deployment',
|
|
60
|
+
},
|
|
61
|
+
];
|
|
62
|
+
// Trace compression strategies
|
|
63
|
+
export var CompressionStrategy;
|
|
64
|
+
(function (CompressionStrategy) {
|
|
65
|
+
CompressionStrategy["SUMMARY_ONLY"] = "summary_only";
|
|
66
|
+
CompressionStrategy["PATTERN_BASED"] = "pattern_based";
|
|
67
|
+
CompressionStrategy["SELECTIVE"] = "selective";
|
|
68
|
+
CompressionStrategy["FULL_COMPRESSION"] = "full_compression";
|
|
69
|
+
})(CompressionStrategy || (CompressionStrategy = {}));
|
|
70
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/core/trace/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AA2CH,MAAM,CAAN,IAAY,SAWX;AAXD,WAAY,SAAS;IACnB,4CAA+B,CAAA;IAC/B,8CAAiC,CAAA;IACjC,8DAAiD,CAAA;IACjD,wCAA2B,CAAA;IAC3B,gCAAmB,CAAA;IACnB,wCAA2B,CAAA;IAC3B,oCAAuB,CAAA;IACvB,4CAA+B,CAAA;IAC/B,0CAA6B,CAAA;IAC7B,gCAAmB,CAAA;AACrB,CAAC,EAXW,SAAS,KAAT,SAAS,QAWpB;AAUD,MAAM,CAAC,MAAM,oBAAoB,GAAwB;IACvD,eAAe,EAAE,KAAK,EAAE,aAAa;IACrC,gBAAgB,EAAE,IAAI;IACtB,kBAAkB,EAAE,IAAI;IACxB,YAAY,EAAE,EAAE;IAChB,oBAAoB,EAAE,EAAE,EAAE,0BAA0B;CACrD,CAAC;AAQF,2CAA2C;AAC3C,MAAM,CAAC,MAAM,cAAc,GAAmB;IAC5C;QACE,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;QAC3C,IAAI,EAAE,SAAS,CAAC,aAAa;QAC7B,WAAW,EAAE,iCAAiC;KAC/C;IACD;QACE,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;QAC1C,IAAI,EAAE,SAAS,CAAC,cAAc;QAC9B,WAAW,EAAE,yBAAyB;KACvC;IACD;QACE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;QAClC,IAAI,EAAE,SAAS,CAAC,sBAAsB;QACtC,WAAW,EAAE,4BAA4B;KAC1C;IACD;QACE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;QACzC,IAAI,EAAE,SAAS,CAAC,WAAW;QAC3B,WAAW,EAAE,kBAAkB;KAChC;IACD;QACE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;QACjC,IAAI,EAAE,SAAS,CAAC,OAAO;QACvB,WAAW,EAAE,+BAA+B;KAC7C;IACD;QACE,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;QACnC,IAAI,EAAE,SAAS,CAAC,WAAW;QAC3B,WAAW,EAAE,sBAAsB;KACpC;IACD;QACE,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;QACpC,IAAI,EAAE,SAAS,CAAC,YAAY;QAC5B,WAAW,EAAE,sBAAsB;KACpC;CACF,CAAC;AAWF,+BAA+B;AAC/B,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,oDAA6B,CAAA;IAC7B,sDAA+B,CAAA;IAC/B,8CAAuB,CAAA;IACvB,4DAAqC,CAAA;AACvC,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Linear Sync Manager
|
|
3
|
+
* Handles periodic and event-based synchronization with Linear
|
|
4
|
+
*/
|
|
5
|
+
import { EventEmitter } from 'events';
|
|
6
|
+
import { SyncConfig, SyncResult } from './sync.js';
|
|
7
|
+
import { PebblesTaskStore } from '../../features/tasks/pebbles-task-store.js';
|
|
8
|
+
import { LinearAuthManager } from './auth.js';
|
|
9
|
+
export interface SyncManagerConfig extends SyncConfig {
|
|
10
|
+
autoSyncInterval?: number;
|
|
11
|
+
syncOnTaskChange?: boolean;
|
|
12
|
+
syncOnSessionStart?: boolean;
|
|
13
|
+
syncOnSessionEnd?: boolean;
|
|
14
|
+
debounceInterval?: number;
|
|
15
|
+
}
|
|
16
|
+
export declare class LinearSyncManager extends EventEmitter {
|
|
17
|
+
private syncEngine;
|
|
18
|
+
private syncTimer?;
|
|
19
|
+
private pendingSyncTimer?;
|
|
20
|
+
private config;
|
|
21
|
+
private lastSyncTime;
|
|
22
|
+
private syncInProgress;
|
|
23
|
+
private taskStore;
|
|
24
|
+
constructor(taskStore: PebblesTaskStore, authManager: LinearAuthManager, config: SyncManagerConfig, projectRoot?: string);
|
|
25
|
+
/**
|
|
26
|
+
* Setup event listeners for automatic sync triggers
|
|
27
|
+
*/
|
|
28
|
+
private setupEventListeners;
|
|
29
|
+
/**
|
|
30
|
+
* Setup periodic sync timer
|
|
31
|
+
*/
|
|
32
|
+
private setupPeriodicSync;
|
|
33
|
+
/**
|
|
34
|
+
* Schedule a debounced sync to avoid too frequent syncs
|
|
35
|
+
*/
|
|
36
|
+
private scheduleDebouncedSync;
|
|
37
|
+
/**
|
|
38
|
+
* Perform a sync operation
|
|
39
|
+
*/
|
|
40
|
+
performSync(trigger: 'manual' | 'periodic' | 'task-change' | 'session-start' | 'session-end'): Promise<SyncResult>;
|
|
41
|
+
/**
|
|
42
|
+
* Sync on session start
|
|
43
|
+
*/
|
|
44
|
+
syncOnStart(): Promise<SyncResult | null>;
|
|
45
|
+
/**
|
|
46
|
+
* Sync on session end
|
|
47
|
+
*/
|
|
48
|
+
syncOnEnd(): Promise<SyncResult | null>;
|
|
49
|
+
/**
|
|
50
|
+
* Update sync configuration
|
|
51
|
+
*/
|
|
52
|
+
updateConfig(newConfig: Partial<SyncManagerConfig>): void;
|
|
53
|
+
/**
|
|
54
|
+
* Get sync status
|
|
55
|
+
*/
|
|
56
|
+
getStatus(): {
|
|
57
|
+
enabled: boolean;
|
|
58
|
+
syncInProgress: boolean;
|
|
59
|
+
lastSyncTime: number;
|
|
60
|
+
nextSyncTime: number | null;
|
|
61
|
+
config: SyncManagerConfig;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Stop all sync activities
|
|
65
|
+
*/
|
|
66
|
+
stop(): void;
|
|
67
|
+
/**
|
|
68
|
+
* Force an immediate sync
|
|
69
|
+
*/
|
|
70
|
+
forceSync(): Promise<SyncResult>;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Default sync manager configuration
|
|
74
|
+
*/
|
|
75
|
+
export declare const DEFAULT_SYNC_MANAGER_CONFIG: SyncManagerConfig;
|
|
76
|
+
//# sourceMappingURL=sync-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-manager.d.ts","sourceRoot":"","sources":["../../../../src/integrations/linear/sync-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAoB,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,OAAO,CAAC,gBAAgB,CAAC,CAAiB;IAC1C,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,SAAS,CAAmB;gBAGlC,SAAS,EAAE,gBAAgB,EAC3B,WAAW,EAAE,iBAAiB,EAC9B,MAAM,EAAE,iBAAiB,EACzB,WAAW,CAAC,EAAE,MAAM;IAwBtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAqBzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAc7B;;OAEG;IACG,WAAW,CACf,OAAO,EACH,QAAQ,GACR,UAAU,GACV,aAAa,GACb,eAAe,GACf,aAAa,GAChB,OAAO,CAAC,UAAU,CAAC;IA8EtB;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAO/C;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAO7C;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAazD;;OAEG;IACH,SAAS,IAAI;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,cAAc,EAAE,OAAO,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,MAAM,EAAE,iBAAiB,CAAC;KAC3B;IAeD;;OAEG;IACH,IAAI,IAAI,IAAI;IAeZ;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC;CAGvC;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,iBAUzC,CAAC"}
|