@straiffi/archon 1.3.12 → 1.4.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.
- package/dist/client/assets/{TestsDialog-Bob_a1Hi.js → TestsDialog-qQAmMWgo.js} +1 -1
- package/dist/client/assets/{architectureDiagram-3BPJPVTR-DPR80srk.js → architectureDiagram-3BPJPVTR-BtJqUJhh.js} +1 -1
- package/dist/client/assets/{blockDiagram-GPEHLZMM-BGImH7RZ.js → blockDiagram-GPEHLZMM-CZDhxLGq.js} +1 -1
- package/dist/client/assets/{c4Diagram-AAUBKEIU-D7SYF0uE.js → c4Diagram-AAUBKEIU-Bm6w_-lT.js} +1 -1
- package/dist/client/assets/channel-XsT7n92_.js +1 -0
- package/dist/client/assets/{chunk-2J33WTMH-FhW6SlH-.js → chunk-2J33WTMH-CzqIvI4M.js} +1 -1
- package/dist/client/assets/{chunk-3OPIFGDE-DYutx44Q.js → chunk-3OPIFGDE-Dl6KEH8o.js} +1 -1
- package/dist/client/assets/{chunk-5ZQYHXKU-Br3FlxNm.js → chunk-5ZQYHXKU-CJ4JYjfs.js} +1 -1
- package/dist/client/assets/{chunk-727SXJPM-DMZKY_b6.js → chunk-727SXJPM-_LqI5jMx.js} +1 -1
- package/dist/client/assets/{chunk-AQP2D5EJ-DSbWZqHO.js → chunk-AQP2D5EJ-DYXNigJm.js} +1 -1
- package/dist/client/assets/{chunk-CSCIHK7Q-5CpD4gNb.js → chunk-CSCIHK7Q-Djc8180_.js} +1 -1
- package/dist/client/assets/{chunk-KSCS5N6A-CR-75NtK.js → chunk-KSCS5N6A--vwWY7AM.js} +1 -1
- package/dist/client/assets/{chunk-L5ZTLDWV-BdF0Mghz.js → chunk-L5ZTLDWV-x_WmkPo1.js} +1 -1
- package/dist/client/assets/{chunk-LZXEDZCA-CMutcOJY.js → chunk-LZXEDZCA-DZCuS3Uv.js} +2 -2
- package/dist/client/assets/{chunk-ND2GUHAM-B0WV6btJ.js → chunk-ND2GUHAM-Cz29DM3N.js} +1 -1
- package/dist/client/assets/{chunk-NZK2D7GU-C0NDAld7.js → chunk-NZK2D7GU-DCnHgg4j.js} +1 -1
- package/dist/client/assets/{chunk-O5CBEL6O-DFHJdzgW.js → chunk-O5CBEL6O-DuKZlajd.js} +1 -1
- package/dist/client/assets/{chunk-WU5MYG2G-BPQJmOLW.js → chunk-WU5MYG2G-CqZvNi1O.js} +1 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-B9IT7tG6.js +1 -0
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-Dk9TTnsk.js +1 -0
- package/dist/client/assets/{dagre-BM42HDAG-B0dEGtFW.js → dagre-BM42HDAG-DCvFbMTN.js} +1 -1
- package/dist/client/assets/{diagram-2AECGRRQ-BKFE3UwF.js → diagram-2AECGRRQ-a4MOJPgJ.js} +1 -1
- package/dist/client/assets/{diagram-5GNKFQAL-BNqxZ9B1.js → diagram-5GNKFQAL-DwGzGWkh.js} +1 -1
- package/dist/client/assets/{diagram-KO2AKTUF-BhtjD426.js → diagram-KO2AKTUF-C8dYadKI.js} +1 -1
- package/dist/client/assets/{diagram-LMA3HP47-DqTF6PkV.js → diagram-LMA3HP47-CKM9m-Ei.js} +1 -1
- package/dist/client/assets/{diagram-OG6HWLK6-CgxffqG3.js → diagram-OG6HWLK6-C4V5cGoH.js} +1 -1
- package/dist/client/assets/{erDiagram-TEJ5UH35-BWwMdU9P.js → erDiagram-TEJ5UH35-vADOBDFj.js} +1 -1
- package/dist/client/assets/{flowDiagram-I6XJVG4X-B3xakVuh.js → flowDiagram-I6XJVG4X-CC-suTcU.js} +1 -1
- package/dist/client/assets/{ganttDiagram-6RSMTGT7-B1eynTXi.js → ganttDiagram-6RSMTGT7-WeEQNWQ0.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-PVQCEYII-yS-cLx0T.js → gitGraphDiagram-PVQCEYII-Co4VQnjc.js} +1 -1
- package/dist/client/assets/{index-RzqxYM2a.js → index-DzX9N40r.js} +110 -110
- package/dist/client/assets/index-mgNREnGE.css +2 -0
- package/dist/client/assets/{infoDiagram-5YYISTIA-Tz41TEOL.js → infoDiagram-5YYISTIA-B4pYvjg8.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-YF4QCWOH--rpZ6_Qj.js → ishikawaDiagram-YF4QCWOH-CeyWoxPk.js} +1 -1
- package/dist/client/assets/{journeyDiagram-JHISSGLW-BICS8Pc2.js → journeyDiagram-JHISSGLW-BhyDzO88.js} +1 -1
- package/dist/client/assets/{kanban-definition-UN3LZRKU-CJX3MNTR.js → kanban-definition-UN3LZRKU-B7inTUDQ.js} +1 -1
- package/dist/client/assets/{line-CEznr8ot.js → line-m2mQAqAM.js} +1 -1
- package/dist/client/assets/{mermaid-parser.core-CAyxqbfC.js → mermaid-parser.core-DrJbZwvq.js} +1 -1
- package/dist/client/assets/{mermaid.core-lZhCYAcS.js → mermaid.core-CARa2kEe.js} +3 -3
- package/dist/client/assets/{mindmap-definition-RKZ34NQL-DBnpzaB5.js → mindmap-definition-RKZ34NQL-DfAkfUA8.js} +1 -1
- package/dist/client/assets/{pieDiagram-4H26LBE5-BsJ62Z_s.js → pieDiagram-4H26LBE5-Crv_t3j5.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-W4KKPZXB-O7V8MQ77.js → quadrantDiagram-W4KKPZXB-c37V3Cj8.js} +1 -1
- package/dist/client/assets/{requirementDiagram-4Y6WPE33-CBSp0PJm.js → requirementDiagram-4Y6WPE33-BDtaa4pA.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-5OEKKPKP-C_rNCXBt.js → sankeyDiagram-5OEKKPKP-CFRyR__T.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-3UESZ5HK-CQOlTV8H.js → sequenceDiagram-3UESZ5HK-kswHj2hA.js} +1 -1
- package/dist/client/assets/{stateDiagram-AJRCARHV-mivSZyUu.js → stateDiagram-AJRCARHV-aISK3GQp.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-CB5h4UXI.js +1 -0
- package/dist/client/assets/{timeline-definition-PNZ67QCA-BuPShGFC.js → timeline-definition-PNZ67QCA-QNVr7VSP.js} +1 -1
- package/dist/client/assets/{vennDiagram-CIIHVFJN-Bx7_gjaC.js → vennDiagram-CIIHVFJN-CtLvNc2w.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-YWT4CUSO-4CO-qLpT.js → wardleyDiagram-YWT4CUSO-DYx5oKTG.js} +1 -1
- package/dist/client/assets/{xychartDiagram-2RQKCTM6-CrLfXUhs.js → xychartDiagram-2RQKCTM6-CmrTblHT.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/db.js +36 -0
- package/dist/server/db.js.map +1 -1
- package/dist/server/index.js +145 -167
- package/dist/server/index.js.map +1 -1
- package/dist/server/lib/bundlePullRequests.js +47 -0
- package/dist/server/lib/bundlePullRequests.js.map +1 -1
- package/dist/server/lib/bundleReviewOperations.js +83 -0
- package/dist/server/lib/bundleReviewOperations.js.map +1 -0
- package/dist/server/lib/commitMessage.js +32 -0
- package/dist/server/lib/commitMessage.js.map +1 -0
- package/dist/server/lib/integrations/github.js +7 -0
- package/dist/server/lib/integrations/github.js.map +1 -1
- package/dist/server/lib/projects.js +44 -0
- package/dist/server/lib/projects.js.map +1 -1
- package/dist/server/lib/pullRequestContent.js +77 -0
- package/dist/server/lib/pullRequestContent.js.map +1 -0
- package/dist/server/lib/specs.js +3 -0
- package/dist/server/lib/specs.js.map +1 -1
- package/dist/server/lib/ticketAutomation.js +194 -0
- package/dist/server/lib/ticketAutomation.js.map +1 -0
- package/dist/server/lib/ticketAutomationCommit.js +188 -0
- package/dist/server/lib/ticketAutomationCommit.js.map +1 -0
- package/dist/server/lib/ticketSettingsOperations.js +35 -2
- package/dist/server/lib/ticketSettingsOperations.js.map +1 -1
- package/dist/server/lib/ticketWorkflowOperations.js +22 -0
- package/dist/server/lib/ticketWorkflowOperations.js.map +1 -1
- package/dist/server/lib/tickets.js +38 -4
- package/dist/server/lib/tickets.js.map +1 -1
- package/dist/server/workers/build.js +11 -0
- package/dist/server/workers/build.js.map +1 -1
- package/dist/server/workers/followUp.js +30 -3
- package/dist/server/workers/followUp.js.map +1 -1
- package/dist/server/workers/review.js +78 -4
- package/dist/server/workers/review.js.map +1 -1
- package/package.json +1 -1
- package/dist/client/assets/channel-CSR2Zu1K.js +0 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-DN8Vr8x9.js +0 -1
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-8cgd_6y_.js +0 -1
- package/dist/client/assets/index-ZyUvSLAF.css +0 -2
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-B42XUhCw.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specs.js","sourceRoot":"","sources":["../../../server/lib/specs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"specs.js","sourceRoot":"","sources":["../../../server/lib/specs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
import db from '../db.js';
|
|
2
|
+
const DEPTH_RANK = {
|
|
3
|
+
manual: 0,
|
|
4
|
+
auto_review: 1,
|
|
5
|
+
auto_commit: 2,
|
|
6
|
+
auto_push: 3,
|
|
7
|
+
auto_pr: 4,
|
|
8
|
+
};
|
|
9
|
+
const SEVERITY_RANK = {
|
|
10
|
+
low: 0,
|
|
11
|
+
medium: 1,
|
|
12
|
+
high: 2,
|
|
13
|
+
};
|
|
14
|
+
export const isAutomationDepth = (value) => {
|
|
15
|
+
return value === 'manual'
|
|
16
|
+
|| value === 'auto_review'
|
|
17
|
+
|| value === 'auto_commit'
|
|
18
|
+
|| value === 'auto_push'
|
|
19
|
+
|| value === 'auto_pr';
|
|
20
|
+
};
|
|
21
|
+
export const isAutomationReviewSeverity = (value) => {
|
|
22
|
+
return value === 'low' || value === 'medium' || value === 'high';
|
|
23
|
+
};
|
|
24
|
+
export const depthAtLeast = (depth, floor) => {
|
|
25
|
+
return DEPTH_RANK[depth] >= DEPTH_RANK[floor];
|
|
26
|
+
};
|
|
27
|
+
export const severityBlocks = (severity, threshold) => {
|
|
28
|
+
return SEVERITY_RANK[severity] >= SEVERITY_RANK[threshold];
|
|
29
|
+
};
|
|
30
|
+
export const resolveAutomationConfig = (ticket, project) => {
|
|
31
|
+
const projectDepth = project?.automation_depth ?? 'manual';
|
|
32
|
+
const projectFixEnabled = project?.automation_review_fix_enabled ?? 0;
|
|
33
|
+
const ticketDepth = ticket.automation_depth;
|
|
34
|
+
const ticketFixEnabled = ticket.automation_review_fix_enabled;
|
|
35
|
+
return {
|
|
36
|
+
depth: ticketDepth ?? projectDepth,
|
|
37
|
+
reviewFixEnabled: ticketFixEnabled !== null ? Boolean(ticketFixEnabled) : Boolean(projectFixEnabled),
|
|
38
|
+
reviewSeverity: project?.automation_review_severity ?? 'medium',
|
|
39
|
+
reviewMaxIterations: project?.automation_review_max_iterations ?? 3,
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
export const isAutomationActive = (config) => {
|
|
43
|
+
return config.depth !== 'manual';
|
|
44
|
+
};
|
|
45
|
+
export const serializeBundleAutomationState = (row) => {
|
|
46
|
+
if (!row) {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
return {
|
|
50
|
+
review_iteration_count: row.review_iteration_count,
|
|
51
|
+
fix_loop_active: Boolean(row.fix_loop_active),
|
|
52
|
+
automation_paused_reason: row.automation_paused_reason,
|
|
53
|
+
automation_paused_at: row.automation_paused_at,
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
export const getBundleAutomationState = (projectId, bundleId) => {
|
|
57
|
+
return db
|
|
58
|
+
.prepare('SELECT * FROM bundle_automation_state WHERE project_id = ? AND worktree_bundle_id = ?')
|
|
59
|
+
.get(projectId, bundleId) ?? null;
|
|
60
|
+
};
|
|
61
|
+
const getBundleAutomationStateCacheKey = (projectId, bundleId) => {
|
|
62
|
+
return `${projectId}:${bundleId}`;
|
|
63
|
+
};
|
|
64
|
+
export const resolveBundleAutomationState = (projectId, bundleId, cache) => {
|
|
65
|
+
const key = getBundleAutomationStateCacheKey(projectId, bundleId);
|
|
66
|
+
if (cache?.has(key)) {
|
|
67
|
+
return cache.get(key) ?? null;
|
|
68
|
+
}
|
|
69
|
+
const state = getBundleAutomationState(projectId, bundleId);
|
|
70
|
+
cache?.set(key, state);
|
|
71
|
+
return state;
|
|
72
|
+
};
|
|
73
|
+
export const loadBundleAutomationStateMap = (projectId, bundleIds) => {
|
|
74
|
+
const cache = new Map();
|
|
75
|
+
if (bundleIds.length === 0) {
|
|
76
|
+
return cache;
|
|
77
|
+
}
|
|
78
|
+
const placeholders = bundleIds.map(() => '?').join(', ');
|
|
79
|
+
const rows = db
|
|
80
|
+
.prepare(`SELECT * FROM bundle_automation_state WHERE project_id = ? AND worktree_bundle_id IN (${placeholders})`)
|
|
81
|
+
.all(projectId, ...bundleIds);
|
|
82
|
+
for (const row of rows) {
|
|
83
|
+
cache.set(getBundleAutomationStateCacheKey(projectId, row.worktree_bundle_id), row);
|
|
84
|
+
}
|
|
85
|
+
for (const bundleId of bundleIds) {
|
|
86
|
+
const key = getBundleAutomationStateCacheKey(projectId, bundleId);
|
|
87
|
+
if (!cache.has(key)) {
|
|
88
|
+
cache.set(key, null);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return cache;
|
|
92
|
+
};
|
|
93
|
+
export const upsertBundleAutomationState = (projectId, bundleId, patch) => {
|
|
94
|
+
const existing = getBundleAutomationState(projectId, bundleId);
|
|
95
|
+
if (!existing) {
|
|
96
|
+
db.prepare(`
|
|
97
|
+
INSERT INTO bundle_automation_state (
|
|
98
|
+
project_id,
|
|
99
|
+
worktree_bundle_id,
|
|
100
|
+
review_iteration_count,
|
|
101
|
+
fix_loop_active,
|
|
102
|
+
automation_paused_reason,
|
|
103
|
+
automation_paused_at
|
|
104
|
+
)
|
|
105
|
+
VALUES (?, ?, ?, ?, ?, ?)
|
|
106
|
+
`).run(projectId, bundleId, patch.review_iteration_count ?? 0, patch.fix_loop_active ?? 0, patch.automation_paused_reason ?? null, patch.automation_paused_at ?? null);
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
db.prepare(`
|
|
110
|
+
UPDATE bundle_automation_state
|
|
111
|
+
SET
|
|
112
|
+
review_iteration_count = ?,
|
|
113
|
+
fix_loop_active = ?,
|
|
114
|
+
automation_paused_reason = ?,
|
|
115
|
+
automation_paused_at = ?,
|
|
116
|
+
updated_at = CURRENT_TIMESTAMP
|
|
117
|
+
WHERE project_id = ? AND worktree_bundle_id = ?
|
|
118
|
+
`).run(patch.review_iteration_count ?? existing.review_iteration_count, patch.fix_loop_active ?? existing.fix_loop_active, patch.automation_paused_reason !== undefined
|
|
119
|
+
? patch.automation_paused_reason
|
|
120
|
+
: existing.automation_paused_reason, patch.automation_paused_at !== undefined
|
|
121
|
+
? patch.automation_paused_at
|
|
122
|
+
: existing.automation_paused_at, projectId, bundleId);
|
|
123
|
+
};
|
|
124
|
+
export const recordAutomationPause = (projectId, bundleId, reason) => {
|
|
125
|
+
upsertBundleAutomationState(projectId, bundleId, {
|
|
126
|
+
automation_paused_reason: reason,
|
|
127
|
+
automation_paused_at: new Date().toISOString(),
|
|
128
|
+
});
|
|
129
|
+
};
|
|
130
|
+
export const clearAutomationPause = (projectId, bundleId) => {
|
|
131
|
+
upsertBundleAutomationState(projectId, bundleId, {
|
|
132
|
+
automation_paused_reason: null,
|
|
133
|
+
automation_paused_at: null,
|
|
134
|
+
});
|
|
135
|
+
};
|
|
136
|
+
export const resetBundleAutomationLoop = (projectId, bundleId) => {
|
|
137
|
+
upsertBundleAutomationState(projectId, bundleId, {
|
|
138
|
+
review_iteration_count: 0,
|
|
139
|
+
fix_loop_active: 0,
|
|
140
|
+
});
|
|
141
|
+
};
|
|
142
|
+
export const countBlockingFindings = (findings, config) => {
|
|
143
|
+
return findings.filter(finding => severityBlocks(finding.severity, config.reviewSeverity)).length;
|
|
144
|
+
};
|
|
145
|
+
export const decideReviewAutomation = (config, bundleState, reviewRunId, parsedStatus, findings) => {
|
|
146
|
+
if (!isAutomationActive(config)) {
|
|
147
|
+
return { kind: 'manual' };
|
|
148
|
+
}
|
|
149
|
+
if (bundleState?.automation_paused_reason) {
|
|
150
|
+
return { kind: 'paused' };
|
|
151
|
+
}
|
|
152
|
+
if (!reviewRunId || parsedStatus !== 'completed') {
|
|
153
|
+
return { kind: 'parse_failed' };
|
|
154
|
+
}
|
|
155
|
+
const blockingCount = countBlockingFindings(findings, config);
|
|
156
|
+
const iteration = bundleState?.review_iteration_count ?? 0;
|
|
157
|
+
if (config.reviewFixEnabled && blockingCount > 0 && iteration < config.reviewMaxIterations) {
|
|
158
|
+
return { kind: 'fix_iteration', iteration: iteration + 1, max: config.reviewMaxIterations };
|
|
159
|
+
}
|
|
160
|
+
if (blockingCount > 0) {
|
|
161
|
+
return {
|
|
162
|
+
kind: 'pause_blocking',
|
|
163
|
+
reason: buildBlockingFindingsPauseReason(blockingCount, config.reviewSeverity, config.reviewFixEnabled, iteration),
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
return { kind: 'clean' };
|
|
167
|
+
};
|
|
168
|
+
export const buildBlockingFindingsPauseReason = (blockingCount, severity, fixEnabled, iteration) => {
|
|
169
|
+
if (!fixEnabled) {
|
|
170
|
+
return `blocking findings, auto-fix disabled (${blockingCount} at ${severity} or above)`;
|
|
171
|
+
}
|
|
172
|
+
const findingWord = blockingCount === 1 ? 'finding remains' : 'findings remain';
|
|
173
|
+
const iterationWord = iteration === 1 ? 'iteration' : 'iterations';
|
|
174
|
+
return `review fix loop exhausted, ${blockingCount} ${severity}+ ${findingWord} after ${iteration} ${iterationWord}`;
|
|
175
|
+
};
|
|
176
|
+
export const buildAutomationFixInstruction = (severity) => {
|
|
177
|
+
return `Fix the code review findings at or above "${severity}" severity. Address each blocking finding directly and minimally. Do not introduce unrelated changes, reformatting, or refactors. Do not commit.`;
|
|
178
|
+
};
|
|
179
|
+
export const buildAutomationFixStatusMessage = (iteration, max) => {
|
|
180
|
+
return `Automation: fixing review findings (iteration ${iteration} of ${max})`;
|
|
181
|
+
};
|
|
182
|
+
export const decideReviewFollowUpAutomation = (config, bundleState) => {
|
|
183
|
+
if (!isAutomationActive(config)) {
|
|
184
|
+
return { kind: 'manual' };
|
|
185
|
+
}
|
|
186
|
+
if (bundleState?.automation_paused_reason) {
|
|
187
|
+
return { kind: 'paused' };
|
|
188
|
+
}
|
|
189
|
+
if (bundleState?.fix_loop_active === 1) {
|
|
190
|
+
return { kind: 're_review' };
|
|
191
|
+
}
|
|
192
|
+
return { kind: 'fall_through' };
|
|
193
|
+
};
|
|
194
|
+
//# sourceMappingURL=ticketAutomation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ticketAutomation.js","sourceRoot":"","sources":["../../../server/lib/ticketAutomation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import config from './config.js';
|
|
2
|
+
import { buildCommitMessagePrompt, normalizeGeneratedCommitMessage, } from './commitMessage.js';
|
|
3
|
+
import { commitGitChanges, getGitStatus, getReviewDiffData, getSelectedGitUnifiedDiff, pushCurrentBranch, resolveWorktreePath, } from './git.js';
|
|
4
|
+
import { runLightweightPrompt } from './lightweightPrompt.js';
|
|
5
|
+
import { buildPullRequestContentPrompt, parsePullRequestContent, } from './pullRequestContent.js';
|
|
6
|
+
import { isProjectRootBundle } from './tickets.js';
|
|
7
|
+
import { createOrFindGitHubPullRequest, hasGitHubRemoteBranch } from './integrations/github.js';
|
|
8
|
+
import { getGitHubConnectionConfig } from './integrations/index.js';
|
|
9
|
+
import { hasOpenBundlePullRequest, syncTrackedBundlePullRequestIfNeeded, upsertBundlePullRequestFromGitHub, } from './bundlePullRequests.js';
|
|
10
|
+
import { recordAutomationPause } from './ticketAutomation.js';
|
|
11
|
+
import { getTicket } from './tickets.js';
|
|
12
|
+
const getErrorMessage = (error) => {
|
|
13
|
+
return error instanceof Error ? error.message : String(error);
|
|
14
|
+
};
|
|
15
|
+
export const evaluateCommitPrecondition = (gitStatus) => {
|
|
16
|
+
if (gitStatus.files.length === 0) {
|
|
17
|
+
return { ok: true };
|
|
18
|
+
}
|
|
19
|
+
if (gitStatus.operation_state !== 'idle') {
|
|
20
|
+
return { ok: false, reason: `worktree is mid-${gitStatus.operation_state}` };
|
|
21
|
+
}
|
|
22
|
+
return { ok: true };
|
|
23
|
+
};
|
|
24
|
+
export const evaluatePrPrecondition = (connectionConfig, bundle, gitStatus, hasRemoteBranch, existingTrackedPr) => {
|
|
25
|
+
if (!connectionConfig) {
|
|
26
|
+
return { ok: false, reason: 'GitHub integration not connected' };
|
|
27
|
+
}
|
|
28
|
+
if (isProjectRootBundle(bundle)) {
|
|
29
|
+
return { ok: false, reason: 'pull requests are not available for the project root bundle' };
|
|
30
|
+
}
|
|
31
|
+
if (!connectionConfig.default_base_branch) {
|
|
32
|
+
return { ok: false, reason: 'no default base branch configured for the GitHub connection' };
|
|
33
|
+
}
|
|
34
|
+
if (gitStatus.ahead > 0 || !hasRemoteBranch) {
|
|
35
|
+
return { ok: false, reason: 'branch must be pushed and up to date before opening a pull request' };
|
|
36
|
+
}
|
|
37
|
+
return { ok: true };
|
|
38
|
+
};
|
|
39
|
+
const buildCommitExecution = (project) => {
|
|
40
|
+
if (project.helper_model) {
|
|
41
|
+
return {
|
|
42
|
+
tool: 'opencode',
|
|
43
|
+
model: project.helper_model,
|
|
44
|
+
variant: project.helper_variant,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
return { tool: config.tool ?? 'opencode' };
|
|
48
|
+
};
|
|
49
|
+
const generateCommitMessage = async (cwd, project, selectedPaths) => {
|
|
50
|
+
const gitStatus = getGitStatus(cwd, null, project);
|
|
51
|
+
const selectedPathSet = new Set(selectedPaths);
|
|
52
|
+
const selectedFiles = gitStatus.files
|
|
53
|
+
.filter(file => selectedPathSet.has(file.path))
|
|
54
|
+
.map(file => `${file.status}: ${file.path}`);
|
|
55
|
+
const prompt = buildCommitMessagePrompt({
|
|
56
|
+
commitMessageRules: project.commit_message_rules,
|
|
57
|
+
selectedFiles,
|
|
58
|
+
diff: getSelectedGitUnifiedDiff(cwd, selectedPaths),
|
|
59
|
+
});
|
|
60
|
+
const rawMessage = await runLightweightPrompt(buildCommitExecution(project), prompt, cwd);
|
|
61
|
+
return normalizeGeneratedCommitMessage(rawMessage);
|
|
62
|
+
};
|
|
63
|
+
const generatePullRequestContent = async (cwd, project, ticket, branch) => {
|
|
64
|
+
const diffData = getReviewDiffData({ cwd, branch, project });
|
|
65
|
+
if (!diffData.diff.trim()) {
|
|
66
|
+
return { title: ticket.title, body: ticket.description ?? '' };
|
|
67
|
+
}
|
|
68
|
+
try {
|
|
69
|
+
const githubConfig = getGitHubConnectionConfig(ticket.project_id ?? '');
|
|
70
|
+
const baseBranch = githubConfig?.default_base_branch ?? 'main';
|
|
71
|
+
const prompt = buildPullRequestContentPrompt({
|
|
72
|
+
ticketTitle: ticket.title,
|
|
73
|
+
ticketDescription: ticket.description,
|
|
74
|
+
diff: diffData.diff,
|
|
75
|
+
baseBranch,
|
|
76
|
+
});
|
|
77
|
+
const rawOutput = await runLightweightPrompt(buildCommitExecution(project), prompt, cwd);
|
|
78
|
+
const parsed = parsePullRequestContent(rawOutput);
|
|
79
|
+
if (parsed) {
|
|
80
|
+
return parsed;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
catch {
|
|
84
|
+
// Fall back to ticket fields on any failure
|
|
85
|
+
}
|
|
86
|
+
return { title: ticket.title, body: ticket.description ?? '' };
|
|
87
|
+
};
|
|
88
|
+
const emitUpdated = (io, ticketId) => {
|
|
89
|
+
const updated = getTicket(ticketId);
|
|
90
|
+
if (updated) {
|
|
91
|
+
io.emit('ticket:updated', updated);
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
export const runAutomationCommitChain = async (ticket, project, bundle, automationConfig, io) => {
|
|
95
|
+
if (!ticket.project_id || !ticket.worktree_bundle_id) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
const projectId = ticket.project_id;
|
|
99
|
+
const bundleId = ticket.worktree_bundle_id;
|
|
100
|
+
const branch = bundle?.branch ?? null;
|
|
101
|
+
if (!branch) {
|
|
102
|
+
recordAutomationPause(projectId, bundleId, 'automation commit chain skipped: bundle has no branch');
|
|
103
|
+
emitUpdated(io, ticket.id);
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
const cwd = bundle?.kind === 'project_root'
|
|
107
|
+
? project.repo_path
|
|
108
|
+
: resolveWorktreePath(branch, project);
|
|
109
|
+
const emitPaused = (reason) => {
|
|
110
|
+
recordAutomationPause(projectId, bundleId, reason);
|
|
111
|
+
emitUpdated(io, ticket.id);
|
|
112
|
+
};
|
|
113
|
+
// Commit leg (auto_commit and deeper)
|
|
114
|
+
try {
|
|
115
|
+
const gitStatus = getGitStatus(cwd, branch, project);
|
|
116
|
+
const commitCheck = evaluateCommitPrecondition(gitStatus);
|
|
117
|
+
if (!commitCheck.ok) {
|
|
118
|
+
emitPaused(commitCheck.reason);
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
if (gitStatus.files.length > 0) {
|
|
122
|
+
const selectedPaths = gitStatus.files.map(file => file.path);
|
|
123
|
+
const message = await generateCommitMessage(cwd, project, selectedPaths);
|
|
124
|
+
if (!message) {
|
|
125
|
+
emitPaused('commit message generation produced an empty result');
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
await commitGitChanges(cwd, branch, project, message, selectedPaths);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
catch (error) {
|
|
132
|
+
emitPaused(`commit failed: ${getErrorMessage(error)}`);
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
if (automationConfig.depth === 'auto_commit') {
|
|
136
|
+
emitUpdated(io, ticket.id);
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
// Push leg (auto_push and deeper). pushCurrentBranch is idempotent — a no-op
|
|
140
|
+
// when the branch is already up to date — so no separate precondition is needed.
|
|
141
|
+
try {
|
|
142
|
+
await pushCurrentBranch(cwd, branch);
|
|
143
|
+
}
|
|
144
|
+
catch (error) {
|
|
145
|
+
emitPaused(`push failed: ${getErrorMessage(error)}`);
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
if (automationConfig.depth === 'auto_push') {
|
|
149
|
+
emitUpdated(io, ticket.id);
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
// PR leg (auto_pr)
|
|
153
|
+
try {
|
|
154
|
+
const githubConfig = getGitHubConnectionConfig(projectId);
|
|
155
|
+
const prGitStatus = getGitStatus(cwd, branch, project);
|
|
156
|
+
const hasRemoteBranch = hasGitHubRemoteBranch(cwd, branch);
|
|
157
|
+
const tracked = bundle
|
|
158
|
+
? await syncTrackedBundlePullRequestIfNeeded(project, bundle, { force: true })
|
|
159
|
+
: null;
|
|
160
|
+
const prCheck = evaluatePrPrecondition(githubConfig, bundle, prGitStatus, hasRemoteBranch, tracked);
|
|
161
|
+
if (!prCheck.ok) {
|
|
162
|
+
emitPaused(prCheck.reason);
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
if (hasOpenBundlePullRequest(tracked)) {
|
|
166
|
+
emitUpdated(io, ticket.id);
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
if (!githubConfig) {
|
|
170
|
+
emitPaused('GitHub integration not connected');
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
const baseBranch = githubConfig.default_base_branch ?? '';
|
|
174
|
+
const prContent = await generatePullRequestContent(cwd, project, ticket, branch);
|
|
175
|
+
const nextPullRequest = await createOrFindGitHubPullRequest(githubConfig, {
|
|
176
|
+
title: prContent.title,
|
|
177
|
+
body: prContent.body,
|
|
178
|
+
baseBranch,
|
|
179
|
+
headBranch: branch,
|
|
180
|
+
});
|
|
181
|
+
upsertBundlePullRequestFromGitHub(projectId, bundleId, githubConfig, nextPullRequest);
|
|
182
|
+
emitUpdated(io, ticket.id);
|
|
183
|
+
}
|
|
184
|
+
catch (error) {
|
|
185
|
+
emitPaused(`pull request failed: ${getErrorMessage(error)}`);
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
//# sourceMappingURL=ticketAutomationCommit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ticketAutomationCommit.js","sourceRoot":"","sources":["../../../server/lib/ticketAutomationCommit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import db from '../db.js';
|
|
2
2
|
import { normalizeTicketModelId } from './models.js';
|
|
3
3
|
import { normalizeSkillNames } from './skills.js';
|
|
4
|
+
import { isAutomationDepth } from './ticketAutomation.js';
|
|
4
5
|
import { getTicket } from './tickets.js';
|
|
5
6
|
const hasOwn = (object, key) => {
|
|
6
7
|
return !!object && typeof object === 'object' && Object.prototype.hasOwnProperty.call(object, key);
|
|
@@ -15,11 +16,13 @@ export const isTicketAgentSettingsPayload = (payload) => {
|
|
|
15
16
|
const hasModelField = hasOwn(payload, 'model');
|
|
16
17
|
const hasVariantField = hasOwn(payload, 'variant');
|
|
17
18
|
const hasSkillsField = hasOwn(payload, 'skills');
|
|
19
|
+
const hasAutomationDepthField = hasOwn(payload, 'automation_depth');
|
|
20
|
+
const hasAutomationFixField = hasOwn(payload, 'automation_review_fix_enabled');
|
|
18
21
|
const hasEditableContentField = hasOwn(payload, 'title')
|
|
19
22
|
|| hasOwn(payload, 'description')
|
|
20
23
|
|| hasOwn(payload, 'project_id')
|
|
21
24
|
|| hasOwn(payload, 'worktree_bundle_id');
|
|
22
|
-
return !hasEditableContentField && (hasModelField || hasVariantField || hasSkillsField);
|
|
25
|
+
return !hasEditableContentField && (hasModelField || hasVariantField || hasSkillsField || hasAutomationDepthField || hasAutomationFixField);
|
|
23
26
|
};
|
|
24
27
|
export const updateTicketAgentSettings = ({ ticketId, requestedProjectId, payload, broadcaster, }) => {
|
|
25
28
|
const ticket = getTicket(ticketId);
|
|
@@ -32,6 +35,8 @@ export const updateTicketAgentSettings = ({ ticketId, requestedProjectId, payloa
|
|
|
32
35
|
let resolvedModel = ticket.model;
|
|
33
36
|
let resolvedVariant = ticket.variant;
|
|
34
37
|
let resolvedSkills = ticket.skills;
|
|
38
|
+
let resolvedAutomationDepth = ticket.automation_depth ?? null;
|
|
39
|
+
let resolvedAutomationReviewFixEnabled = ticket.automation_review_fix_enabled ?? null;
|
|
35
40
|
if (hasOwn(payload, 'model')) {
|
|
36
41
|
if (payload?.model == null) {
|
|
37
42
|
resolvedModel = null;
|
|
@@ -54,7 +59,35 @@ export const updateTicketAgentSettings = ({ ticketId, requestedProjectId, payloa
|
|
|
54
59
|
if (hasOwn(payload, 'skills')) {
|
|
55
60
|
resolvedSkills = normalizeSkillNames(payload?.skills);
|
|
56
61
|
}
|
|
57
|
-
|
|
62
|
+
if (hasOwn(payload, 'automation_depth')) {
|
|
63
|
+
const value = payload?.automation_depth;
|
|
64
|
+
if (value == null || value === '') {
|
|
65
|
+
resolvedAutomationDepth = null;
|
|
66
|
+
}
|
|
67
|
+
else if (isAutomationDepth(value)) {
|
|
68
|
+
resolvedAutomationDepth = value;
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
return {
|
|
72
|
+
ok: false,
|
|
73
|
+
status: 400,
|
|
74
|
+
error: 'automation_depth must be one of: manual, auto_review, auto_commit, auto_push, auto_pr',
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (hasOwn(payload, 'automation_review_fix_enabled')) {
|
|
79
|
+
const value = payload?.automation_review_fix_enabled;
|
|
80
|
+
if (value == null) {
|
|
81
|
+
resolvedAutomationReviewFixEnabled = null;
|
|
82
|
+
}
|
|
83
|
+
else if (typeof value === 'boolean') {
|
|
84
|
+
resolvedAutomationReviewFixEnabled = value ? 1 : 0;
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
return { ok: false, status: 400, error: 'automation_review_fix_enabled must be a boolean' };
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
db.prepare('UPDATE tickets SET model = ?, variant = ?, skills_json = ?, automation_depth = ?, automation_review_fix_enabled = ?, updated_at = CURRENT_TIMESTAMP WHERE id = ?').run(resolvedModel, resolvedVariant, JSON.stringify(resolvedSkills), resolvedAutomationDepth, resolvedAutomationReviewFixEnabled, ticket.id);
|
|
58
91
|
const updated = getTicket(ticket.id);
|
|
59
92
|
broadcaster.emit('ticket:updated', updated);
|
|
60
93
|
return { ok: true, status: 200, value: updated };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ticketSettingsOperations.js","sourceRoot":"","sources":["../../../server/lib/ticketSettingsOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAA;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AASxC,MAAM,MAAM,GAAG,CAAC,MAAe,EAAE,GAAW,EAAE,EAAE;IAC9C,OAAO,CAAC,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AACpG,CAAC,CAAA;AAED,MAAM,uBAAuB,GAAG,CAAC,MAAkC,EAAE,kBAA2B,EAAE,EAAE;IAClG,OAAO,kBAAkB,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,KAAK,kBAAkB,CAAA;AACrF,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,OAA8B,EAAE,EAAE;IAC7E,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC9C,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAClD,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAChD,MAAM,uBAAuB,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC;WACnD,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC;WAC9B,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC;WAC7B,MAAM,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;IAE1C,OAAO,CAAC,uBAAuB,IAAI,CAAC,aAAa,IAAI,eAAe,IAAI,cAAc,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"ticketSettingsOperations.js","sourceRoot":"","sources":["../../../server/lib/ticketSettingsOperations.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,9 @@ import { enqueueBundledBuild, hasActiveSequenceForBundle } from './buildSequence
|
|
|
4
4
|
import { prepareTicketForBuild } from './buildFlow.js';
|
|
5
5
|
import { isBundleBuildBlocked } from './bundleActivity.js';
|
|
6
6
|
import { getEffectiveProject } from './projects.js';
|
|
7
|
+
import { getSpecSession } from './specs.js';
|
|
7
8
|
import { assignTicketLaneOrder, autoParkTicketIfStale, getTicket, resolveTicketTool } from './tickets.js';
|
|
9
|
+
import { getBundleAutomationState, recordAutomationPause } from './ticketAutomation.js';
|
|
8
10
|
import { startBuild } from '../workers/build.js';
|
|
9
11
|
import { startReview } from '../workers/review.js';
|
|
10
12
|
const VALID_TICKET_STATES = ['plan', 'build', 'review'];
|
|
@@ -46,6 +48,16 @@ export const transitionTicketState = ({ ticketId, requestedState, requestedProje
|
|
|
46
48
|
if (requestedProjectId !== undefined && existing.project_id !== requestedProjectId) {
|
|
47
49
|
return { ok: false, status: 404, error: 'Not found' };
|
|
48
50
|
}
|
|
51
|
+
if (existing.project_id && existing.worktree_bundle_id) {
|
|
52
|
+
const bundleState = getBundleAutomationState(existing.project_id, existing.worktree_bundle_id);
|
|
53
|
+
if (bundleState && !bundleState.automation_paused_reason && bundleState.fix_loop_active === 1) {
|
|
54
|
+
recordAutomationPause(existing.project_id, existing.worktree_bundle_id, 'manual transition');
|
|
55
|
+
const pausedTicket = getTicket(existing.id);
|
|
56
|
+
if (pausedTicket) {
|
|
57
|
+
broadcaster.emit('ticket:updated', pausedTicket);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
49
61
|
if (ticketState === 'plan' && existing.state !== 'plan') {
|
|
50
62
|
return { ok: false, status: 409, error: 'Tickets cannot be moved back to plan after work begins' };
|
|
51
63
|
}
|
|
@@ -64,6 +76,16 @@ export const transitionTicketState = ({ ticketId, requestedState, requestedProje
|
|
|
64
76
|
};
|
|
65
77
|
}
|
|
66
78
|
broadcaster.emit('ticket:updated', buildTransition.ticket);
|
|
79
|
+
const originSpecSessionId = buildTransition.ticket.origin_spec_session_id ?? null;
|
|
80
|
+
if (originSpecSessionId) {
|
|
81
|
+
const result = db.prepare('UPDATE spec_sessions SET has_completed_work = 1, updated_at = CURRENT_TIMESTAMP WHERE id = ? AND has_completed_work = 0').run(originSpecSessionId);
|
|
82
|
+
if (result.changes > 0) {
|
|
83
|
+
const updatedSession = getSpecSession(originSpecSessionId);
|
|
84
|
+
if (updatedSession) {
|
|
85
|
+
broadcaster.emit('spec-session:updated', updatedSession);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
67
89
|
let shouldStartBuild = true;
|
|
68
90
|
if (buildTransition.ticket.project_id && buildTransition.ticket.worktree_bundle_id) {
|
|
69
91
|
const queuedBuild = enqueueBundledBuild({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ticketWorkflowOperations.js","sourceRoot":"","sources":["../../../server/lib/ticketWorkflowOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAA;AACzB,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAA;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"ticketWorkflowOperations.js","sourceRoot":"","sources":["../../../server/lib/ticketWorkflowOperations.ts"],"names":[],"mappings":"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"}
|