@winspan/claude-forge 0.4.2 → 0.4.5
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 +1 -1
- package/dist/autopilot/intent-engine.d.ts +2 -2
- package/dist/autopilot/intent-engine.d.ts.map +1 -1
- package/dist/autopilot/intent-engine.js +16 -4
- package/dist/autopilot/intent-engine.js.map +1 -1
- package/dist/autopilot/quality-gate.d.ts +17 -1
- package/dist/autopilot/quality-gate.d.ts.map +1 -1
- package/dist/autopilot/quality-gate.js +89 -5
- package/dist/autopilot/quality-gate.js.map +1 -1
- package/dist/daemon/engine-registry/init-autopilot.d.ts +2 -1
- package/dist/daemon/engine-registry/init-autopilot.d.ts.map +1 -1
- package/dist/daemon/engine-registry/init-autopilot.js +3 -2
- package/dist/daemon/engine-registry/init-autopilot.js.map +1 -1
- package/dist/daemon/engine-registry.js +1 -1
- package/dist/daemon/engine-registry.js.map +1 -1
- package/dist/daemon/handlers/post-tool-use-handler.d.ts.map +1 -1
- package/dist/daemon/handlers/post-tool-use-handler.js +2 -0
- package/dist/daemon/handlers/post-tool-use-handler.js.map +1 -1
- package/dist/daemon/handlers/pre-tool-use-handler.d.ts.map +1 -1
- package/dist/daemon/handlers/pre-tool-use-handler.js +9 -0
- package/dist/daemon/handlers/pre-tool-use-handler.js.map +1 -1
- package/dist/daemon/handlers/session-cleanup.d.ts.map +1 -1
- package/dist/daemon/handlers/session-cleanup.js +4 -5
- package/dist/daemon/handlers/session-cleanup.js.map +1 -1
- package/dist/daemon/handlers/user-prompt-handler.d.ts.map +1 -1
- package/dist/daemon/handlers/user-prompt-handler.js +20 -4
- package/dist/daemon/handlers/user-prompt-handler.js.map +1 -1
- package/dist/daemon/lifecycle.d.ts +7 -0
- package/dist/daemon/lifecycle.d.ts.map +1 -1
- package/dist/daemon/lifecycle.js +15 -0
- package/dist/daemon/lifecycle.js.map +1 -1
- package/dist/pattern-engine/execution-tracker.d.ts +1 -1
- package/dist/pattern-engine/execution-tracker.d.ts.map +1 -1
- package/dist/pattern-engine/execution-tracker.js +5 -1
- package/dist/pattern-engine/execution-tracker.js.map +1 -1
- package/dist/pattern-engine/index.d.ts.map +1 -1
- package/dist/pattern-engine/index.js +1 -0
- package/dist/pattern-engine/index.js.map +1 -1
- package/dist/pattern-engine/pattern-evolver.d.ts.map +1 -1
- package/dist/pattern-engine/pattern-evolver.js +31 -12
- package/dist/pattern-engine/pattern-evolver.js.map +1 -1
- package/dist/pattern-engine/types.d.ts +2 -0
- package/dist/pattern-engine/types.d.ts.map +1 -1
- package/dist/pipeline/analyzer.d.ts +19 -4
- package/dist/pipeline/analyzer.d.ts.map +1 -1
- package/dist/pipeline/analyzer.js +172 -59
- package/dist/pipeline/analyzer.js.map +1 -1
- package/dist/pipeline/artifact-generator.d.ts +6 -9
- package/dist/pipeline/artifact-generator.d.ts.map +1 -1
- package/dist/pipeline/artifact-generator.js +68 -29
- package/dist/pipeline/artifact-generator.js.map +1 -1
- package/dist/pipeline/index.d.ts +0 -19
- package/dist/pipeline/index.d.ts.map +1 -1
- package/dist/pipeline/index.js +7 -30
- package/dist/pipeline/index.js.map +1 -1
- package/dist/pipeline/phase-manager.d.ts +1 -1
- package/dist/pipeline/phase-manager.d.ts.map +1 -1
- package/dist/pipeline/phase-manager.js +23 -13
- package/dist/pipeline/phase-manager.js.map +1 -1
- package/dist/pipeline/store.d.ts +1 -1
- package/dist/pipeline/store.d.ts.map +1 -1
- package/dist/pipeline/store.js +15 -5
- package/dist/pipeline/store.js.map +1 -1
- package/dist/pipeline/types.d.ts +7 -2
- package/dist/pipeline/types.d.ts.map +1 -1
- package/dist/pipeline/types.js +6 -4
- package/dist/pipeline/types.js.map +1 -1
- package/dist/retrospective/index.d.ts.map +1 -1
- package/dist/retrospective/index.js +23 -13
- package/dist/retrospective/index.js.map +1 -1
- package/dist/retrospective/report-writer.d.ts +6 -7
- package/dist/retrospective/report-writer.d.ts.map +1 -1
- package/dist/retrospective/report-writer.js +47 -103
- package/dist/retrospective/report-writer.js.map +1 -1
- package/dist/storage/index.d.ts +37 -0
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/sqlite.d.ts +61 -0
- package/dist/storage/sqlite.d.ts.map +1 -1
- package/dist/storage/sqlite.js +251 -1
- package/dist/storage/sqlite.js.map +1 -1
- package/dist/strategy/bandit.d.ts +12 -0
- package/dist/strategy/bandit.d.ts.map +1 -1
- package/dist/strategy/bandit.js +38 -2
- package/dist/strategy/bandit.js.map +1 -1
- package/dist/utils/artifact-manager.d.ts +57 -0
- package/dist/utils/artifact-manager.d.ts.map +1 -0
- package/dist/utils/artifact-manager.js +164 -0
- package/dist/utils/artifact-manager.js.map +1 -0
- package/package.json +1 -1
package/dist/storage/sqlite.js
CHANGED
|
@@ -30,7 +30,7 @@ export class SQLiteStorage {
|
|
|
30
30
|
this.runMigrations();
|
|
31
31
|
}
|
|
32
32
|
/** 当前 schema 版本号,每次新增迁移时递增 */
|
|
33
|
-
static SCHEMA_VERSION =
|
|
33
|
+
static SCHEMA_VERSION = 7;
|
|
34
34
|
/** 增量迁移函数表:key 为目标版本号,value 为迁移函数 */
|
|
35
35
|
static MIGRATIONS = {
|
|
36
36
|
// v1: 基线版本(initSchema 已创建所有表),无需额外操作
|
|
@@ -144,6 +144,94 @@ export class SQLiteStorage {
|
|
|
144
144
|
}
|
|
145
145
|
catch { /* 列已存在 */ }
|
|
146
146
|
},
|
|
147
|
+
// v5: 学习系统修复 — pattern_executions 关联 task_session,质量门禁持久化,Pattern 进化追踪
|
|
148
|
+
5: (db) => {
|
|
149
|
+
// 学习闭环:pattern_executions 关联 task_session
|
|
150
|
+
try {
|
|
151
|
+
db.exec(`ALTER TABLE pattern_executions ADD COLUMN task_session_id TEXT DEFAULT NULL`);
|
|
152
|
+
}
|
|
153
|
+
catch { /* 列已存在 */ }
|
|
154
|
+
try {
|
|
155
|
+
db.exec(`ALTER TABLE pattern_executions ADD COLUMN outcome TEXT DEFAULT NULL`);
|
|
156
|
+
}
|
|
157
|
+
catch { /* 列已存在 */ }
|
|
158
|
+
db.exec(`CREATE INDEX IF NOT EXISTS idx_pe_task_session ON pattern_executions(task_session_id)`);
|
|
159
|
+
db.exec(`CREATE INDEX IF NOT EXISTS idx_pe_outcome ON pattern_executions(outcome)`);
|
|
160
|
+
// 质量门禁持久化
|
|
161
|
+
db.exec(`
|
|
162
|
+
CREATE TABLE IF NOT EXISTS quality_gate_suppressions (
|
|
163
|
+
id TEXT PRIMARY KEY,
|
|
164
|
+
category TEXT NOT NULL,
|
|
165
|
+
project_path TEXT NOT NULL,
|
|
166
|
+
suppression_count INTEGER NOT NULL DEFAULT 1,
|
|
167
|
+
first_suppressed_at TEXT NOT NULL,
|
|
168
|
+
last_suppressed_at TEXT NOT NULL,
|
|
169
|
+
expires_at TEXT DEFAULT NULL,
|
|
170
|
+
created_at TEXT DEFAULT (datetime('now'))
|
|
171
|
+
);
|
|
172
|
+
CREATE INDEX IF NOT EXISTS idx_qgs_category ON quality_gate_suppressions(category, project_path);
|
|
173
|
+
CREATE INDEX IF NOT EXISTS idx_qgs_expires ON quality_gate_suppressions(expires_at);
|
|
174
|
+
|
|
175
|
+
CREATE TABLE IF NOT EXISTS quality_gate_history (
|
|
176
|
+
id TEXT PRIMARY KEY,
|
|
177
|
+
session_id TEXT NOT NULL,
|
|
178
|
+
project_path TEXT NOT NULL,
|
|
179
|
+
file_path TEXT NOT NULL,
|
|
180
|
+
category TEXT NOT NULL,
|
|
181
|
+
level TEXT NOT NULL,
|
|
182
|
+
message TEXT NOT NULL,
|
|
183
|
+
resolved INTEGER DEFAULT 0,
|
|
184
|
+
resolved_at TEXT DEFAULT NULL,
|
|
185
|
+
created_at TEXT DEFAULT (datetime('now'))
|
|
186
|
+
);
|
|
187
|
+
CREATE INDEX IF NOT EXISTS idx_qgh_session ON quality_gate_history(session_id, project_path);
|
|
188
|
+
CREATE INDEX IF NOT EXISTS idx_qgh_file ON quality_gate_history(file_path, resolved);
|
|
189
|
+
`);
|
|
190
|
+
// Pattern 进化追踪
|
|
191
|
+
db.exec(`
|
|
192
|
+
CREATE TABLE IF NOT EXISTS pattern_evolution_history (
|
|
193
|
+
id TEXT PRIMARY KEY,
|
|
194
|
+
pattern_id TEXT NOT NULL,
|
|
195
|
+
old_version TEXT NOT NULL,
|
|
196
|
+
new_version TEXT NOT NULL,
|
|
197
|
+
old_yaml TEXT NOT NULL,
|
|
198
|
+
new_yaml TEXT NOT NULL,
|
|
199
|
+
validation_status TEXT DEFAULT 'pending',
|
|
200
|
+
test_success_rate REAL DEFAULT NULL,
|
|
201
|
+
evolved_at TEXT NOT NULL,
|
|
202
|
+
validated_at TEXT DEFAULT NULL,
|
|
203
|
+
created_at TEXT DEFAULT (datetime('now'))
|
|
204
|
+
);
|
|
205
|
+
CREATE INDEX IF NOT EXISTS idx_peh_pattern ON pattern_evolution_history(pattern_id);
|
|
206
|
+
CREATE INDEX IF NOT EXISTS idx_peh_status ON pattern_evolution_history(validation_status);
|
|
207
|
+
`);
|
|
208
|
+
},
|
|
209
|
+
// v6: Pipeline 任务类型区分 — 新增 task_type 字段
|
|
210
|
+
6: (db) => {
|
|
211
|
+
try {
|
|
212
|
+
db.exec(`ALTER TABLE pipelines ADD COLUMN task_type TEXT DEFAULT 'feature'`);
|
|
213
|
+
}
|
|
214
|
+
catch { /* 列已存在 */ }
|
|
215
|
+
},
|
|
216
|
+
// v7: Pipeline 智能编排 — 新增 complexity, planned_phases, phase_artifacts, reasoning 字段
|
|
217
|
+
7: (db) => {
|
|
218
|
+
try {
|
|
219
|
+
db.exec(`ALTER TABLE pipelines ADD COLUMN complexity TEXT DEFAULT 'moderate'`);
|
|
220
|
+
}
|
|
221
|
+
catch { /* 列已存在 */ }
|
|
222
|
+
try {
|
|
223
|
+
db.exec(`ALTER TABLE pipelines ADD COLUMN planned_phases TEXT DEFAULT NULL`);
|
|
224
|
+
}
|
|
225
|
+
catch { /* 列已存在 */ }
|
|
226
|
+
try {
|
|
227
|
+
db.exec(`ALTER TABLE pipelines ADD COLUMN phase_artifacts TEXT DEFAULT NULL`);
|
|
228
|
+
}
|
|
229
|
+
catch { /* 列已存在 */ }
|
|
230
|
+
try {
|
|
231
|
+
db.exec(`ALTER TABLE pipelines ADD COLUMN reasoning TEXT DEFAULT NULL`);
|
|
232
|
+
}
|
|
233
|
+
catch { /* 列已存在 */ }
|
|
234
|
+
},
|
|
147
235
|
};
|
|
148
236
|
runMigrations() {
|
|
149
237
|
// 确保 schema_version 表存在
|
|
@@ -498,6 +586,8 @@ export class SQLiteStorage {
|
|
|
498
586
|
duration_ms: r.duration_ms,
|
|
499
587
|
output: r.output,
|
|
500
588
|
user_satisfaction: r.user_satisfaction,
|
|
589
|
+
task_session_id: r.task_session_id, // v5 新增
|
|
590
|
+
outcome: r.outcome, // v5 新增
|
|
501
591
|
created_at: r.created_at,
|
|
502
592
|
}));
|
|
503
593
|
}
|
|
@@ -745,5 +835,165 @@ export class SQLiteStorage {
|
|
|
745
835
|
event_count: row.event_count,
|
|
746
836
|
};
|
|
747
837
|
}
|
|
838
|
+
// ==================== v5 新增方法:学习闭环 ====================
|
|
839
|
+
/** 更新 pattern_execution 的 outcome 和 task_session_id(批量) */
|
|
840
|
+
updatePatternExecutionOutcome(execId, outcome, taskSessionId) {
|
|
841
|
+
try {
|
|
842
|
+
this.db.prepare(`UPDATE pattern_executions SET outcome = ?, task_session_id = ? WHERE id = ?`).run(outcome, taskSessionId, execId);
|
|
843
|
+
}
|
|
844
|
+
catch (err) {
|
|
845
|
+
logger.warn(`[SQLite] 更新 pattern_execution outcome 失败:${err}`);
|
|
846
|
+
}
|
|
847
|
+
}
|
|
848
|
+
/** 查询指定 session 的所有 pattern_executions */
|
|
849
|
+
queryPatternExecutionsBySession(sessionId, projectPath) {
|
|
850
|
+
try {
|
|
851
|
+
return this.db.prepare(`SELECT id, pattern_id FROM pattern_executions WHERE session_id = ? AND project_path = ?`).all(sessionId, projectPath);
|
|
852
|
+
}
|
|
853
|
+
catch {
|
|
854
|
+
return [];
|
|
855
|
+
}
|
|
856
|
+
}
|
|
857
|
+
/** 基于真实成功率更新 effectiveness_score(使用 EMA) */
|
|
858
|
+
updatePatternEffectivenessScore(patternId, successRate) {
|
|
859
|
+
try {
|
|
860
|
+
const row = this.db.prepare(`SELECT effectiveness_score FROM task_patterns WHERE id = ?`).get(patternId);
|
|
861
|
+
if (!row)
|
|
862
|
+
return;
|
|
863
|
+
// EMA: 新分数 = 旧分数 × 0.7 + 成功率 × 0.3(提高新数据权重)
|
|
864
|
+
const newScore = row.effectiveness_score * 0.7 + successRate * 0.3;
|
|
865
|
+
this.db.prepare(`UPDATE task_patterns SET effectiveness_score = ?, last_used = datetime('now') WHERE id = ?`).run(newScore, patternId);
|
|
866
|
+
}
|
|
867
|
+
catch (err) {
|
|
868
|
+
logger.warn(`[SQLite] 更新 effectiveness_score 失败:${err}`);
|
|
869
|
+
}
|
|
870
|
+
}
|
|
871
|
+
/** 查询所有有 outcome 的 pattern_executions,按 pattern_id 分组统计成功率 */
|
|
872
|
+
getPatternSuccessRates() {
|
|
873
|
+
try {
|
|
874
|
+
return this.db.prepare(`
|
|
875
|
+
SELECT
|
|
876
|
+
pattern_id,
|
|
877
|
+
SUM(CASE WHEN outcome = 'success' THEN 1 ELSE 0 END) * 1.0 / COUNT(*) as success_rate,
|
|
878
|
+
COUNT(*) as total_count
|
|
879
|
+
FROM pattern_executions
|
|
880
|
+
WHERE outcome IS NOT NULL
|
|
881
|
+
GROUP BY pattern_id
|
|
882
|
+
HAVING COUNT(*) >= 5
|
|
883
|
+
`).all();
|
|
884
|
+
}
|
|
885
|
+
catch {
|
|
886
|
+
return [];
|
|
887
|
+
}
|
|
888
|
+
}
|
|
889
|
+
// ==================== v5 新增方法:质量门禁反馈 ====================
|
|
890
|
+
/** 递增抑制计数,3 次后设置过期时间 */
|
|
891
|
+
incrementSuppressionCount(category, projectPath) {
|
|
892
|
+
try {
|
|
893
|
+
const existing = this.db.prepare(`SELECT id, suppression_count FROM quality_gate_suppressions WHERE category = ? AND project_path = ?`).get(category, projectPath);
|
|
894
|
+
if (existing) {
|
|
895
|
+
const newCount = existing.suppression_count + 1;
|
|
896
|
+
const expiresAt = newCount >= 3 ? new Date(Date.now() + 30 * 24 * 60 * 60 * 1000).toISOString() : null;
|
|
897
|
+
this.db.prepare(`UPDATE quality_gate_suppressions SET suppression_count = ?, last_suppressed_at = datetime('now'), expires_at = ? WHERE id = ?`).run(newCount, expiresAt, existing.id);
|
|
898
|
+
}
|
|
899
|
+
else {
|
|
900
|
+
const id = `qgs_${Date.now()}_${Math.random().toString(36).slice(2, 9)}`;
|
|
901
|
+
this.db.prepare(`INSERT INTO quality_gate_suppressions (id, category, project_path, first_suppressed_at, last_suppressed_at)
|
|
902
|
+
VALUES (?, ?, ?, datetime('now'), datetime('now'))`).run(id, category, projectPath);
|
|
903
|
+
}
|
|
904
|
+
}
|
|
905
|
+
catch (err) {
|
|
906
|
+
logger.warn(`[SQLite] 递增抑制计数失败:${err}`);
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
/** 获取未过期的抑制规则 */
|
|
910
|
+
getActiveSuppressions(projectPath) {
|
|
911
|
+
try {
|
|
912
|
+
const rows = this.db.prepare(`SELECT category FROM quality_gate_suppressions
|
|
913
|
+
WHERE project_path = ? AND suppression_count >= 3
|
|
914
|
+
AND (expires_at IS NULL OR expires_at > datetime('now'))`).all(projectPath);
|
|
915
|
+
return rows.map(r => r.category);
|
|
916
|
+
}
|
|
917
|
+
catch {
|
|
918
|
+
return [];
|
|
919
|
+
}
|
|
920
|
+
}
|
|
921
|
+
/** 插入质量门禁历史记录 */
|
|
922
|
+
insertQualityGateHistory(record) {
|
|
923
|
+
try {
|
|
924
|
+
this.db.prepare(`INSERT INTO quality_gate_history (id, session_id, project_path, file_path, category, level, message)
|
|
925
|
+
VALUES (?, ?, ?, ?, ?, ?, ?)`).run(record.id, record.session_id, record.project_path, record.file_path, record.category, record.level, record.message);
|
|
926
|
+
}
|
|
927
|
+
catch (err) {
|
|
928
|
+
logger.warn(`[SQLite] 插入质量门禁历史失败:${err}`);
|
|
929
|
+
}
|
|
930
|
+
}
|
|
931
|
+
/** 标记历史问题为已解决 */
|
|
932
|
+
markQualityIssueResolved(filePath, category) {
|
|
933
|
+
try {
|
|
934
|
+
this.db.prepare(`UPDATE quality_gate_history SET resolved = 1, resolved_at = datetime('now')
|
|
935
|
+
WHERE file_path = ? AND category = ? AND resolved = 0`).run(filePath, category);
|
|
936
|
+
}
|
|
937
|
+
catch (err) {
|
|
938
|
+
logger.warn(`[SQLite] 标记问题已解决失败:${err}`);
|
|
939
|
+
}
|
|
940
|
+
}
|
|
941
|
+
/** 查询文件的未解决问题 */
|
|
942
|
+
getUnresolvedIssues(filePath) {
|
|
943
|
+
try {
|
|
944
|
+
return this.db.prepare(`SELECT category, message FROM quality_gate_history WHERE file_path = ? AND resolved = 0 ORDER BY created_at DESC LIMIT 10`).all(filePath);
|
|
945
|
+
}
|
|
946
|
+
catch {
|
|
947
|
+
return [];
|
|
948
|
+
}
|
|
949
|
+
}
|
|
950
|
+
/** 清理过期的抑制规则 */
|
|
951
|
+
cleanupExpiredSuppressions() {
|
|
952
|
+
try {
|
|
953
|
+
const result = this.db.prepare(`DELETE FROM quality_gate_suppressions WHERE expires_at IS NOT NULL AND expires_at < datetime('now')`).run();
|
|
954
|
+
return result.changes;
|
|
955
|
+
}
|
|
956
|
+
catch {
|
|
957
|
+
return 0;
|
|
958
|
+
}
|
|
959
|
+
}
|
|
960
|
+
// ==================== v5 新增方法:Pattern 进化验证 ====================
|
|
961
|
+
/** 插入 Pattern 进化历史 */
|
|
962
|
+
insertEvolutionHistory(record) {
|
|
963
|
+
try {
|
|
964
|
+
this.db.prepare(`INSERT INTO pattern_evolution_history (id, pattern_id, old_version, new_version, old_yaml, new_yaml, evolved_at)
|
|
965
|
+
VALUES (?, ?, ?, ?, ?, ?, ?)`).run(record.id, record.pattern_id, record.old_version, record.new_version, record.old_yaml, record.new_yaml, record.evolved_at);
|
|
966
|
+
}
|
|
967
|
+
catch (err) {
|
|
968
|
+
logger.warn(`[SQLite] 插入进化历史失败:${err}`);
|
|
969
|
+
}
|
|
970
|
+
}
|
|
971
|
+
/** 更新进化验证状态 */
|
|
972
|
+
updateEvolutionValidation(historyId, status, successRate) {
|
|
973
|
+
try {
|
|
974
|
+
this.db.prepare(`UPDATE pattern_evolution_history SET validation_status = ?, test_success_rate = ?, validated_at = datetime('now') WHERE id = ?`).run(status, successRate, historyId);
|
|
975
|
+
}
|
|
976
|
+
catch (err) {
|
|
977
|
+
logger.warn(`[SQLite] 更新进化验证状态失败:${err}`);
|
|
978
|
+
}
|
|
979
|
+
}
|
|
980
|
+
/** 获取待验证的进化记录 */
|
|
981
|
+
getPendingEvolutions() {
|
|
982
|
+
try {
|
|
983
|
+
return this.db.prepare(`SELECT id, pattern_id, new_version FROM pattern_evolution_history WHERE validation_status = 'pending' ORDER BY evolved_at DESC`).all();
|
|
984
|
+
}
|
|
985
|
+
catch {
|
|
986
|
+
return [];
|
|
987
|
+
}
|
|
988
|
+
}
|
|
989
|
+
/** 获取 Pattern 的最新进化记录 */
|
|
990
|
+
getLatestEvolution(patternId) {
|
|
991
|
+
try {
|
|
992
|
+
return this.db.prepare(`SELECT old_yaml, validation_status FROM pattern_evolution_history WHERE pattern_id = ? ORDER BY evolved_at DESC LIMIT 1`).get(patternId) ?? null;
|
|
993
|
+
}
|
|
994
|
+
catch {
|
|
995
|
+
return null;
|
|
996
|
+
}
|
|
997
|
+
}
|
|
748
998
|
}
|
|
749
999
|
//# sourceMappingURL=sqlite.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/storage/sqlite.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/storage/sqlite.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,13 +16,25 @@ export interface BanditArm {
|
|
|
16
16
|
adoptionCount: number;
|
|
17
17
|
/** 历史效果评分 0-1(来自 task_patterns.effectiveness_score) */
|
|
18
18
|
effectivenessScore: number;
|
|
19
|
+
/** v5 新增:最后使用时间(用于时间衰减) */
|
|
20
|
+
lastUsed?: string | null;
|
|
19
21
|
}
|
|
20
22
|
export declare class ThompsonSampler {
|
|
21
23
|
/**
|
|
22
24
|
* 从候选 arms 中采样选出最优 arm ID。
|
|
23
25
|
* 若 arms 为空返回 null;若只有一个直接返回。
|
|
26
|
+
*
|
|
27
|
+
* v5 改进:
|
|
28
|
+
* - 冷启动:新 Pattern (adoptionCount=0) 给予乐观初始值
|
|
29
|
+
* - 时间衰减:历史数据根据最后使用时间衰减
|
|
24
30
|
*/
|
|
25
31
|
sample(arms: BanditArm[]): string | null;
|
|
32
|
+
/**
|
|
33
|
+
* v5 新增:从 arm 推导 Beta 分布参数
|
|
34
|
+
* - 冷启动:adoptionCount=0 时给予乐观初始值 (alpha=2, beta=1)
|
|
35
|
+
* - 时间衰减:根据 lastUsed 计算衰减系数,半衰期 30 天
|
|
36
|
+
*/
|
|
37
|
+
private deriveParams;
|
|
26
38
|
/**
|
|
27
39
|
* Beta 分布采样(Johnk 方法近似)
|
|
28
40
|
* 对于 alpha, beta > 0 的 Beta 分布,返回 [0, 1] 内的随机样本。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bandit.d.ts","sourceRoot":"","sources":["../../src/strategy/bandit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,8CAA8C;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,kBAAkB,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"bandit.d.ts","sourceRoot":"","sources":["../../src/strategy/bandit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,8CAA8C;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,qBAAa,eAAe;IAC1B;;;;;;;OAOG;IACH,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,GAAG,IAAI;IAmBxC;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAgCpB;;;OAGG;IACH,OAAO,CAAC,UAAU;IAOlB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAyBnB,wBAAwB;IACxB,OAAO,CAAC,YAAY;CAKrB"}
|
package/dist/strategy/bandit.js
CHANGED
|
@@ -14,6 +14,10 @@ export class ThompsonSampler {
|
|
|
14
14
|
/**
|
|
15
15
|
* 从候选 arms 中采样选出最优 arm ID。
|
|
16
16
|
* 若 arms 为空返回 null;若只有一个直接返回。
|
|
17
|
+
*
|
|
18
|
+
* v5 改进:
|
|
19
|
+
* - 冷启动:新 Pattern (adoptionCount=0) 给予乐观初始值
|
|
20
|
+
* - 时间衰减:历史数据根据最后使用时间衰减
|
|
17
21
|
*/
|
|
18
22
|
sample(arms) {
|
|
19
23
|
if (arms.length === 0)
|
|
@@ -23,8 +27,7 @@ export class ThompsonSampler {
|
|
|
23
27
|
let bestId = arms[0].id;
|
|
24
28
|
let bestSample = -1;
|
|
25
29
|
for (const arm of arms) {
|
|
26
|
-
const alpha =
|
|
27
|
-
const beta = (1 - arm.effectivenessScore) * arm.adoptionCount + 1;
|
|
30
|
+
const { alpha, beta } = this.deriveParams(arm);
|
|
28
31
|
const s = this.sampleBeta(alpha, beta);
|
|
29
32
|
if (s > bestSample) {
|
|
30
33
|
bestSample = s;
|
|
@@ -33,6 +36,39 @@ export class ThompsonSampler {
|
|
|
33
36
|
}
|
|
34
37
|
return bestId;
|
|
35
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* v5 新增:从 arm 推导 Beta 分布参数
|
|
41
|
+
* - 冷启动:adoptionCount=0 时给予乐观初始值 (alpha=2, beta=1)
|
|
42
|
+
* - 时间衰减:根据 lastUsed 计算衰减系数,半衰期 30 天
|
|
43
|
+
*/
|
|
44
|
+
deriveParams(arm) {
|
|
45
|
+
const n = arm.adoptionCount;
|
|
46
|
+
const score = arm.effectivenessScore;
|
|
47
|
+
// 冷启动:新 Pattern 给予乐观初始值
|
|
48
|
+
if (n === 0) {
|
|
49
|
+
return { alpha: 2, beta: 1 }; // 期望成功率 = 2/(2+1) ≈ 0.67
|
|
50
|
+
}
|
|
51
|
+
// 时间衰减:计算距离最后使用的天数
|
|
52
|
+
let decay = 1.0;
|
|
53
|
+
if (arm.lastUsed) {
|
|
54
|
+
try {
|
|
55
|
+
const lastUsedDate = new Date(arm.lastUsed);
|
|
56
|
+
const now = new Date();
|
|
57
|
+
const daysSince = (now.getTime() - lastUsedDate.getTime()) / (1000 * 60 * 60 * 24);
|
|
58
|
+
// 半衰期 30 天:decay = exp(-days / 30)
|
|
59
|
+
decay = Math.exp(-daysSince / 30);
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
// 解析失败,不衰减
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
// 应用衰减后的有效采用次数
|
|
66
|
+
const effectiveN = n * decay;
|
|
67
|
+
return {
|
|
68
|
+
alpha: score * effectiveN + 1,
|
|
69
|
+
beta: (1 - score) * effectiveN + 1,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
36
72
|
/**
|
|
37
73
|
* Beta 分布采样(Johnk 方法近似)
|
|
38
74
|
* 对于 alpha, beta > 0 的 Beta 分布,返回 [0, 1] 内的随机样本。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bandit.js","sourceRoot":"","sources":["../../src/strategy/bandit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"bandit.js","sourceRoot":"","sources":["../../src/strategy/bandit.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 统一产物管理器
|
|
3
|
+
*
|
|
4
|
+
* 负责将所有产物(复盘报告、阶段产物、计划文档、质量报告)
|
|
5
|
+
* 统一输出到 docs/YYYY-MM-DD_HH-MM-SS/ 目录,并维护 docs/INDEX.md 索引
|
|
6
|
+
*/
|
|
7
|
+
export type ArtifactType = 'retrospective' | 'phase-artifact' | 'plan' | 'quality-report';
|
|
8
|
+
export interface ArtifactSession {
|
|
9
|
+
timestamp: string;
|
|
10
|
+
directory: string;
|
|
11
|
+
artifacts: Array<{
|
|
12
|
+
type: ArtifactType;
|
|
13
|
+
filename: string;
|
|
14
|
+
description: string;
|
|
15
|
+
}>;
|
|
16
|
+
}
|
|
17
|
+
export declare class ArtifactManager {
|
|
18
|
+
private projectPath;
|
|
19
|
+
private docsDir;
|
|
20
|
+
private indexPath;
|
|
21
|
+
private currentSessionDir;
|
|
22
|
+
constructor(projectPath: string);
|
|
23
|
+
/**
|
|
24
|
+
* 创建新的产物会话目录
|
|
25
|
+
* 格式:docs/YYYY-MM-DD_HH-MM-SS/
|
|
26
|
+
*/
|
|
27
|
+
createSession(): string;
|
|
28
|
+
/**
|
|
29
|
+
* 获取当前会话目录(若不存在则创建)
|
|
30
|
+
*/
|
|
31
|
+
getCurrentSessionDir(): string;
|
|
32
|
+
/**
|
|
33
|
+
* 写入产物文件
|
|
34
|
+
*/
|
|
35
|
+
writeArtifact(type: ArtifactType, filename: string, content: string, description: string): string;
|
|
36
|
+
/**
|
|
37
|
+
* 更新 docs/INDEX.md 索引文件
|
|
38
|
+
*/
|
|
39
|
+
private updateIndex;
|
|
40
|
+
/**
|
|
41
|
+
* 格式化时间戳为 YYYY-MM-DD_HH-MM-SS
|
|
42
|
+
*/
|
|
43
|
+
private formatTimestamp;
|
|
44
|
+
/**
|
|
45
|
+
* 获取产物类型的中文标签
|
|
46
|
+
*/
|
|
47
|
+
private getTypeLabel;
|
|
48
|
+
/**
|
|
49
|
+
* 列出所有产物会话
|
|
50
|
+
*/
|
|
51
|
+
listSessions(): ArtifactSession[];
|
|
52
|
+
/**
|
|
53
|
+
* 根据文件名推断产物类型
|
|
54
|
+
*/
|
|
55
|
+
private inferType;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=artifact-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artifact-manager.d.ts","sourceRoot":"","sources":["../../src/utils/artifact-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,gBAAgB,GAAG,MAAM,GAAG,gBAAgB,CAAC;AAE1F,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,KAAK,CAAC;QACf,IAAI,EAAE,YAAY,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;CACJ;AAED,qBAAa,eAAe;IAKd,OAAO,CAAC,WAAW;IAJ/B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,iBAAiB,CAAuB;gBAE5B,WAAW,EAAE,MAAM;IAUvC;;;OAGG;IACH,aAAa,IAAI,MAAM;IAcvB;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAO9B;;OAEG;IACH,aAAa,CACX,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,GAClB,MAAM;IAaT;;OAEG;IACH,OAAO,CAAC,WAAW;IAsCnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAWvB;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,YAAY,IAAI,eAAe,EAAE;IA+BjC;;OAEG;IACH,OAAO,CAAC,SAAS;CAOlB"}
|