@on-par/factory-core 0.9.7-next.3 → 0.9.7-next.30
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/blockers/dependencies.d.ts +19 -0
- package/dist/blockers/dependencies.d.ts.map +1 -0
- package/dist/blockers/dependencies.js +49 -0
- package/dist/blockers/dependencies.js.map +1 -0
- package/dist/blockers/file-blocker.d.ts +44 -0
- package/dist/blockers/file-blocker.d.ts.map +1 -0
- package/dist/blockers/file-blocker.js +203 -0
- package/dist/blockers/file-blocker.js.map +1 -0
- package/dist/blockers/index.d.ts +7 -0
- package/dist/blockers/index.d.ts.map +1 -0
- package/dist/blockers/index.js +5 -0
- package/dist/blockers/index.js.map +1 -0
- package/dist/blockers/poller.d.ts +37 -0
- package/dist/blockers/poller.d.ts.map +1 -0
- package/dist/blockers/poller.js +111 -0
- package/dist/blockers/poller.js.map +1 -0
- package/dist/checkers/index.d.ts +10 -1
- package/dist/checkers/index.d.ts.map +1 -1
- package/dist/checkers/index.js +14 -22
- package/dist/checkers/index.js.map +1 -1
- package/dist/checkers/probe.d.ts.map +1 -1
- package/dist/checkers/probe.js +5 -3
- package/dist/checkers/probe.js.map +1 -1
- package/dist/config/example.d.ts.map +1 -1
- package/dist/config/example.js +18 -0
- package/dist/config/example.js.map +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +3 -3
- package/dist/config/index.js.map +1 -1
- package/dist/config/repo-build-pin.d.ts +4 -0
- package/dist/config/repo-build-pin.d.ts.map +1 -0
- package/dist/config/repo-build-pin.js +13 -0
- package/dist/config/repo-build-pin.js.map +1 -0
- package/dist/config/repo-harnesses.d.ts +43 -0
- package/dist/config/repo-harnesses.d.ts.map +1 -0
- package/dist/config/repo-harnesses.js +20 -0
- package/dist/config/repo-harnesses.js.map +1 -0
- package/dist/config/repo.d.ts +42 -11
- package/dist/config/repo.d.ts.map +1 -1
- package/dist/config/repo.js +21 -17
- package/dist/config/repo.js.map +1 -1
- package/dist/daemon/execution-config.d.ts +33 -0
- package/dist/daemon/execution-config.d.ts.map +1 -1
- package/dist/daemon/run-runtime.d.ts +33 -0
- package/dist/daemon/run-runtime.d.ts.map +1 -1
- package/dist/daemon/ship-executor.js +2 -3
- package/dist/daemon/ship-executor.js.map +1 -1
- package/dist/eval/baseline.d.ts.map +1 -1
- package/dist/eval/baseline.js +4 -4
- package/dist/eval/baseline.js.map +1 -1
- package/dist/eval/judge.d.ts.map +1 -1
- package/dist/eval/judge.js +9 -7
- package/dist/eval/judge.js.map +1 -1
- package/dist/eval/regression-report.js +1 -1
- package/dist/eval/regression-report.js.map +1 -1
- package/dist/eval/score.d.ts.map +1 -1
- package/dist/eval/score.js +2 -1
- package/dist/eval/score.js.map +1 -1
- package/dist/events/kinds.d.ts +1 -1
- package/dist/events/kinds.d.ts.map +1 -1
- package/dist/events/kinds.js +3 -0
- package/dist/events/kinds.js.map +1 -1
- package/dist/harness/catalog.d.ts +2 -0
- package/dist/harness/catalog.d.ts.map +1 -1
- package/dist/harness/catalog.js +5 -1
- package/dist/harness/catalog.js.map +1 -1
- package/dist/harness/contract.js +4 -4
- package/dist/harness/contract.js.map +1 -1
- package/dist/harness/index.d.ts +1 -1
- package/dist/harness/index.d.ts.map +1 -1
- package/dist/harness/index.js +1 -0
- package/dist/harness/index.js.map +1 -1
- package/dist/hosted/store-contract.js +1 -1
- package/dist/hosted/store-contract.js.map +1 -1
- package/dist/internal.d.ts +6 -6
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +5 -2
- package/dist/internal.js.map +1 -1
- package/dist/kpis/human.d.ts.map +1 -1
- package/dist/kpis/human.js +4 -8
- package/dist/kpis/human.js.map +1 -1
- package/dist/logger/index.d.ts +2 -1
- package/dist/logger/index.d.ts.map +1 -1
- package/dist/logger/index.js +1 -0
- package/dist/logger/index.js.map +1 -1
- package/dist/phases/build.d.ts +6 -2
- package/dist/phases/build.d.ts.map +1 -1
- package/dist/phases/build.js +43 -12
- package/dist/phases/build.js.map +1 -1
- package/dist/phases/check.d.ts +32 -2
- package/dist/phases/check.d.ts.map +1 -1
- package/dist/phases/check.js +5 -6
- package/dist/phases/check.js.map +1 -1
- package/dist/phases/plan-route.d.ts +16 -0
- package/dist/phases/plan-route.d.ts.map +1 -0
- package/dist/phases/plan-route.js +37 -0
- package/dist/phases/plan-route.js.map +1 -0
- package/dist/phases/plan-routes.d.ts +11 -0
- package/dist/phases/plan-routes.d.ts.map +1 -1
- package/dist/phases/plan-routes.js +33 -0
- package/dist/phases/plan-routes.js.map +1 -1
- package/dist/phases/plan.d.ts +3 -2
- package/dist/phases/plan.d.ts.map +1 -1
- package/dist/phases/plan.js +11 -26
- package/dist/phases/plan.js.map +1 -1
- package/dist/phases/ship-git.d.ts +52 -0
- package/dist/phases/ship-git.d.ts.map +1 -0
- package/dist/phases/ship-git.js +104 -0
- package/dist/phases/ship-git.js.map +1 -0
- package/dist/phases/ship-spec.d.ts +5 -0
- package/dist/phases/ship-spec.d.ts.map +1 -0
- package/dist/phases/ship-spec.js +26 -0
- package/dist/phases/ship-spec.js.map +1 -0
- package/dist/phases/ship.d.ts +11 -7
- package/dist/phases/ship.d.ts.map +1 -1
- package/dist/phases/ship.js +73 -144
- package/dist/phases/ship.js.map +1 -1
- package/dist/queue/queue-backend.d.ts +6 -1
- package/dist/queue/queue-backend.d.ts.map +1 -1
- package/dist/queue/queue-backend.js +7 -1
- package/dist/queue/queue-backend.js.map +1 -1
- package/dist/queue/unpark.d.ts +28 -0
- package/dist/queue/unpark.d.ts.map +1 -0
- package/dist/queue/unpark.js +69 -0
- package/dist/queue/unpark.js.map +1 -0
- package/dist/readiness/slice-plan.js +1 -1
- package/dist/readiness/slice-plan.js.map +1 -1
- package/dist/review/backtest.js +2 -2
- package/dist/review/backtest.js.map +1 -1
- package/dist/review/containment.js +1 -1
- package/dist/review/containment.js.map +1 -1
- package/dist/router/index.d.ts.map +1 -1
- package/dist/router/index.js +2 -13
- package/dist/router/index.js.map +1 -1
- package/dist/router/requires.d.ts +4 -0
- package/dist/router/requires.d.ts.map +1 -0
- package/dist/router/requires.js +22 -0
- package/dist/router/requires.js.map +1 -0
- package/dist/run/ci-rework-loop.d.ts +65 -0
- package/dist/run/ci-rework-loop.d.ts.map +1 -0
- package/dist/run/ci-rework-loop.js +169 -0
- package/dist/run/ci-rework-loop.js.map +1 -0
- package/dist/run/ci-rework.d.ts +25 -0
- package/dist/run/ci-rework.d.ts.map +1 -0
- package/dist/run/ci-rework.js +113 -0
- package/dist/run/ci-rework.js.map +1 -0
- package/dist/run/ci-suppression-guard.d.ts +11 -0
- package/dist/run/ci-suppression-guard.d.ts.map +1 -0
- package/dist/run/ci-suppression-guard.js +143 -0
- package/dist/run/ci-suppression-guard.js.map +1 -0
- package/dist/run/outcome.d.ts +9 -2
- package/dist/run/outcome.d.ts.map +1 -1
- package/dist/run/outcome.js +5 -0
- package/dist/run/outcome.js.map +1 -1
- package/dist/run/park-comment.d.ts +73 -0
- package/dist/run/park-comment.d.ts.map +1 -0
- package/dist/run/park-comment.js +211 -0
- package/dist/run/park-comment.js.map +1 -0
- package/dist/run/phase-snapshot.js +2 -2
- package/dist/run/phase-snapshot.js.map +1 -1
- package/dist/run/resume-context.d.ts +3 -2
- package/dist/run/resume-context.d.ts.map +1 -1
- package/dist/run/resume-context.js.map +1 -1
- package/dist/run/run-issue.d.ts +4 -2
- package/dist/run/run-issue.d.ts.map +1 -1
- package/dist/run/run-issue.js +51 -54
- package/dist/run/run-issue.js.map +1 -1
- package/dist/run/ship-park.d.ts +14 -0
- package/dist/run/ship-park.d.ts.map +1 -0
- package/dist/run/ship-park.js +21 -0
- package/dist/run/ship-park.js.map +1 -0
- package/dist/sandbox/index.js +1 -1
- package/dist/sandbox/index.js.map +1 -1
- package/dist/sim/pipeline.d.ts +2 -1
- package/dist/sim/pipeline.d.ts.map +1 -1
- package/dist/sim/pipeline.js.map +1 -1
- package/dist/spec/index.d.ts +3 -2
- package/dist/spec/index.d.ts.map +1 -1
- package/dist/spec/index.js +1 -1
- package/dist/spec/index.js.map +1 -1
- package/dist/steward/detect.d.ts +7 -3
- package/dist/steward/detect.d.ts.map +1 -1
- package/dist/steward/detect.js +8 -4
- package/dist/steward/detect.js.map +1 -1
- package/dist/types/index.d.ts +57 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/usage/index.js +1 -1
- package/dist/usage/index.js.map +1 -1
- package/dist/utils/ci-evidence.d.ts +21 -0
- package/dist/utils/ci-evidence.d.ts.map +1 -0
- package/dist/utils/ci-evidence.js +66 -0
- package/dist/utils/ci-evidence.js.map +1 -0
- package/dist/utils/ci-watch.d.ts +12 -0
- package/dist/utils/ci-watch.d.ts.map +1 -1
- package/dist/utils/ci-watch.js +1 -1
- package/dist/utils/ci-watch.js.map +1 -1
- package/dist/utils/command-runner.js +2 -2
- package/dist/utils/command-runner.js.map +1 -1
- package/dist/utils/index.d.ts +2 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/worktree-gc.d.ts.map +1 -1
- package/dist/utils/worktree-gc.js +5 -5
- package/dist/utils/worktree-gc.js.map +1 -1
- package/dist/utils/worktree-location.d.ts +2 -2
- package/dist/utils/worktree-location.d.ts.map +1 -1
- package/dist/utils/worktree-location.js +16 -9
- package/dist/utils/worktree-location.js.map +1 -1
- package/dist/utils/worktree-name.d.ts +6 -0
- package/dist/utils/worktree-name.d.ts.map +1 -1
- package/dist/utils/worktree-name.js +16 -1
- package/dist/utils/worktree-name.js.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"park-comment.d.ts","sourceRoot":"","sources":["../../src/run/park-comment.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
// src/run/park-comment.ts — upsert one issue comment with the park state behind a hidden factory-issue-state marker (#2314, ADR-0130)
|
|
2
|
+
//
|
|
3
|
+
// Every runIssue park edits one comment per issue in place (#728). Anyone can post the marker, so only a
|
|
4
|
+
// marker comment written by the authenticated identity is trusted (same rule as readiness/slice-plan-github.ts).
|
|
5
|
+
import { fenceExcerpt, stripHiddenContent } from '../filing/sanitize.js';
|
|
6
|
+
import { readWorktreeHead } from './ci-suppression-guard.js';
|
|
7
|
+
export const ISSUE_STATE_MARKER_VERSION = 'v1';
|
|
8
|
+
const PAGE_SIZE = 100;
|
|
9
|
+
const STATE_HEADING = '**Park state**';
|
|
10
|
+
const MARKER_RE = new RegExp(`<!-- factory-issue-state ${ISSUE_STATE_MARKER_VERSION} issue:(\\d+) -->`);
|
|
11
|
+
export function issueStateMarker(issue) {
|
|
12
|
+
return `<!-- factory-issue-state ${ISSUE_STATE_MARKER_VERSION} issue:${issue} -->`;
|
|
13
|
+
}
|
|
14
|
+
const PARK_HINTS = {
|
|
15
|
+
fail: 'fix the failing checks on the branch or clarify the issue, then run `factory unpark <n>`.',
|
|
16
|
+
blocked: 'waiting on a filed blocker. The factory resumes it once the blocker closes; run `factory unpark <n>` to retry sooner.',
|
|
17
|
+
escalate: 'a human decision is needed. Answer it on the issue, then run `factory unpark <n>`.',
|
|
18
|
+
timeout: 'a phase timed out. Check the lane log and retry with `factory unpark <n>`.',
|
|
19
|
+
conflict: 'rebase the branch onto main, then run `factory unpark <n>`.',
|
|
20
|
+
'ci-failed': 'fix CI on the PR, then run `factory unpark <n>`.',
|
|
21
|
+
'ci-infra': 'CI infrastructure failed. Re-run CI, then run `factory unpark <n>`.',
|
|
22
|
+
held: 'the same failure parked a prior run. A human must change the approach before `factory unpark <n>`.',
|
|
23
|
+
config: 'fix the named config file and line, then run `factory unpark <n>`.',
|
|
24
|
+
};
|
|
25
|
+
export function parkUnblockHint(reason, issue) {
|
|
26
|
+
return PARK_HINTS[reason].replaceAll('<n>', String(issue));
|
|
27
|
+
}
|
|
28
|
+
function clean(v) {
|
|
29
|
+
return stripHiddenContent(v)
|
|
30
|
+
.replace(/[\r\n]+/g, ' ')
|
|
31
|
+
.trim();
|
|
32
|
+
}
|
|
33
|
+
export function renderParkComment(input) {
|
|
34
|
+
const blockers = input.blockers ?? [];
|
|
35
|
+
const stateLines = [
|
|
36
|
+
`reason: ${clean(input.reason)}`,
|
|
37
|
+
`lane: ${(input.lane && clean(input.lane)) || '-'}`,
|
|
38
|
+
`run: ${clean(input.runId)}`,
|
|
39
|
+
`branch: ${clean(input.branch)}`,
|
|
40
|
+
`park-sha: ${(input.parkSha && clean(input.parkSha)) || '-'}`,
|
|
41
|
+
`blockers: ${blockers.length > 0 ? blockers.map((n) => `#${n}`).join(', ') : '-'}`,
|
|
42
|
+
];
|
|
43
|
+
if (input.autoUnparks !== undefined && input.autoUnparks > 0)
|
|
44
|
+
stateLines.push(`auto-unparks: ${input.autoUnparks}`);
|
|
45
|
+
if (input.status)
|
|
46
|
+
stateLines.push(`status: ${clean(input.status)}`);
|
|
47
|
+
const stateBlock = stateLines.join('\n');
|
|
48
|
+
return [
|
|
49
|
+
'### Factory park state',
|
|
50
|
+
'',
|
|
51
|
+
STATE_HEADING,
|
|
52
|
+
'',
|
|
53
|
+
fenceExcerpt(stateBlock),
|
|
54
|
+
'',
|
|
55
|
+
'**Why it parked**',
|
|
56
|
+
'',
|
|
57
|
+
fenceExcerpt(stripHiddenContent(input.message)),
|
|
58
|
+
'',
|
|
59
|
+
`**What unblocks this:** ${parkUnblockHint(input.reason, input.issue)}`,
|
|
60
|
+
'',
|
|
61
|
+
issueStateMarker(input.issue),
|
|
62
|
+
].join('\n');
|
|
63
|
+
}
|
|
64
|
+
function findStateFence(body) {
|
|
65
|
+
const lines = body.split('\n');
|
|
66
|
+
const heading = lines.indexOf(STATE_HEADING);
|
|
67
|
+
if (heading === -1)
|
|
68
|
+
return null;
|
|
69
|
+
const isFence = (l) => /^`{5,}$/.test(l);
|
|
70
|
+
const open = lines.findIndex((l, i) => i > heading && isFence(l));
|
|
71
|
+
if (open === -1)
|
|
72
|
+
return null;
|
|
73
|
+
const close = lines.indexOf(lines[open], open + 1);
|
|
74
|
+
if (close === -1)
|
|
75
|
+
return null;
|
|
76
|
+
return { lines, open, close };
|
|
77
|
+
}
|
|
78
|
+
function parseStateBlock(body) {
|
|
79
|
+
const fence = findStateFence(body);
|
|
80
|
+
if (fence === null)
|
|
81
|
+
return null;
|
|
82
|
+
const { lines, open, close } = fence;
|
|
83
|
+
const values = new Map();
|
|
84
|
+
for (const line of lines.slice(open + 1, close)) {
|
|
85
|
+
const sep = line.indexOf(':');
|
|
86
|
+
if (sep === -1)
|
|
87
|
+
continue;
|
|
88
|
+
values.set(line.slice(0, sep).trim(), line.slice(sep + 1).trim());
|
|
89
|
+
}
|
|
90
|
+
const reason = values.get('reason');
|
|
91
|
+
if (!reason)
|
|
92
|
+
return null;
|
|
93
|
+
const optional = (key) => {
|
|
94
|
+
const v = values.get(key);
|
|
95
|
+
return v === undefined || v === '' || v === '-' ? undefined : v;
|
|
96
|
+
};
|
|
97
|
+
const blockers = [...(values.get('blockers') ?? '').matchAll(/#(\d+)/g)].map((m) => Number(m[1]));
|
|
98
|
+
const rawAutoUnparks = values.get('auto-unparks') ?? '';
|
|
99
|
+
const autoUnparks = /^\d+$/.test(rawAutoUnparks) && Number.isSafeInteger(Number(rawAutoUnparks)) ? Number(rawAutoUnparks) : 0;
|
|
100
|
+
return {
|
|
101
|
+
reason,
|
|
102
|
+
lane: optional('lane'),
|
|
103
|
+
runId: optional('run'),
|
|
104
|
+
branch: optional('branch'),
|
|
105
|
+
parkSha: optional('park-sha'),
|
|
106
|
+
blockers,
|
|
107
|
+
autoUnparks,
|
|
108
|
+
status: optional('status'),
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
/** Rewrites the state block (and the unblock hint on a reason change) in place; null when there is no state block. */
|
|
112
|
+
export function patchParkComment(body, issue, patch) {
|
|
113
|
+
const fence = findStateFence(body);
|
|
114
|
+
if (fence === null)
|
|
115
|
+
return null;
|
|
116
|
+
const { lines, open, close } = fence;
|
|
117
|
+
const inner = lines.slice(open + 1, close);
|
|
118
|
+
const setLine = (key, value) => {
|
|
119
|
+
const at = inner.findIndex((l) => l.slice(0, Math.max(l.indexOf(':'), 0)).trim() === key);
|
|
120
|
+
if (at === -1)
|
|
121
|
+
inner.push(`${key}: ${value}`);
|
|
122
|
+
else
|
|
123
|
+
inner[at] = `${key}: ${value}`;
|
|
124
|
+
};
|
|
125
|
+
if (patch.reason !== undefined)
|
|
126
|
+
setLine('reason', clean(patch.reason));
|
|
127
|
+
if (patch.status !== undefined)
|
|
128
|
+
setLine('status', clean(patch.status));
|
|
129
|
+
if (patch.autoUnparks !== undefined)
|
|
130
|
+
setLine('auto-unparks', String(patch.autoUnparks));
|
|
131
|
+
const out = [...lines.slice(0, open + 1), ...inner, ...lines.slice(close)];
|
|
132
|
+
if (patch.reason !== undefined) {
|
|
133
|
+
const hint = out.findIndex((l) => l.startsWith('**What unblocks this:**'));
|
|
134
|
+
if (hint !== -1)
|
|
135
|
+
out[hint] = `**What unblocks this:** ${parkUnblockHint(patch.reason, issue)}`;
|
|
136
|
+
}
|
|
137
|
+
return out.join('\n');
|
|
138
|
+
}
|
|
139
|
+
/** Lowest-id marked comment decides; null when none, or when its state block is unreadable. */
|
|
140
|
+
export function readParkState(comments, issue) {
|
|
141
|
+
const marked = comments
|
|
142
|
+
.filter((c) => {
|
|
143
|
+
const m = MARKER_RE.exec(c.body);
|
|
144
|
+
return m !== null && (issue === undefined || Number(m[1]) === issue);
|
|
145
|
+
})
|
|
146
|
+
.sort((a, b) => a.id - b.id);
|
|
147
|
+
if (marked.length === 0)
|
|
148
|
+
return null;
|
|
149
|
+
return parseStateBlock(marked[0].body);
|
|
150
|
+
}
|
|
151
|
+
/** The lowest-id marker comment written by the authenticated user, or undefined. */
|
|
152
|
+
export async function findOwnParkComment(deps) {
|
|
153
|
+
const { octokit, repo, issue } = deps;
|
|
154
|
+
const [owner, name] = repo.split('/');
|
|
155
|
+
const marker = issueStateMarker(issue);
|
|
156
|
+
const { data: me } = await octokit.rest.users.getAuthenticated();
|
|
157
|
+
let existing;
|
|
158
|
+
for (let page = 1;; page++) {
|
|
159
|
+
const { data } = await octokit.rest.issues.listComments({
|
|
160
|
+
owner,
|
|
161
|
+
repo: name,
|
|
162
|
+
issue_number: issue,
|
|
163
|
+
per_page: PAGE_SIZE,
|
|
164
|
+
page,
|
|
165
|
+
});
|
|
166
|
+
for (const comment of data) {
|
|
167
|
+
const body = comment.body ?? '';
|
|
168
|
+
if (comment.user?.id !== me.id || !body.includes(marker))
|
|
169
|
+
continue;
|
|
170
|
+
if (existing === undefined || comment.id < existing.id)
|
|
171
|
+
existing = { id: comment.id, body };
|
|
172
|
+
}
|
|
173
|
+
if (data.length < PAGE_SIZE)
|
|
174
|
+
break;
|
|
175
|
+
}
|
|
176
|
+
return existing;
|
|
177
|
+
}
|
|
178
|
+
export async function upsertParkComment(deps) {
|
|
179
|
+
const { octokit, repo, input } = deps;
|
|
180
|
+
const [owner, name] = repo.split('/');
|
|
181
|
+
const existing = await findOwnParkComment({ octokit, repo, issue: input.issue });
|
|
182
|
+
const autoUnparks = input.autoUnparks ?? (existing === undefined ? 0 : (readParkState([existing], input.issue)?.autoUnparks ?? 0));
|
|
183
|
+
const body = renderParkComment({ ...input, autoUnparks });
|
|
184
|
+
if (existing !== undefined) {
|
|
185
|
+
await octokit.rest.issues.updateComment({ owner, repo: name, comment_id: existing.id, body });
|
|
186
|
+
return { commentId: existing.id, created: false };
|
|
187
|
+
}
|
|
188
|
+
const { data } = await octokit.rest.issues.createComment({ owner, repo: name, issue_number: input.issue, body });
|
|
189
|
+
return { commentId: data.id, created: true };
|
|
190
|
+
}
|
|
191
|
+
/** Never throws: a GitHub or git failure comes back as `{ ok: false, error }`. */
|
|
192
|
+
export async function publishParkComment(deps) {
|
|
193
|
+
const { octokit, repo, worktree, input, readHead = readWorktreeHead } = deps;
|
|
194
|
+
let parkSha;
|
|
195
|
+
if (worktree) {
|
|
196
|
+
try {
|
|
197
|
+
parkSha = (await readHead(worktree)) || undefined;
|
|
198
|
+
}
|
|
199
|
+
catch {
|
|
200
|
+
parkSha = undefined;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
try {
|
|
204
|
+
const result = await upsertParkComment({ octokit, repo, input: { ...input, parkSha } });
|
|
205
|
+
return { ok: true, ...result };
|
|
206
|
+
}
|
|
207
|
+
catch (err) {
|
|
208
|
+
return { ok: false, error: err instanceof Error ? err.message : String(err) };
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
//# sourceMappingURL=park-comment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"park-comment.js","sourceRoot":"","sources":["../../src/run/park-comment.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ export function summarizeEvent(type, msg) {
|
|
|
13
13
|
const summary = trimmed.length > 0 ? `${type}: ${trimmed}` : type;
|
|
14
14
|
return summary.length > LAST_EVENT_MAX_LENGTH ? `${summary.slice(0, LAST_EVENT_MAX_LENGTH - 1)}…` : summary;
|
|
15
15
|
}
|
|
16
|
-
const PHASES = ['plan', 'build', 'check', 'ship'];
|
|
16
|
+
const PHASES = new Set(['plan', 'build', 'check', 'ship']);
|
|
17
17
|
/** Path of one issue's persisted phase snapshot inside `runsDir`
|
|
18
18
|
* (`getFactoryPaths(repoRoot).runs`). */
|
|
19
19
|
export function phaseSnapshotFile(runsDir, issue) {
|
|
@@ -65,7 +65,7 @@ export async function readPhaseSnapshot(file) {
|
|
|
65
65
|
if (typeof record.issue !== 'number' ||
|
|
66
66
|
typeof record.updatedAt !== 'string' ||
|
|
67
67
|
typeof record.lastActivityAt !== 'string' ||
|
|
68
|
-
!PHASES.
|
|
68
|
+
!PHASES.has(record.phase)) {
|
|
69
69
|
return null;
|
|
70
70
|
}
|
|
71
71
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phase-snapshot.js","sourceRoot":"","sources":["../../src/run/phase-snapshot.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,wFAAwF;AACxF,wFAAwF;AACxF,uFAAuF;AACvF,wCAAwC;AAExC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqB7C,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAElC;mFACmF;AACnF,MAAM,UAAU,cAAc,CAAC,IAAe,EAAE,GAAW;IACzD,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAClE,OAAO,OAAO,CAAC,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAqB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;AAC9G,CAAC;AAED,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"phase-snapshot.js","sourceRoot":"","sources":["../../src/run/phase-snapshot.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import type { EnvironmentFailure } from '../phases/check.js';
|
|
2
2
|
import type { PlanResult } from '../phases/plan.js';
|
|
3
3
|
import type { CheckSummary, Constitution } from '../types/index.js';
|
|
4
|
+
import type { BuildRoutePin } from '../config/repo.js';
|
|
4
5
|
export interface PlanReuseRecord {
|
|
5
6
|
/** issueBodyHash of the brief the frozen spec was planned from. */
|
|
6
7
|
bodyHash: string;
|
|
7
8
|
/** Base SHA the CHECK environment release was decided on. */
|
|
8
9
|
baseSha: string;
|
|
9
|
-
route:
|
|
10
|
+
route: BuildRoutePin;
|
|
10
11
|
releasedAt: string;
|
|
11
12
|
}
|
|
12
13
|
export interface PlanReuseStore {
|
|
@@ -29,7 +30,7 @@ export interface CheckResumeRecord {
|
|
|
29
30
|
worktree: string;
|
|
30
31
|
/** build.diffBase from the original run (undefined when BUILD reported none). */
|
|
31
32
|
diffBase?: string;
|
|
32
|
-
route:
|
|
33
|
+
route: BuildRoutePin;
|
|
33
34
|
/** build.model of the original run, reused as CHECK's reworkModel. */
|
|
34
35
|
model: string;
|
|
35
36
|
/** Whole minutes from PLAN start to BUILD end in the original run, at least 1. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resume-context.d.ts","sourceRoot":"","sources":["../../src/run/resume-context.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"resume-context.d.ts","sourceRoot":"","sources":["../../src/run/resume-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resume-context.js","sourceRoot":"","sources":["../../src/run/resume-context.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,+FAA+F;AAC/F,+FAA+F;AAC/F,gGAAgG;AAChG,8DAA8D;AAC9D,2EAA2E;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"resume-context.js","sourceRoot":"","sources":["../../src/run/resume-context.ts"],"names":[],"mappings":"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"}
|
package/dist/run/run-issue.d.ts
CHANGED
|
@@ -16,13 +16,14 @@ import type { ModelRouter } from '../router/index.js';
|
|
|
16
16
|
import { type ProviderBreaker } from '../router/breaker.js';
|
|
17
17
|
import type { SandboxPolicy } from '../sandbox/index.js';
|
|
18
18
|
import { type ConsumedSteering } from '../steering/index.js';
|
|
19
|
-
import type { CheckFailureInfo, CheckSummary, Constitution, FailoverReason, FailurePhase, ReadinessInfo } from '../types/index.js';
|
|
19
|
+
import type { CheckFailureInfo, CiFailureEvidence, CheckSummary, Constitution, FailoverReason, FailurePhase, ReadinessInfo } from '../types/index.js';
|
|
20
20
|
import type { WorkRequest, WorkRequestSourceKind } from '../work/index.js';
|
|
21
21
|
import type { LaneFileGuard } from './lane-file-guard.js';
|
|
22
22
|
import { type BuildRoute, type RunOutcome } from './outcome.js';
|
|
23
23
|
import type { RunPolicy } from './policy.js';
|
|
24
24
|
import { type CheckResumeStore, type PlanReuseStore } from './resume-context.js';
|
|
25
25
|
import type { Environment, Workspace } from './ports.js';
|
|
26
|
+
import { type CiReworkPorts } from './ci-rework-loop.js';
|
|
26
27
|
/** Everything one run needs decided, as a plain resolved value — the CLI adapter
|
|
27
28
|
* computes this today; no config/file/path resolution happens in here. */
|
|
28
29
|
export interface RunRequest {
|
|
@@ -122,6 +123,7 @@ type LogFn = (type: EventKind, msg: string, extra?: {
|
|
|
122
123
|
readiness?: ReadinessInfo;
|
|
123
124
|
prClassification?: PrClassificationRecord;
|
|
124
125
|
checkFailure?: CheckFailureInfo;
|
|
126
|
+
ciFailure?: CiFailureEvidence;
|
|
125
127
|
stewardTriggered?: StewardTriggeredPayload;
|
|
126
128
|
flakyTests?: FlakyTestsPayload;
|
|
127
129
|
}) => void;
|
|
@@ -143,7 +145,7 @@ interface RunReportInfo {
|
|
|
143
145
|
/** The injected seams runIssue needs. Effectful, path-bound concerns (Octokit, worktree
|
|
144
146
|
* layout, approvals/steering directories, report/artifact destinations) are the caller's
|
|
145
147
|
* responsibility to wire — runIssue only calls the closures it is handed. */
|
|
146
|
-
export interface RunPorts {
|
|
148
|
+
export interface RunPorts extends CiReworkPorts {
|
|
147
149
|
/** Stuck-run steward seams (#2124). Used only when request.stewardEnabled is true and detectStuck fires
|
|
148
150
|
* on the park; absent → only the steward-triggered event is logged (#2086). */
|
|
149
151
|
steward?: RunStewardPorts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-issue.d.ts","sourceRoot":"","sources":["../../src/run/run-issue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run-issue.d.ts","sourceRoot":"","sources":["../../src/run/run-issue.ts"],"names":[],"mappings":"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"}
|