@straiffi/archon 1.4.6 → 1.4.7
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/GitHubActionsDialog-B0yRjwYQ.js +1 -0
- package/dist/client/assets/TestsDialog-CcSvemLJ.js +5 -0
- package/dist/client/assets/{arc-4YfDy8uK.js → arc-CnuHRbeq.js} +1 -1
- package/dist/client/assets/architecture-7EHR7CIX-tSrokdFP.js +1 -0
- package/dist/client/assets/{architectureDiagram-3BPJPVTR-B0ybRTUn.js → architectureDiagram-3BPJPVTR-DJjMJGQa.js} +1 -1
- package/dist/client/assets/{blockDiagram-GPEHLZMM-DrrQouTh.js → blockDiagram-GPEHLZMM-D7qr0WKZ.js} +1 -1
- package/dist/client/assets/{c4Diagram-AAUBKEIU-BJdqjAbL.js → c4Diagram-AAUBKEIU-Dtpwhh8J.js} +1 -1
- package/dist/client/assets/channel-JBvp4GqN.js +1 -0
- package/dist/client/assets/{chunk-2J33WTMH-Dh6TqsDY.js → chunk-2J33WTMH-BImOu1wB.js} +1 -1
- package/dist/client/assets/{chunk-3OPIFGDE-BI6L9trS.js → chunk-3OPIFGDE-WBqy9pqS.js} +1 -1
- package/dist/client/assets/{chunk-4BX2VUAB-B3mVWXS4.js → chunk-4BX2VUAB-_WBpCe0m.js} +1 -1
- package/dist/client/assets/{chunk-4EGX6M5U-DTB6Um9X.js → chunk-4EGX6M5U-BBQHxMeA.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-BB-0ajVZ.js → chunk-55IACEB6-B-d-YzxI.js} +1 -1
- package/dist/client/assets/{chunk-5DO6E6H7-DtX6GYFY.js → chunk-5DO6E6H7-BA-oSVa-.js} +1 -1
- package/dist/client/assets/{chunk-5ZQYHXKU-mt5W2CGF.js → chunk-5ZQYHXKU-gzwfOytX.js} +1 -1
- package/dist/client/assets/{chunk-727SXJPM-D7IvpFAq.js → chunk-727SXJPM-DZRDmsY-.js} +1 -1
- package/dist/client/assets/{chunk-AQP2D5EJ-CjusndWN.js → chunk-AQP2D5EJ-BNsOD4b1.js} +1 -1
- package/dist/client/assets/{chunk-BR22UD5L-CkJbcXZG.js → chunk-BR22UD5L-prWX503j.js} +1 -1
- package/dist/client/assets/{chunk-BSJP7CBP-X4eyoSqE.js → chunk-BSJP7CBP-CNtf2uaW.js} +1 -1
- package/dist/client/assets/{chunk-CSCIHK7Q-BmXd8_5X.js → chunk-CSCIHK7Q-Be5NZf-h.js} +2 -2
- package/dist/client/assets/{chunk-FHYWG6QK-Cb5GzaCb.js → chunk-FHYWG6QK-BQ8n0J0S.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-mGY2D2YB.js → chunk-FMBD7UC4-CWQN4V4s.js} +1 -1
- package/dist/client/assets/{chunk-KSCS5N6A-DJIqk8ji.js → chunk-KSCS5N6A-t3G5p-H3.js} +1 -1
- package/dist/client/assets/{chunk-L5ZTLDWV-CRVFCsvJ.js → chunk-L5ZTLDWV-08eeTRtA.js} +1 -1
- package/dist/client/assets/{chunk-LZXEDZCA-CRla8IXQ.js → chunk-LZXEDZCA-BhEnRZZ3.js} +2 -2
- package/dist/client/assets/{chunk-MPE355IW-WT7jTCZh.js → chunk-MPE355IW-gHN8AuU_.js} +1 -1
- package/dist/client/assets/{chunk-MZUSXYTE-CClXfOSj.js → chunk-MZUSXYTE-Clzaz1kK.js} +1 -1
- package/dist/client/assets/{chunk-N66VUXT2-Bpe4yprw.js → chunk-N66VUXT2-CkkAOkdt.js} +1 -1
- package/dist/client/assets/{chunk-ND2GUHAM-BYAb7NsA.js → chunk-ND2GUHAM-n8aRhp2g.js} +1 -1
- package/dist/client/assets/{chunk-NZK2D7GU-DUI0mwZm.js → chunk-NZK2D7GU-BzDdHd-c.js} +1 -1
- package/dist/client/assets/{chunk-O5CBEL6O-BX5VWTmZ.js → chunk-O5CBEL6O-B4hb9RKU.js} +1 -1
- package/dist/client/assets/{chunk-PUPMXCY4-Dh45WL5s.js → chunk-PUPMXCY4-DAdQFv8j.js} +1 -1
- package/dist/client/assets/chunk-QZHKN3VN-biOr9EeQ.js +1 -0
- package/dist/client/assets/{chunk-UIBZB4QT-Cp2xSKlH.js → chunk-UIBZB4QT-BRR84OYN.js} +1 -1
- package/dist/client/assets/{chunk-WCWK7LTN-BOt5FFIu.js → chunk-WCWK7LTN-CQU7Fs_W.js} +1 -1
- package/dist/client/assets/chunk-WU5MYG2G-95dAWX8f.js +1 -0
- package/dist/client/assets/{chunk-XPW4576I-YiT9fJFY.js → chunk-XPW4576I-DafcxlUi.js} +1 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-vGoYHbZF.js +1 -0
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-DuL6ksKg.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-CtC2zeMr.js → cose-bilkent-S5V4N54A-DhJHP9hr.js} +1 -1
- package/dist/client/assets/{dagre-BM42HDAG-CqGwgHpm.js → dagre-BM42HDAG-BrFwfUb5.js} +1 -1
- package/dist/client/assets/{dagre-5AiD43Uu.js → dagre-CdwzCXQr.js} +1 -1
- package/dist/client/assets/{diagram-2AECGRRQ-W2M_p8Yv.js → diagram-2AECGRRQ-C-spx6S1.js} +1 -1
- package/dist/client/assets/{diagram-5GNKFQAL-Cl9Hh0jb.js → diagram-5GNKFQAL-CTGmw6IF.js} +1 -1
- package/dist/client/assets/{diagram-KO2AKTUF-Cn0-x5HI.js → diagram-KO2AKTUF-CGR_6C8P.js} +1 -1
- package/dist/client/assets/{diagram-LMA3HP47-BH2_JbrM.js → diagram-LMA3HP47-Biu8iKKN.js} +1 -1
- package/dist/client/assets/{diagram-OG6HWLK6-DuSmDdz3.js → diagram-OG6HWLK6-CgPqxTkQ.js} +1 -1
- package/dist/client/assets/{erDiagram-TEJ5UH35-DMHLFeQs.js → erDiagram-TEJ5UH35-Dvb5W4CZ.js} +1 -1
- package/dist/client/assets/eventmodeling-FCH6USID-DapHLQIh.js +1 -0
- package/dist/client/assets/{flowDiagram-I6XJVG4X-G6q9UKR3.js → flowDiagram-I6XJVG4X-tU7PIdFt.js} +1 -1
- package/dist/client/assets/{ganttDiagram-6RSMTGT7-hhWmmnFi.js → ganttDiagram-6RSMTGT7-Cxn3Y-uw.js} +1 -1
- package/dist/client/assets/gitGraph-WXDBUCRP-BTBN_hfb.js +1 -0
- package/dist/client/assets/{gitGraphDiagram-PVQCEYII-CvmZJ3zf.js → gitGraphDiagram-PVQCEYII-C3ODPbCH.js} +1 -1
- package/dist/client/assets/index--HKq89za.css +2 -0
- package/dist/client/assets/index-QYW4Cu-e.js +260 -0
- package/dist/client/assets/info-J43DQDTF-CgiMJYKF.js +1 -0
- package/dist/client/assets/{infoDiagram-5YYISTIA-BIes94lQ.js → infoDiagram-5YYISTIA-DI-gw2Xm.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-1sUDbjPm.js → ishikawaDiagram-YF4QCWOH-Boo7JuBN.js} +1 -1
- package/dist/client/assets/{journeyDiagram-JHISSGLW-BEEP6Na-.js → journeyDiagram-JHISSGLW-N9__o75J.js} +1 -1
- package/dist/client/assets/{kanban-definition-UN3LZRKU-CPFego8B.js → kanban-definition-UN3LZRKU-BbtqdHL3.js} +1 -1
- package/dist/client/assets/{line-BdjuNfVr.js → line-MwEcOq8D.js} +1 -1
- package/dist/client/assets/{linear-BYVhmsFj.js → linear-DFIW-KnM.js} +1 -1
- package/dist/client/assets/{mermaid-parser.core-ep6OPAQm.js → mermaid-parser.core-C_-_i9ct.js} +2 -2
- package/dist/client/assets/{mermaid.core-CgiGEZhy.js → mermaid.core-jFmh7tic.js} +3 -3
- package/dist/client/assets/{mindmap-definition-RKZ34NQL-0hOE50-8.js → mindmap-definition-RKZ34NQL-cAM3OmtA.js} +1 -1
- package/dist/client/assets/{ordinal-DIg8h6NI.js → ordinal-C1FS1Sfe.js} +1 -1
- package/dist/client/assets/packet-YPE3B663-Bnwqjena.js +1 -0
- package/dist/client/assets/pie-LRSECV5Y-Ctj0ef-4.js +1 -0
- package/dist/client/assets/{pieDiagram-4H26LBE5-BEgccEEE.js → pieDiagram-4H26LBE5-B7wO_tA6.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-W4KKPZXB-CvDyAdJI.js → quadrantDiagram-W4KKPZXB-41IRD1HZ.js} +1 -1
- package/dist/client/assets/radar-GUYGQ44K-DE0H_saz.js +1 -0
- package/dist/client/assets/{requirementDiagram-4Y6WPE33-DSmztQBO.js → requirementDiagram-4Y6WPE33-CRp-2G5Y.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-5OEKKPKP-DgDUHUAw.js → sankeyDiagram-5OEKKPKP-C2jxwbv9.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-3UESZ5HK-BYaYgN0W.js → sequenceDiagram-3UESZ5HK-C0ifwFNY.js} +1 -1
- package/dist/client/assets/{stateDiagram-AJRCARHV-CqU_4LpV.js → stateDiagram-AJRCARHV-DtkDso6_.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-CpWls-En.js +1 -0
- package/dist/client/assets/{timeline-definition-PNZ67QCA-BTYLNo8J.js → timeline-definition-PNZ67QCA-DwL2DqkA.js} +1 -1
- package/dist/client/assets/treeView-BLDUP644-CSAZL2OH.js +1 -0
- package/dist/client/assets/treemap-LRROVOQU-tYm4XKfP.js +1 -0
- package/dist/client/assets/{vennDiagram-CIIHVFJN-C-MV8-cy.js → vennDiagram-CIIHVFJN-Cd1A1glE.js} +1 -1
- package/dist/client/assets/wardley-L42UT6IY-DdiEFppm.js +1 -0
- package/dist/client/assets/{wardleyDiagram-YWT4CUSO-BOZ5g5Fn.js → wardleyDiagram-YWT4CUSO-DpWpjU7R.js} +1 -1
- package/dist/client/assets/{xychartDiagram-2RQKCTM6-6wYwr3vn.js → xychartDiagram-2RQKCTM6-BROvAGf_.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/db.js +64 -0
- package/dist/server/db.js.map +1 -1
- package/dist/server/index.js +191 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/lib/chatOperations.js +6 -0
- package/dist/server/lib/chatOperations.js.map +1 -1
- package/dist/server/lib/integrations/assignedIssues.js +21 -9
- package/dist/server/lib/integrations/assignedIssues.js.map +1 -1
- package/dist/server/lib/integrations/github.js +10 -0
- package/dist/server/lib/integrations/github.js.map +1 -1
- package/dist/server/lib/integrations/githubActions.js +266 -0
- package/dist/server/lib/integrations/githubActions.js.map +1 -0
- package/dist/server/lib/integrations/githubActionsSessions.js +168 -0
- package/dist/server/lib/integrations/githubActionsSessions.js.map +1 -0
- package/dist/server/lib/specOperations.js +6 -0
- package/dist/server/lib/specOperations.js.map +1 -1
- package/dist/server/lib/ticketWorkflowOperations.js +6 -0
- package/dist/server/lib/ticketWorkflowOperations.js.map +1 -1
- package/dist/server/lib/trackedExternalIssues.js +33 -0
- package/dist/server/lib/trackedExternalIssues.js.map +1 -0
- package/package.json +2 -1
- package/dist/client/assets/TestsDialog-Vy9cdwzA.js +0 -5
- package/dist/client/assets/architecture-7EHR7CIX-B0ldQ5d_.js +0 -1
- package/dist/client/assets/channel-B3iXJSit.js +0 -1
- package/dist/client/assets/chunk-QZHKN3VN-U_l6-b5-.js +0 -1
- package/dist/client/assets/chunk-WU5MYG2G-xHcJhj1C.js +0 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-BvskNpH1.js +0 -1
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-B1-Afdak.js +0 -1
- package/dist/client/assets/eventmodeling-FCH6USID-BczyucFk.js +0 -1
- package/dist/client/assets/gitGraph-WXDBUCRP-x5mlGyzr.js +0 -1
- package/dist/client/assets/index-CT3aYWb0.js +0 -260
- package/dist/client/assets/index-D6gWjd6J.css +0 -2
- package/dist/client/assets/info-J43DQDTF-BsM_Qb70.js +0 -1
- package/dist/client/assets/packet-YPE3B663-DeVIMHV5.js +0 -1
- package/dist/client/assets/pie-LRSECV5Y-ByRF4_cj.js +0 -1
- package/dist/client/assets/radar-GUYGQ44K-XEreg8aR.js +0 -1
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-C_J0aecM.js +0 -1
- package/dist/client/assets/treeView-BLDUP644-D85P2Ji3.js +0 -1
- package/dist/client/assets/treemap-LRROVOQU-BnXG5utQ.js +0 -1
- package/dist/client/assets/wardley-L42UT6IY-Ct9qHtJP.js +0 -1
- /package/dist/client/assets/{array-DOVTz2Mq.js → array-B57E4cSs.js} +0 -0
- /package/dist/client/assets/{chunk-NNHCCRGN-C4ci-Gd6.js → chunk-NNHCCRGN-DRSAMe5H.js} +0 -0
- /package/dist/client/assets/{cytoscape.esm-DnmRtSj9.js → cytoscape.esm-CVYSm6AJ.js} +0 -0
- /package/dist/client/assets/{defaultLocale-Ck2Xxk-C.js → defaultLocale-6WHJ3B09.js} +0 -0
- /package/dist/client/assets/{dist-BQjeO--f.js → dist-By2zKKTF.js} +0 -0
- /package/dist/client/assets/{graphlib-CMVU3iJd.js → graphlib-B0DVs0bw.js} +0 -0
- /package/dist/client/assets/{init-Bft5Ffpj.js → init-DiYCGS1R.js} +0 -0
- /package/dist/client/assets/{katex-Bpz5kWH9.js → katex-bgJu_0Fy.js} +0 -0
- /package/dist/client/assets/{path-DfRbCp9y.js → path-DL_QDy2X.js} +0 -0
- /package/dist/client/assets/{rough.esm-DCvqWubr.js → rough.esm-Bbn_-PMU.js} +0 -0
- /package/dist/client/assets/{src-BcaL9nCM.js → src-Bi_byJUe.js} +0 -0
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import { randomUUID } from 'crypto';
|
|
2
|
+
import { getGitHubWorkflowRun, getGitHubWorkflowRunJobs, listGitHubWorkflowRuns, } from './githubActions.js';
|
|
3
|
+
const POLL_INTERVAL_MS = 5_000;
|
|
4
|
+
const TRACKED_RUN_TTL_MS = 60 * 60 * 1000;
|
|
5
|
+
const MAX_RESOLVE_ATTEMPTS = 6;
|
|
6
|
+
const trackedRuns = new Map();
|
|
7
|
+
let pollInterval = null;
|
|
8
|
+
let ioReference = null;
|
|
9
|
+
const isTerminalStatus = (run) => {
|
|
10
|
+
return Boolean(run && run.status === 'completed');
|
|
11
|
+
};
|
|
12
|
+
const serializeTrackedRun = (record) => ({
|
|
13
|
+
tracking_key: record.trackingKey,
|
|
14
|
+
project_id: record.projectId,
|
|
15
|
+
workflow_id: record.workflowId,
|
|
16
|
+
dispatched_at: new Date(record.dispatchedAtMs).toISOString(),
|
|
17
|
+
run: record.run,
|
|
18
|
+
state: record.resolveState,
|
|
19
|
+
});
|
|
20
|
+
const emitTrackedRunUpdate = (record) => {
|
|
21
|
+
if (!ioReference) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
ioReference.emit('github-actions:updated', serializeTrackedRun(record));
|
|
25
|
+
};
|
|
26
|
+
const resolveRunId = async (record) => {
|
|
27
|
+
if (record.runId !== null || record.resolveAttempts >= MAX_RESOLVE_ATTEMPTS) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
record.resolveAttempts += 1;
|
|
31
|
+
try {
|
|
32
|
+
const runs = await listGitHubWorkflowRuns(record.config, record.workflowId);
|
|
33
|
+
const matchingRun = runs.find(candidate => {
|
|
34
|
+
if (!candidate.created_at) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
const createdAtMs = Date.parse(candidate.created_at);
|
|
38
|
+
if (!Number.isFinite(createdAtMs)) {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
return createdAtMs >= record.dispatchedAtMs - 1_000;
|
|
42
|
+
});
|
|
43
|
+
if (matchingRun) {
|
|
44
|
+
record.runId = matchingRun.id;
|
|
45
|
+
record.run = matchingRun;
|
|
46
|
+
record.resolveState = 'resolved';
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
if (record.resolveAttempts >= MAX_RESOLVE_ATTEMPTS) {
|
|
50
|
+
record.resolveState = 'not_visible';
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
catch (error) {
|
|
54
|
+
console.warn(`[github-actions] run resolution failed workflow=${record.workflowId}`, error);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
const refreshTrackedRun = async (record) => {
|
|
58
|
+
if (record.runId === null) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
try {
|
|
62
|
+
const [run, jobs] = await Promise.all([
|
|
63
|
+
getGitHubWorkflowRun(record.config, record.runId),
|
|
64
|
+
getGitHubWorkflowRunJobs(record.config, record.runId),
|
|
65
|
+
]);
|
|
66
|
+
record.run = { ...run, jobs };
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
console.warn(`[github-actions] run refresh failed run=${record.runId}`, error);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
const tick = async () => {
|
|
73
|
+
if (trackedRuns.size === 0) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
const records = [...trackedRuns.values()];
|
|
77
|
+
for (const record of records) {
|
|
78
|
+
if (Date.now() - record.dispatchedAtMs > TRACKED_RUN_TTL_MS) {
|
|
79
|
+
trackedRuns.delete(record.trackingKey);
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
if (isTerminalStatus(record.run)) {
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
try {
|
|
86
|
+
if (record.runId === null) {
|
|
87
|
+
await resolveRunId(record);
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
await refreshTrackedRun(record);
|
|
91
|
+
}
|
|
92
|
+
emitTrackedRunUpdate(record);
|
|
93
|
+
if (isTerminalStatus(record.run) || record.resolveState === 'not_visible') {
|
|
94
|
+
trackedRuns.delete(record.trackingKey);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
catch (error) {
|
|
98
|
+
console.warn(`[github-actions] poll tick failed tracking_key=${record.trackingKey}`, error);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
const ensurePolling = () => {
|
|
103
|
+
if (pollInterval) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
pollInterval = setInterval(() => {
|
|
107
|
+
void tick();
|
|
108
|
+
}, POLL_INTERVAL_MS);
|
|
109
|
+
};
|
|
110
|
+
const stopPolling = () => {
|
|
111
|
+
if (!pollInterval) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
clearInterval(pollInterval);
|
|
115
|
+
pollInterval = null;
|
|
116
|
+
};
|
|
117
|
+
export const trackGitHubActionsRun = (input) => {
|
|
118
|
+
ioReference = input.io;
|
|
119
|
+
const dispatchedAtMs = input.dispatchedAt ?? Date.now();
|
|
120
|
+
const record = {
|
|
121
|
+
trackingKey: randomUUID(),
|
|
122
|
+
projectId: input.projectId,
|
|
123
|
+
workflowId: input.workflowId,
|
|
124
|
+
dispatchedAtMs,
|
|
125
|
+
config: input.config,
|
|
126
|
+
runId: null,
|
|
127
|
+
run: null,
|
|
128
|
+
resolveAttempts: 0,
|
|
129
|
+
resolveState: 'resolving',
|
|
130
|
+
};
|
|
131
|
+
trackedRuns.set(record.trackingKey, record);
|
|
132
|
+
ensurePolling();
|
|
133
|
+
void resolveRunId(record).then(() => {
|
|
134
|
+
emitTrackedRunUpdate(record);
|
|
135
|
+
if (record.runId !== null && isTerminalStatus(record.run)) {
|
|
136
|
+
trackedRuns.delete(record.trackingKey);
|
|
137
|
+
}
|
|
138
|
+
}).catch(error => {
|
|
139
|
+
console.warn(`[github-actions] initial run resolution failed workflow=${input.workflowId}`, error);
|
|
140
|
+
});
|
|
141
|
+
return serializeTrackedRun(record);
|
|
142
|
+
};
|
|
143
|
+
export const untrackGitHubActionsRun = (trackingKey) => {
|
|
144
|
+
return trackedRuns.delete(trackingKey);
|
|
145
|
+
};
|
|
146
|
+
export const getTrackedGitHubActionsRuns = (projectId) => {
|
|
147
|
+
return [...trackedRuns.values()]
|
|
148
|
+
.filter(record => record.projectId === projectId)
|
|
149
|
+
.map(serializeTrackedRun);
|
|
150
|
+
};
|
|
151
|
+
export const getActiveTrackedRunCount = (projectId) => {
|
|
152
|
+
let activeCount = 0;
|
|
153
|
+
for (const record of trackedRuns.values()) {
|
|
154
|
+
if (record.projectId !== projectId) {
|
|
155
|
+
continue;
|
|
156
|
+
}
|
|
157
|
+
if (record.run === null || !isTerminalStatus(record.run)) {
|
|
158
|
+
activeCount += 1;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
return activeCount;
|
|
162
|
+
};
|
|
163
|
+
export const clearAllGitHubActionsSessions = () => {
|
|
164
|
+
trackedRuns.clear();
|
|
165
|
+
stopPolling();
|
|
166
|
+
return Promise.resolve();
|
|
167
|
+
};
|
|
168
|
+
//# sourceMappingURL=githubActionsSessions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"githubActionsSessions.js","sourceRoot":"","sources":["../../../../server/lib/integrations/githubActionsSessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,8 @@ import { normalizeSkillNames } from './skills.js';
|
|
|
7
7
|
import { createSpecSession, getSpecSession, deleteSpecSession, getTicketIdsForOriginSpecSession, getChatSessionIdsForOriginSpecSession, clearOriginSpecReferences, updateSpecSessionMode } from './specs.js';
|
|
8
8
|
import { getChatSession } from './chats.js';
|
|
9
9
|
import { getTicket } from './tickets.js';
|
|
10
|
+
import { markExternalIssueTracked } from './trackedExternalIssues.js';
|
|
11
|
+
import { clearCachedAssignedIssues } from './integrations/assignedIssuesCache.js';
|
|
10
12
|
import { startSpecSessionTurn } from '../workers/specSession.js';
|
|
11
13
|
const getPayloadValue = (payload, key) => {
|
|
12
14
|
return payload?.[key];
|
|
@@ -56,6 +58,10 @@ export const createProjectSpecSession = ({ projectId, payload, broadcaster, }) =
|
|
|
56
58
|
skills: normalizeSkillNames(getPayloadValue(payload, 'skills')),
|
|
57
59
|
externalSource: parseIncomingExternalSource(getPayloadValue(payload, 'external_source')),
|
|
58
60
|
});
|
|
61
|
+
if (specSession?.external_source) {
|
|
62
|
+
markExternalIssueTracked(project.id, specSession.external_source);
|
|
63
|
+
clearCachedAssignedIssues(project.id);
|
|
64
|
+
}
|
|
59
65
|
broadcaster.emit('spec-session:created', specSession);
|
|
60
66
|
return { ok: true, status: 201, value: specSession };
|
|
61
67
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specOperations.js","sourceRoot":"","sources":["../../../server/lib/specOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qCAAqC,EAAE,MAAM,kBAAkB,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,iBAAiB,EAAE,gCAAgC,EAAE,qCAAqC,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAC5M,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAShE,MAAM,eAAe,GAAG,CAAC,OAA6B,EAAE,GAAW,EAAE,EAAE;IACrE,OAAO,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,qBAAqB,GAAG,CAAC,SAAiB,EAAE,aAAqB,EAAE,EAAE;IACzE,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5E,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACzD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,KAAc,EAAY,EAAE;IACnD,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAc,EAAmB,EAAE;IACjE,OAAO,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAA;AACjD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,SAAS,EACT,OAAO,EACP,WAAW,GAKZ,EAA2C,EAAE;IAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IAC9D,MAAM,IAAI,GAAG,eAAe,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IAC9D,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACxD,MAAM,QAAQ,GAAG,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAA;IAC3F,MAAM,eAAe,GAAG,IAAI,KAAK,UAAU;QACzC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,IAAI;QACpC,CAAC,CAAC,IAAI,KAAK,QAAQ;YACjB,CAAC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,IAAI,IAAI;YAC1C,CAAC,CAAC,IAAI,CAAA;IACV,MAAM,gBAAgB,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAC5D,MAAM,iBAAiB,GAAG,IAAI,KAAK,UAAU,IAAI,eAAe,IAAI,OAAO,gBAAgB,KAAK,QAAQ;QACtG,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,IAAI;QACjC,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,eAAe;YACtC,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,IAAI;YAChC,CAAC,CAAC,IAAI,CAAA;IACV,MAAM,WAAW,GAAG,iBAAiB,CAAC;QACpC,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,IAAI;QACJ,IAAI;QACJ,KAAK,EAAE,eAAe;QACtB,OAAO,EAAE,iBAAiB;QAC1B,MAAM,EAAE,mBAAmB,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC/D,cAAc,EAAE,2BAA2B,CAAC,eAAe,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;KACzF,CAAC,CAAA;IAEF,WAAW,CAAC,IAAI,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAA;IACrD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;AACtD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,EAC3C,SAAS,EACT,aAAa,EACb,OAAO,EACP,WAAW,GAMZ,EAA2C,EAAE;IAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,cAAc,GAAG,qBAAqB,CAAC,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;IAC5G,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,WAAW,CAAC,IAAI,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAA;IACxD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,CAAA;AACzD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,EAC9C,SAAS,EACT,aAAa,EACb,OAAO,EACP,WAAW,GAMZ,EAA2C,EAAE;IAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,oBAAoB,GAAG,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IACpE,MAAM,WAAW,GAAG,OAAO,oBAAoB,KAAK,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAE/F,MAAM,sBAAsB,GAAG,eAAe,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAA;IACzE,IAAI,sBAAsB,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,EAAE,CAAC;QACxJ,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,6CAA6C,EAAE,CAAA;IACzF,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC;QACzD,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QACnE,CAAC,CAAC,EAAE,CAAA;IACN,IAAI,CAAC,WAAW,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,2CAA2C,EAAE,CAAA;IACvF,CAAC;IAED,MAAM,mBAAmB,GAAG,qCAAqC,CAAC;QAChE,aAAa,EAAE,QAAQ,CAAC,EAAE;QAC1B,aAAa;KACd,CAAC,CAAA;IACF,IAAI,CAAC,mBAAmB,CAAC,EAAE,EAAE,CAAC;QAC5B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,mBAAmB,CAAC,KAAK,EAAE,CAAA;IACrE,CAAC;IAED,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACxD,MAAM,QAAQ,GAAG,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAA;IAC3F,IAAI,QAAQ,GAAG,KAAK,CAAA;IAEpB,IAAI,CAAC;QACH,QAAQ,GAAG,oBAAoB,CAAC;YAC9B,aAAa,EAAE,QAAQ,CAAC,EAAE;YAC1B,WAAW;YACX,WAAW,EAAE,mBAAmB,CAAC,WAAW;YAC5C,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,KAAK,EAAE,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;YACrD,OAAO,EAAE,OAAO,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,CAAW,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc;YACzI,MAAM,EAAE,mBAAmB,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC/D,EAAE,EAAE,WAAW;SAChB,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;IAClG,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,uCAAuC,EAAE,CAAA;IACnF,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAA;AACzF,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAK,EAAE,EACnD,SAAS,EACT,aAAa,GAId,EAA8C,EAAE;IAC/C,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,WAAW,GAAG,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IACpE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IACnD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,iDAAiD,EAAE,CAAA;IAC7F,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAA;AACvD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,SAAS,EACT,aAAa,EACb,WAAW,GAKZ,EAAqC,EAAE;IACtC,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;IACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;IACvD,CAAC;IAED,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACtC,kEAAkE;IACpE,CAAC,CAAC,CAAA;IAEF,MAAM,iBAAiB,GAAG,gCAAgC,CAAC,aAAa,CAAC,CAAA;IACzE,MAAM,sBAAsB,GAAG,qCAAqC,CAAC,aAAa,CAAC,CAAA;IAEnF,yBAAyB,CAAC,aAAa,CAAC,CAAA;IACxC,iBAAiB,CAAC,aAAa,CAAC,CAAA;IAEhC,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;QAClC,IAAI,MAAM,EAAE,CAAC;YACX,WAAW,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;IACD,KAAK,MAAM,aAAa,IAAI,sBAAsB,EAAE,CAAC;QACnD,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,CAAA;QACjD,IAAI,WAAW,EAAE,CAAC;YAChB,WAAW,CAAC,IAAI,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IAED,WAAW,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;IACvF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAA;AACvD,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"specOperations.js","sourceRoot":"","sources":["../../../server/lib/specOperations.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,8 @@ import { getEffectiveProject } from './projects.js';
|
|
|
7
7
|
import { getSpecSession } from './specs.js';
|
|
8
8
|
import { assignTicketLaneOrder, autoParkTicketIfStale, getTicket, resolveTicketTool } from './tickets.js';
|
|
9
9
|
import { getBundleAutomationState, recordAutomationPause } from './ticketAutomation.js';
|
|
10
|
+
import { markExternalIssueTracked } from './trackedExternalIssues.js';
|
|
11
|
+
import { clearCachedAssignedIssues } from './integrations/assignedIssuesCache.js';
|
|
10
12
|
import { startBuild } from '../workers/build.js';
|
|
11
13
|
import { startReview } from '../workers/review.js';
|
|
12
14
|
const VALID_TICKET_STATES = ['plan', 'build', 'review'];
|
|
@@ -76,6 +78,10 @@ export const transitionTicketState = ({ ticketId, requestedState, requestedProje
|
|
|
76
78
|
};
|
|
77
79
|
}
|
|
78
80
|
broadcaster.emit('ticket:updated', buildTransition.ticket);
|
|
81
|
+
if (buildTransition.ticket.project_id && buildTransition.ticket.external_source) {
|
|
82
|
+
markExternalIssueTracked(buildTransition.ticket.project_id, buildTransition.ticket.external_source);
|
|
83
|
+
clearCachedAssignedIssues(buildTransition.ticket.project_id);
|
|
84
|
+
}
|
|
79
85
|
const originSpecSessionId = buildTransition.ticket.origin_spec_session_id ?? null;
|
|
80
86
|
if (originSpecSessionId) {
|
|
81
87
|
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);
|
|
@@ -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;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AACzG,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"ticketWorkflowOperations.js","sourceRoot":"","sources":["../../../server/lib/ticketWorkflowOperations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { randomUUID } from 'crypto';
|
|
2
|
+
import db from '../db.js';
|
|
3
|
+
const insertTrackedIssueStatement = db.prepare(`INSERT OR IGNORE INTO tracked_external_issues (id, project_id, external_provider, external_id, external_key, external_url)
|
|
4
|
+
VALUES (?, ?, ?, ?, ?, ?)`);
|
|
5
|
+
export const markExternalIssueTracked = (projectId, source) => {
|
|
6
|
+
if (!source) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
if (source.provider !== 'github' && source.provider !== 'jira') {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
if (!source.external_key) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
insertTrackedIssueStatement.run(randomUUID(), projectId, source.provider, source.external_id || null, source.external_key, source.external_url ?? null);
|
|
16
|
+
};
|
|
17
|
+
export const getTrackedExternalIssueKeys = (projectId) => {
|
|
18
|
+
const rows = db.prepare('SELECT external_provider, external_key FROM tracked_external_issues WHERE project_id = ?').all(projectId);
|
|
19
|
+
const trackedKeys = new Map();
|
|
20
|
+
for (const row of rows) {
|
|
21
|
+
if (row.external_provider !== 'github' && row.external_provider !== 'jira') {
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
if (!row.external_key) {
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
27
|
+
const providerSet = trackedKeys.get(row.external_provider) ?? new Set();
|
|
28
|
+
providerSet.add(row.external_key);
|
|
29
|
+
trackedKeys.set(row.external_provider, providerSet);
|
|
30
|
+
}
|
|
31
|
+
return trackedKeys;
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=trackedExternalIssues.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trackedExternalIssues.js","sourceRoot":"","sources":["../../../server/lib/trackedExternalIssues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAEnC,OAAO,EAAE,MAAM,UAAU,CAAA;AAQzB,MAAM,2BAA2B,GAAG,EAAE,CAAC,OAAO,CAC5C;6BAC2B,CAC5B,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,SAAiB,EACjB,MAA+C,EACzC,EAAE;IACR,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAM;IACR,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC/D,OAAM;IACR,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QACzB,OAAM;IACR,CAAC;IAED,2BAA2B,CAAC,GAAG,CAC7B,UAAU,EAAE,EACZ,SAAS,EACT,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,WAAW,IAAI,IAAI,EAC1B,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,YAAY,IAAI,IAAI,CAC5B,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,SAAiB,EAAyC,EAAE;IACtG,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,0FAA0F,CAC3F,CAAC,GAAG,CAAC,SAAS,CAA8B,CAAA;IAE7C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoC,CAAA;IAC/D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,iBAAiB,KAAK,QAAQ,IAAI,GAAG,CAAC,iBAAiB,KAAK,MAAM,EAAE,CAAC;YAC3E,SAAQ;QACV,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YACtB,SAAQ;QACV,CAAC;QAED,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,IAAI,GAAG,EAAU,CAAA;QAC/E,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACjC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAA;IACrD,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@straiffi/archon",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.7",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"type": "module",
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
"cors": "^2.8.6",
|
|
39
39
|
"express": "^5.2.1",
|
|
40
40
|
"i18next": "^26.0.8",
|
|
41
|
+
"js-yaml": "^4.1.0",
|
|
41
42
|
"multer": "^2.1.1",
|
|
42
43
|
"node-pty": "^1.1.0",
|
|
43
44
|
"socket.io": "^4.8.3",
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./chunk-BNv3lrIs.js";import{A as t,C as n,D as r,E as i,F as a,M as o,N as s,O as c,P as l,S as u,T as d,_ as f,a as p,b as m,c as ee,d as h,f as g,g as _,h as te,i as v,j as y,k as ne,l as b,m as x,n as S,o as C,p as w,r as T,s as E,u as re,v as D,w as ie,x as ae,y as O}from"./index-CT3aYWb0.js";var k=e(a(),1),oe=(e,t)=>l(o(`/projects/${e}/test-sessions`),{method:`POST`,body:t,fallbackErrorMessage:`Unable to open the test runner right now.`}),se=(e,t)=>l(o(`/tickets/${e}/test-sessions${t?`?project_id=${encodeURIComponent(t)}`:``}`),{method:`POST`,fallbackErrorMessage:`Unable to open the test runner right now.`}),ce=(e,t={})=>l(o(`/test-sessions/${e}/discovery${t.commandId?`?command_id=${encodeURIComponent(t.commandId)}`:``}`),{signal:t.signal,fallbackErrorMessage:`Unable to discover tests right now.`}),le=(e,t)=>l(o(`/test-sessions/${e}/run`),{method:`POST`,body:t,fallbackErrorMessage:`Unable to start the selected tests right now.`}),ue=e=>l(o(`/test-sessions/${e}/stop`),{method:`POST`,fallbackErrorMessage:`Unable to stop the test run right now.`}),de=e=>s(o(`/test-sessions/${e}`),{method:`DELETE`,fallbackErrorMessage:`Unable to close the test runner right now.`}),A=t(),j=256*1024,M=24,N=RegExp(`\x1B\\[[0-9;?]*[ -/]*[@-~]`,`g`),P=(e,t)=>E.t(`common:testsDialog.${e}`,t),fe=(e,t)=>{let n=`${e}${t}`;return n.length<=j?n:n.slice(-j)},F=e=>e.replace(N,``),pe=e=>e.scrollHeight-e.scrollTop-e.clientHeight<=M,I=e=>{e.scrollTop=e.scrollHeight},me=(e,t=!1)=>{I(e);let n=0,r=0;return n=window.requestAnimationFrame(()=>{I(e),t&&(r=window.requestAnimationFrame(()=>{I(e)}))}),()=>{window.cancelAnimationFrame(n),r!==0&&window.cancelAnimationFrame(r)}},he=e=>{if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.flatMap(e=>{if(!e||typeof e!=`object`||Array.isArray(e))return[];let t=e;if(typeof t.id!=`string`||typeof t.name!=`string`||typeof t.command!=`string`)return[];let n=t.runner===`vitest`||t.runner===`jest`||t.runner===`unknown`?t.runner:`auto`;return[{id:t.id,name:t.name,command:t.command,runner:n,...typeof t.cwd==`string`&&t.cwd.trim()!==``?{cwd:t.cwd}:{}}]}):[]}catch{return[]}},L=e=>e===`running`?`border-sky-400/40 bg-sky-500/10 text-sky-200`:e===`passed`?`border-emerald-400/40 bg-emerald-500/10 text-emerald-200`:e===`failed`||e===`error`?`border-rose-400/40 bg-rose-500/10 text-rose-200`:e===`stopped`?`border-amber-400/40 bg-amber-500/10 text-amber-200`:`border-border/70 bg-background/60 text-muted-foreground`,ge=e=>e==null?null:e<1e3?`${e} ms`:`${(e/1e3).toFixed(e>=1e4?0:1)} s`,R=e=>{let t=e.split(`/`);return t[t.length-1]||e},z=e=>e.toLowerCase().trim().split(/\s+/).filter(Boolean),B=(e,t)=>e.length===0?!0:e.every(e=>t.some(t=>t.includes(e))),V=(e,t)=>{let n=z(t);return n.length===0?e:e.flatMap(e=>{let t=R(e.path);if(B(n,[t.toLowerCase(),e.path.toLowerCase()]))return[e];let r=e.cases.filter(r=>B(n,[t.toLowerCase(),e.path.toLowerCase(),r.name.toLowerCase()]));return r.length===0?[]:[{...e,cases:r}]})},H=e=>P(e===`passed`?`status.passed`:e===`failed`?`status.failed`:e===`running`?`status.running`:e===`error`?`status.error`:e===`stopped`?`status.stopped`:`status.idle`),_e=e=>e?.selection?e.selection.kind===`all`?P(`selection.allTests`):e.selection.kind===`case`?e.selection.name:R(e.selection.path):P(`selection.noRunYet`),U=e=>/(^|\s)(?:FAIL|✗)(\s|$)|\b(?:failed|error|stderr|Expected:|Received:)\b/i.test(e)?`failure`:/(^|\s)(?:PASS|✓)(\s|$)|\bpassed\b/i.test(e)?`success`:/\b(?:WARN|warning|skipped|todo|pending)\b/i.test(e)?`warning`:`default`,W=e=>e===`failure`?`text-rose-200`:e===`success`?`text-emerald-200`:e===`warning`?`text-amber-200`:`text-slate-200`,G=(e,t)=>e===t?!0:e.length===t.length?e.every((e,n)=>{let r=t[n];return r!=null&&e.id===r.id&&e.name===r.name&&e.command===r.command&&e.cwd===r.cwd&&e.runner===r.runner}):!1,ve=`min-w-24 justify-center shadow-none transition-none disabled:opacity-100`,K=({line:e,tone:t})=>(0,A.jsx)(`div`,{"data-tone":t,className:c(`whitespace-pre-wrap break-words`,W(t)),children:e===``?` `:e}),q=(0,k.memo)(({canRunGranular:e,filePath:t,isActive:n,name:r,onRunCase:i})=>(0,A.jsxs)(`button`,{type:`button`,"aria-label":P(`caseRow.runAriaLabel`,{name:r}),title:r,className:c(`flex w-full min-w-0 items-center gap-2.5 rounded-xl px-2.5 py-1.5 text-left transition-colors outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,e?`cursor-pointer hover:bg-sky-500/10`:`cursor-not-allowed opacity-60`,n&&`bg-sky-500/10`),disabled:!e,onClick:()=>{i(t,r)},children:[(0,A.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full bg-sky-300/80`}),(0,A.jsx)(`span`,{className:`truncate text-xs text-foreground`,children:r})]}));q.displayName=`TestCaseRow`;var J=(0,k.memo)(({activeSelectionKind:e,activeSelectionName:t,activeSelectionPath:n,canRunGranular:i,file:a,isExpanded:o,onRunCase:s,onRunFile:l,onToggleFile:u})=>{let d=e===`file`&&n===a.path,f=e===`case`&&n===a.path;return(0,A.jsx)(T,{open:o,onOpenChange:e=>{u(a.path,e)},children:(0,A.jsxs)(`div`,{className:`space-y-1`,children:[(0,A.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,A.jsx)(p,{asChild:!0,children:(0,A.jsx)(r,{type:`button`,variant:`ghost`,size:`icon-xs`,"aria-label":P(o?`fileRow.collapseAriaLabel`:`fileRow.expandAriaLabel`,{path:a.path}),className:`mt-1 shrink-0 text-muted-foreground hover:text-foreground`,children:(0,A.jsx)(D,{className:c(`h-4 w-4 transition-transform`,o&&`rotate-180`)})})}),(0,A.jsx)(`button`,{type:`button`,"aria-label":P(`fileRow.runAriaLabel`,{path:a.path}),className:c(`min-w-0 flex-1 rounded-xl border border-border/60 bg-background/20 px-2.5 py-2 text-left transition-colors outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,i?`cursor-pointer hover:border-sky-400/35 hover:bg-sky-500/10`:`cursor-not-allowed opacity-60`,(d||f)&&`border-sky-400/45 bg-sky-500/10`),disabled:!i,onClick:()=>{l(a.path)},children:(0,A.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2.5`,children:[(0,A.jsx)(`span`,{className:`flex size-6 shrink-0 items-center justify-center rounded-md border border-border/70 bg-background/60 text-sky-200`,children:(0,A.jsx)(S,{className:`h-3.5 w-3.5`})}),(0,A.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-start justify-between gap-3`,children:[(0,A.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,A.jsx)(`span`,{className:`block truncate text-xs font-medium text-foreground`,children:R(a.path)}),(0,A.jsx)(`span`,{className:`mt-0.5 block truncate text-[11px] text-muted-foreground`,children:a.path})]}),(0,A.jsx)(`span`,{className:`shrink-0 text-[11px] text-muted-foreground`,children:P(`fileRow.testCount`,{count:a.cases.length})})]})]})})]}),(0,A.jsx)(v,{children:(0,A.jsx)(`div`,{className:`ml-4 border-l border-border/60 pl-6`,children:a.cases.length===0?(0,A.jsx)(`p`,{className:`px-2.5 py-1.5 text-xs text-muted-foreground`,children:P(`fileRow.noNamedTests`)}):(0,A.jsx)(`div`,{className:`space-y-1`,children:a.cases.map(r=>{let o=e===`case`&&n===a.path&&t===r.name;return(0,A.jsx)(q,{canRunGranular:i,filePath:a.path,isActive:o,name:r.name,onRunCase:s},r.id)})})})})]})})});J.displayName=`DiscoveryFileRow`;var ye=(0,k.memo)(({activeSelectionKind:e,activeSelectionName:t,activeSelectionPath:n,availableCommands:i,canRunGranular:a,discovery:o,expandedFiles:s,fullSuiteOnlyNotice:l,isLoading:u,selectedCommandId:d,selectedCommandName:f,sessionError:p,sessionStatus:m,shouldShowCommandSelector:te,onRunCase:v,onRunFile:y,onSelectCommand:ne,onToggleFile:b})=>{let[x,S]=(0,k.useState)(``),C=(0,k.useMemo)(()=>V(o,x),[o,x]),T=(0,k.useMemo)(()=>C.reduce((e,t)=>e+t.cases.length,0),[C]),E=z(x).length>0;return(0,A.jsx)(`aside`,{className:`min-h-0 border-b border-border/70 px-4 py-4 lg:border-r lg:border-b-0`,children:(0,A.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-3`,children:[te&&(0,A.jsxs)(`div`,{className:`space-y-2`,children:[(0,A.jsx)(`p`,{className:`text-xs uppercase tracking-[0.22em] text-muted-foreground`,children:P(`scope.label`)}),(0,A.jsxs)(re,{children:[(0,A.jsx)(w,{asChild:!0,children:(0,A.jsxs)(r,{type:`button`,variant:`outline`,className:`w-full justify-between rounded-xl border-border/70 bg-background/60`,"aria-label":P(`scope.selectedCommandAriaLabel`),disabled:i.length===0||m===`running`,children:[(0,A.jsx)(`span`,{className:`truncate`,children:f??P(`scope.selectTestScope`)}),(0,A.jsx)(D,{className:`h-4 w-4 text-muted-foreground`})]})}),(0,A.jsx)(h,{align:`start`,className:`w-72`,children:i.map(e=>(0,A.jsx)(g,{className:c(d===e.id&&`bg-accent text-accent-foreground`),onSelect:()=>{ne(e.id)},children:(0,A.jsx)(`span`,{className:`truncate`,children:e.name})},e.id))})]})]}),l&&(0,A.jsx)(`div`,{className:`rounded-2xl border border-border/70 bg-background/30 px-4 py-3 text-sm text-muted-foreground`,children:l}),(o.length>0||x.length>0)&&(0,A.jsxs)(`div`,{className:`relative mt-1 shrink-0`,children:[(0,A.jsx)(O,{type:`search`,value:x,onChange:e=>{S(e.target.value)},placeholder:P(`filter.placeholder`),"aria-label":P(`filter.ariaLabel`),className:`pr-10`}),x.length>0&&(0,A.jsx)(r,{type:`button`,variant:`ghost`,size:`icon-sm`,"aria-label":P(`filter.clearAriaLabel`),className:`absolute right-1 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground`,onClick:()=>{S(``)},children:(0,A.jsx)(ee,{className:`size-4`})})]}),!i.length&&(0,A.jsx)(`div`,{className:`rounded-2xl border border-dashed border-border/70 bg-background/20 px-4 py-4 text-sm text-muted-foreground`,children:P(`discovery.noCommands`)}),p&&(0,A.jsx)(`div`,{className:`rounded-2xl border border-rose-500/30 bg-rose-500/10 px-4 py-3 text-sm text-rose-200`,children:p}),(0,A.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-3 overflow-hidden rounded-2xl border border-border/70 bg-background/20 p-4`,children:[(0,A.jsxs)(`div`,{className:`shrink-0 flex items-start justify-between gap-3`,children:[(0,A.jsx)(`div`,{className:`min-w-0`,children:(0,A.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[P(`discovery.fileCount`,{count:C.length}),`, `,P(`discovery.caseCount`,{count:T})]})}),u&&(0,A.jsx)(_,{className:`h-4 w-4 animate-spin text-muted-foreground`})]}),(0,A.jsx)(`div`,{className:`min-h-0 flex-1 space-y-2 overflow-y-auto pr-1`,children:o.length===0&&!u?(0,A.jsx)(`div`,{className:`rounded-2xl border border-dashed border-border/70 bg-background/20 px-4 py-5 text-sm text-muted-foreground`,children:P(`discovery.noFilesDetected`)}):C.length===0?(0,A.jsx)(`div`,{className:`rounded-2xl border border-dashed border-border/70 bg-background/20 px-4 py-5 text-sm text-muted-foreground`,children:P(`discovery.noFilterMatches`)}):C.map(r=>(0,A.jsx)(J,{activeSelectionKind:e,activeSelectionName:t,activeSelectionPath:n,canRunGranular:a,file:r,isExpanded:E||(s[r.path]??!1),onRunCase:v,onRunFile:y,onToggleFile:b},r.path))})]})]})})});ye.displayName=`DiscoveryPane`;var be=(0,k.memo)(({durationMs:e,output:t,outputTruncated:n,selectionLabel:r,status:i,summaryCounts:a,viewportRef:o,onScroll:s})=>{let l=(0,k.useMemo)(()=>t?F(t).replaceAll(`\r
|
|
2
|
-
`,`
|
|
3
|
-
`).replaceAll(`\r`,`
|
|
4
|
-
`).split(`
|
|
5
|
-
`).map(e=>({line:e,tone:U(e)})):[],[t]);return(0,A.jsx)(`section`,{className:`min-h-0 px-4 py-4`,children:(0,A.jsxs)(`div`,{className:`flex h-full flex-col gap-3`,children:[(0,A.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-sm`,children:[(0,A.jsx)(`span`,{className:`font-medium text-foreground`,children:r}),i&&(0,A.jsx)(C,{variant:`outline`,className:c(`px-3 py-1 text-xs uppercase tracking-[0.2em]`,L(i)),children:H(i)}),a&&(0,A.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2 text-xs font-medium uppercase tracking-[0.18em]`,children:[(0,A.jsxs)(`span`,{className:`text-rose-200`,children:[a.failed.count,` `,a.failed.label]}),(0,A.jsxs)(`span`,{className:`text-emerald-200`,children:[a.passed.count,` `,a.passed.label]})]}),e!=null&&(0,A.jsx)(`span`,{className:`text-muted-foreground`,children:ge(e)}),n&&(0,A.jsx)(C,{variant:`outline`,className:`border-amber-400/30 bg-amber-500/10 text-amber-200`,children:P(`output.trimmed`)})]}),(0,A.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden rounded-2xl border border-border/70 bg-[#0d1017]`,children:(0,A.jsx)(`div`,{ref:o,"aria-label":P(`output.ariaLabel`),className:`h-full overflow-auto px-4 py-4`,onScroll:s,children:(0,A.jsx)(`div`,{className:`font-mono text-xs leading-5`,children:l.length>0?l.map((e,t)=>(0,A.jsx)(K,{line:e.line,tone:e.tone},`${t}:${e.line}`)):(0,A.jsx)(`div`,{className:`text-slate-200`,children:P(`output.empty`)})})})})]})})});be.displayName=`OutputPane`;var xe=({testCommands:e,onClose:t,...a})=>{let o=a.scope,s=a.projectId,c=a.scope===`ticket`?a.ticketId:null,l=a.scope===`project`?a.targetKind:null,p=a.scope===`project`?a.targetBundleId:null,[h,g]=(0,k.useState)(e),[_,v]=(0,k.useState)(null),[S,C]=(0,k.useState)([]),[w,T]=(0,k.useState)(``),[E,re]=(0,k.useState)({}),[D,O]=(0,k.useState)(!0),[j,M]=(0,k.useState)(!1),[N,F]=(0,k.useState)(!1),[I,L]=(0,k.useState)(null),[ge,R]=(0,k.useState)(!1),[z,B]=(0,k.useState)(!1),V=(0,k.useRef)(null),H=(0,k.useRef)(!1),U=(0,k.useRef)(null),W=(0,k.useRef)(!0),K=(0,k.useRef)(null),q=(0,k.useRef)(null),J=_?.selection?.kind??null,xe=_?.selection?.kind===`all`?null:_?.selection?.path??null,Se=_?.selection?.kind===`case`?_.selection.name:null,Y=_?.id??null,X=_?.status??null,Z=(0,k.useMemo)(()=>h.find(e=>e.id===w)??null,[h,w]),Ce=(0,k.useMemo)(()=>{if(_?.summary?.failed_count==null&&_?.summary?.passed_count==null&&_?.summary?.failed_file_count==null&&_?.summary?.passed_file_count==null)return null;let e=_?.summary?.failed_count==null&&_?.summary?.passed_count==null;return{failed:X===`failed`&&_?.summary?.failed_count==null&&_?.summary?.failed_file_count!=null||e?{count:_?.summary?.failed_file_count??0,label:P(`summaryCounts.filesFailed`)}:{count:_?.summary?.failed_count??0,label:P(`summaryCounts.failed`)},passed:e?{count:_?.summary?.passed_file_count??0,label:P(`summaryCounts.filesPassed`)}:{count:_?.summary?.passed_count??_?.summary?.passed_file_count??0,label:P(`summaryCounts.passed`)}}},[_?.summary?.failed_count,_?.summary?.passed_count,_?.summary?.failed_file_count,_?.summary?.passed_file_count,X]),we=Z?.runner===`unknown`?P(`scope.fullSuiteOnlyNotice`):null,Te=!!(Z&&_?.status!==`running`&&!j&&!N),Ee=Te,De=Te&&z,Oe=h.length>1;(0,k.useEffect)(()=>{w||h.length===0||T(h[0]?.id??``)},[h,w]),(0,k.useEffect)(()=>{e.length>0&&g(t=>G(t,e)?t:e)},[e]),(0,k.useEffect)(()=>{if(h.length>0||!s)return;let e=new AbortController;return ne(e.signal).then(e=>{let t=e.find(e=>e.id===s);t&&g(e=>{let n=he(t.test_commands);return G(e,n)?e:n})}).catch(()=>{}),()=>{e.abort()}},[h.length,s]),(0,k.useEffect)(()=>{let e=e=>{!e||e.id!==V.current||v(e)},t=e=>{!e||e.session_id!==V.current||v(t=>!t||t.id!==e.session_id?t:{...t,output:fe(t.output,e.chunk),output_truncated:e.output_truncated})};return b.on(`test-session:updated`,e),b.on(`test-session:output`,t),()=>{b.off(`test-session:updated`,e),b.off(`test-session:output`,t)}},[]),(0,k.useEffect)(()=>{let e=U.current;if(!e){K.current=_?.output??null,q.current=_?.status??null;return}let t=K.current!==(_?.output??null),n=q.current!==`running`&&_?.status===`running`,r=q.current===`running`&&_?.status!==`running`;if(n&&(W.current=!0),n||t&&_?.status===`running`&&W.current||r&&W.current){let t=me(e,r);return K.current=_?.output??null,q.current=_?.status??null,t}K.current=_?.output??null,q.current=_?.status??null},[_?.output,_?.status]),(0,k.useEffect)(()=>{let e=!1;return(async()=>{try{let t=o===`project`?await oe(s,{target_kind:l??`repo_root`,target_bundle_id:p??null}):await se(c??``,s);if(e)return;V.current=t.id,v(t)}catch(t){e||L(t instanceof y?t.message:P(`messages.loadRunnerError`))}finally{!e&&V.current==null&&O(!1)}})(),()=>{e=!0}},[s,o,p,l,c]),(0,k.useEffect)(()=>{if(!_?.id){B(!1);return}if(h.length>0&&!w){B(!1);return}let e=new AbortController,t=!1;return O(!0),B(!1),ce(_.id,{commandId:w||null,signal:e.signal}).then(e=>{t||(C(e.files),B(e.supports_granular_selection))}).catch(n=>{t||e.signal.aborted||L(n instanceof y?n.message:P(`messages.discoverError`))}).finally(()=>{t||O(!1)}),()=>{t=!0,e.abort()}},[h.length,w,_?.id]),(0,k.useEffect)(()=>()=>{let e=V.current;!e||H.current||(H.current=!0,de(e).catch(()=>{}))},[]);let Q=(0,k.useCallback)(async e=>{if(!(!Y||X===`running`||!Z||j||N)){L(null),M(!0);try{v(await le(Y,{command_id:Z.id,selection:e}))}catch(e){L(e instanceof y?e.message:P(`messages.startError`))}finally{M(!1)}}},[j,N,Z,Y,X]),ke=(0,k.useCallback)(async()=>{if(!(!Y||X!==`running`||N)){L(null),F(!0);try{v(await ue(Y))}catch(e){L(e instanceof y?e.message:P(`messages.stopError`))}finally{F(!1)}}},[N,Y,X]),$=(0,k.useCallback)(()=>{let e=V.current;if(!e||H.current){t();return}H.current=!0,t(),de(e).catch(()=>{})},[t]),Ae=(0,k.useCallback)(()=>{if(X===`running`){R(!0);return}$()},[$,X]),je=(0,k.useCallback)(()=>{let e=U.current;e&&(W.current=pe(e))},[]),Me=(0,k.useCallback)(e=>{T(e)},[]),Ne=(0,k.useCallback)((e,t)=>{re(n=>(n[e]??!1)===t?n:{...n,[e]:t})},[]),Pe=(0,k.useCallback)(e=>{Q({kind:`file`,path:e})},[Q]),Fe=(0,k.useCallback)((e,t)=>{Q({kind:`case`,path:e,name:t})},[Q]);return(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(m,{open:!0,onOpenChange:e=>{e||Ae()},children:(0,A.jsxs)(u,{showCloseButton:!1,overlayClassName:`bg-black/70`,className:`flex h-[calc(100vh-2rem)] max-h-[58rem] w-full max-w-[calc(100%-1rem)] flex-col gap-0 overflow-hidden rounded-3xl border border-[#2a2a38] bg-[#16161f] p-0 shadow-2xl sm:max-w-7xl`,onInteractOutside:e=>e.preventDefault(),children:[(0,A.jsx)(i,{className:`sr-only`,children:P(`dialog.srTitle`)}),(0,A.jsx)(n,{className:`sr-only`,children:P(`dialog.srDescription`)}),(0,A.jsxs)(`div`,{className:`flex items-start justify-between gap-4 border-b border-border px-6 py-4`,children:[(0,A.jsx)(`div`,{className:`min-w-0`,children:(0,A.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,A.jsx)(`div`,{className:`flex size-10 shrink-0 items-center justify-center rounded-2xl border border-border/70 bg-background/60 text-sky-200`,children:(0,A.jsx)(f,{className:`h-5 w-5`})}),(0,A.jsxs)(`div`,{children:[(0,A.jsx)(`h2`,{className:`text-2xl font-semibold text-foreground`,children:P(`dialog.title`)}),(0,A.jsx)(`p`,{className:`mt-1 text-sm text-muted-foreground`,children:_?.target_label??P(`dialog.preparingTarget`)})]})]})}),(0,A.jsx)(ae,{asChild:!0,children:(0,A.jsx)(r,{type:`button`,"aria-label":P(`dialog.closeAriaLabel`),variant:`ghost`,size:`icon-sm`,className:`cursor-pointer text-muted-foreground hover:text-foreground`,children:(0,A.jsx)(ee,{className:`h-4 w-4`})})})]}),(0,A.jsxs)(`div`,{className:`grid min-h-0 flex-1 gap-0 lg:grid-cols-[22rem_minmax(0,1fr)]`,children:[(0,A.jsx)(ye,{activeSelectionKind:J,activeSelectionName:Se,activeSelectionPath:xe,availableCommands:h,canRunGranular:De,discovery:S,expandedFiles:E,fullSuiteOnlyNotice:we,isLoading:D,selectedCommandId:w,selectedCommandName:Z?.name??null,sessionError:I,sessionStatus:X,shouldShowCommandSelector:Oe,onRunCase:Fe,onRunFile:Pe,onSelectCommand:Me,onToggleFile:Ne}),(0,A.jsx)(be,{durationMs:_?.duration_ms??null,output:_?.output??``,outputTruncated:_?.output_truncated??!1,selectionLabel:_e(_),status:X,summaryCounts:Ce,viewportRef:U,onScroll:je})]}),(0,A.jsx)(ie,{className:`border-t border-border/70 px-6 py-4 sm:flex-row sm:items-center sm:justify-end`,children:(0,A.jsx)(`div`,{className:`flex items-center justify-end gap-2`,children:_?.status===`running`?(0,A.jsxs)(r,{type:`button`,variant:`destructive`,className:ve,onClick:()=>{ke()},disabled:N,children:[(0,A.jsx)(x,{className:`h-4 w-4`}),(0,A.jsx)(`span`,{children:P(`actions.stop`)})]}):(0,A.jsxs)(r,{type:`button`,variant:`success`,className:ve,disabled:!Ee,onClick:()=>{Q({kind:`all`})},children:[(0,A.jsx)(te,{className:`h-4 w-4`}),(0,A.jsx)(`span`,{children:P(`actions.run`)})]})})})]})}),(0,A.jsx)(m,{open:ge,onOpenChange:R,children:(0,A.jsxs)(u,{showCloseButton:!1,overlayClassName:`z-[60] bg-black/60`,className:`z-[60] max-w-md rounded-2xl border border-border bg-card p-6 shadow-2xl`,children:[(0,A.jsxs)(d,{children:[(0,A.jsx)(i,{className:`text-sm font-semibold uppercase tracking-widest text-muted-foreground`,children:P(`closeConfirmation.title`)}),(0,A.jsx)(n,{className:`text-sm text-foreground whitespace-pre-line`,children:P(`closeConfirmation.description`)})]}),(0,A.jsxs)(ie,{className:`sm:flex-row sm:justify-end`,children:[(0,A.jsx)(r,{type:`button`,variant:`ghost`,onClick:()=>R(!1),children:P(`closeConfirmation.keepRunning`)}),(0,A.jsx)(r,{type:`button`,variant:`destructive`,onClick:()=>{R(!1),$()},children:P(`closeConfirmation.stopAndClose`)})]})]})})]})};export{xe as TestsDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-NNHCCRGN-C4ci-Gd6.js";import{n as e}from"./chunk-4EGX6M5U-DTB6Um9X.js";export{e as createArchitectureServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{at as e,ot as t}from"./chunk-CSCIHK7Q-BmXd8_5X.js";var n=(n,r)=>t.lang.round(e.parse(n)[r]);export{n as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e}from"./src-BcaL9nCM.js";var t=class{constructor(e){this.init=e,this.records=this.init()}static{e(this,`ImperativeState`)}reset(){this.records=this.init()}};export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e,p as t}from"./src-BcaL9nCM.js";import{x as n}from"./chunk-CSCIHK7Q-BmXd8_5X.js";var r=e(e=>{let{securityLevel:r}=n(),i=t(`body`);return r===`sandbox`&&(i=t((t(`#i${e}`).node()?.contentDocument??document).body)),i.select(`#${e}`)},`selectSvgElement`);export{r as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e}from"./src-BcaL9nCM.js";import"./chunk-CSCIHK7Q-BmXd8_5X.js";import"./chunk-5ZQYHXKU-mt5W2CGF.js";import"./chunk-O5CBEL6O-BX5VWTmZ.js";import"./chunk-FMBD7UC4-mGY2D2YB.js";import"./chunk-BSJP7CBP-X4eyoSqE.js";import"./chunk-L5ZTLDWV-CRVFCsvJ.js";import"./chunk-ND2GUHAM-BYAb7NsA.js";import"./chunk-55IACEB6-BB-0ajVZ.js";import"./chunk-2J33WTMH-Dh6TqsDY.js";import"./chunk-NZK2D7GU-DUI0mwZm.js";import"./chunk-3OPIFGDE-BI6L9trS.js";import"./chunk-KSCS5N6A-DJIqk8ji.js";import"./chunk-LZXEDZCA-CRla8IXQ.js";import{i as t,n,r,t as i}from"./chunk-727SXJPM-D7IvpFAq.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e}from"./src-BcaL9nCM.js";import"./chunk-CSCIHK7Q-BmXd8_5X.js";import"./chunk-5ZQYHXKU-mt5W2CGF.js";import"./chunk-O5CBEL6O-BX5VWTmZ.js";import"./chunk-FMBD7UC4-mGY2D2YB.js";import"./chunk-BSJP7CBP-X4eyoSqE.js";import"./chunk-L5ZTLDWV-CRVFCsvJ.js";import"./chunk-ND2GUHAM-BYAb7NsA.js";import"./chunk-55IACEB6-BB-0ajVZ.js";import"./chunk-2J33WTMH-Dh6TqsDY.js";import"./chunk-NZK2D7GU-DUI0mwZm.js";import"./chunk-3OPIFGDE-BI6L9trS.js";import"./chunk-KSCS5N6A-DJIqk8ji.js";import"./chunk-LZXEDZCA-CRla8IXQ.js";import{i as t,n,r,t as i}from"./chunk-727SXJPM-D7IvpFAq.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-NNHCCRGN-C4ci-Gd6.js";import{n as e}from"./chunk-N66VUXT2-Bpe4yprw.js";export{e as createEventModelingServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-NNHCCRGN-C4ci-Gd6.js";import{n as e}from"./chunk-UIBZB4QT-Cp2xSKlH.js";export{e as createGitGraphServices};
|