@winspan/claude-forge 2.7.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/README.md +2 -2
  2. package/dist/autopilot/intent-engine.js +5 -5
  3. package/dist/autopilot/intent-engine.js.map +1 -1
  4. package/dist/autopilot/issue-tracker.d.ts +1 -1
  5. package/dist/autopilot/issue-tracker.d.ts.map +1 -1
  6. package/dist/autopilot/issue-tracker.js +2 -2
  7. package/dist/autopilot/issue-tracker.js.map +1 -1
  8. package/dist/autopilot/phase-gap-detector.d.ts +2 -1
  9. package/dist/autopilot/phase-gap-detector.d.ts.map +1 -1
  10. package/dist/autopilot/phase-gap-detector.js +1 -1
  11. package/dist/autopilot/phase-gap-detector.js.map +1 -1
  12. package/dist/autopilot/quality-gate.d.ts +1 -1
  13. package/dist/autopilot/quality-gate.d.ts.map +1 -1
  14. package/dist/autopilot/quality-gate.js +4 -4
  15. package/dist/autopilot/quality-gate.js.map +1 -1
  16. package/dist/autopilot/task-completion-detector.d.ts +1 -1
  17. package/dist/autopilot/task-completion-detector.d.ts.map +1 -1
  18. package/dist/core/cache-registry.d.ts +53 -0
  19. package/dist/core/cache-registry.d.ts.map +1 -0
  20. package/dist/core/cache-registry.js +93 -0
  21. package/dist/core/cache-registry.js.map +1 -0
  22. package/dist/core/pending-prompt-sink.d.ts +14 -0
  23. package/dist/core/pending-prompt-sink.d.ts.map +1 -0
  24. package/dist/core/pending-prompt-sink.js +7 -0
  25. package/dist/core/pending-prompt-sink.js.map +1 -0
  26. package/dist/core/types.d.ts +24 -0
  27. package/dist/core/types.d.ts.map +1 -0
  28. package/dist/core/types.js +24 -0
  29. package/dist/core/types.js.map +1 -0
  30. package/dist/daemon/engine-registry/init-pipeline.d.ts.map +1 -1
  31. package/dist/daemon/engine-registry/init-pipeline.js +3 -1
  32. package/dist/daemon/engine-registry/init-pipeline.js.map +1 -1
  33. package/dist/daemon/engine-registry.js +2 -2
  34. package/dist/daemon/engine-registry.js.map +1 -1
  35. package/dist/daemon/handlers/post-tool-use-handler.js +2 -2
  36. package/dist/daemon/handlers/post-tool-use-handler.js.map +1 -1
  37. package/dist/daemon/handlers/stop-handler.js +2 -2
  38. package/dist/daemon/handlers/stop-handler.js.map +1 -1
  39. package/dist/daemon/handlers/user-prompt-handler.js +6 -6
  40. package/dist/daemon/handlers/user-prompt-handler.js.map +1 -1
  41. package/dist/distill/trigger.js +2 -2
  42. package/dist/distill/trigger.js.map +1 -1
  43. package/dist/pipeline/dynamic-node-executor.d.ts +3 -4
  44. package/dist/pipeline/dynamic-node-executor.d.ts.map +1 -1
  45. package/dist/pipeline/dynamic-node-executor.js +16 -17
  46. package/dist/pipeline/dynamic-node-executor.js.map +1 -1
  47. package/dist/pipeline/event-sourced-engine.d.ts.map +1 -1
  48. package/dist/pipeline/event-sourced-engine.js +6 -5
  49. package/dist/pipeline/event-sourced-engine.js.map +1 -1
  50. package/dist/pipeline/index.d.ts +5 -12
  51. package/dist/pipeline/index.d.ts.map +1 -1
  52. package/dist/pipeline/index.js +38 -135
  53. package/dist/pipeline/index.js.map +1 -1
  54. package/dist/pipeline/phase-manager.js +10 -10
  55. package/dist/pipeline/phase-manager.js.map +1 -1
  56. package/dist/pipeline/report-generator.d.ts +3 -3
  57. package/dist/pipeline/report-generator.d.ts.map +1 -1
  58. package/dist/pipeline/report-generator.js +4 -4
  59. package/dist/pipeline/report-generator.js.map +1 -1
  60. package/dist/pipeline/step-gate-keeper.d.ts +1 -1
  61. package/dist/pipeline/step-gate-keeper.d.ts.map +1 -1
  62. package/dist/pipeline/step-gate-keeper.js +2 -3
  63. package/dist/pipeline/step-gate-keeper.js.map +1 -1
  64. package/dist/pipeline/step-orchestrator.d.ts +6 -1
  65. package/dist/pipeline/step-orchestrator.d.ts.map +1 -1
  66. package/dist/pipeline/step-orchestrator.js +13 -5
  67. package/dist/pipeline/step-orchestrator.js.map +1 -1
  68. package/dist/pipeline/types.d.ts +4 -4
  69. package/dist/pipeline/types.d.ts.map +1 -1
  70. package/dist/pipeline/types.js +1 -17
  71. package/dist/pipeline/types.js.map +1 -1
  72. package/dist/storage/repositories/maintenance-repository.d.ts +1 -0
  73. package/dist/storage/repositories/maintenance-repository.d.ts.map +1 -1
  74. package/dist/storage/repositories/maintenance-repository.js +76 -130
  75. package/dist/storage/repositories/maintenance-repository.js.map +1 -1
  76. package/dist/storage/schema/migration-manager.d.ts +15 -0
  77. package/dist/storage/schema/migration-manager.d.ts.map +1 -0
  78. package/dist/storage/schema/migration-manager.js +868 -0
  79. package/dist/storage/schema/migration-manager.js.map +1 -0
  80. package/dist/storage/sqlite.d.ts +0 -5
  81. package/dist/storage/sqlite.d.ts.map +1 -1
  82. package/dist/storage/sqlite.js +6 -837
  83. package/dist/storage/sqlite.js.map +1 -1
  84. package/dist/utils/formatter.d.ts.map +1 -1
  85. package/dist/utils/formatter.js +3 -7
  86. package/dist/utils/formatter.js.map +1 -1
  87. package/dist/web-static/assets/{index-C9F94O8p.js → index-BcPVkZqZ.js} +1 -1
  88. package/dist/web-static/index.html +1 -1
  89. package/package.json +1 -1
