@telora/daemon 0.20.53 → 0.20.57
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/build-info.json +6 -3
- package/dist/cli/session-state.d.ts +9 -0
- package/dist/cli/session-state.d.ts.map +1 -1
- package/dist/cli/session-state.js.map +1 -1
- package/dist/completion/review-exit-escalations.d.ts +85 -0
- package/dist/completion/review-exit-escalations.d.ts.map +1 -0
- package/dist/completion/review-exit-escalations.js +203 -0
- package/dist/completion/review-exit-escalations.js.map +1 -0
- package/dist/completion/review-exit-phase.d.ts.map +1 -1
- package/dist/completion/review-exit-phase.js +43 -135
- package/dist/completion/review-exit-phase.js.map +1 -1
- package/dist/delivery-advance-block.d.ts.map +1 -1
- package/dist/delivery-advance-block.js +8 -1
- package/dist/delivery-advance-block.js.map +1 -1
- package/dist/external-hold.d.ts +104 -0
- package/dist/external-hold.d.ts.map +1 -0
- package/dist/external-hold.js +149 -0
- package/dist/external-hold.js.map +1 -0
- package/dist/heartbeat.d.ts +19 -0
- package/dist/heartbeat.d.ts.map +1 -1
- package/dist/heartbeat.js +29 -70
- package/dist/heartbeat.js.map +1 -1
- package/dist/listener-auto-advance.d.ts.map +1 -1
- package/dist/listener-auto-advance.js +12 -0
- package/dist/listener-auto-advance.js.map +1 -1
- package/dist/listener.d.ts.map +1 -1
- package/dist/listener.js +56 -11
- package/dist/listener.js.map +1 -1
- package/dist/prompt-sections/execution-sections.d.ts.map +1 -1
- package/dist/prompt-sections/execution-sections.js +25 -23
- package/dist/prompt-sections/execution-sections.js.map +1 -1
- package/dist/queries/deliveries.d.ts +62 -0
- package/dist/queries/deliveries.d.ts.map +1 -1
- package/dist/queries/deliveries.js +1 -0
- package/dist/queries/deliveries.js.map +1 -1
- package/dist/queries/schemas.d.ts +2 -0
- package/dist/queries/schemas.d.ts.map +1 -1
- package/dist/queries/schemas.js +5 -0
- package/dist/queries/schemas.js.map +1 -1
- package/dist/resolver-dispatch.d.ts +108 -0
- package/dist/resolver-dispatch.d.ts.map +1 -0
- package/dist/resolver-dispatch.js +83 -0
- package/dist/resolver-dispatch.js.map +1 -0
- package/dist/resolver-reach.d.ts +192 -0
- package/dist/resolver-reach.d.ts.map +1 -0
- package/dist/resolver-reach.js +168 -0
- package/dist/resolver-reach.js.map +1 -0
- package/dist/resolvers/git-diff-against-base.d.ts.map +1 -1
- package/dist/resolvers/git-diff-against-base.js +8 -2
- package/dist/resolvers/git-diff-against-base.js.map +1 -1
- package/dist/resolvers/index.d.ts +1 -1
- package/dist/resolvers/index.d.ts.map +1 -1
- package/dist/resolvers/index.js +1 -1
- package/dist/resolvers/index.js.map +1 -1
- package/dist/resolvers/shared/git-diff.d.ts +47 -0
- package/dist/resolvers/shared/git-diff.d.ts.map +1 -1
- package/dist/resolvers/shared/git-diff.js +103 -15
- package/dist/resolvers/shared/git-diff.js.map +1 -1
- package/dist/spawn/review-role-fallback.d.ts +37 -3
- package/dist/spawn/review-role-fallback.d.ts.map +1 -1
- package/dist/spawn/review-role-fallback.js +38 -3
- package/dist/spawn/review-role-fallback.js.map +1 -1
- package/dist/verification-engine.d.ts +10 -0
- package/dist/verification-engine.d.ts.map +1 -1
- package/dist/verification-engine.js +142 -96
- package/dist/verification-engine.js.map +1 -1
- package/dist/verification-feedback.d.ts +44 -1
- package/dist/verification-feedback.d.ts.map +1 -1
- package/dist/verification-feedback.js +130 -1
- package/dist/verification-feedback.js.map +1 -1
- package/dist/verify-reconciliation.d.ts +25 -1
- package/dist/verify-reconciliation.d.ts.map +1 -1
- package/dist/verify-reconciliation.js +64 -2
- package/dist/verify-reconciliation.js.map +1 -1
- package/dist/verify-restatement.d.ts +22 -4
- package/dist/verify-restatement.d.ts.map +1 -1
- package/dist/verify-restatement.js +18 -1
- package/dist/verify-restatement.js.map +1 -1
- package/package.json +1 -1
|
@@ -28,11 +28,11 @@ import { getPendingVerifications, recordDeliveryVerificationOutcome, verifyInjec
|
|
|
28
28
|
import { configForProduct } from './config.js';
|
|
29
29
|
import { authorTargetRestatements as defaultAuthorTargetRestatements, } from './verify-restatement.js';
|
|
30
30
|
import { fileEscalation as defaultFileEscalation } from './escalations.js';
|
|
31
|
-
import {
|
|
31
|
+
import { getGitDiffRange, getDiffStatRange, getChangedFilesRange, getCommitsAhead, resolveDeliveryDiffRange, } from './assembly-resolvers.js';
|
|
32
32
|
import { resolveDefaultVerification as defaultResolveDefaultVerification, } from './verification-config.js';
|
|
33
33
|
import { getActiveFocuses, getFocusDeliveries } from './supabase.js';
|
|
34
34
|
import { collectDefaultOnVerifications, markDefaultOnRan, resolveDaemonWideVerifyCap, resolveProductVerificationScopes, verificationSemaphore, } from './verification-default-on.js';
|
|
35
|
-
import { deliverVerificationFailureFeedback, requeueShortfallAsRework } from './verification-feedback.js';
|
|
35
|
+
import { deliverVerificationFailureFeedback, requeueShortfallAsRework, deliverEvidenceUnavailableFeedback } from './verification-feedback.js';
|
|
36
36
|
import { buildDefaultAttributeFailures, buildResolveVerificationCwd, applyAttribution } from './verification-baseline.js';
|
|
37
37
|
// Re-export the default-on selection + concurrency surface so existing
|
|
38
38
|
// importers (and tests) can reach it through verification-engine.
|
|
@@ -131,6 +131,7 @@ const defaultDeps = (config) => {
|
|
|
131
131
|
getFocusDeliveries,
|
|
132
132
|
deliverFailureFeedback: (v, result) => deliverVerificationFailureFeedback(v, result, config.organizationId).then(() => undefined),
|
|
133
133
|
deliverShortfallFeedback: (v, shortfalls) => requeueShortfallAsRework(v, shortfalls, config.organizationId).then(() => undefined),
|
|
134
|
+
deliverEvidenceUnavailableFeedback: (v, fault) => deliverEvidenceUnavailableFeedback(v, fault, config.organizationId).then(() => undefined),
|
|
134
135
|
resolveVerificationCwd,
|
|
135
136
|
resolveCommitsAhead: (v) => getCommitsAhead(resolveVerificationCwd(v), config.integrationBranch),
|
|
136
137
|
attributeFailures: buildDefaultAttributeFailures(config),
|
|
@@ -166,10 +167,16 @@ function resolveDiffCwd(v, deps) {
|
|
|
166
167
|
*/
|
|
167
168
|
function buildVerifyEvidence(result, v, deps) {
|
|
168
169
|
const cwd = resolveDiffCwd(v, deps);
|
|
170
|
+
// Resolve the range that actually contains the delivery's work: base...HEAD
|
|
171
|
+
// while the branch is ahead, or the merge-commit range once it has merged and
|
|
172
|
+
// gone level with the base. A null range (no attributable commits) yields an
|
|
173
|
+
// empty diff, which the instrument-fault path then holds -- it is never
|
|
174
|
+
// rendered as a shortfall.
|
|
175
|
+
const range = resolveDeliveryDiffRange(cwd, deps.integrationBranch);
|
|
169
176
|
let diff = result.deliveryDiff ?? '';
|
|
170
177
|
if (diff === '') {
|
|
171
178
|
try {
|
|
172
|
-
diff =
|
|
179
|
+
diff = range ? getGitDiffRange(cwd, range) : '';
|
|
173
180
|
}
|
|
174
181
|
catch (err) {
|
|
175
182
|
// best-effort: no diff is fine, the other evidence slots still carry signal
|
|
@@ -179,8 +186,8 @@ function buildVerifyEvidence(result, v, deps) {
|
|
|
179
186
|
let changedFiles = [];
|
|
180
187
|
let diffStat = '';
|
|
181
188
|
try {
|
|
182
|
-
changedFiles =
|
|
183
|
-
diffStat =
|
|
189
|
+
changedFiles = range ? getChangedFilesRange(cwd, range) : [];
|
|
190
|
+
diffStat = range ? getDiffStatRange(cwd, range) : '';
|
|
184
191
|
}
|
|
185
192
|
catch (err) {
|
|
186
193
|
log.debug('best-effort: structured diff signals unavailable', { error: String(err?.message ?? err) });
|
|
@@ -196,6 +203,21 @@ function buildVerifyEvidence(result, v, deps) {
|
|
|
196
203
|
verdictRationale: result.rationale,
|
|
197
204
|
};
|
|
198
205
|
}
|
|
206
|
+
/**
|
|
207
|
+
* Name the judgeable evidence slots that were empty, for the instrument-fault
|
|
208
|
+
* hold's gate_state + escalation. Describes the FAULT (what the gate could not
|
|
209
|
+
* see), never the work.
|
|
210
|
+
*/
|
|
211
|
+
function describeMissingJudgeEvidence(ev) {
|
|
212
|
+
const missing = [];
|
|
213
|
+
if (!ev.diff || ev.diff.trim() === '')
|
|
214
|
+
missing.push('diff');
|
|
215
|
+
if (!ev.changedFiles || ev.changedFiles.length === 0)
|
|
216
|
+
missing.push('changed files');
|
|
217
|
+
if (!ev.inspectionRationale || ev.inspectionRationale.trim() === '')
|
|
218
|
+
missing.push('inspection finding');
|
|
219
|
+
return missing;
|
|
220
|
+
}
|
|
199
221
|
/**
|
|
200
222
|
* Run verification for a single delivery.
|
|
201
223
|
*
|
|
@@ -244,6 +266,11 @@ export async function runVerificationForDelivery(v, deps) {
|
|
|
244
266
|
// guard (not deterministic_verification), so the origin must survive to the
|
|
245
267
|
// feedback dispatch below.
|
|
246
268
|
let shortfallHold = [];
|
|
269
|
+
// Instrument-fault tracking: set when the verify path was handed no evidence
|
|
270
|
+
// it could judge the work against (an empty bundle). Distinct origin from a
|
|
271
|
+
// shortfall -- it holds the gate under the evidence-unavailable guard and
|
|
272
|
+
// escalates rather than routing to verify_failed.
|
|
273
|
+
let evidenceUnavailableHold = null;
|
|
247
274
|
// Pass path FIRST so a verifyInjection failure short-circuits before we
|
|
248
275
|
// record an outcome that does not match graph state.
|
|
249
276
|
if (result.outcome === 'passed' && v.injectionNodeId) {
|
|
@@ -280,110 +307,129 @@ export async function runVerificationForDelivery(v, deps) {
|
|
|
280
307
|
// 'failed'), skip the flip, and escalate the gap to a human. Reality is
|
|
281
308
|
// moved toward intent, never the reverse.
|
|
282
309
|
const evidence = buildVerifyEvidence(result, v, deps);
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
//
|
|
287
|
-
//
|
|
288
|
-
// the
|
|
289
|
-
//
|
|
290
|
-
//
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
if (
|
|
310
|
+
let restatements = [];
|
|
311
|
+
let shortfalls = [];
|
|
312
|
+
let realityTreeId;
|
|
313
|
+
// A GATE MUST NOT REPORT ITS OWN BLINDNESS AS A VERDICT. The reconciliation
|
|
314
|
+
// sets this when it has a declared-DE target to judge but the evidence is
|
|
315
|
+
// empty of anything the achieved DE can be authored from -- it then renders
|
|
316
|
+
// NO verdict (match/legitimate_divergence/shortfall) and returns the
|
|
317
|
+
// instrument-fault signal instead. Handled below as a distinct non-verdict
|
|
318
|
+
// hold, never as a shortfall.
|
|
319
|
+
let evidenceUnavailable = false;
|
|
320
|
+
if (deps.authorTargetRestatements) {
|
|
321
|
+
try {
|
|
322
|
+
const reconciled = await deps.authorTargetRestatements(v.injectionNodeId, v.focusId, evidence);
|
|
323
|
+
restatements = reconciled.restatements;
|
|
324
|
+
shortfalls = reconciled.shortfalls;
|
|
325
|
+
realityTreeId = reconciled.realityTreeId;
|
|
326
|
+
evidenceUnavailable = reconciled.evidenceUnavailable === true;
|
|
327
|
+
}
|
|
328
|
+
catch (err) {
|
|
329
|
+
// A reconciliation we could not run at all is asymmetric-unsafe: do not
|
|
330
|
+
// flip an injection whose achievement we could not verify. Treat the
|
|
331
|
+
// whole injection as a shortfall and hold the gate.
|
|
332
|
+
log.warn(`[verification] verify-time reconciliation failed for ${v.injectionNodeId}:`, err.message);
|
|
333
|
+
shortfalls = [{
|
|
334
|
+
nodeId: v.injectionNodeId,
|
|
335
|
+
declaredStatement: '(unknown -- reconciliation failed)',
|
|
336
|
+
achievedStatement: '(reconciliation failed)',
|
|
337
|
+
reason: `Reconciliation failed: ${err.message}`,
|
|
338
|
+
}];
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
if (evidenceUnavailable) {
|
|
342
|
+
// Instrument fault: the reconciliation had a declared DE to judge but no
|
|
343
|
+
// evidence to judge it against, so it rendered no verdict. Hold the
|
|
344
|
+
// delivery in `verify` under the evidence-unavailable guard (NOT
|
|
345
|
+
// verify_failed -- no re-code iteration is consumed) and escalate on
|
|
346
|
+
// first occurrence, naming the missing evidence. This bounds EVERY cause
|
|
347
|
+
// of an empty bundle (broken diff range, merged branch, no attributable
|
|
348
|
+
// work), so an instrument fault is never published as a shortfall.
|
|
349
|
+
const commitsAhead = deps.resolveCommitsAhead ? deps.resolveCommitsAhead(v) : 0;
|
|
350
|
+
evidenceUnavailableHold = {
|
|
351
|
+
missing: describeMissingJudgeEvidence(evidence),
|
|
352
|
+
commitsAhead,
|
|
353
|
+
};
|
|
294
354
|
result.outcome = 'pending';
|
|
295
|
-
result.rationale =
|
|
296
|
-
`verify held: delivery branch is ${commitsAhead} commit(s) ahead of ` +
|
|
297
|
-
`${deps.integrationBranch} but the resolved diff is empty -- broken diff ` +
|
|
298
|
-
`
|
|
355
|
+
result.rationale = commitsAhead > 0
|
|
356
|
+
? `verify held (instrument fault): delivery branch is ${commitsAhead} commit(s) ahead of ` +
|
|
357
|
+
`${deps.integrationBranch} but the resolved diff is empty -- broken diff measurement, ` +
|
|
358
|
+
`not a shortfall (injection ${v.injectionNodeId} not flipped)`
|
|
359
|
+
: `verify held (instrument fault): no diff/changed-files/inspection evidence to judge the ` +
|
|
360
|
+
`work -- the gate is blind, not the work short (injection ${v.injectionNodeId} not flipped)`;
|
|
299
361
|
log.warn(`[verification] ${result.rationale} (delivery ${v.deliveryId})`);
|
|
300
362
|
}
|
|
363
|
+
else if (shortfalls.length > 0) {
|
|
364
|
+
// Hold the gate, do NOT flip. A shortfall is an EXECUTION gap the team
|
|
365
|
+
// that produced it can close, not an intent question for a human -- so
|
|
366
|
+
// it re-enters the loop as bounded re-work (via deps.deliverShortfallFeedback
|
|
367
|
+
// below, which routes verify -> verify_failed through the reconciler),
|
|
368
|
+
// never a needs_intent inbox item. The genuine human residue is the
|
|
369
|
+
// EXISTING verify_failed iteration cap (verify_gate_unclearable).
|
|
370
|
+
shortfallHold = shortfalls;
|
|
371
|
+
result.outcome = 'failed';
|
|
372
|
+
result.rationale =
|
|
373
|
+
`verify reconciliation found ${shortfalls.length} shortfall(s) vs declared intent; ` +
|
|
374
|
+
`injection ${v.injectionNodeId} not flipped (re-entering bounded re-work)`;
|
|
375
|
+
}
|
|
301
376
|
else {
|
|
302
|
-
let
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
try {
|
|
307
|
-
const reconciled = await deps.authorTargetRestatements(v.injectionNodeId, v.focusId, evidence);
|
|
308
|
-
restatements = reconciled.restatements;
|
|
309
|
-
shortfalls = reconciled.shortfalls;
|
|
310
|
-
realityTreeId = reconciled.realityTreeId;
|
|
311
|
-
}
|
|
312
|
-
catch (err) {
|
|
313
|
-
// A reconciliation we could not run at all is asymmetric-unsafe: do not
|
|
314
|
-
// flip an injection whose achievement we could not verify. Treat the
|
|
315
|
-
// whole injection as a shortfall and hold the gate.
|
|
316
|
-
log.warn(`[verification] verify-time reconciliation failed for ${v.injectionNodeId}:`, err.message);
|
|
317
|
-
shortfalls = [{
|
|
318
|
-
nodeId: v.injectionNodeId,
|
|
319
|
-
declaredStatement: '(unknown -- reconciliation failed)',
|
|
320
|
-
achievedStatement: '(reconciliation failed)',
|
|
321
|
-
reason: `Reconciliation failed: ${err.message}`,
|
|
322
|
-
}];
|
|
323
|
-
}
|
|
377
|
+
let flipped = false;
|
|
378
|
+
try {
|
|
379
|
+
await deps.verifyInjection(v.injectionNodeId, restatements);
|
|
380
|
+
flipped = true;
|
|
324
381
|
}
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
// it re-enters the loop as bounded re-work (via deps.deliverShortfallFeedback
|
|
329
|
-
// below, which routes verify -> verify_failed through the reconciler),
|
|
330
|
-
// never a needs_intent inbox item. The genuine human residue is the
|
|
331
|
-
// EXISTING verify_failed iteration cap (verify_gate_unclearable).
|
|
332
|
-
shortfallHold = shortfalls;
|
|
333
|
-
result.outcome = 'failed';
|
|
334
|
-
result.rationale =
|
|
335
|
-
`verify reconciliation found ${shortfalls.length} shortfall(s) vs declared intent; ` +
|
|
336
|
-
`injection ${v.injectionNodeId} not flipped (re-entering bounded re-work)`;
|
|
382
|
+
catch (err) {
|
|
383
|
+
result.outcome = 'pending';
|
|
384
|
+
result.rationale = `verifyInjection failed for ${v.injectionNodeId}: ${err.message}`;
|
|
337
385
|
}
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
if (
|
|
356
|
-
|
|
357
|
-
.
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
statement: r.statement,
|
|
362
|
-
originalClaim: r.originalClaim,
|
|
363
|
-
...(r.divergenceReason ? { verifyDivergenceReason: r.divergenceReason } : {}),
|
|
364
|
-
}));
|
|
365
|
-
if (divergedWritebacks.length > 0) {
|
|
366
|
-
try {
|
|
367
|
-
await deps.emitInwardDrift(v.injectionNodeId, divergedWritebacks, realityTreeId);
|
|
368
|
-
}
|
|
369
|
-
catch (err) {
|
|
370
|
-
log.warn(`[verification] inward drift emit failed for ${v.injectionNodeId}:`, err.message);
|
|
371
|
-
}
|
|
386
|
+
// INWARD drift (TEL-3/TEL-4): any target the reconciliation stamped
|
|
387
|
+
// `legitimate_divergence` is a tree CLAIM reality contradicted. Surface
|
|
388
|
+
// each as an inward drift proposal -- AFTER the flip landed -- so a
|
|
389
|
+
// confident-but-wrong assertion is corrected by drift rather than
|
|
390
|
+
// frozen. observedState carries the tree's ORIGINAL claim (not the
|
|
391
|
+
// achieved reality); proposedCorrection carries what reality showed.
|
|
392
|
+
// Best-effort + non-fatal: a failure must not undo the verify flip.
|
|
393
|
+
if (flipped) {
|
|
394
|
+
const divergedWritebacks = restatements
|
|
395
|
+
.filter((r) => r.classification === 'legitimate_divergence')
|
|
396
|
+
.map((r) => ({
|
|
397
|
+
nodeId: r.nodeId,
|
|
398
|
+
classification: 'legitimate_divergence',
|
|
399
|
+
statement: r.statement,
|
|
400
|
+
originalClaim: r.originalClaim,
|
|
401
|
+
...(r.divergenceReason ? { verifyDivergenceReason: r.divergenceReason } : {}),
|
|
402
|
+
}));
|
|
403
|
+
if (divergedWritebacks.length > 0) {
|
|
404
|
+
try {
|
|
405
|
+
await deps.emitInwardDrift(v.injectionNodeId, divergedWritebacks, realityTreeId);
|
|
406
|
+
}
|
|
407
|
+
catch (err) {
|
|
408
|
+
log.warn(`[verification] inward drift emit failed for ${v.injectionNodeId}:`, err.message);
|
|
372
409
|
}
|
|
373
410
|
}
|
|
374
411
|
}
|
|
375
|
-
}
|
|
412
|
+
}
|
|
376
413
|
}
|
|
377
414
|
}
|
|
378
415
|
await deps.recordOutcome(v.deliveryId, result.outcome);
|
|
379
|
-
// Feedback dispatch by FAILURE ORIGIN
|
|
380
|
-
// shortfall hold only demotes a PASSED
|
|
381
|
-
//
|
|
416
|
+
// Feedback dispatch by FAILURE ORIGIN. The three origins are mutually
|
|
417
|
+
// exclusive: a shortfall / instrument-fault hold only demotes a PASSED
|
|
418
|
+
// outcome, so a deterministic-failed run carries neither.
|
|
382
419
|
//
|
|
383
|
-
//
|
|
384
|
-
//
|
|
385
|
-
//
|
|
386
|
-
|
|
420
|
+
// Instrument-fault hold FIRST: the verify path was handed nothing to judge,
|
|
421
|
+
// so it holds under the evidence-unavailable guard and files a
|
|
422
|
+
// first-occurrence operator escalation -- it never routes to verify_failed and
|
|
423
|
+
// never reports under the deterministic or shortfall guard.
|
|
424
|
+
if (evidenceUnavailableHold && deps.deliverEvidenceUnavailableFeedback) {
|
|
425
|
+
try {
|
|
426
|
+
await deps.deliverEvidenceUnavailableFeedback(v, evidenceUnavailableHold);
|
|
427
|
+
}
|
|
428
|
+
catch (err) {
|
|
429
|
+
log.warn(`[verification] evidence-unavailable feedback failed for delivery ${v.deliveryId}:`, err.message);
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
else if (shortfallHold.length > 0 && deps.deliverShortfallFeedback) {
|
|
387
433
|
try {
|
|
388
434
|
await deps.deliverShortfallFeedback(v, shortfallHold);
|
|
389
435
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verification-engine.js","sourceRoot":"","sources":["../src/verification-engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"verification-engine.js","sourceRoot":"","sources":["../src/verification-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
* @module verification-feedback
|
|
17
17
|
*/
|
|
18
18
|
import { sendMessage } from '@telora/daemon-core';
|
|
19
|
-
import { type DeliveryGateState, type ShortfallReconciliationDetail, type VerificationFailureDetail } from './queries/deliveries.js';
|
|
19
|
+
import { type DeliveryGateState, type EvidenceUnavailableDetail, type ShortfallReconciliationDetail, type VerificationFailureDetail } from './queries/deliveries.js';
|
|
20
|
+
import { type CreateEscalationParams } from './queries/issues.js';
|
|
20
21
|
import { resolveReconciledWrite } from './delivery-reconciler-apply.js';
|
|
21
22
|
import { getActiveTeams } from './focus-team-state.js';
|
|
22
23
|
import type { PendingVerification } from './queries/verification.js';
|
|
@@ -31,6 +32,16 @@ export declare const DETERMINISTIC_VERIFICATION_GUARD = "deterministic_verificat
|
|
|
31
32
|
* deterministic_verification whose exitCode is 0.
|
|
32
33
|
*/
|
|
33
34
|
export declare const SHORTFALL_RECONCILIATION_GUARD = "verify_shortfall_reconciliation";
|
|
35
|
+
/**
|
|
36
|
+
* gate_state guard name for a verify EVIDENCE-UNAVAILABLE (instrument-fault)
|
|
37
|
+
* hold. The verify path was handed nothing it could judge the work against, so
|
|
38
|
+
* it is BLIND -- distinct from both the deterministic guard (a shell command
|
|
39
|
+
* failed) and the shortfall guard (the work fell short of intent). A reader
|
|
40
|
+
* must never see the gate's own blindness rendered as a verdict about the work.
|
|
41
|
+
*/
|
|
42
|
+
export declare const EVIDENCE_UNAVAILABLE_GUARD = "verify_evidence_unavailable";
|
|
43
|
+
/** escalation_kind discriminator for the instrument-fault hold (one open per delivery). */
|
|
44
|
+
export declare const EVIDENCE_UNAVAILABLE_KIND = "verify_evidence_unavailable";
|
|
34
45
|
/** The slice of a StrategyResult the feedback loop needs. */
|
|
35
46
|
export interface VerificationFailureResult {
|
|
36
47
|
logPath?: string;
|
|
@@ -122,4 +133,36 @@ export declare function requeueShortfallAsRework(v: Pick<PendingVerification, 'd
|
|
|
122
133
|
injected: boolean;
|
|
123
134
|
detail: ShortfallReconciliationDetail;
|
|
124
135
|
}>;
|
|
136
|
+
/** Build the gate_state for an evidence-unavailable instrument-fault hold. Pure -- exported for testing. */
|
|
137
|
+
export declare function buildEvidenceUnavailableGateState(detail: EvidenceUnavailableDetail): DeliveryGateState;
|
|
138
|
+
/** Build the informational message injected into a live coding team. Pure -- exported for testing. */
|
|
139
|
+
export declare function buildEvidenceUnavailableInjectMessage(deliveryName: string, detail: EvidenceUnavailableDetail): string;
|
|
140
|
+
/** Injected IO for the evidence-unavailable hold. */
|
|
141
|
+
export interface EvidenceUnavailableDeps extends VerificationFeedbackDeps {
|
|
142
|
+
/** True when an open evidence-unavailable escalation already exists for this delivery. */
|
|
143
|
+
hasOpenEscalationForDelivery: (deliveryId: string, escalationKind: string) => Promise<boolean>;
|
|
144
|
+
/** File the first-occurrence instrument-fault escalation. */
|
|
145
|
+
createEscalation: (params: CreateEscalationParams) => Promise<{
|
|
146
|
+
escalationId: string | null;
|
|
147
|
+
} | void>;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Deliver feedback for a verify EVIDENCE-UNAVAILABLE instrument-fault hold:
|
|
151
|
+
* 1. write gate_state under the evidence-unavailable guard WITHOUT changing
|
|
152
|
+
* execution_status (stays `verify`; same idempotent same-status pattern as
|
|
153
|
+
* the deterministic/shortfall gate_state writes). The delivery is NOT
|
|
154
|
+
* routed to verify_failed, so no iteration_count is consumed.
|
|
155
|
+
* 2. file ONE operator escalation on first occurrence (idempotent per
|
|
156
|
+
* delivery via hasOpenEscalationForDelivery) naming the missing evidence,
|
|
157
|
+
* so an instrument fault escalates immediately instead of cycling to the
|
|
158
|
+
* verify_failed iteration cap.
|
|
159
|
+
* 3. best-effort inject an informational note into a live coding team.
|
|
160
|
+
*
|
|
161
|
+
* Best-effort throughout -- a feedback failure must never crash the verification tick.
|
|
162
|
+
*/
|
|
163
|
+
export declare function deliverEvidenceUnavailableFeedback(v: Pick<PendingVerification, 'deliveryId' | 'deliveryName' | 'focusId' | 'productId'>, fault: Omit<EvidenceUnavailableDetail, 'heldAt'>, organizationId: string, deps?: Partial<EvidenceUnavailableDeps>): Promise<{
|
|
164
|
+
gateWritten: boolean;
|
|
165
|
+
escalated: boolean;
|
|
166
|
+
injected: boolean;
|
|
167
|
+
}>;
|
|
125
168
|
//# sourceMappingURL=verification-feedback.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verification-feedback.d.ts","sourceRoot":"","sources":["../src/verification-feedback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"verification-feedback.d.ts","sourceRoot":"","sources":["../src/verification-feedback.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,8 +15,9 @@
|
|
|
15
15
|
*
|
|
16
16
|
* @module verification-feedback
|
|
17
17
|
*/
|
|
18
|
-
import { DELIVERY_STATUS, sendMessage } from '@telora/daemon-core';
|
|
18
|
+
import { DELIVERY_STATUS, ESCALATION_REASONS, ESCALATION_DISPOSITIONS, sendMessage, withRetry } from '@telora/daemon-core';
|
|
19
19
|
import { updateDeliveryStatus, } from './queries/deliveries.js';
|
|
20
|
+
import { createEscalation as defaultCreateEscalation, hasOpenEscalationForDelivery as defaultHasOpenEscalationForDelivery, } from './queries/issues.js';
|
|
20
21
|
import { resolveReconciledWrite } from './delivery-reconciler-apply.js';
|
|
21
22
|
import { getActiveTeams } from './focus-team-state.js';
|
|
22
23
|
import { parseFailingTests } from './verification-failure-parser.js';
|
|
@@ -32,6 +33,16 @@ export const DETERMINISTIC_VERIFICATION_GUARD = 'deterministic_verification';
|
|
|
32
33
|
* deterministic_verification whose exitCode is 0.
|
|
33
34
|
*/
|
|
34
35
|
export const SHORTFALL_RECONCILIATION_GUARD = 'verify_shortfall_reconciliation';
|
|
36
|
+
/**
|
|
37
|
+
* gate_state guard name for a verify EVIDENCE-UNAVAILABLE (instrument-fault)
|
|
38
|
+
* hold. The verify path was handed nothing it could judge the work against, so
|
|
39
|
+
* it is BLIND -- distinct from both the deterministic guard (a shell command
|
|
40
|
+
* failed) and the shortfall guard (the work fell short of intent). A reader
|
|
41
|
+
* must never see the gate's own blindness rendered as a verdict about the work.
|
|
42
|
+
*/
|
|
43
|
+
export const EVIDENCE_UNAVAILABLE_GUARD = 'verify_evidence_unavailable';
|
|
44
|
+
/** escalation_kind discriminator for the instrument-fault hold (one open per delivery). */
|
|
45
|
+
export const EVIDENCE_UNAVAILABLE_KIND = 'verify_evidence_unavailable';
|
|
35
46
|
/** Build the gate_state for a failed deterministic run. Pure -- exported for testing. */
|
|
36
47
|
export function buildVerificationFailureGateState(detail) {
|
|
37
48
|
return {
|
|
@@ -284,4 +295,122 @@ export async function requeueShortfallAsRework(v, shortfalls, organizationId, de
|
|
|
284
295
|
}
|
|
285
296
|
return { transitioned, injected, detail };
|
|
286
297
|
}
|
|
298
|
+
// ---------------------------------------------------------------------------
|
|
299
|
+
// Evidence-unavailable instrument-fault hold (a gate must not report its own
|
|
300
|
+
// blindness as a verdict)
|
|
301
|
+
// ---------------------------------------------------------------------------
|
|
302
|
+
/** Build the gate_state for an evidence-unavailable instrument-fault hold. Pure -- exported for testing. */
|
|
303
|
+
export function buildEvidenceUnavailableGateState(detail) {
|
|
304
|
+
return {
|
|
305
|
+
blocking: [{ guardName: EVIDENCE_UNAVAILABLE_GUARD, passed: false }],
|
|
306
|
+
warnings: [],
|
|
307
|
+
evaluatedAt: detail.heldAt,
|
|
308
|
+
evidenceUnavailable: detail,
|
|
309
|
+
};
|
|
310
|
+
}
|
|
311
|
+
/** Build the informational message injected into a live coding team. Pure -- exported for testing. */
|
|
312
|
+
export function buildEvidenceUnavailableInjectMessage(deliveryName, detail) {
|
|
313
|
+
return [
|
|
314
|
+
`VERIFY HELD for delivery "${deliveryName}": the verify gate was handed NO evidence it could judge the work against.`,
|
|
315
|
+
'',
|
|
316
|
+
'This is an INSTRUMENT FAULT, not a statement about your work and NOT a failing check. ' +
|
|
317
|
+
'The verify reconciliation could not see a diff / changed files / inspection finding, so it ' +
|
|
318
|
+
'declined to render any verdict (it must never report its own blindness as a shortfall).',
|
|
319
|
+
'',
|
|
320
|
+
`Missing evidence: ${detail.missing.join(', ') || '(all judgeable slots empty)'}`,
|
|
321
|
+
detail.commitsAhead > 0
|
|
322
|
+
? `The branch is ${detail.commitsAhead} commit(s) ahead of the base but the diff resolved empty -- a broken measurement.`
|
|
323
|
+
: 'The branch is level with / behind the base (already merged, or no work attributable) -- no diff to read.',
|
|
324
|
+
'',
|
|
325
|
+
'An operator escalation has been filed. Do not re-run coding to "fix" this -- there is nothing in the work to fix.',
|
|
326
|
+
].join('\n');
|
|
327
|
+
}
|
|
328
|
+
const defaultEvidenceUnavailableDeps = () => ({
|
|
329
|
+
...defaultDeps(),
|
|
330
|
+
hasOpenEscalationForDelivery: defaultHasOpenEscalationForDelivery,
|
|
331
|
+
createEscalation: defaultCreateEscalation,
|
|
332
|
+
});
|
|
333
|
+
/**
|
|
334
|
+
* Deliver feedback for a verify EVIDENCE-UNAVAILABLE instrument-fault hold:
|
|
335
|
+
* 1. write gate_state under the evidence-unavailable guard WITHOUT changing
|
|
336
|
+
* execution_status (stays `verify`; same idempotent same-status pattern as
|
|
337
|
+
* the deterministic/shortfall gate_state writes). The delivery is NOT
|
|
338
|
+
* routed to verify_failed, so no iteration_count is consumed.
|
|
339
|
+
* 2. file ONE operator escalation on first occurrence (idempotent per
|
|
340
|
+
* delivery via hasOpenEscalationForDelivery) naming the missing evidence,
|
|
341
|
+
* so an instrument fault escalates immediately instead of cycling to the
|
|
342
|
+
* verify_failed iteration cap.
|
|
343
|
+
* 3. best-effort inject an informational note into a live coding team.
|
|
344
|
+
*
|
|
345
|
+
* Best-effort throughout -- a feedback failure must never crash the verification tick.
|
|
346
|
+
*/
|
|
347
|
+
export async function deliverEvidenceUnavailableFeedback(v, fault, organizationId, deps = {}) {
|
|
348
|
+
const d = { ...defaultEvidenceUnavailableDeps(), ...deps };
|
|
349
|
+
const detail = { heldAt: d.now(), ...fault };
|
|
350
|
+
const gateState = buildEvidenceUnavailableGateState(detail);
|
|
351
|
+
let gateWritten = false;
|
|
352
|
+
try {
|
|
353
|
+
await d.writeGateState(v.deliveryId, gateState, organizationId);
|
|
354
|
+
gateWritten = true;
|
|
355
|
+
}
|
|
356
|
+
catch (err) {
|
|
357
|
+
log.warn(`failed to write evidence-unavailable gate_state for delivery ${v.deliveryId}:`, err.message);
|
|
358
|
+
}
|
|
359
|
+
let escalated = false;
|
|
360
|
+
try {
|
|
361
|
+
if (!(await d.hasOpenEscalationForDelivery(v.deliveryId, EVIDENCE_UNAVAILABLE_KIND))) {
|
|
362
|
+
await withRetry(() => d.createEscalation({
|
|
363
|
+
organizationId,
|
|
364
|
+
sessionId: '',
|
|
365
|
+
issueId: null,
|
|
366
|
+
reasonType: ESCALATION_REASONS.ERROR_ENCOUNTERED,
|
|
367
|
+
// An operator must fix the measurement / disambiguate the empty bundle;
|
|
368
|
+
// the daemon cannot self-clear an instrument fault.
|
|
369
|
+
disposition: ESCALATION_DISPOSITIONS.NEEDS_OPERATOR,
|
|
370
|
+
anchor: { deliveryId: v.deliveryId, ...(v.focusId ? { focusId: v.focusId } : {}) },
|
|
371
|
+
...(v.productId ? { productId: v.productId } : {}),
|
|
372
|
+
escalationKind: EVIDENCE_UNAVAILABLE_KIND,
|
|
373
|
+
description: `Verify for delivery "${v.deliveryName}" was handed NO evidence it could judge the work ` +
|
|
374
|
+
`against (an instrument fault) -- the gate is BLIND, not the work short.\n\n` +
|
|
375
|
+
`**Delivery:** "${v.deliveryName}" (${v.deliveryId})\n` +
|
|
376
|
+
`**Missing evidence:** ${detail.missing.join(', ') || '(all judgeable slots empty)'}\n` +
|
|
377
|
+
`**commits ahead of base:** ${detail.commitsAhead}\n\n` +
|
|
378
|
+
(detail.commitsAhead > 0
|
|
379
|
+
? `The branch has commits but the diff resolved empty -- a broken diff MEASUREMENT ` +
|
|
380
|
+
`(wrong range/worktree). Fix the measurement; do not re-code.\n`
|
|
381
|
+
: `The branch is level with / behind the base (already merged or no attributable work) ` +
|
|
382
|
+
`-- there is no diff to read. Confirm whether the work landed and clear this hold.\n`),
|
|
383
|
+
whatWasTried: `The verify reconciliation detected an empty judgeable evidence bundle and declined to ` +
|
|
384
|
+
`render a verdict (it must never report its own blindness as a shortfall). The delivery ` +
|
|
385
|
+
`is held in verify without consuming a re-code iteration.`,
|
|
386
|
+
helpNeeded: `Restore the missing evidence (fix the diff range / confirm the merge) so verify can ` +
|
|
387
|
+
`judge the work, or clear the delivery manually if the work is genuinely complete.`,
|
|
388
|
+
metadata: {
|
|
389
|
+
cause: EVIDENCE_UNAVAILABLE_KIND,
|
|
390
|
+
deliveryName: v.deliveryName,
|
|
391
|
+
missing: detail.missing,
|
|
392
|
+
commitsAhead: detail.commitsAhead,
|
|
393
|
+
},
|
|
394
|
+
}), { maxAttempts: 3, label: `escalation-evidence-unavailable-${v.deliveryId}` });
|
|
395
|
+
escalated = true;
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
catch (err) {
|
|
399
|
+
log.warn(`failed to file evidence-unavailable escalation for delivery ${v.deliveryId}:`, err.message);
|
|
400
|
+
}
|
|
401
|
+
let injected = false;
|
|
402
|
+
if (v.focusId) {
|
|
403
|
+
const team = d.getActiveTeams().get(v.focusId);
|
|
404
|
+
if (team && team.leadStdin && team.sessionType !== 'review') {
|
|
405
|
+
try {
|
|
406
|
+
d.sendMessage(team.leadStdin, buildEvidenceUnavailableInjectMessage(v.deliveryName, detail));
|
|
407
|
+
injected = true;
|
|
408
|
+
}
|
|
409
|
+
catch (err) {
|
|
410
|
+
log.warn(`failed to inject evidence-unavailable hold to team ${v.focusId}:`, err.message);
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
return { gateWritten, escalated, injected };
|
|
415
|
+
}
|
|
287
416
|
//# sourceMappingURL=verification-feedback.js.map
|