@telora/daemon 0.20.21 → 0.20.32
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 +4 -3
- package/dist/audit-phase.d.ts +43 -6
- package/dist/audit-phase.d.ts.map +1 -1
- package/dist/audit-phase.js +124 -23
- package/dist/audit-phase.js.map +1 -1
- package/dist/auto-update.d.ts +87 -0
- package/dist/auto-update.d.ts.map +1 -1
- package/dist/auto-update.js +142 -8
- package/dist/auto-update.js.map +1 -1
- package/dist/cascade-restatement.d.ts +13 -147
- package/dist/cascade-restatement.d.ts.map +1 -1
- package/dist/cascade-restatement.js +13 -429
- package/dist/cascade-restatement.js.map +1 -1
- package/dist/focus-engine.d.ts.map +1 -1
- package/dist/focus-engine.js +15 -0
- package/dist/focus-engine.js.map +1 -1
- package/dist/focus-loop-registry.d.ts.map +1 -1
- package/dist/focus-loop-registry.js +43 -90
- package/dist/focus-loop-registry.js.map +1 -1
- package/dist/focus-loop.d.ts +0 -2
- package/dist/focus-loop.d.ts.map +1 -1
- package/dist/focus-loop.js +33 -25
- package/dist/focus-loop.js.map +1 -1
- package/dist/focus-phase.d.ts +26 -0
- package/dist/focus-phase.d.ts.map +1 -1
- package/dist/focus-phase.js +38 -0
- package/dist/focus-phase.js.map +1 -1
- package/dist/focus-prompt-builder.d.ts.map +1 -1
- package/dist/focus-prompt-builder.js +5 -1
- package/dist/focus-prompt-builder.js.map +1 -1
- package/dist/listener.d.ts.map +1 -1
- package/dist/listener.js +40 -9
- package/dist/listener.js.map +1 -1
- package/dist/loops/llm-client.d.ts.map +1 -1
- package/dist/loops/llm-client.js +17 -4
- package/dist/loops/llm-client.js.map +1 -1
- package/dist/prompt-listing.d.ts +25 -0
- package/dist/prompt-listing.d.ts.map +1 -1
- package/dist/prompt-listing.js +61 -0
- package/dist/prompt-listing.js.map +1 -1
- package/dist/queries/audit-runs.d.ts +56 -2
- package/dist/queries/audit-runs.d.ts.map +1 -1
- package/dist/queries/audit-runs.js +40 -0
- package/dist/queries/audit-runs.js.map +1 -1
- package/dist/queries/deliveries.d.ts +27 -0
- package/dist/queries/deliveries.d.ts.map +1 -1
- package/dist/queries/deliveries.js.map +1 -1
- package/dist/queries/focuses.d.ts +0 -9
- package/dist/queries/focuses.d.ts.map +1 -1
- package/dist/queries/focuses.js +0 -14
- package/dist/queries/focuses.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/audit.d.ts +5 -0
- package/dist/resolvers/shared/audit.d.ts.map +1 -1
- package/dist/resolvers/shared/audit.js +8 -3
- package/dist/resolvers/shared/audit.js.map +1 -1
- package/dist/resolvers/shared/git-diff.d.ts +13 -0
- package/dist/resolvers/shared/git-diff.d.ts.map +1 -1
- package/dist/resolvers/shared/git-diff.js +30 -0
- package/dist/resolvers/shared/git-diff.js.map +1 -1
- package/dist/security-scan-engine.d.ts +9 -1
- package/dist/security-scan-engine.d.ts.map +1 -1
- package/dist/security-scan-engine.js +25 -2
- package/dist/security-scan-engine.js.map +1 -1
- package/dist/spawn/review-role-fallback.d.ts +74 -0
- package/dist/spawn/review-role-fallback.d.ts.map +1 -0
- package/dist/spawn/review-role-fallback.js +62 -0
- package/dist/spawn/review-role-fallback.js.map +1 -0
- package/dist/staleness-sensor.d.ts +153 -0
- package/dist/staleness-sensor.d.ts.map +1 -0
- package/dist/staleness-sensor.js +308 -0
- package/dist/staleness-sensor.js.map +1 -0
- package/dist/unified-shell.d.ts.map +1 -1
- package/dist/unified-shell.js +11 -0
- package/dist/unified-shell.js.map +1 -1
- package/dist/verification-engine.d.ts +17 -1
- package/dist/verification-engine.d.ts.map +1 -1
- package/dist/verification-engine.js +143 -104
- package/dist/verification-engine.js.map +1 -1
- package/dist/verification-feedback.d.ts +68 -1
- package/dist/verification-feedback.d.ts.map +1 -1
- package/dist/verification-feedback.js +175 -0
- package/dist/verification-feedback.js.map +1 -1
- package/dist/verify-reconciliation.d.ts +16 -1
- package/dist/verify-reconciliation.d.ts.map +1 -1
- package/dist/verify-reconciliation.js +18 -2
- package/dist/verify-reconciliation.js.map +1 -1
- package/dist/verify-restatement.d.ts +7 -0
- package/dist/verify-restatement.d.ts.map +1 -1
- package/dist/verify-restatement.js +1 -0
- package/dist/verify-restatement.js.map +1 -1
- package/dist/version-check.d.ts +6 -0
- package/dist/version-check.d.ts.map +1 -1
- package/dist/version-check.js +1 -1
- package/dist/version-check.js.map +1 -1
- package/package.json +2 -2
- package/dist/drift-ratify-loop.d.ts +0 -68
- package/dist/drift-ratify-loop.d.ts.map +0 -1
- package/dist/drift-ratify-loop.js +0 -161
- package/dist/drift-ratify-loop.js.map +0 -1
- package/dist/negative-branch.d.ts +0 -136
- package/dist/negative-branch.d.ts.map +0 -1
- package/dist/negative-branch.js +0 -241
- package/dist/negative-branch.js.map +0 -1
- package/dist/shortfall-disposition-config.d.ts +0 -34
- package/dist/shortfall-disposition-config.d.ts.map +0 -1
- package/dist/shortfall-disposition-config.js +0 -46
- package/dist/shortfall-disposition-config.js.map +0 -1
- package/dist/shortfall-disposition-loop.d.ts +0 -86
- package/dist/shortfall-disposition-loop.d.ts.map +0 -1
- package/dist/shortfall-disposition-loop.js +0 -309
- package/dist/shortfall-disposition-loop.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verification-engine.d.ts","sourceRoot":"","sources":["../src/verification-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,wBAAwB,EAAE,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAChG,OAAO,EAAE,wBAAwB,EAAE,KAAK,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACzG,OAAO,EACL,uBAAuB,EAIvB,KAAK,mBAAmB,EAExB,KAAK,mBAAmB,EACzB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,
|
|
1
|
+
{"version":3,"file":"verification-engine.d.ts","sourceRoot":"","sources":["../src/verification-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,12 +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 { getGitDiff } from './assembly-resolvers.js';
|
|
32
|
-
import { ESCALATION_REASONS, ESCALATION_DISPOSITIONS } from '@telora/daemon-core';
|
|
31
|
+
import { getGitDiff, getDiffStatSummary, getChangedFiles, getCommitsAhead } from './assembly-resolvers.js';
|
|
33
32
|
import { resolveDefaultVerification as defaultResolveDefaultVerification, } from './verification-config.js';
|
|
34
33
|
import { getActiveFocuses, getFocusDeliveries } from './supabase.js';
|
|
35
34
|
import { collectDefaultOnVerifications, markDefaultOnRan, resolveDaemonWideVerifyCap, resolveProductVerificationScopes, verificationSemaphore, } from './verification-default-on.js';
|
|
36
|
-
import { deliverVerificationFailureFeedback } from './verification-feedback.js';
|
|
35
|
+
import { deliverVerificationFailureFeedback, requeueShortfallAsRework } from './verification-feedback.js';
|
|
37
36
|
import { buildDefaultAttributeFailures, buildResolveVerificationCwd, applyAttribution } from './verification-baseline.js';
|
|
38
37
|
// Re-export the default-on selection + concurrency surface so existing
|
|
39
38
|
// importers (and tests) can reach it through verification-engine.
|
|
@@ -107,6 +106,7 @@ const defaultDeps = (config) => {
|
|
|
107
106
|
return config.repoPath;
|
|
108
107
|
return configForProduct(config, product).repoPath;
|
|
109
108
|
};
|
|
109
|
+
const resolveVerificationCwd = buildResolveVerificationCwd(resolveCwd);
|
|
110
110
|
return {
|
|
111
111
|
getPendingVerifications,
|
|
112
112
|
recordOutcome: recordDeliveryVerificationOutcome,
|
|
@@ -130,7 +130,9 @@ const defaultDeps = (config) => {
|
|
|
130
130
|
getActiveFocuses,
|
|
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
|
+
resolveVerificationCwd,
|
|
135
|
+
resolveCommitsAhead: (v) => getCommitsAhead(resolveVerificationCwd(v), config.integrationBranch),
|
|
134
136
|
attributeFailures: buildDefaultAttributeFailures(config),
|
|
135
137
|
};
|
|
136
138
|
};
|
|
@@ -139,6 +141,17 @@ const STRATEGIES = {
|
|
|
139
141
|
behavioral: () => runBehavioralStrategy(),
|
|
140
142
|
ai_inspection: (deps, v) => runAiInspectionStrategy(deps, v),
|
|
141
143
|
};
|
|
144
|
+
/**
|
|
145
|
+
* Resolve the cwd the delivery's diff must be read in: the FOCUS WORKTREE
|
|
146
|
+
* (HEAD of the focus branch), the SAME cwd the deterministic strategy runs in.
|
|
147
|
+
* NOT the product repo path -- the product repo's HEAD is the integration
|
|
148
|
+
* branch, so `git diff base...HEAD` there is empty even when the focus branch
|
|
149
|
+
* has real commits. Reading the diff in the wrong cwd is the resolution bug
|
|
150
|
+
* that manufactures a false-negative shortfall (2026-07-23 incident).
|
|
151
|
+
*/
|
|
152
|
+
function resolveDiffCwd(v, deps) {
|
|
153
|
+
return (deps.resolveVerificationCwd ?? ((pv) => deps.resolveCwd(pv.productId)))(v);
|
|
154
|
+
}
|
|
142
155
|
/**
|
|
143
156
|
* Build the cited-evidence bundle the achieved-DE authoring consumes. Sourced
|
|
144
157
|
* from the verification verdict (NOT the UDE problem text):
|
|
@@ -146,20 +159,36 @@ const STRATEGIES = {
|
|
|
146
159
|
* - deterministic: the check exit code + stdout/stderr tails, plus the diff
|
|
147
160
|
* against integration (fetched best-effort; an empty diff just yields less
|
|
148
161
|
* evidence, it never blocks).
|
|
162
|
+
*
|
|
163
|
+
* The raw diff is accompanied by STRUCTURED signals (changed-files list + diff
|
|
164
|
+
* stat) resolved in the same focus-worktree cwd, so delivered behavior is
|
|
165
|
+
* legible to the judge without parsing the full diff.
|
|
149
166
|
*/
|
|
150
167
|
function buildVerifyEvidence(result, v, deps) {
|
|
168
|
+
const cwd = resolveDiffCwd(v, deps);
|
|
151
169
|
let diff = result.deliveryDiff ?? '';
|
|
152
170
|
if (diff === '') {
|
|
153
171
|
try {
|
|
154
|
-
diff = getGitDiff(
|
|
172
|
+
diff = getGitDiff(cwd, deps.integrationBranch);
|
|
155
173
|
}
|
|
156
174
|
catch (err) {
|
|
157
175
|
// best-effort: no diff is fine, the other evidence slots still carry signal
|
|
158
176
|
log.debug('best-effort: no diff is fine, the other evidence slots still carry signal', { error: String(err?.message ?? err) });
|
|
159
177
|
}
|
|
160
178
|
}
|
|
179
|
+
let changedFiles = [];
|
|
180
|
+
let diffStat = '';
|
|
181
|
+
try {
|
|
182
|
+
changedFiles = getChangedFiles(cwd, deps.integrationBranch);
|
|
183
|
+
diffStat = getDiffStatSummary(cwd, deps.integrationBranch);
|
|
184
|
+
}
|
|
185
|
+
catch (err) {
|
|
186
|
+
log.debug('best-effort: structured diff signals unavailable', { error: String(err?.message ?? err) });
|
|
187
|
+
}
|
|
161
188
|
return {
|
|
162
189
|
diff: diff || undefined,
|
|
190
|
+
changedFiles: changedFiles.length > 0 ? changedFiles : undefined,
|
|
191
|
+
diffStat: diffStat.trim() !== '' ? diffStat : undefined,
|
|
163
192
|
testStdout: result.stdoutTail,
|
|
164
193
|
testStderr: result.stderrTail,
|
|
165
194
|
exitCode: result.exitCode,
|
|
@@ -167,41 +196,6 @@ function buildVerifyEvidence(result, v, deps) {
|
|
|
167
196
|
verdictRationale: result.rationale,
|
|
168
197
|
};
|
|
169
198
|
}
|
|
170
|
-
/**
|
|
171
|
-
* File one human escalation carrying the declared-vs-achieved gap for the
|
|
172
|
-
* injection's shortfall target(s). Best-effort: a failure to escalate must not
|
|
173
|
-
* crash the tick (the gate is already held by the demoted 'failed' outcome).
|
|
174
|
-
*/
|
|
175
|
-
async function escalateShortfalls(v, shortfalls, deps) {
|
|
176
|
-
const lines = shortfalls.map((s) => `- node ${s.nodeId}\n declared: ${s.declaredStatement}\n achieved: ${s.achievedStatement}\n shortfall: ${s.reason}`);
|
|
177
|
-
try {
|
|
178
|
-
await deps.fileEscalation({
|
|
179
|
-
organizationId: deps.organizationId,
|
|
180
|
-
...(v.focusId ? { focusId: v.focusId } : {}),
|
|
181
|
-
...(v.productId ? { productId: v.productId } : {}),
|
|
182
|
-
reason: `Verify reconciliation: achieved outcome falls short of declared intent ` +
|
|
183
|
-
`for injection ${v.injectionNodeId} (delivery "${v.deliveryName}"). ` +
|
|
184
|
-
`The flip was withheld -- reality is not lowered to match a lesser intent. ` +
|
|
185
|
-
`Declared-vs-achieved gap(s):\n${lines.join('\n')}`,
|
|
186
|
-
reasonType: ESCALATION_REASONS.DECISION_NEEDED,
|
|
187
|
-
disposition: ESCALATION_DISPOSITIONS.NEEDS_INTENT,
|
|
188
|
-
kind: 'verify_shortfall',
|
|
189
|
-
details: {
|
|
190
|
-
injection_node_id: v.injectionNodeId,
|
|
191
|
-
delivery_id: v.deliveryId,
|
|
192
|
-
shortfalls: shortfalls.map((s) => ({
|
|
193
|
-
node_id: s.nodeId,
|
|
194
|
-
declared: s.declaredStatement,
|
|
195
|
-
achieved: s.achievedStatement,
|
|
196
|
-
reason: s.reason,
|
|
197
|
-
})),
|
|
198
|
-
},
|
|
199
|
-
});
|
|
200
|
-
}
|
|
201
|
-
catch (err) {
|
|
202
|
-
log.warn(`[verification] shortfall escalation failed for delivery ${v.deliveryId}:`, err.message);
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
199
|
/**
|
|
206
200
|
* Run verification for a single delivery.
|
|
207
201
|
*
|
|
@@ -245,6 +239,11 @@ export async function runVerificationForDelivery(v, deps) {
|
|
|
245
239
|
log.warn(`[verification] baseline attribution failed for delivery ${v.deliveryId}:`, err.message);
|
|
246
240
|
}
|
|
247
241
|
}
|
|
242
|
+
// Shortfall-origin tracking: set when the reconciliation demotes a PASSED
|
|
243
|
+
// outcome to 'failed'. Feedback for a shortfall hold routes under its own
|
|
244
|
+
// guard (not deterministic_verification), so the origin must survive to the
|
|
245
|
+
// feedback dispatch below.
|
|
246
|
+
let shortfallHold = [];
|
|
248
247
|
// Pass path FIRST so a verifyInjection failure short-circuits before we
|
|
249
248
|
// record an outcome that does not match graph state.
|
|
250
249
|
if (result.outcome === 'passed' && v.injectionNodeId) {
|
|
@@ -280,81 +279,121 @@ export async function runVerificationForDelivery(v, deps) {
|
|
|
280
279
|
// declared DE. If ANY target falls short, we hold the gate (demote to
|
|
281
280
|
// 'failed'), skip the flip, and escalate the gap to a human. Reality is
|
|
282
281
|
// moved toward intent, never the reverse.
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
// flip an injection whose achievement we could not verify. Treat the
|
|
297
|
-
// whole injection as a shortfall and hold the gate.
|
|
298
|
-
log.warn(`[verification] verify-time reconciliation failed for ${v.injectionNodeId}:`, err.message);
|
|
299
|
-
shortfalls = [{
|
|
300
|
-
nodeId: v.injectionNodeId,
|
|
301
|
-
declaredStatement: '(unknown -- reconciliation failed)',
|
|
302
|
-
achievedStatement: '(reconciliation failed)',
|
|
303
|
-
reason: `Reconciliation failed: ${err.message}`,
|
|
304
|
-
}];
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
if (shortfalls.length > 0) {
|
|
308
|
-
// Hold the gate, do NOT flip, escalate the declared-vs-achieved gap.
|
|
309
|
-
result.outcome = 'failed';
|
|
282
|
+
const evidence = buildVerifyEvidence(result, v, deps);
|
|
283
|
+
// Evidence-INTEGRITY guard (fail closed on a broken measurement): a
|
|
284
|
+
// delivery branch with commits ahead of the integration base MUST resolve
|
|
285
|
+
// to a non-empty diff. If it does not, the diff was resolved in the wrong
|
|
286
|
+
// range/worktree -- a broken MEASUREMENT, not a genuine shortfall. Hold the
|
|
287
|
+
// gate for retry ('pending') and NEVER author a shortfall or escalate from
|
|
288
|
+
// the remaining (non-diff) evidence. A genuine no-work delivery (no commits
|
|
289
|
+
// AND empty diff) is NOT held here -- it flows into reconciliation below and
|
|
290
|
+
// can still be classified a real shortfall.
|
|
291
|
+
const commitsAhead = deps.resolveCommitsAhead ? deps.resolveCommitsAhead(v) : 0;
|
|
292
|
+
const diffEmpty = !evidence.diff || evidence.diff.trim() === '';
|
|
293
|
+
if (commitsAhead > 0 && diffEmpty) {
|
|
294
|
+
result.outcome = 'pending';
|
|
310
295
|
result.rationale =
|
|
311
|
-
`verify
|
|
312
|
-
|
|
313
|
-
|
|
296
|
+
`verify held: delivery branch is ${commitsAhead} commit(s) ahead of ` +
|
|
297
|
+
`${deps.integrationBranch} but the resolved diff is empty -- broken diff ` +
|
|
298
|
+
`measurement, not a shortfall; retrying (injection ${v.injectionNodeId} not flipped)`;
|
|
299
|
+
log.warn(`[verification] ${result.rationale} (delivery ${v.deliveryId})`);
|
|
314
300
|
}
|
|
315
301
|
else {
|
|
316
|
-
let
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
302
|
+
let restatements = [];
|
|
303
|
+
let shortfalls = [];
|
|
304
|
+
let realityTreeId;
|
|
305
|
+
if (deps.authorTargetRestatements) {
|
|
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
|
+
}
|
|
320
324
|
}
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
325
|
+
if (shortfalls.length > 0) {
|
|
326
|
+
// Hold the gate, do NOT flip. A shortfall is an EXECUTION gap the team
|
|
327
|
+
// that produced it can close, not an intent question for a human -- so
|
|
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)`;
|
|
324
337
|
}
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
if (
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
338
|
+
else {
|
|
339
|
+
let flipped = false;
|
|
340
|
+
try {
|
|
341
|
+
await deps.verifyInjection(v.injectionNodeId, restatements);
|
|
342
|
+
flipped = true;
|
|
343
|
+
}
|
|
344
|
+
catch (err) {
|
|
345
|
+
result.outcome = 'pending';
|
|
346
|
+
result.rationale = `verifyInjection failed for ${v.injectionNodeId}: ${err.message}`;
|
|
347
|
+
}
|
|
348
|
+
// INWARD drift (TEL-3/TEL-4): any target the reconciliation stamped
|
|
349
|
+
// `legitimate_divergence` is a tree CLAIM reality contradicted. Surface
|
|
350
|
+
// each as an inward drift proposal -- AFTER the flip landed -- so a
|
|
351
|
+
// confident-but-wrong assertion is corrected by drift rather than
|
|
352
|
+
// frozen. observedState carries the tree's ORIGINAL claim (not the
|
|
353
|
+
// achieved reality); proposedCorrection carries what reality showed.
|
|
354
|
+
// Best-effort + non-fatal: a failure must not undo the verify flip.
|
|
355
|
+
if (flipped) {
|
|
356
|
+
const divergedWritebacks = restatements
|
|
357
|
+
.filter((r) => r.classification === 'legitimate_divergence')
|
|
358
|
+
.map((r) => ({
|
|
359
|
+
nodeId: r.nodeId,
|
|
360
|
+
classification: 'legitimate_divergence',
|
|
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
|
+
}
|
|
348
372
|
}
|
|
349
373
|
}
|
|
350
374
|
}
|
|
351
|
-
}
|
|
375
|
+
} // end evidence-integrity else (measurement OK -> reconcile)
|
|
352
376
|
}
|
|
353
377
|
}
|
|
354
378
|
await deps.recordOutcome(v.deliveryId, result.outcome);
|
|
355
|
-
//
|
|
356
|
-
//
|
|
357
|
-
|
|
379
|
+
// Feedback dispatch by FAILURE ORIGIN (the two are mutually exclusive: a
|
|
380
|
+
// shortfall hold only demotes a PASSED outcome, so a deterministic-failed run
|
|
381
|
+
// never carries a shortfallHold).
|
|
382
|
+
//
|
|
383
|
+
// Shortfall-origin hold: report under the shortfall guard (never
|
|
384
|
+
// deterministic_verification) with the declared-vs-achieved detail, and inject
|
|
385
|
+
// a gap-framed message -- never "fix the failing tests". Independent of method.
|
|
386
|
+
if (shortfallHold.length > 0 && deps.deliverShortfallFeedback) {
|
|
387
|
+
try {
|
|
388
|
+
await deps.deliverShortfallFeedback(v, shortfallHold);
|
|
389
|
+
}
|
|
390
|
+
catch (err) {
|
|
391
|
+
log.warn(`[verification] shortfall feedback failed for delivery ${v.deliveryId}:`, err.message);
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
else if (result.outcome === 'failed' && v.verificationMethod === 'deterministic' && deps.deliverFailureFeedback) {
|
|
395
|
+
// Genuine deterministic failure (the shell command actually failed): write
|
|
396
|
+
// gate_state under deterministic_verification + inject. Best-effort.
|
|
358
397
|
try {
|
|
359
398
|
await deps.deliverFailureFeedback(v, result);
|
|
360
399
|
}
|
|
@@ -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,11 +16,21 @@
|
|
|
16
16
|
* @module verification-feedback
|
|
17
17
|
*/
|
|
18
18
|
import { sendMessage } from '@telora/daemon-core';
|
|
19
|
-
import { type DeliveryGateState, type VerificationFailureDetail } from './queries/deliveries.js';
|
|
19
|
+
import { type DeliveryGateState, type ShortfallReconciliationDetail, type VerificationFailureDetail } from './queries/deliveries.js';
|
|
20
|
+
import { resolveReconciledWrite } from './delivery-reconciler-apply.js';
|
|
20
21
|
import { getActiveTeams } from './focus-team-state.js';
|
|
21
22
|
import type { PendingVerification } from './queries/verification.js';
|
|
23
|
+
import type { TargetShortfall } from './verify-restatement.js';
|
|
22
24
|
/** gate_state guard name a deterministic verification failure reports under. */
|
|
23
25
|
export declare const DETERMINISTIC_VERIFICATION_GUARD = "deterministic_verification";
|
|
26
|
+
/**
|
|
27
|
+
* gate_state guard name a verify-SHORTFALL reconciliation hold reports under.
|
|
28
|
+
* Distinct from the deterministic guard: a shortfall hold means the declared
|
|
29
|
+
* desired effect was not realized by the diff, NOT that a shell command failed.
|
|
30
|
+
* A reader must never see this conflated with a passed:false
|
|
31
|
+
* deterministic_verification whose exitCode is 0.
|
|
32
|
+
*/
|
|
33
|
+
export declare const SHORTFALL_RECONCILIATION_GUARD = "verify_shortfall_reconciliation";
|
|
24
34
|
/** The slice of a StrategyResult the feedback loop needs. */
|
|
25
35
|
export interface VerificationFailureResult {
|
|
26
36
|
logPath?: string;
|
|
@@ -55,4 +65,61 @@ export declare function deliverVerificationFailureFeedback(v: Pick<PendingVerifi
|
|
|
55
65
|
injected: boolean;
|
|
56
66
|
detail: VerificationFailureDetail;
|
|
57
67
|
}>;
|
|
68
|
+
/** Build the gate_state for a verify-shortfall reconciliation hold. Pure -- exported for testing. */
|
|
69
|
+
export declare function buildShortfallGateState(detail: ShortfallReconciliationDetail): DeliveryGateState;
|
|
70
|
+
/** Build the message injected into a live team for a shortfall hold. Pure -- exported for testing. */
|
|
71
|
+
export declare function buildShortfallInjectMessage(deliveryName: string, detail: ShortfallReconciliationDetail): string;
|
|
72
|
+
/**
|
|
73
|
+
* Deliver failure feedback for a verify-SHORTFALL reconciliation hold: write
|
|
74
|
+
* gate_state under the shortfall guard (never the deterministic guard) and
|
|
75
|
+
* inject the declared-vs-achieved gap into the live coding team when one is
|
|
76
|
+
* running. Best-effort throughout -- a feedback failure must never crash the
|
|
77
|
+
* verification tick.
|
|
78
|
+
*/
|
|
79
|
+
export declare function deliverShortfallFailureFeedback(v: Pick<PendingVerification, 'deliveryId' | 'deliveryName' | 'focusId'>, shortfalls: readonly TargetShortfall[], organizationId: string, deps?: Partial<VerificationFeedbackDeps>): Promise<{
|
|
80
|
+
gateWritten: boolean;
|
|
81
|
+
injected: boolean;
|
|
82
|
+
detail: ShortfallReconciliationDetail;
|
|
83
|
+
}>;
|
|
84
|
+
/** Injected IO for the shortfall re-work re-entry. */
|
|
85
|
+
export interface ShortfallRequeueDeps extends VerificationFeedbackDeps {
|
|
86
|
+
/** Write the verify_failed transition (with the shortfall gate_state) for the delivery. */
|
|
87
|
+
transitionDelivery: (deliveryId: string, target: string, gateState: DeliveryGateState, transition: {
|
|
88
|
+
organizationId: string;
|
|
89
|
+
fromStatus: string;
|
|
90
|
+
}) => Promise<void>;
|
|
91
|
+
/** Reconciler decision resolver (single-writer self-check). */
|
|
92
|
+
resolveReconciledWrite: typeof resolveReconciledWrite;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Re-enter a verify SHORTFALL as bounded re-work instead of a human inbox item.
|
|
96
|
+
*
|
|
97
|
+
* A measured declared-vs-achieved shortfall is an EXECUTION gap the team that
|
|
98
|
+
* produced it can close -- not an intent question for a human. So rather than
|
|
99
|
+
* filing a needs_intent escalation, this routes the delivery verify ->
|
|
100
|
+
* verify_failed through the SAME single-writer reconciler the open-issues
|
|
101
|
+
* back-path uses (listener-auto-advance). The reconciler then steps
|
|
102
|
+
* verify_failed -> queued -> coding (delivery-reconciler), and the server-side
|
|
103
|
+
* iteration_count increment on the verify->verify_failed transition makes the
|
|
104
|
+
* EXISTING verify_failed iteration cap (TELORA_VERIFY_FAILED_ITERATION_CAP ->
|
|
105
|
+
* verify_gate_unclearable, needs_operator) bound the re-work. That cap is the
|
|
106
|
+
* sole genuine human residue: closing the gap autonomously never becomes
|
|
107
|
+
* spending forever on an unclearable one.
|
|
108
|
+
*
|
|
109
|
+
* A shortfall is a differential-side `gaps_found`: the reconciler already routes
|
|
110
|
+
* a gaps_found verify delivery to verify_failed, so we feed it that signal (and
|
|
111
|
+
* the legacy target verify_failed) -- apply-mode and legacy agree, no
|
|
112
|
+
* divergence. `issues: []` is accurate for the VERIFY branch (a shortfall
|
|
113
|
+
* delivery has no blocking open work; that is why it reached verify).
|
|
114
|
+
*
|
|
115
|
+
* The declared/achieved/reason detail rides in gate_state (shortfall guard) so
|
|
116
|
+
* the re-queued team's resume/wake prompt carries the specific gap; when a
|
|
117
|
+
* coding team is still live we also inject it immediately (best-effort fast
|
|
118
|
+
* path). Best-effort throughout -- a feedback failure must never crash the tick.
|
|
119
|
+
*/
|
|
120
|
+
export declare function requeueShortfallAsRework(v: Pick<PendingVerification, 'deliveryId' | 'deliveryName' | 'focusId'>, shortfalls: readonly TargetShortfall[], organizationId: string, deps?: Partial<ShortfallRequeueDeps>): Promise<{
|
|
121
|
+
transitioned: boolean;
|
|
122
|
+
injected: boolean;
|
|
123
|
+
detail: ShortfallReconciliationDetail;
|
|
124
|
+
}>;
|
|
58
125
|
//# 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,EAAmB,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAC/B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"verification-feedback.d.ts","sourceRoot":"","sources":["../src/verification-feedback.ts"],"names":[],"mappings":"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"}
|