@@ -98,142 +98,88 @@ export class MaintenanceRepository extends BaseRepository {
98
98
  }
99
99
  /**
100
100
  * 归档15天前的数据到历史库
101
+ * 使用 ATTACH DATABASE 实现跨库原子事务
101
102
  */
102
103
  archiveOldData(retentionDays = 15) {
103
104
  const cutoff = new Date(Date.now() - retentionDays * 86400000).toISOString();
104
- const histDb = this.getHistoryDb();
105
- let archivedEvents = 0;
106
- let archivedSessions = 0;
107
- let archivedPipelines = 0;
108
- let archivedQuality = 0;
109
- let archivedToolCalls = 0;
110
- let archivedTraces = 0;
111
- let archivedApiUsage = 0;
112
- try {
113
- // 归档 events
114
- const oldEvents = this.db.prepare(`SELECT * FROM events WHERE timestamp < ?`).all(cutoff);
115
- if (oldEvents.length > 0) {
116
- const insertEvent = histDb.prepare(`
117
- INSERT OR IGNORE INTO events VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
118
- `);
119
- histDb.transaction(() => {
120
- for (const row of oldEvents) {
121
- const r = row;
122
- insertEvent.run(r.event_id, r.session_id, r.project_path, r.timestamp, r.hook_type, r.tool_name, r.tool_input, r.tool_output, r.user_prompt, r.ai_response, r.distilled, r.created_at);
123
- }
124
- })();
125
- archivedEvents = this.db.prepare(`DELETE FROM events WHERE timestamp < ?`).run(cutoff).changes;
126
- }
127
- // 归档 tracker_tool_calls
128
- const oldToolCalls = this.db.prepare(`SELECT * FROM tracker_tool_calls WHERE timestamp < ?`).all(cutoff);
129
- if (oldToolCalls.length > 0) {
130
- const insertToolCall = histDb.prepare(`
131
- INSERT OR IGNORE INTO tracker_tool_calls VALUES (?, ?, ?, ?, ?, ?)
132
- `);
133
- histDb.transaction(() => {
134
- for (const row of oldToolCalls) {
135
- const r = row;
136
- insertToolCall.run(r.id, r.session_id, r.tool_name, r.file_path, r.timestamp, r.created_at);
137
- }
138
- })();
139
- archivedToolCalls = this.db.prepare(`DELETE FROM tracker_tool_calls WHERE timestamp < ?`).run(cutoff).changes;
140
- }
141
- // 归档 latency_traces
142
- const oldTraces = this.db.prepare(`SELECT * FROM latency_traces WHERE timestamp < ?`).all(cutoff);
143
- if (oldTraces.length > 0) {
144
- const insertTrace = histDb.prepare(`
145
- INSERT OR IGNORE INTO latency_traces VALUES (?, ?, ?, ?, ?, ?, ?, ?)
146
- `);
147
- histDb.transaction(() => {
148
- for (const row of oldTraces) {
149
- const r = row;
150
- insertTrace.run(r.id, r.session_id, r.project_path, r.trace_type, r.engine_name, r.duration_ms, r.metadata, r.timestamp);
151
- }
152
- })();
153
- archivedTraces = this.db.prepare(`DELETE FROM latency_traces WHERE timestamp < ?`).run(cutoff).changes;
154
- }
155
- // 归档 api_usage
156
- const oldApiUsage = this.db.prepare(`SELECT * FROM api_usage WHERE timestamp < ?`).all(cutoff);
157
- if (oldApiUsage.length > 0) {
158
- const insertApiUsage = histDb.prepare(`
159
- INSERT OR IGNORE INTO api_usage VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
160
- `);
161
- histDb.transaction(() => {
162
- for (const row of oldApiUsage) {
163
- const r = row;
164
- insertApiUsage.run(r.id, r.session_id, r.label, r.model, r.tokens_in, r.tokens_out, r.cost_usd, r.latency_ms, r.timestamp, r.engine_name);
165
- }
166
- })();
167
- archivedApiUsage = this.db.prepare(`DELETE FROM api_usage WHERE timestamp < ?`).run(cutoff).changes;
168
- }
169
- // 归档 quality_gate_history
170
- const oldQuality = this.db.prepare(`SELECT * FROM quality_gate_history WHERE created_at < ?`).all(cutoff);
171
- if (oldQuality.length > 0) {
172
- const insertQuality = histDb.prepare(`
173
- INSERT OR IGNORE INTO quality_gate_history VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
174
- `);
175
- histDb.transaction(() => {
176
- for (const row of oldQuality) {
177
- const r = row;
178
- insertQuality.run(r.id, r.session_id, r.project_path, r.file_path, r.category, r.level, r.message, r.resolved, r.resolved_at, r.created_at);
179
- }
180
- })();
181
- archivedQuality = this.db.prepare(`DELETE FROM quality_gate_history WHERE created_at < ?`).run(cutoff).changes;
182
- }
183
- // 归档 sessions(只归档已完成的)
184
- const oldSessions = this.db.prepare(`
185
- SELECT * FROM sessions
105
+ // 使用单个事务完成跨库操作,确保原子性
106
+ const result = this.db.transaction(() => {
107
+ // 1. 附加历史库
108
+ this.db.exec(`ATTACH DATABASE '${this.historyDbPath}' AS history`);
109
+ // 2. 归档 events(跨库复制 + 删除,原子操作)
110
+ this.db.exec(`
111
+ INSERT OR IGNORE INTO history.events
112
+ SELECT * FROM main.events WHERE timestamp < '${cutoff}'
113
+ `);
114
+ const archivedEvents = this.db.prepare(`
115
+ DELETE FROM main.events WHERE timestamp < ?
116
+ `).run(cutoff).changes;
117
+ // 3. 归档 tracker_tool_calls
118
+ this.db.exec(`
119
+ INSERT OR IGNORE INTO history.tracker_tool_calls
120
+ SELECT * FROM main.tracker_tool_calls WHERE timestamp < '${cutoff}'
121
+ `);
122
+ const archivedToolCalls = this.db.prepare(`
123
+ DELETE FROM main.tracker_tool_calls WHERE timestamp < ?
124
+ `).run(cutoff).changes;
125
+ // 4. 归档 latency_traces
126
+ this.db.exec(`
127
+ INSERT OR IGNORE INTO history.latency_traces
128
+ SELECT * FROM main.latency_traces WHERE timestamp < '${cutoff}'
129
+ `);
130
+ const archivedTraces = this.db.prepare(`
131
+ DELETE FROM main.latency_traces WHERE timestamp < ?
132
+ `).run(cutoff).changes;
133
+ // 5. 归档 api_usage
134
+ this.db.exec(`
135
+ INSERT OR IGNORE INTO history.api_usage
136
+ SELECT * FROM main.api_usage WHERE timestamp < '${cutoff}'
137
+ `);
138
+ const archivedApiUsage = this.db.prepare(`
139
+ DELETE FROM main.api_usage WHERE timestamp < ?
140
+ `).run(cutoff).changes;
141
+ // 6. 归档 quality_gate_history
142
+ this.db.exec(`
143
+ INSERT OR IGNORE INTO history.quality_gate_history
144
+ SELECT * FROM main.quality_gate_history WHERE created_at < '${cutoff}'
145
+ `);
146
+ const archivedQuality = this.db.prepare(`
147
+ DELETE FROM main.quality_gate_history WHERE created_at < ?
148
+ `).run(cutoff).changes;
149
+ // 7. 归档 sessions(只归档已完成的)
150
+ this.db.exec(`
151
+ INSERT OR IGNORE INTO history.sessions
152
+ SELECT * FROM main.sessions
153
+ WHERE status IN ('completed', 'abandoned') AND updated_at < '${cutoff}'
154
+ `);
155
+ const archivedSessions = this.db.prepare(`
156
+ DELETE FROM main.sessions
186
157
  WHERE status IN ('completed', 'abandoned') AND updated_at < ?
187
- `).all(cutoff);
188
- if (oldSessions.length > 0) {
189
- const insertSession = histDb.prepare(`
190
- INSERT OR IGNORE INTO sessions VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
191
- `);
192
- histDb.transaction(() => {
193
- for (const row of oldSessions) {
194
- const r = row;
195
- insertSession.run(r.session_id, r.project_path, r.status, r.start_time, r.end_time, r.last_event_time, r.event_count, r.created_at, r.updated_at);
196
- }
197
- })();
198
- archivedSessions = this.db.prepare(`
199
- DELETE FROM sessions
200
- WHERE status IN ('completed', 'abandoned') AND updated_at < ?
201
- `).run(cutoff).changes;
202
- }
203
- // 归档 dynamic_pipelines(只归档已完成的)
204
- const oldPipelines = this.db.prepare(`
205
- SELECT * FROM dynamic_pipelines
158
+ `).run(cutoff).changes;
159
+ // 8. 归档 dynamic_pipelines(只归档已完成的)
160
+ this.db.exec(`
161
+ INSERT OR IGNORE INTO history.dynamic_pipelines
162
+ SELECT * FROM main.dynamic_pipelines
163
+ WHERE status = 'completed' AND updated_at < '${cutoff}'
164
+ `);
165
+ const archivedPipelines = this.db.prepare(`
166
+ DELETE FROM main.dynamic_pipelines
206
167
  WHERE status = 'completed' AND updated_at < ?
207
- `).all(cutoff);
208
- if (oldPipelines.length > 0) {
209
- const insertPipeline = histDb.prepare(`
210
- INSERT OR IGNORE INTO dynamic_pipelines VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
211
- `);
212
- histDb.transaction(() => {
213
- for (const row of oldPipelines) {
214
- const r = row;
215
- insertPipeline.run(r.id, r.requirement, r.project_path, r.session_id, r.template_id, r.convention_id, r.complexity, r.reasoning, r.status, r.created_at, r.updated_at);
216
- }
217
- })();
218
- archivedPipelines = this.db.prepare(`
219
- DELETE FROM dynamic_pipelines
220
- WHERE status = 'completed' AND updated_at < ?
221
- `).run(cutoff).changes;
222
- }
168
+ `).run(cutoff).changes;
169
+ // 9. 分离历史库
170
+ this.db.exec('DETACH DATABASE history');
223
171
  logger.info(`[归档] 完成:events ${archivedEvents}, sessions ${archivedSessions}, pipelines ${archivedPipelines}, quality ${archivedQuality}, tool_calls ${archivedToolCalls}, traces ${archivedTraces}, api_usage ${archivedApiUsage}`);
224
- }
225
- catch (err) {
226
- logger.error(`[归档] 失败: ${err}`);
227
- }
228
- return {
229
- archivedEvents,
230
- archivedSessions,
231
- archivedPipelines,
232
- archivedQuality,
233
- archivedToolCalls,
234
- archivedTraces,
235
- archivedApiUsage,
236
- };
172
+ return {
173
+ archivedEvents,
174
+ archivedSessions,
175
+ archivedPipelines,
176
+ archivedQuality,
177
+ archivedToolCalls,
178
+ archivedTraces,
179
+ archivedApiUsage,
180
+ };
181
+ })();
182
+ return result;
237
183
  }
