patchrelay 0.23.0 → 0.23.2
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/build-info.json
CHANGED
|
@@ -19,14 +19,14 @@ const STATE_SHORT = {
|
|
|
19
19
|
preparing: "prep",
|
|
20
20
|
implementing: "impl",
|
|
21
21
|
pr_open: "pr open",
|
|
22
|
-
changes_requested: "
|
|
22
|
+
changes_requested: "review fix",
|
|
23
23
|
repairing_ci: "ci fix",
|
|
24
24
|
awaiting_queue: "merging",
|
|
25
25
|
repairing_queue: "merge fix",
|
|
26
26
|
done: "done",
|
|
27
27
|
failed: "failed",
|
|
28
28
|
escalated: "escalated",
|
|
29
|
-
awaiting_input: "
|
|
29
|
+
awaiting_input: "paused",
|
|
30
30
|
};
|
|
31
31
|
const RUN_SHORT = {
|
|
32
32
|
implementation: "impl",
|
|
@@ -83,19 +83,17 @@ function truncate(text, max) {
|
|
|
83
83
|
return "";
|
|
84
84
|
return text.length > max ? `${text.slice(0, max - 1)}\u2026` : text;
|
|
85
85
|
}
|
|
86
|
+
const TERMINAL_STATES = new Set(["done", "failed", "escalated", "awaiting_input"]);
|
|
86
87
|
function formatStatus(issue) {
|
|
87
88
|
const state = STATE_SHORT[issue.factoryState] ?? issue.factoryState;
|
|
88
|
-
|
|
89
|
-
|
|
89
|
+
// Terminal states: just the label, no run symbol
|
|
90
|
+
if (TERMINAL_STATES.has(issue.factoryState))
|
|
91
|
+
return state;
|
|
92
|
+
// Active/in-progress: show run status symbol
|
|
90
93
|
const status = issue.activeRunType ? "running" : issue.latestRunStatus;
|
|
91
94
|
const statusSym = status ? (STATUS_SHORT[status] ?? "") : "";
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
if (issue.activeRunType)
|
|
95
|
-
return `${state} ${statusSym}`;
|
|
96
|
-
if (status)
|
|
97
|
-
return `${state} ${statusSym}`;
|
|
98
|
-
}
|
|
95
|
+
if (statusSym)
|
|
96
|
+
return `${state} ${statusSym}`;
|
|
99
97
|
return state;
|
|
100
98
|
}
|
|
101
99
|
export function IssueRow({ issue, selected, titleWidth }) {
|
package/dist/run-orchestrator.js
CHANGED
|
@@ -611,11 +611,15 @@ export class RunOrchestrator {
|
|
|
611
611
|
// ─── Internal helpers ─────────────────────────────────────────────
|
|
612
612
|
escalate(issue, runType, reason) {
|
|
613
613
|
this.logger.warn({ issueKey: issue.issueKey, runType, reason }, "Escalating to human");
|
|
614
|
+
if (issue.activeRunId) {
|
|
615
|
+
this.db.finishRun(issue.activeRunId, { status: "released" });
|
|
616
|
+
}
|
|
614
617
|
this.db.upsertIssue({
|
|
615
618
|
projectId: issue.projectId,
|
|
616
619
|
linearIssueId: issue.linearIssueId,
|
|
617
620
|
pendingRunType: null,
|
|
618
621
|
pendingRunContextJson: null,
|
|
622
|
+
activeRunId: null,
|
|
619
623
|
factoryState: "escalated",
|
|
620
624
|
});
|
|
621
625
|
this.feed?.publish({
|