@miller-tech/uap 1.174.1 → 1.175.0
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/.tsbuildinfo +1 -1
- package/dist/bin/cli.js +4 -0
- package/dist/bin/cli.js.map +1 -1
- package/dist/cli/deliver.d.ts +4 -0
- package/dist/cli/deliver.d.ts.map +1 -1
- package/dist/cli/deliver.js +65 -5
- package/dist/cli/deliver.js.map +1 -1
- package/dist/delivery/await-run.d.ts +148 -0
- package/dist/delivery/await-run.d.ts.map +1 -0
- package/dist/delivery/await-run.js +243 -0
- package/dist/delivery/await-run.js.map +1 -0
- package/dist/mcp-router/tools/deliver.d.ts +10 -0
- package/dist/mcp-router/tools/deliver.d.ts.map +1 -1
- package/dist/mcp-router/tools/deliver.js +47 -2
- package/dist/mcp-router/tools/deliver.js.map +1 -1
- package/package.json +1 -1
- package/src/policies/enforcers/__pycache__/_common.cpython-312.pyc +0 -0
- package/src/policies/enforcers/delivery_enforcement.py +3 -1
- package/templates/hooks/__pycache__/deliver_autoroute.cpython-312.pyc +0 -0
- package/tools/agents/scripts/__pycache__/toolcall_path_normalizer.cpython-312.pyc +0 -0
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Attach to a deliver run that is already in flight, and report its result.
|
|
3
|
+
*
|
|
4
|
+
* THE GAP THIS CLOSES
|
|
5
|
+
* A deliver mission outlives the tool call that started it — that is deliberate,
|
|
6
|
+
* and the detach banner says so. But a caller whose own tool timeout fired
|
|
7
|
+
* mid-mission had no way back to its run:
|
|
8
|
+
*
|
|
9
|
+
* - launching again hits the single-flight guard and is skipped;
|
|
10
|
+
* - `--resume` is not "follow", it is "continue". It deliberately does NOT take
|
|
11
|
+
* the lock, and `latest` resolves the most-recently-updated non-delivered
|
|
12
|
+
* run — which, while a holder is alive, is the LIVE one. So resuming a
|
|
13
|
+
* running mission starts a second copy of it on the same runId: precisely
|
|
14
|
+
* the fan-out the lock exists to prevent.
|
|
15
|
+
*
|
|
16
|
+
* Observed live (opencode, 2026-07-30): with `delivery.enforcement: block` the
|
|
17
|
+
* model could not write directly, deliver blocked past its client's tool
|
|
18
|
+
* timeout, and it spent 63 requests in ten minutes alternating between a refused
|
|
19
|
+
* write, a "timed out" deliver, and `pkill -9 -f 'cli.js deliver'`. Every door
|
|
20
|
+
* was shut: it could not write, could not wait, and could not follow.
|
|
21
|
+
*
|
|
22
|
+
* WHAT THIS IS
|
|
23
|
+
* A read-only wait. It takes no lock, writes no run state, and starts nothing —
|
|
24
|
+
* it watches the holder until it exits, then reports that run's final state.
|
|
25
|
+
*
|
|
26
|
+
* WHAT COUNTS AS "IN FLIGHT" (and why the lock alone is not enough)
|
|
27
|
+
* A resumed run never acquires the lock, so a lock-only probe reports "nothing
|
|
28
|
+
* in flight" for a live resumed mission — and the caller, told to start
|
|
29
|
+
* normally, then launches a SECOND concurrent run against the same tree. Since
|
|
30
|
+
* the guidance this harness hands a timed-out caller used to be "use resume",
|
|
31
|
+
* resumed runs are exactly the population most likely to be in flight when
|
|
32
|
+
* someone follows. Liveness therefore falls back to run state: a run marked
|
|
33
|
+
* running whose recorded pid is alive is in flight, lock or no lock.
|
|
34
|
+
*
|
|
35
|
+
* WHY THE HOLDER'S IDENTITY IS (pid, stamp) AND IS RE-READ
|
|
36
|
+
* A pid alone is not an identity. Missions spawn thousands of subprocesses, so a
|
|
37
|
+
* recycled pid would keep this loop reporting "still running" about a mission
|
|
38
|
+
* that finished; and `acquireDeliverLock` can RECLAIM the lock from a holder
|
|
39
|
+
* that is alive but wedged, after which the pid being watched is no longer the
|
|
40
|
+
* mission in flight. The lock file already carries an ISO stamp after `|`; using
|
|
41
|
+
* it turns "is that pid alive" into "is that same holder still there".
|
|
42
|
+
*/
|
|
43
|
+
import { existsSync, readFileSync } from 'fs';
|
|
44
|
+
import { join } from 'path';
|
|
45
|
+
import { listRuns } from './run-state.js';
|
|
46
|
+
/** Default poll interval — fast enough to feel immediate, idle enough to ignore. */
|
|
47
|
+
const DEFAULT_POLL_MS = 2000;
|
|
48
|
+
function summarize(run) {
|
|
49
|
+
return {
|
|
50
|
+
runId: run.runId,
|
|
51
|
+
status: run.status,
|
|
52
|
+
updatedAt: run.updatedAt,
|
|
53
|
+
...(run.phaseIndex !== undefined ? { phaseIndex: run.phaseIndex } : {}),
|
|
54
|
+
...(run.phases ? { phaseCount: run.phases.length } : {}),
|
|
55
|
+
...(run.runnerKind ? { runnerKind: run.runnerKind } : {}),
|
|
56
|
+
...(run.exit ? { exit: run.exit } : {}),
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
function livePid(pid) {
|
|
60
|
+
try {
|
|
61
|
+
process.kill(pid, 0);
|
|
62
|
+
return true;
|
|
63
|
+
}
|
|
64
|
+
catch (e) {
|
|
65
|
+
// EPERM means it exists and is not ours — still alive.
|
|
66
|
+
return e.code === 'EPERM';
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* The lock holder, or null.
|
|
71
|
+
*
|
|
72
|
+
* The pid is validated rather than trusted: the lock file is writable by any
|
|
73
|
+
* local process and this value reaches a model-facing message.
|
|
74
|
+
*/
|
|
75
|
+
export function lockHolder(projectRoot) {
|
|
76
|
+
const lockPath = join(projectRoot, '.uap', 'deliver.lock');
|
|
77
|
+
if (!existsSync(lockPath))
|
|
78
|
+
return null;
|
|
79
|
+
try {
|
|
80
|
+
const [rawPid = '', rawStamp = ''] = readFileSync(lockPath, 'utf8').split('|');
|
|
81
|
+
const pid = rawPid.trim();
|
|
82
|
+
if (!/^\d{1,10}$/.test(pid) || Number(pid) <= 0)
|
|
83
|
+
return null;
|
|
84
|
+
return { pid: Number(pid), stamp: rawStamp.trim().slice(0, 64), source: 'lock' };
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/** Back-compat helper: just the pid. */
|
|
91
|
+
export function lockHolderPid(projectRoot) {
|
|
92
|
+
return lockHolder(projectRoot)?.pid ?? null;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Whoever is running a mission here: the lock holder, else a live resumed run.
|
|
96
|
+
*
|
|
97
|
+
* The run-state fallback is what makes follow work for `--resume`, which never
|
|
98
|
+
* takes the lock.
|
|
99
|
+
*/
|
|
100
|
+
export function currentHolder(projectRoot, isAlive = livePid) {
|
|
101
|
+
const locked = lockHolder(projectRoot);
|
|
102
|
+
if (locked && isAlive(locked.pid))
|
|
103
|
+
return locked;
|
|
104
|
+
for (const run of listRuns(projectRoot)) {
|
|
105
|
+
if (run.status === 'running' && typeof run.pid === 'number' && isAlive(run.pid)) {
|
|
106
|
+
return { pid: run.pid, stamp: run.updatedAt ?? '', source: 'run-state', runId: run.runId };
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
function sameHolder(a, b) {
|
|
112
|
+
return b !== null && a.pid === b.pid && a.stamp === b.stamp && a.source === b.source;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* The run owned by `pid`, and whether it could actually be attributed.
|
|
116
|
+
*
|
|
117
|
+
* The exact-pid match is the only confident answer. Falling back to "the newest
|
|
118
|
+
* run marked running" is tempting and wrong on its own: interrupted runs keep
|
|
119
|
+
* `status: 'running'` deliberately, so a directory that accumulates (33 entries
|
|
120
|
+
* on the project this was built for) usually holds several — and the lock is
|
|
121
|
+
* taken long before run state carrying a pid is written, so a follow that
|
|
122
|
+
* arrives in that window would confidently name an OLDER mission's runId and
|
|
123
|
+
* tell the caller to resume it. The fallback is therefore restricted to runs
|
|
124
|
+
* that could plausibly be the holder's: no recorded pid, or a dead one.
|
|
125
|
+
*/
|
|
126
|
+
export function runForHolder(projectRoot, pid, isAlive = livePid) {
|
|
127
|
+
const runs = listRuns(projectRoot);
|
|
128
|
+
const exact = runs.find((r) => r.pid === pid);
|
|
129
|
+
if (exact)
|
|
130
|
+
return { run: exact, attributed: true };
|
|
131
|
+
const plausible = runs.find((r) => r.status === 'running' && (typeof r.pid !== 'number' || !isAlive(r.pid)));
|
|
132
|
+
return { run: plausible ?? null, attributed: false };
|
|
133
|
+
}
|
|
134
|
+
/** The most recent run, for reporting a mission that ended just before we looked. */
|
|
135
|
+
function mostRecentRun(projectRoot) {
|
|
136
|
+
return listRuns(projectRoot)[0] ?? null;
|
|
137
|
+
}
|
|
138
|
+
function terminalOutcome(run, holderPid, attributed, justEnded) {
|
|
139
|
+
// A process killed mid-run leaves 'running' behind — that IS the resumable
|
|
140
|
+
// state, and it is the one case where naming resume is correct, because the
|
|
141
|
+
// holder is provably gone and continuing cannot fork a live mission.
|
|
142
|
+
const stale = run.status === 'running';
|
|
143
|
+
const who = holderPid !== undefined ? ` (pid ${holderPid})` : '';
|
|
144
|
+
return {
|
|
145
|
+
followed: true,
|
|
146
|
+
delivered: run.status === 'delivered',
|
|
147
|
+
holderPid,
|
|
148
|
+
runId: run.runId,
|
|
149
|
+
status: run.status,
|
|
150
|
+
run: summarize(run),
|
|
151
|
+
attributed,
|
|
152
|
+
reason: stale
|
|
153
|
+
? `The deliver run${who} exited without recording a final status — it was interrupted.`
|
|
154
|
+
: `The deliver run${who} ${justEnded ? 'finished' : 'had already finished'} with status '${run.status}'.` +
|
|
155
|
+
(attributed ? '' : ' (Matched by run state rather than by process id — verify the run id below is the one you meant.)'),
|
|
156
|
+
nextStep: stale
|
|
157
|
+
? `The mission is interrupted, not lost. Continue it with resume:'${run.runId}' — safe now that the holder is gone.`
|
|
158
|
+
: run.status === 'delivered'
|
|
159
|
+
? 'The mission completed. Inspect the result; no further deliver call is needed.'
|
|
160
|
+
: `The mission ended '${run.status}'. Read its output before deciding: continue it with resume:'${run.runId}', or start a new mission if the goal changed.`,
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Wait for the in-flight deliver to finish, then report its outcome.
|
|
165
|
+
*
|
|
166
|
+
* Never throws for the ordinary outcomes — "nothing running", "still running
|
|
167
|
+
* when the budget expired" and "the holder changed" are results, not errors,
|
|
168
|
+
* because the caller is a tool whose next move depends on telling them apart.
|
|
169
|
+
*/
|
|
170
|
+
export async function awaitInFlightDeliver(projectRoot, opts) {
|
|
171
|
+
const isAlive = opts.isAlive ?? livePid;
|
|
172
|
+
const pollMs = Math.max(50, opts.pollMs ?? DEFAULT_POLL_MS);
|
|
173
|
+
const sleep = opts.sleep ?? ((ms) => new Promise((r) => setTimeout(r, ms)));
|
|
174
|
+
const holder = currentHolder(projectRoot, isAlive);
|
|
175
|
+
if (holder === null) {
|
|
176
|
+
// Nothing is running NOW — but a mission that finished moments ago is the
|
|
177
|
+
// common case for this call (the caller's tool timeout fired, it called
|
|
178
|
+
// back). Reporting "nothing ever happened, start the mission normally"
|
|
179
|
+
// there sends it to re-run work that is already done.
|
|
180
|
+
const recent = mostRecentRun(projectRoot);
|
|
181
|
+
if (recent)
|
|
182
|
+
return terminalOutcome(recent, undefined, true, false);
|
|
183
|
+
return {
|
|
184
|
+
followed: false,
|
|
185
|
+
delivered: false,
|
|
186
|
+
nothingInFlight: true,
|
|
187
|
+
reason: 'No deliver run is in flight for this project, and no previous run was found.',
|
|
188
|
+
nextStep: 'Nothing to follow. Start the mission normally — a fresh deliver call will acquire the lock.',
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
const startedAt = Date.now();
|
|
192
|
+
for (;;) {
|
|
193
|
+
const now = currentHolder(projectRoot, isAlive);
|
|
194
|
+
if (now === null)
|
|
195
|
+
break; // finished
|
|
196
|
+
if (!sameHolder(holder, now)) {
|
|
197
|
+
// Reclaim, handoff, or a recycled pid. Following the wrong mission and
|
|
198
|
+
// reporting on it confidently is worse than saying the ground moved.
|
|
199
|
+
return {
|
|
200
|
+
followed: false,
|
|
201
|
+
delivered: false,
|
|
202
|
+
holderChanged: true,
|
|
203
|
+
holderPid: holder.pid,
|
|
204
|
+
reason: `The deliver run being followed (pid ${holder.pid}) was replaced by another (pid ${now.pid}) — ` +
|
|
205
|
+
'the lock was reclaimed or the run handed over.',
|
|
206
|
+
nextStep: 'Do NOT start another run. Call deliver again with follow:true to attach to the current one.',
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
const elapsed = Date.now() - startedAt;
|
|
210
|
+
if (elapsed >= opts.timeoutMs) {
|
|
211
|
+
const { run, attributed } = runForHolder(projectRoot, holder.pid, isAlive);
|
|
212
|
+
return {
|
|
213
|
+
followed: false,
|
|
214
|
+
delivered: false,
|
|
215
|
+
timedOut: true,
|
|
216
|
+
holderPid: holder.pid,
|
|
217
|
+
runId: attributed ? run?.runId : undefined,
|
|
218
|
+
status: run?.status,
|
|
219
|
+
run: run && attributed ? summarize(run) : undefined,
|
|
220
|
+
attributed,
|
|
221
|
+
reason: `The deliver run (pid ${holder.pid}) is STILL RUNNING after ${Math.round(opts.timeoutMs / 1000)}s. ` +
|
|
222
|
+
'It has not failed — this wait gave up, the mission did not.',
|
|
223
|
+
nextStep: 'Do NOT start another run. Call deliver again with follow:true to keep waiting, ' +
|
|
224
|
+
'or leave it and check back later.',
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
opts.onTick?.(elapsed, holder.pid);
|
|
228
|
+
await sleep(Math.min(pollMs, Math.max(1, opts.timeoutMs - elapsed)));
|
|
229
|
+
}
|
|
230
|
+
const { run, attributed } = runForHolder(projectRoot, holder.pid, isAlive);
|
|
231
|
+
if (!run) {
|
|
232
|
+
return {
|
|
233
|
+
followed: true,
|
|
234
|
+
delivered: false,
|
|
235
|
+
holderPid: holder.pid,
|
|
236
|
+
attributed: false,
|
|
237
|
+
reason: `The deliver run (pid ${holder.pid}) finished, but no run state could be read for it.`,
|
|
238
|
+
nextStep: 'Inspect the project to see what landed before deciding whether to run deliver again.',
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
return terminalOutcome(run, holder.pid, attributed, true);
|
|
242
|
+
}
|
|
243
|
+
//# sourceMappingURL=await-run.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"await-run.js","sourceRoot":"","sources":["../../src/delivery/await-run.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,12 @@ export interface DeliverArgs {
|
|
|
46
46
|
dryRun?: boolean;
|
|
47
47
|
/** Hard wall-clock cap in seconds (default 1800) */
|
|
48
48
|
timeoutSec?: number;
|
|
49
|
+
/**
|
|
50
|
+
* Follow the run already in flight for this project instead of starting one.
|
|
51
|
+
* Use this after a timed-out deliver call, or whenever a launch reports
|
|
52
|
+
* alreadyRunning. Read-only: it starts nothing and takes no lock.
|
|
53
|
+
*/
|
|
54
|
+
follow?: boolean;
|
|
49
55
|
/** Judge spec behavioral completeness (LLM) after objective gates pass */
|
|
50
56
|
acceptance?: boolean;
|
|
51
57
|
/** Separate evaluator model preset (generator never grades its own work) */
|
|
@@ -94,6 +100,10 @@ export declare const DELIVER_TOOL_DEFINITION: {
|
|
|
94
100
|
description: string;
|
|
95
101
|
default: boolean;
|
|
96
102
|
};
|
|
103
|
+
follow: {
|
|
104
|
+
type: string;
|
|
105
|
+
description: string;
|
|
106
|
+
};
|
|
97
107
|
timeoutSec: {
|
|
98
108
|
type: string;
|
|
99
109
|
description: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deliver.d.ts","sourceRoot":"","sources":["../../../src/mcp-router/tools/deliver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAQH,MAAM,WAAW,WAAW;IAC1B,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"deliver.d.ts","sourceRoot":"","sources":["../../../src/mcp-router/tools/deliver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAQH,MAAM,WAAW,WAAW;IAC1B,2CAA2C;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwFnC,CAAC;AA2DF;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAyBvD;AAsBD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB,yFAAyF;IACzF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAuMvE;AAED,mEAAmE;AACnE,wBAAgB,yBAAyB,IAAI,MAAM,CAElD"}
|
|
@@ -69,6 +69,12 @@ Best for: implement a feature, fix a bug across files, refactor with tests. Not
|
|
|
69
69
|
description: 'If true, only classify complexity and show the plan (fast, no model calls). Default false.',
|
|
70
70
|
default: false,
|
|
71
71
|
},
|
|
72
|
+
follow: {
|
|
73
|
+
type: 'boolean',
|
|
74
|
+
description: 'Wait for the deliver run already in flight and return its result, instead of starting a new one. ' +
|
|
75
|
+
'This is the correct response to a timed-out deliver call or an alreadyRunning result — it starts ' +
|
|
76
|
+
'nothing. Do not use resume for that: resume CONTINUES a run and would start a second copy of a live one.',
|
|
77
|
+
},
|
|
72
78
|
timeoutSec: {
|
|
73
79
|
type: 'number',
|
|
74
80
|
description: 'Hard wall-clock cap in seconds (default 1800)',
|
|
@@ -233,7 +239,7 @@ function resolveCliEntry() {
|
|
|
233
239
|
* aids, gates, test protection) is handled by deliver itself.
|
|
234
240
|
*/
|
|
235
241
|
export function handleDeliver(args) {
|
|
236
|
-
const { instruction, projectRoot, maxTurns, hardCap, model, dryRun = false, timeoutSec, acceptance, evaluatorModel, escalate, coordinate, untilDelivered, ceiling, resume, decompose, } = args;
|
|
242
|
+
const { instruction, projectRoot, maxTurns, hardCap, model, dryRun = false, timeoutSec, follow = false, acceptance, evaluatorModel, escalate, coordinate, untilDelivered, ceiling, resume, decompose, } = args;
|
|
237
243
|
if ((!instruction || !instruction.trim()) && !resume) {
|
|
238
244
|
return Promise.resolve({ ok: false, dryRun, error: 'instruction is required (or pass resume)' });
|
|
239
245
|
}
|
|
@@ -291,6 +297,19 @@ export function handleDeliver(args) {
|
|
|
291
297
|
cliArgs.push('--no-until-delivered');
|
|
292
298
|
if (hardCap === true && ceiling !== undefined)
|
|
293
299
|
cliArgs.push('--ceiling', String(ceiling));
|
|
300
|
+
if (follow) {
|
|
301
|
+
cliArgs.push('--await-run');
|
|
302
|
+
// Give the CLI a slightly smaller budget than this tool's own kill timeout,
|
|
303
|
+
// so a still-running mission comes back as a REPORT rather than as a killed
|
|
304
|
+
// subprocess — the caller cannot tell a kill from a failure, and that
|
|
305
|
+
// ambiguity is the whole reason follow-mode exists.
|
|
306
|
+
// Strictly below the kill timeout. A `Math.max(5, …)` floor inverted the
|
|
307
|
+
// margin for small timeouts (timeoutSec:1 gave a 5s wait behind a 1s kill),
|
|
308
|
+
// which reproduces the kill-vs-failure ambiguity follow exists to remove.
|
|
309
|
+
const killSec = Math.min(MAX_TIMEOUT_SEC, Math.max(1, timeoutSec ?? DEFAULT_TIMEOUT_SEC));
|
|
310
|
+
const followSec = Math.max(1, Math.min(Math.floor((killSec * 9) / 10), killSec - 1));
|
|
311
|
+
cliArgs.push('--await-timeout', String(followSec));
|
|
312
|
+
}
|
|
294
313
|
if (resume)
|
|
295
314
|
cliArgs.push('--resume', resume);
|
|
296
315
|
if (decompose === true)
|
|
@@ -323,7 +342,7 @@ export function handleDeliver(args) {
|
|
|
323
342
|
dryRun,
|
|
324
343
|
exitCode,
|
|
325
344
|
error: 'deliver produced no JSON result (its --json contract was not honoured on this exit path). ' +
|
|
326
|
-
'Do NOT relaunch blindly:
|
|
345
|
+
'Do NOT relaunch blindly: call deliver with follow:true to see whether a run is already in progress and wait for it.',
|
|
327
346
|
result: stdout.slice(-2000),
|
|
328
347
|
});
|
|
329
348
|
return;
|
|
@@ -353,6 +372,32 @@ export function handleDeliver(args) {
|
|
|
353
372
|
// with NO `error` at all, leaving the actionable text buried in
|
|
354
373
|
// `result.blockers` — in a shape whose own contract says `error` is what
|
|
355
374
|
// a caller reads first.
|
|
375
|
+
// Follow outcomes: timedOut / nothingInFlight / holderChanged all resolve
|
|
376
|
+
// success:false, so without this they fall through with NO `error` and the
|
|
377
|
+
// carefully-worded "it has NOT failed, do not relaunch" text stays buried
|
|
378
|
+
// in `result` — the exact gap fixed twice above for alreadyRunning and
|
|
379
|
+
// preflightFailed.
|
|
380
|
+
const fo = parsed;
|
|
381
|
+
if (fo.timedOut === true || fo.nothingInFlight === true || fo.holderChanged === true) {
|
|
382
|
+
resolvePromise({
|
|
383
|
+
ok: false,
|
|
384
|
+
dryRun,
|
|
385
|
+
exitCode,
|
|
386
|
+
error: `${fo.reason ?? 'follow did not complete'} ${fo.nextStep ?? ''}`.trim(),
|
|
387
|
+
result: parsed,
|
|
388
|
+
});
|
|
389
|
+
return;
|
|
390
|
+
}
|
|
391
|
+
if (fo.followed === true && fo.delivered === false) {
|
|
392
|
+
resolvePromise({
|
|
393
|
+
ok: false,
|
|
394
|
+
dryRun,
|
|
395
|
+
exitCode,
|
|
396
|
+
error: `${fo.reason ?? 'the followed run did not succeed'} ${fo.nextStep ?? ''}`.trim(),
|
|
397
|
+
result: parsed,
|
|
398
|
+
});
|
|
399
|
+
return;
|
|
400
|
+
}
|
|
356
401
|
const pf = parsed;
|
|
357
402
|
if (pf.preflightFailed === true) {
|
|
358
403
|
const blockers = Array.isArray(pf.blockers) ? pf.blockers.map(String) : [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deliver.js","sourceRoot":"","sources":["../../../src/mcp-router/tools/deliver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deliver.js","sourceRoot":"","sources":["../../../src/mcp-router/tools/deliver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AA+C3D,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,IAAI,EAAE,SAAS;IACf,WAAW,EAAE;;;;;;;;+IAQgI;IAC7I,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wHAAwH;aACtI;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,oFAAoF;aAClG;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,mLAAmL;aACtL;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,+JAA+J;aAClK;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6DAA6D;aAC3E;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,4FAA4F;gBACzG,OAAO,EAAE,KAAK;aACf;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,mGAAmG;oBACnG,mGAAmG;oBACnG,0GAA0G;aAC7G;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+CAA+C;aAC7D;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,6IAA6I;aAC3J;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4EAA4E;aAC1F;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,gGAAgG;aAC9G;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,uFAAuF;aACrG;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,4FAA4F;aAC1G;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,6GAA6G;aAChH;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yDAAyD;aACvE;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,4HAA4H;aAC1I;SACF;QACD,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;CACF,CAAC;AAEF,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,4EAA4E;AAC5E,sEAAsE;AACtE,uDAAuD;AACvD,MAAM,eAAe,GAAG,KAAK,CAAC;AAC9B,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzC;;;;;;GAMG;AACH,SAAS,oBAAoB,CAAC,WAAoB;IAChD,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACrF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,KAAK,EAAE,uCAAuC,EAAE,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5C,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC;IACjD,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,EAAE,KAAK,EAAE,+EAA+E,EAAE,CAAC;IACpG,CAAC;IACD,IAAI,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;YAAE,OAAO,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC;IACxF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC;AAED;+EAC+E;AAC/E,SAAS,aAAa;IACpB,MAAM,GAAG,GAAsB,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,CAAC,CAAS,EAAQ,EAAE;QAC/B,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC,CAAC;IACF,IAAI,CAAC,MAAM,CAAC,CAAC;IACb,IAAI,CAAC,MAAM,CAAC,CAAC;IACb,IAAI,CAAC,cAAc,CAAC,CAAC;IACrB,mDAAmD;IACnD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5B,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;IACH,CAAC;IACD,+DAA+D;IAC/D,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACtC,IAAI,CAAC,EAAE,CAAC;QACN,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,aAAa;QACf,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;wEAEwE;AACxE,SAAS,eAAe;IACtB,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChE,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;YAC7C,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;YACvD,MAAM;QACR,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,MAAM;QAC1B,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,UAAU;QAAE,IAAI,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;IACxD,OAAO,IAAI,CAAC;AACd,CAAC;AAYD;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,IAAiB;IAC7C,MAAM,EACJ,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,UAAU,EAAE,MAAM,GAAG,KAAK,EAC9F,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,EACzE,MAAM,EAAE,SAAS,GAClB,GAAG,IAAI,CAAC;IAET,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACrD,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,0CAA0C,EAAE,CAAC,CAAC;IACnG,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,eAAe,CAAC,EAAE,CAAC;QAC1G,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,iCAAiC,eAAe,EAAE,EAAE,CAAC,CAAC;IAC3G,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC;QAClF,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,6CAA6C,EAAE,CAAC,CAAC;IACtG,CAAC;IACD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5D,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QAC9E,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,0CAA0C,EAAE,CAAC,CAAC;IACnG,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC;QACzF,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QACzE,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,yCAAyC,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,MAAM,OAAO,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAClD,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;QACvB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1B,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;IAC9B,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,yCAAyC,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,0EAA0E;IAC1E,wEAAwE;IACxE,8CAA8C;IAC9C,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3C,IAAI,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC,mCAAmC;IACzE,yEAAyE;IACzE,0EAA0E;IAC1E,6EAA6E;IAC7E,4EAA4E;IAC5E,IAAI,OAAO,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9F,IAAI,KAAK;QAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1C,IAAI,UAAU;QAAE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7C,IAAI,cAAc;QAAE,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;IACtE,IAAI,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzC,IAAI,UAAU;QAAE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7C,IAAI,cAAc,KAAK,KAAK;QAAE,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACnE,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1F,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5B,4EAA4E;QAC5E,4EAA4E;QAC5E,sEAAsE;QACtE,oDAAoD;QACpD,yEAAyE;QACzE,4EAA4E;QAC5E,0EAA0E;QAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,IAAI,mBAAmB,CAAC,CAAC,CAAC;QAC1F,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;QACrF,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7C,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpD,IAAI,SAAS,KAAK,KAAK;QAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACxD,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;IAEtC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,IAAI,mBAAmB,CAAC,CAAC,GAAG,IAAI,CAAC;IAEnG,OAAO,IAAI,OAAO,CAAgB,CAAC,cAAc,EAAE,EAAE;QACnD,QAAQ,CACN,OAAO,CAAC,QAAQ,EAChB,OAAO,EACP,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,EACpF,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACd,mEAAmE;YACnE,iEAAiE;YACjE,MAAM,CAAC,GAAG,GAA4D,CAAC;YACvE,MAAM,QAAQ,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;YAEvC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,KAAK,mCAAmC;oBACxD,CAAC,CAAC,2BAA2B,gBAAgB,QAAQ;oBACrD,CAAC,CAAC,2BAA2B,SAAS,GAAG,IAAI,GAAG,CAAC;gBACnD,cAAc,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;gBAClE,OAAO;YACT,CAAC;YACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,uEAAuE;gBACvE,uEAAuE;gBACvE,iEAAiE;gBACjE,2DAA2D;gBAC3D,cAAc,CAAC;oBACb,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,QAAQ;oBACR,KAAK,EACH,4FAA4F;wBAC5F,qHAAqH;oBACvH,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;iBAC5B,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,kEAAkE;YAClE,iEAAiE;YACjE,MAAM,CAAC,GAAG,MAMT,CAAC;YACF,sEAAsE;YACtE,wEAAwE;YACxE,uEAAuE;YACvE,oEAAoE;YACpE,uDAAuD;YACvD,IAAI,CAAC,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;gBAC9B,cAAc,CAAC;oBACb,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,QAAQ;oBACR,KAAK,EACH,uDAAuD;wBACvD,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,wCAAwC;wBACrF,CAAC,CAAC,CAAC,QAAQ;4BACT,oFAAoF,CAAC;oBACzF,MAAM,EAAE,MAAM;iBACf,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,wEAAwE;YACxE,gEAAgE;YAChE,yEAAyE;YACzE,wBAAwB;YACxB,0EAA0E;YAC1E,2EAA2E;YAC3E,0EAA0E;YAC1E,uEAAuE;YACvE,mBAAmB;YACnB,MAAM,EAAE,GAAG,MAQV,CAAC;YACF,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI,IAAI,EAAE,CAAC,eAAe,KAAK,IAAI,IAAI,EAAE,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;gBACrF,cAAc,CAAC;oBACb,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,QAAQ;oBACR,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,IAAI,yBAAyB,IAAI,EAAE,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE;oBAC9E,MAAM,EAAE,MAAM;iBACf,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI,IAAI,EAAE,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;gBACnD,cAAc,CAAC;oBACb,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,QAAQ;oBACR,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,IAAI,kCAAkC,IAAI,EAAE,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE;oBACvF,MAAM,EAAE,MAAM;iBACf,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,MAAM,EAAE,GAAG,MAA8E,CAAC;YAC1F,IAAI,EAAE,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;gBAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3E,cAAc,CAAC;oBACb,EAAE,EAAE,KAAK;oBACT,MAAM;oBACN,QAAQ;oBACR,KAAK,EACH,wDAAwD;wBACxD,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,qBAAqB,CAAC;wBAC7D,gDAAgD;oBAClD,MAAM,EAAE,MAAM;iBACf,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC;YACtG,cAAc,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3D,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,yBAAyB;IACvC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACvE,CAAC"}
|
package/package.json
CHANGED
|
Binary file
|
|
@@ -468,7 +468,9 @@ def main() -> None:
|
|
|
468
468
|
False,
|
|
469
469
|
f"WAIT: a `uap deliver` run (pid {holder}) is ALREADY in progress for this project and is "
|
|
470
470
|
f"changing the code — do NOT edit '{rel_posix}', and do NOT re-run tests on it yet. "
|
|
471
|
-
"Let that run finish
|
|
471
|
+
"Let that run finish — follow it with `uap deliver --await-run`, which waits for it "
|
|
472
|
+
"and reports its result without starting anything. Do NOT use --resume on a live run: "
|
|
473
|
+
"resume CONTINUES a mission and would start a second copy of this one. THEN re-verify. "
|
|
472
474
|
"Launching or editing now only conflicts with the in-flight run.",
|
|
473
475
|
route="wait",
|
|
474
476
|
deliverHint="",
|
|
Binary file
|