238
184
  runMaintenance(maxSizeMb = 1024) {
239
185
  // 先归档15天前的数据
@@ -1 +1 @@
1
- {"version":3,"file":"maintenance-repository.js","sourceRoot":"","sources":["../../../src/storage/repositories/maintenance-repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"maintenance-repository.js","sourceRoot":"","sources":["../../../src/storage/repositories/maintenance-repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * MigrationManager - 数据库迁移管理器
3
+ *
4
+ * 从 sqlite.ts 提取,负责管理 schema 版本迁移。
5
+ * 包含所有增量迁移函数和迁移执行逻辑。
6
+ */
7
+ import type Database from 'better-sqlite3';
8
+ export declare const SCHEMA_VERSION = 24;
9
+ /** 增量迁移函数表:key 为目标版本号,value 为迁移函数 */
10
+ export declare const MIGRATIONS: Record<number, (db: Database.Database) => void>;
11
+ /**
12
+ * 执行数据库迁移
13
+ */
14
+ export declare function runMigrations(db: Database.Database): void;
15
+ //# sourceMappingURL=migration-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration-manager.d.ts","sourceRoot":"","sources":["../../../src/storage/schema/migration-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C,eAAO,MAAM,cAAc,KAAK,CAAC;AAEjC,qCAAqC;AACrC,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,KAAK,IAAI,CA4wBtE,CAAC;AAEF;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAgCzD"}