@winspan/claude-forge 2.7.2 → 3.0.1

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 +9 -0
  73. package/dist/storage/repositories/maintenance-repository.d.ts.map +1 -1
  74. package/dist/storage/repositories/maintenance-repository.js +63 -110
  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-_pTdFFt3.js} +1 -1
  88. package/dist/web-static/index.html +1 -1
  89. package/package.json +1 -1
@@ -98,10 +98,13 @@ export class MaintenanceRepository extends BaseRepository {
98
98
  }
99
99
  /**
100
100
  * 归档15天前的数据到历史库
101
+ * 使用独立数据库连接 + 分步操作,失败时不删除主库数据
101
102
  */
102
103
  archiveOldData(retentionDays = 15) {
103
104
  const cutoff = new Date(Date.now() - retentionDays * 86400000).toISOString();
104
105
  const histDb = this.getHistoryDb();
106
+ // 同步历史库表结构
107
+ this.syncHistorySchemaDirectly(histDb);
105
108
  let archivedEvents = 0;
106
109
  let archivedSessions = 0;
107
110
  let archivedPipelines = 0;
@@ -110,116 +113,14 @@ export class MaintenanceRepository extends BaseRepository {
110
113
  let archivedTraces = 0;
111
114
  let archivedApiUsage = 0;
112
115
  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
186
- 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
206
- 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
- }
116
+ // 归档策略:先写入历史库,成功后再从主库删除
117
+ archivedEvents = this.archiveTable(histDb, 'events', 'timestamp', cutoff);
118
+ archivedToolCalls = this.archiveTable(histDb, 'tracker_tool_calls', 'timestamp', cutoff);
119
+ archivedTraces = this.archiveTable(histDb, 'latency_traces', 'timestamp', cutoff);
120
+ archivedApiUsage = this.archiveTable(histDb, 'api_usage', 'timestamp', cutoff);
121
+ archivedQuality = this.archiveTable(histDb, 'quality_gate_history', 'created_at', cutoff);
122
+ archivedSessions = this.archiveTable(histDb, 'sessions', 'updated_at', cutoff, `status IN ('completed', 'abandoned') AND`);
123
+ archivedPipelines = this.archiveTable(histDb, 'dynamic_pipelines', 'updated_at', cutoff, `status = 'completed' AND`);
223
124
  logger.info(`[归档] 完成:events ${archivedEvents}, sessions ${archivedSessions}, pipelines ${archivedPipelines}, quality ${archivedQuality}, tool_calls ${archivedToolCalls}, traces ${archivedTraces}, api_usage ${archivedApiUsage}`);
224
125
  }
225
126
  catch (err) {
@@ -235,6 +136,58 @@ export class MaintenanceRepository extends BaseRepository {
235
136
  archivedApiUsage,
236
137
  };
237
138
  }
139
+ /**
140
+ * 归档单个表的数据:先写入历史库,成功后删除主库数据
141
+ */
142
+ archiveTable(histDb, table, timeColumn, cutoff, extraWhere = '') {
143
+ const whereClause = extraWhere
144
+ ? `WHERE ${extraWhere} ${timeColumn} < ?`
145
+ : `WHERE ${timeColumn} < ?`;
146
+ const rows = this.db.prepare(`SELECT * FROM ${table} ${whereClause}`).all(cutoff);
147
+ if (rows.length === 0)
148
+ return 0;
149
+ // 获取列名(动态适配,避免硬编码列数)
150
+ const cols = this.db.prepare(`PRAGMA table_info(${table})`).all();
151
+ const colNames = cols.map(c => c.name);
152
+ const placeholders = colNames.map(() => '?').join(', ');
153
+ const insertStmt = histDb.prepare(`INSERT OR IGNORE INTO ${table} (${colNames.join(', ')}) VALUES (${placeholders})`);
154
+ // 批量写入历史库
155
+ histDb.transaction(() => {
156
+ for (const row of rows) {
157
+ const r = row;
158
+ insertStmt.run(...colNames.map(c => r[c]));
159
+ }
160
+ })();
161
+ // 写入成功后,删除主库数据
162
+ const deleted = this.db.prepare(`DELETE FROM ${table} ${whereClause}`).run(cutoff).changes;
163
+ return deleted;
164
+ }
165
+ /**
166
+ * 同步历史库表结构(使用独立连接)
167
+ */
168
+ syncHistorySchemaDirectly(histDb) {
169
+ const tablesToSync = ['events', 'tracker_tool_calls', 'latency_traces', 'api_usage',
170
+ 'quality_gate_history', 'sessions', 'dynamic_pipelines'];
171
+ for (const table of tablesToSync) {
172
+ try {
173
+ const mainCols = this.db.prepare(`PRAGMA table_info(${table})`).all();
174
+ const histCols = histDb.prepare(`PRAGMA table_info(${table})`).all();
175
+ if (histCols.length === 0)
176
+ continue;
177
+ const histColNames = new Set(histCols.map(c => c.name));
178
+ for (const col of mainCols) {
179
+ if (!histColNames.has(col.name)) {
180
+ try {
181
+ histDb.exec(`ALTER TABLE ${table} ADD COLUMN ${col.name} ${col.type}`);
182
+ logger.info(`[归档] 同步历史库表结构:${table}.${col.name} (${col.type})`);
183
+ }
184
+ catch { /* 列可能已存在 */ }
185
+ }
186
+ }
187
+ }
188
+ catch { /* 表可能不存在 */ }
189
+ }
190
+ }
238
191
  runMaintenance(maxSizeMb = 1024) {
239
192
  // 先归档15天前的数据
240
193
  const archived = this.archiveOldData(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"}