instar 1.3.1314 → 1.3.1315
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/data/standards-guard-index.json +1 -1
- package/dist/data/standards-guard-index.meta.json +2 -2
- package/dist/data/standards-registry.meta.json +1 -1
- package/dist/feedback-factory/drain/FeedbackDrainService.d.ts +10 -0
- package/dist/feedback-factory/drain/FeedbackDrainService.d.ts.map +1 -1
- package/dist/feedback-factory/drain/FeedbackDrainService.js +27 -6
- package/dist/feedback-factory/drain/FeedbackDrainService.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +2 -2
- package/src/data/standards-guard-index.json +1 -1
- package/src/data/standards-guard-index.meta.json +2 -2
- package/src/data/standards-registry.meta.json +1 -1
- package/src/scaffold/templates/jobs/instar/feedback-factory-process.md +9 -5
- package/upgrades/1.3.1315.md +51 -0
- package/upgrades/feedback-drain-degraded-label.eli16.md +36 -0
- package/upgrades/side-effects/feedback-drain-degraded-label.md +207 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"generatedFrom": "source-tree",
|
|
4
4
|
"registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
|
|
5
|
-
"packageVersion": "1.3.
|
|
5
|
+
"packageVersion": "1.3.1315",
|
|
6
6
|
"guards": [
|
|
7
7
|
{
|
|
8
8
|
"ref": "docs/audits/phase-b/f10-triage.md",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"sha256": "
|
|
2
|
+
"sha256": "81bd9fa3c78c88ad9c840e55c57dda4d4c4566f3fea67f8defd03cf97099e00f",
|
|
3
3
|
"registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
|
|
4
|
-
"packageVersion": "1.3.
|
|
4
|
+
"packageVersion": "1.3.1315"
|
|
5
5
|
}
|
|
@@ -8,6 +8,14 @@ export declare const FEEDBACK_DRAIN_SERVICE_STAGE: {
|
|
|
8
8
|
};
|
|
9
9
|
/** Consecutive transient authority invocation failures before the authority is demoted. */
|
|
10
10
|
export declare const READINESS_TRANSIENT_FAILURE_LIMIT = 3;
|
|
11
|
+
/**
|
|
12
|
+
* Least time left for a readiness call after the first. Live 2026-10-01 a call cost ~9 s of
|
|
13
|
+
* start-up plus ~2.4 s per candidate, which the pace estimate (no start-up term) only covers
|
|
14
|
+
* with ~23 s or more left.
|
|
15
|
+
*/
|
|
16
|
+
export declare const MIN_LATER_READINESS_CALL_MS = 25000;
|
|
17
|
+
/** Run note when readiness stopped for lack of tick time after reviewing some candidates; the rest stays due. */
|
|
18
|
+
export declare const READINESS_TIME_EXHAUSTED = "readiness-time-exhausted-rest-due";
|
|
11
19
|
/**
|
|
12
20
|
* Candidates per readiness model call. Live 2026-10-01 (gpt-6-astra via codex-cli): about 3-4 s
|
|
13
21
|
* per candidate, so 10 finished in ~31 s while 50 hit the 60 s call budget twice in a row.
|
|
@@ -49,6 +57,8 @@ export interface FeedbackDrainTickResult {
|
|
|
49
57
|
wouldCreate: number;
|
|
50
58
|
result: 'succeeded' | 'no-op' | 'degraded';
|
|
51
59
|
reason?: string;
|
|
60
|
+
/** Informational only, never degrades the run: e.g. readiness ran out of tick time and the rest stays due. */
|
|
61
|
+
note?: string;
|
|
52
62
|
}
|
|
53
63
|
export interface FeedbackBacklogAnalysis {
|
|
54
64
|
generatedAt: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackDrainService.d.ts","sourceRoot":"","sources":["../../../src/feedback-factory/drain/FeedbackDrainService.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4CAA4C,CAAC;AAC5F,OAAO,EAAsB,kBAAkB,EAAkD,MAAM,yBAAyB,CAAC;AACjI,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAAmE,KAAK,wBAAwB,EAAmD,MAAM,+BAA+B,CAAC;AAGhM,eAAO,MAAM,4BAA4B;;;CAG/B,CAAC;AAEX,2FAA2F;AAC3F,eAAO,MAAM,iCAAiC,IAAI,CAAC;AACnD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,kBAAkB,CAAC;IAC1B,UAAU,EAAE,yBAAyB,CAAC;IACtC,QAAQ,EAAE,0BAA0B,CAAC;IACrC,OAAO,CAAC,EAAE,wBAAwB,GAAG,IAAI,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,OAAO,CAAC;IAChC,cAAc,EAAE,MAAM,OAAO,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,MAAM,CAAC;IAClC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wGAAwG;IACxG,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qGAAqG;IACrG,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,WAAW,GAAG,OAAO,GAAG,UAAU,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"FeedbackDrainService.d.ts","sourceRoot":"","sources":["../../../src/feedback-factory/drain/FeedbackDrainService.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,14 @@ export const FEEDBACK_DRAIN_SERVICE_STAGE = {
|
|
|
8
8
|
};
|
|
9
9
|
/** Consecutive transient authority invocation failures before the authority is demoted. */
|
|
10
10
|
export const READINESS_TRANSIENT_FAILURE_LIMIT = 3;
|
|
11
|
+
/**
|
|
12
|
+
* Least time left for a readiness call after the first. Live 2026-10-01 a call cost ~9 s of
|
|
13
|
+
* start-up plus ~2.4 s per candidate, which the pace estimate (no start-up term) only covers
|
|
14
|
+
* with ~23 s or more left.
|
|
15
|
+
*/
|
|
16
|
+
export const MIN_LATER_READINESS_CALL_MS = 25_000;
|
|
17
|
+
/** Run note when readiness stopped for lack of tick time after reviewing some candidates; the rest stays due. */
|
|
18
|
+
export const READINESS_TIME_EXHAUSTED = 'readiness-time-exhausted-rest-due';
|
|
11
19
|
/**
|
|
12
20
|
* Candidates per readiness model call. Live 2026-10-01 (gpt-6-astra via codex-cli): about 3-4 s
|
|
13
21
|
* per candidate, so 10 finished in ~31 s while 50 hit the 60 s call budget twice in a row.
|
|
@@ -305,7 +313,7 @@ export class FeedbackDrainService {
|
|
|
305
313
|
const progressed = out.processed + out.reviewed + out.enqueued + out.completed;
|
|
306
314
|
out.result = out.reason ? 'degraded' : progressed > 0 ? 'succeeded' : 'no-op';
|
|
307
315
|
stopIfCancelled();
|
|
308
|
-
this.opts.store.transitionRun(run.runId, 'running', out.result, out.reason ?? '', fence);
|
|
316
|
+
this.opts.store.transitionRun(run.runId, 'running', out.result, out.reason ?? out.note ?? '', fence);
|
|
309
317
|
if (out.result !== 'degraded') {
|
|
310
318
|
this.opts.store.pruneOperationalHistory({ ownerHost: fence.ownerHost, ownerAuthorityEpoch: fence.ownerEpoch, now: this.now(), limit: 500 });
|
|
311
319
|
}
|
|
@@ -349,8 +357,12 @@ export class FeedbackDrainService {
|
|
|
349
357
|
// chunk is sized from this tick's observed pace with a 25% margin.
|
|
350
358
|
const fits = reviewedCandidates > 0 ? Math.floor(remaining / (1.25 * reviewedMs / reviewedCandidates)) : this.readinessChunkSize;
|
|
351
359
|
const chunk = pending.slice(0, Math.min(this.readinessChunkSize, fits));
|
|
352
|
-
|
|
353
|
-
|
|
360
|
+
// A later call also needs MIN_LATER_READINESS_CALL_MS: every call pays a fixed start-up
|
|
361
|
+
// cost the per-candidate pace does not show (live: one-candidate calls given 7.6 s timed out).
|
|
362
|
+
if (remaining <= 0 || chunk.length === 0 || (succeededCalls > 0 && remaining < MIN_LATER_READINESS_CALL_MS)) {
|
|
363
|
+
if (succeededCalls > 0)
|
|
364
|
+
out.note = READINESS_TIME_EXHAUSTED;
|
|
365
|
+
else if (!transientFailure)
|
|
354
366
|
out.reason ??= 'readiness-wall-clock-exhausted';
|
|
355
367
|
break;
|
|
356
368
|
}
|
|
@@ -382,10 +394,17 @@ export class FeedbackDrainService {
|
|
|
382
394
|
}
|
|
383
395
|
};
|
|
384
396
|
let decisions;
|
|
397
|
+
const callBudgetMs = Math.min(this.readinessStageBudgetMs, remaining);
|
|
385
398
|
try {
|
|
386
|
-
decisions = await this.withStageBudget('readiness-authority', () => this.opts.arbiter.decideBatch(authority, chunk.map((row) => candidate(byId.get(row.clusterId), now))),
|
|
399
|
+
decisions = await this.withStageBudget('readiness-authority', () => this.opts.arbiter.decideBatch(authority, chunk.map((row) => candidate(byId.get(row.clusterId), now))), callBudgetMs);
|
|
387
400
|
}
|
|
388
401
|
catch (error) {
|
|
402
|
+
// Our own tick clock cut a later call short: out of time, not a provider failure. Its
|
|
403
|
+
// rows stay due, untouched, for the next tick.
|
|
404
|
+
if (error instanceof StageBudgetExceeded && succeededCalls > 0 && callBudgetMs < this.readinessStageBudgetMs) {
|
|
405
|
+
out.note = READINESS_TIME_EXHAUSTED;
|
|
406
|
+
break;
|
|
407
|
+
}
|
|
389
408
|
failed(error);
|
|
390
409
|
break;
|
|
391
410
|
}
|
|
@@ -435,13 +454,13 @@ export class FeedbackDrainService {
|
|
|
435
454
|
let timer;
|
|
436
455
|
try {
|
|
437
456
|
const timeout = new Promise((_, reject) => {
|
|
438
|
-
timer = setTimeout(() => reject(new
|
|
457
|
+
timer = setTimeout(() => reject(new StageBudgetExceeded(`${stage} stage budget exceeded`)), budgetMs);
|
|
439
458
|
if (typeof timer.unref === 'function')
|
|
440
459
|
timer.unref();
|
|
441
460
|
});
|
|
442
461
|
const result = await Promise.race([operation(), timeout]);
|
|
443
462
|
if (this.now() - startedAt > budgetMs)
|
|
444
|
-
throw new
|
|
463
|
+
throw new StageBudgetExceeded(`${stage} stage budget exceeded`);
|
|
445
464
|
return result;
|
|
446
465
|
}
|
|
447
466
|
finally {
|
|
@@ -452,4 +471,6 @@ export class FeedbackDrainService {
|
|
|
452
471
|
}
|
|
453
472
|
class FeedbackDrainCancellation extends Error {
|
|
454
473
|
}
|
|
474
|
+
class StageBudgetExceeded extends Error {
|
|
475
|
+
}
|
|
455
476
|
//# sourceMappingURL=FeedbackDrainService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackDrainService.js","sourceRoot":"","sources":["../../../src/feedback-factory/drain/FeedbackDrainService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FeedbackDrainService.js","sourceRoot":"","sources":["../../../src/feedback-factory/drain/FeedbackDrainService.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-10-
|
|
5
|
-
"instarVersion": "1.3.
|
|
4
|
+
"generatedAt": "2026-10-02T10:55:24.335Z",
|
|
5
|
+
"instarVersion": "1.3.1315",
|
|
6
6
|
"entryCount": 203,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"generatedFrom": "source-tree",
|
|
4
4
|
"registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
|
|
5
|
-
"packageVersion": "1.3.
|
|
5
|
+
"packageVersion": "1.3.1315",
|
|
6
6
|
"guards": [
|
|
7
7
|
{
|
|
8
8
|
"ref": "docs/audits/phase-b/f10-triage.md",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"sha256": "
|
|
2
|
+
"sha256": "81bd9fa3c78c88ad9c840e55c57dda4d4c4566f3fea67f8defd03cf97099e00f",
|
|
3
3
|
"registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
|
|
4
|
-
"packageVersion": "1.3.
|
|
4
|
+
"packageVersion": "1.3.1315"
|
|
5
5
|
}
|
|
@@ -3,7 +3,7 @@ name: Feedback-Factory Operating Drain
|
|
|
3
3
|
description: "Cadenced end-to-end feedback drain. POST /feedback-factory/drain/tick clusters canonical input, runs registered frontier-model readiness judgment inside deterministic floors, enqueues one durable outbox row per readiness epoch, and—after separate consumer promotion—creates and reads back one Initiative task. Development-agent processing/drain is live; fleet remains dark; consumer ships simulation-first. Spec: docs/specs/feedback-factory-operating-drain.md."
|
|
4
4
|
schedule: "*/30 * * * *"
|
|
5
5
|
priority: low
|
|
6
|
-
expectedDurationMinutes:
|
|
6
|
+
expectedDurationMinutes: 5
|
|
7
7
|
model: haiku
|
|
8
8
|
supervision: tier1
|
|
9
9
|
enabled: true
|
|
@@ -36,7 +36,8 @@ TOKEN = os.environ.get('INSTAR_AUTH_TOKEN') or (CONFIG.get('authToken') if isins
|
|
|
36
36
|
AGENT_ID = os.environ.get('INSTAR_AGENT_ID') or str(CONFIG.get('projectName') or '')
|
|
37
37
|
BASE = 'http://localhost:' + str(os.environ.get('INSTAR_PORT') or CONFIG.get('port') or 4042)
|
|
38
38
|
DEVELOPMENT_AGENT = CONFIG.get('developmentAgent') is True
|
|
39
|
-
|
|
39
|
+
# A run is capped at 115 s of wall clock; poll past that so a slow run's outcome is still read here.
|
|
40
|
+
POLL_SECONDS = float(os.environ.get('FEEDBACK_DRAIN_POLL_SECONDS') or 180)
|
|
40
41
|
|
|
41
42
|
def fail(reason):
|
|
42
43
|
path = os.environ.get('INSTAR_JOB_FAILURE_FILE')
|
|
@@ -103,7 +104,9 @@ run_id = tick['runId']
|
|
|
103
104
|
if tick.get('proxied'):
|
|
104
105
|
done('proxied to the owner machine, run ' + run_id + '; the owner records its outcome')
|
|
105
106
|
|
|
106
|
-
# 3. Poll this run to a terminal state
|
|
107
|
+
# 3. Poll this run to a terminal state. Still running past the drain's wall clock is a failed run:
|
|
108
|
+
# no later cadence reads this run's outcome (live 2026-10-01: two degraded 70 s runs were recorded
|
|
109
|
+
# as successes by a 60 s poll).
|
|
107
110
|
deadline = time.time() + POLL_SECONDS
|
|
108
111
|
last = None
|
|
109
112
|
after = None
|
|
@@ -114,7 +117,8 @@ while time.time() < deadline:
|
|
|
114
117
|
break
|
|
115
118
|
time.sleep(3)
|
|
116
119
|
else:
|
|
117
|
-
|
|
120
|
+
seen = (str(last.get('runId')) + ' ' + str(last.get('state'))) if isinstance(last, dict) else 'no lastRun (HTTP ' + str(code) + ')'
|
|
121
|
+
fail('drain run ' + run_id + ' still in flight after ' + str(int(POLL_SECONDS)) + ' s, past the drain wall clock (last seen: ' + seen + ')')
|
|
118
122
|
|
|
119
123
|
# 4. Tier-1 supervision of the terminal run.
|
|
120
124
|
run_state = last.get('state')
|
|
@@ -131,7 +135,7 @@ The script prints one `FEEDBACK_DRAIN_RESULT` line. It records a failed run itse
|
|
|
131
135
|
- Posture `dark` → silent exit. `unavailable` → failed run. Unreadable status → failed run on a development agent, silent exit on the fleet.
|
|
132
136
|
- A refused tick (any HTTP code other than 202, e.g. `current registered readiness agent required` after the authority was demoted) → failed run.
|
|
133
137
|
- A tick proxied to the owner machine → success here; its outcome lives in the owner's run history and status.
|
|
134
|
-
- Terminal `succeeded` / `no-op` → success. Terminal `degraded`, `failed` or `abandoned` → failed run carrying the drain's reason.
|
|
138
|
+
- Terminal `succeeded` / `no-op` → success (a `succeeded` run may carry an informational reason such as `readiness-time-exhausted-rest-due`). Still in flight after 180 s → failed run. Terminal `degraded`, `failed` or `abandoned` → failed run carrying the drain's reason.
|
|
135
139
|
- In simulation, claimed/completed work counts must not advance; if they do → failed run.
|
|
136
140
|
|
|
137
141
|
Never retry in the same run; the durable queue and the next cadence own retry. Then exit silently. Do NOT relay anything to Telegram and do NOT summarize. A failed run reaches the operator through the scheduler's consecutive-failure alert.
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- assembled-by: assemble-next-md -->
|
|
4
|
+
<!-- bump: patch -->
|
|
5
|
+
|
|
6
|
+
## What Changed
|
|
7
|
+
|
|
8
|
+
Two live faults on 2026-10-01 (Mac Studio, v1.3.1314, authority gen 4 with `maxBatch` 50):
|
|
9
|
+
|
|
10
|
+
- **A good tick was labelled degraded.** Runs ef0f6cbf and 10674e04 each made two good
|
|
11
|
+
readiness calls (about 20 and 17 decisions applied, zero provider errors). Then each started
|
|
12
|
+
a one-candidate call with under 8 s left. A call also pays about 9 s of start-up that the
|
|
13
|
+
per-candidate pace does not show, so the drain's own tick clock cut it at 70.0 s, and the
|
|
14
|
+
run ended `degraded` / `readiness-authority-failed`.
|
|
15
|
+
- A call after the first now needs at least 25 s left (`MIN_LATER_READINESS_CALL_MS`).
|
|
16
|
+
- If the tick clock (not the provider) cuts a later call short, its rows stay due,
|
|
17
|
+
untouched.
|
|
18
|
+
- Either way, a tick that already reviewed some candidates ends `succeeded`. It carries
|
|
19
|
+
the note `readiness-time-exhausted-rest-due` in the run's reason.
|
|
20
|
+
- Real failures stay degraded: a provider timeout or error, a contract violation, the
|
|
21
|
+
spend brake, or a first call that cannot finish.
|
|
22
|
+
- **The job recorded those degraded runs as successes.** The `feedback-factory-process` body
|
|
23
|
+
polled for 60 s, the runs took 70 s, and it exited "still in flight; the next cadence
|
|
24
|
+
observes it". No later cadence ever reads an earlier run. It now polls for 180 s, which is
|
|
25
|
+
above the drain's 115 s wall-clock ceiling. A run still in flight after that fails the job.
|
|
26
|
+
`expectedDurationMinutes` goes from 2 to 5. Existing agents get the new body and manifest
|
|
27
|
+
through `installBuiltinJobs` on update. The scheduler's declared-failure file was already
|
|
28
|
+
wired correctly.
|
|
29
|
+
|
|
30
|
+
## What to Tell Your User
|
|
31
|
+
|
|
32
|
+
The feedback sorter sometimes ran out of time near the end of a run and wrongly called the
|
|
33
|
+
whole run a failure, even though every answer it got was fine. It now just stops and leaves
|
|
34
|
+
the rest for the next run. Its scheduled job also waits long enough to see how a slower run
|
|
35
|
+
ended, so real failures show up as failures. Nothing for you to do.
|
|
36
|
+
|
|
37
|
+
## Summary of New Capabilities
|
|
38
|
+
|
|
39
|
+
- Drain runs that stop for lack of tick time end `succeeded`, with the note `readiness-time-exhausted-rest-due`.
|
|
40
|
+
|
|
41
|
+
## Evidence
|
|
42
|
+
|
|
43
|
+
- Live store (read-only `.backup` copy): both runs' readiness rows were stamped at about 32 s,
|
|
44
|
+
62 s and 70.0 s. The single 70.0 s row in each run was marked `readiness-authority-failed`.
|
|
45
|
+
- The job transcripts read `FEEDBACK_DRAIN_RESULT run run:ef0f6cbf… still in flight` and
|
|
46
|
+
`… run:10674e04… still in flight`.
|
|
47
|
+
- Unit, integration and e2e tests use the live latency shape (a fixed start-up cost plus a
|
|
48
|
+
per-candidate pace). The e2e runs the shipped job script against the production
|
|
49
|
+
AgentServer. On the pre-fix source the calls are `[5, 4, 1]` and the run is degraded. After
|
|
50
|
+
the fix the calls are `[5, 4]`, the run succeeded with the note, the rest stays due, and the
|
|
51
|
+
job records success.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# ELI16 — "ran out of time" is not "broken", and the job now waits for the answer
|
|
2
|
+
|
|
3
|
+
## The problem
|
|
4
|
+
|
|
5
|
+
The feedback sorter ("drain") asks a model which groups of bug reports are ready to become a
|
|
6
|
+
task. It asks about up to ten groups per question, one question after another, until its
|
|
7
|
+
run's time is nearly used up.
|
|
8
|
+
|
|
9
|
+
It guessed how long the next question would take from how long earlier questions took per
|
|
10
|
+
group. But every question also has a fixed start-up cost of about 9 seconds, however few
|
|
11
|
+
groups it holds. Near the end of a run, the sorter had about 8 seconds left. It decided one
|
|
12
|
+
group would fit and asked. The question could never finish in 8 seconds, so its own timer cut
|
|
13
|
+
it off. The run was then labelled "degraded, the model failed", even though the model never
|
|
14
|
+
failed once. Two real runs on 2026-10-01 went exactly like this.
|
|
15
|
+
|
|
16
|
+
A second fault hid it. The scheduled job that starts each run waited only 60 seconds for the
|
|
17
|
+
result. These runs took 70 seconds, so the job gave up, said "still running, the next run will
|
|
18
|
+
check", and recorded a success. No later run ever checks an earlier one.
|
|
19
|
+
|
|
20
|
+
## The fix
|
|
21
|
+
|
|
22
|
+
- The sorter does not start another question unless at least 25 seconds are left.
|
|
23
|
+
- If its own timer still cuts a later question short, that is "out of time", not "the model
|
|
24
|
+
failed". Those groups simply wait for the next run.
|
|
25
|
+
- A run that got some answers and then ran out of time is now "succeeded". It carries a short
|
|
26
|
+
note saying the rest is still waiting.
|
|
27
|
+
- Real problems still mark the run degraded: the model timing out on its own, an error, a
|
|
28
|
+
wrong-shaped answer, the spending cap, or a first question that cannot finish.
|
|
29
|
+
- The job now waits up to 3 minutes. That is longer than any run may last (at most 115
|
|
30
|
+
seconds). If a run is somehow still going after that, the job counts it as a failure
|
|
31
|
+
instead of quietly passing.
|
|
32
|
+
|
|
33
|
+
## What does not change
|
|
34
|
+
|
|
35
|
+
The question wording, the answer format, the spending cap, the approved group limit and the
|
|
36
|
+
rules for switching the model off all stay the same.
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
# Side-Effects Review — out of tick time is a clean stop; the drain job reads slow runs
|
|
2
|
+
|
|
3
|
+
**Version / slug:** `feedback-drain-degraded-label`
|
|
4
|
+
**Date:** `2026-10-01`
|
|
5
|
+
**Author:** `Echo`
|
|
6
|
+
**Second-pass reviewer:** `independent reviewer subagent (see below)`
|
|
7
|
+
|
|
8
|
+
## Summary of the change
|
|
9
|
+
|
|
10
|
+
Live on 2026-10-01 (Mac Studio, v1.3.1314, authority gen 4 `maxBatch` 50, 90 s tick), drain
|
|
11
|
+
runs ef0f6cbf and 10674e04 each ran 70 s. Each made two good readiness calls: ~32 s and ~62 s
|
|
12
|
+
in, 10 + 9 and 10 + 6 candidates. Then each started a ONE-candidate call with 7.6 s / 7.8 s
|
|
13
|
+
left. The pace-based sizing (`remaining / (1.25 × ms per candidate)`) assumes a call costs
|
|
14
|
+
only its per-candidate time. Live calls also pay about 9 s of start-up (6 candidates 23.2 s,
|
|
15
|
+
9 candidates 30.2 s, 10 candidates 32.2 s). So the service's own `withStageBudget` timer cut
|
|
16
|
+
the call at exactly 70.0 s, the readiness deadline. `failed()` then marked the row
|
|
17
|
+
`readiness-authority-failed` and the run `degraded`, with zero provider errors in
|
|
18
|
+
`/metrics/features`.
|
|
19
|
+
|
|
20
|
+
`FeedbackDrainService.reviewReadinessInChunks`:
|
|
21
|
+
- A call after the first needs at least `MIN_LATER_READINESS_CALL_MS` (25 s) left. Below
|
|
22
|
+
that, the loop stops.
|
|
23
|
+
- If the stage timer (`StageBudgetExceeded`, a new private Error subclass with the same
|
|
24
|
+
message) cuts a LATER call whose budget was shortened by the tick clock
|
|
25
|
+
(`callBudgetMs < readinessStageBudgetMs`), that is out of time, not a provider failure.
|
|
26
|
+
The loop stops, and the call's rows stay due, untouched.
|
|
27
|
+
- In both cases, after at least one successful call, the tick records `out.note =
|
|
28
|
+
'readiness-time-exhausted-rest-due'`. `FeedbackDrainTickResult.note` is a new optional,
|
|
29
|
+
informational field: it never degrades the run. `transitionRun` stores `reason ?? note`,
|
|
30
|
+
so a `succeeded` row can carry the note in its reason column.
|
|
31
|
+
- Unchanged: no call made at all → degraded `readiness-wall-clock-exhausted`. A first call
|
|
32
|
+
that times out, a provider timeout or error (`CodexExecJsonTimeoutError` etc.), a contract
|
|
33
|
+
violation and the spend brake are all still degraded.
|
|
34
|
+
|
|
35
|
+
The `feedback-factory-process` job body (`src/scaffold/templates/jobs/instar/feedback-factory-process.md`):
|
|
36
|
+
- The installed body WAS the new script (PR #2111). Its 60 s poll ended before the 70 s runs
|
|
37
|
+
finished, and it printed `still in flight; the next cadence observes it` (both job
|
|
38
|
+
transcripts show this) and exited as a success.
|
|
39
|
+
- The scheduler's declared-failure file (`INSTAR_JOB_FAILURE_FILE` → `readJobDeclaredFailure`
|
|
40
|
+
in `JobScheduler.notifyJobComplete`) is wired correctly. It was never written.
|
|
41
|
+
- Now: the default poll is 180 s (above the service's 115 s wall-clock ceiling). A run still
|
|
42
|
+
in flight after the poll FAILS the job. `expectedDurationMinutes` goes from 2 to 5, so the
|
|
43
|
+
session budget covers a 180 s poll plus model start-up.
|
|
44
|
+
|
|
45
|
+
## Decision-point inventory
|
|
46
|
+
|
|
47
|
+
- Drain readiness loop stop/continue (`FeedbackDrainService`): modify. One extra stop
|
|
48
|
+
condition (a time floor for later calls), and a stage-timer cut of a time-shortened later
|
|
49
|
+
call is reclassified as a clean stop.
|
|
50
|
+
- Run outcome labelling: modify. A tick that stops for time after a successful call is
|
|
51
|
+
`succeeded` with a note, not `degraded`.
|
|
52
|
+
- Job tier-1 supervision (`feedback-factory-process` script): modify. "Still in flight at
|
|
53
|
+
the poll limit" goes from success to a declared failure, and the poll is 3× longer.
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## 1. Over-block
|
|
58
|
+
|
|
59
|
+
- The job now fails on a run still in flight after 180 s. The service throws
|
|
60
|
+
`feedback drain wall-clock budget exceeded` past 115 s, and the run lease is 120 s, so a
|
|
61
|
+
run alive at 180 s is stuck. Failing the job surfaces it. One false failure is possible if
|
|
62
|
+
the status route itself is unreachable for the whole poll. That is a real fault too.
|
|
63
|
+
- The 25 s floor can leave a few candidates unreviewed in a tick where a short call might
|
|
64
|
+
just have fitted. They stay due and go first next tick (due order `next_review_at,
|
|
65
|
+
cluster_id`). It costs about 1-2 candidates per tick and never rejects anything.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## 2. Under-block
|
|
70
|
+
|
|
71
|
+
- A later call cut by the tick clock after an earlier success no longer counts toward
|
|
72
|
+
degradation. If the provider is really slow on that one call, it is hidden in that tick.
|
|
73
|
+
The next tick's first call has the full budget, and if it fails it is degraded as before.
|
|
74
|
+
A provider that keeps getting slow therefore still surfaces.
|
|
75
|
+
- The reclassification requires `StageBudgetExceeded` AND a shortened budget AND an earlier
|
|
76
|
+
success. A provider timeout raises its own error class, so it is never reclassified.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## 3. Level-of-abstraction fit
|
|
81
|
+
|
|
82
|
+
This is the right layer. The tick budget and its run labelling belong to the drain service.
|
|
83
|
+
The job script is the tier-1 supervisor of exactly this run outcome. No new gate or table is
|
|
84
|
+
added.
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## 4. Signal vs authority compliance
|
|
89
|
+
|
|
90
|
+
- [x] No — this change has no block/allow surface.
|
|
91
|
+
|
|
92
|
+
These are resource and timekeeping bounds plus honest outcome labelling. The readiness
|
|
93
|
+
judgment stays with the registered LLM authority.
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## 4b. Judgment-point check (Judgment Within Floors standard)
|
|
98
|
+
|
|
99
|
+
No new heuristic at a competing-signals decision point. The 25 s floor is a measured resource
|
|
100
|
+
bound. Fitted to the live calls, a call costs ~9 s plus ~2.4 s per candidate. The pace estimate
|
|
101
|
+
(with its 25% margin) only stays safe with about 23 s or more left; the reviewer derived this,
|
|
102
|
+
and the floor was raised from 15 s to 25 s to match.
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## 5. Interactions
|
|
107
|
+
|
|
108
|
+
- `onRecoverableStall` fired on every degraded run. These two live runs called it. A
|
|
109
|
+
time-stopped run no longer does.
|
|
110
|
+
- `pruneOperationalHistory` runs only for non-degraded runs, so it now also runs after a
|
|
111
|
+
time-stopped tick. That is the same as any succeeded tick.
|
|
112
|
+
- Transient-failure counter: unchanged. Any successful call clears it, and a clean stop is
|
|
113
|
+
not a failure.
|
|
114
|
+
- A cut later call's codex child keeps running until its own 60 s timeout (named in PR #2112
|
|
115
|
+
as well). The 25 s floor makes this rarer. 30-minute ticks never overlap.
|
|
116
|
+
- `FeedbackDrainTickProxy` and the status route pass the run's `reason` through. A succeeded
|
|
117
|
+
run can now show the note there. The job script reads `reason` only for non-success
|
|
118
|
+
states.
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## 6. External surfaces
|
|
123
|
+
|
|
124
|
+
- The job body and its manifest are replaced on update by `installBuiltinJobs`. That covers
|
|
125
|
+
the body, `expectedDurationMinutes` and the operator's `enabled`, which is preserved
|
|
126
|
+
(Migration Parity is covered by the existing body-refresh test). No config, route, schema
|
|
127
|
+
or CLAUDE.md template change.
|
|
128
|
+
- Model spend: slightly lower, because the doomed last call is no longer made.
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## 6b. Operator-surface quality
|
|
133
|
+
|
|
134
|
+
Not applicable. No operator surface is touched (the run reason is already shown as-is).
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## 7. Multi-machine posture (Cross-Machine Coherence)
|
|
139
|
+
|
|
140
|
+
Unchanged. Readiness runs only on the canonical owner. A proxied tick still finishes the job
|
|
141
|
+
at once ("the owner records its outcome").
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## 8. Rollback cost
|
|
146
|
+
|
|
147
|
+
Low. Revert the commit. There are no data-shape changes. A `succeeded` drain_runs row may
|
|
148
|
+
hold the note in `reason`, which older code reads as an ordinary bounded string.
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
## Conclusion
|
|
153
|
+
|
|
154
|
+
The run label now tells the truth in both directions. A tick whose calls all succeeded but
|
|
155
|
+
ran out of time is `succeeded` (with a note), and the rest stays due. A degraded run reaches
|
|
156
|
+
the operator, because the job now waits past the drain's wall clock instead of reporting
|
|
157
|
+
success at 60 s.
|
|
158
|
+
|
|
159
|
+
## Second-pass review (if required)
|
|
160
|
+
|
|
161
|
+
**Reviewer:** independent reviewer subagent
|
|
162
|
+
**Independent read of the artifact: concur**
|
|
163
|
+
|
|
164
|
+
The reviewer ran the targeted tests: unit 15/15, integration 17/17, e2e 1/1. Its notes, and
|
|
165
|
+
what was done with each:
|
|
166
|
+
- The 15 s floor was below the ~23 s at which the start-up-blind pace estimate is safe.
|
|
167
|
+
Applied: the floor is now 25 s.
|
|
168
|
+
- Nothing tested that our timer cutting a later call that had its FULL budget stays degraded.
|
|
169
|
+
Applied: a new unit case.
|
|
170
|
+
- One test name said "full budget" when the budget was shortened. Applied: renamed. That case
|
|
171
|
+
proves a provider error is never reclassified.
|
|
172
|
+
- The job's in-flight failure did not say what it last saw. Applied: it now includes the last
|
|
173
|
+
`lastRun` id and state, or the HTTP code.
|
|
174
|
+
- Left as is (named): the real-timer `setTimeout` race path is not separately unit-tested.
|
|
175
|
+
Both paths throw the same class, and the post-check path is covered.
|
|
176
|
+
|
|
177
|
+
## Evidence pointers
|
|
178
|
+
|
|
179
|
+
- Live store (read-only `.backup` at /tmp/fac-degraded/drain.db): drain_runs ef0f6cbf
|
|
180
|
+
(22:49:40) and 10674e04 (23:00:24). Readiness rows were stamped at +32.2 s / +62.4 s /
|
|
181
|
+
+70.0 s and +39.0 s / +62.2 s / +70.0 s. Exactly one `readiness-authority-failed` row per
|
|
182
|
+
run, at the 70 s deadline.
|
|
183
|
+
- Job transcripts: `FEEDBACK_DRAIN_RESULT run run:ef0f6cbf-… still in flight; the next
|
|
184
|
+
cadence observes it` (and the same for 10674e04).
|
|
185
|
+
- `tests/unit/feedback-factory/drain-readiness-chunking.test.ts`: five new cases cover the
|
|
186
|
+
live shape (9 s + 2.33 s per candidate → calls [10, 9], succeeded with the note, 31 rows
|
|
187
|
+
untouched), a stage-timer cut of a later call (clean), the same cut on the first call
|
|
188
|
+
(degraded), a provider timeout with a shortened budget (degraded), and our timer cutting a
|
|
189
|
+
later call that had its full budget (degraded). Three existing
|
|
190
|
+
expectations move from [10, 10, 2] to [10, 10] because of the floor.
|
|
191
|
+
- `tests/integration/feedback-drain-time-exhausted.test.ts`: production wiring + HTTP status
|
|
192
|
+
report `succeeded` with the note. It fails on the pre-fix source.
|
|
193
|
+
- `tests/integration/feedback-factory-process-job-body.test.ts`: four new cases cover the
|
|
194
|
+
default poll above 115 s, a slow degraded run that still fails the job, a slow succeeded
|
|
195
|
+
run with the note counted as success, and in flight after the poll → failure. Two fail on
|
|
196
|
+
the pre-fix body.
|
|
197
|
+
- `tests/e2e/feedback-drain-time-exhausted.test.ts`: the shipped job script against the
|
|
198
|
+
production AgentServer with the live latency shape. Pre-fix calls are [5, 4, 1] (the live
|
|
199
|
+
shape) and the run is degraded. Post-fix calls are [5, 4], the run succeeded with the note,
|
|
200
|
+
and the job records success.
|
|
201
|
+
|
|
202
|
+
## Class-Closure Declaration (display-only mirror)
|
|
203
|
+
|
|
204
|
+
No agent-authored-artifact defect class: the defects are a missing fixed-cost term in a
|
|
205
|
+
TypeScript time estimate, and a poll shorter than the thing it polls. Convergence of the
|
|
206
|
+
modified loop: at most `ceil(maxBatch / readinessChunkSize)` calls per tick. It stops at the
|
|
207
|
+
floor or the deadline, and any non-time failure still ends the readiness stage.
|