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.
@@ -2,7 +2,7 @@
2
2
  "schemaVersion": 1,
3
3
  "generatedFrom": "source-tree",
4
4
  "registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
5
- "packageVersion": "1.3.1314",
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": "7fe553525422086106fb8b43578a16daaea997b7f6ef9f77c93399071cc9f00e",
2
+ "sha256": "81bd9fa3c78c88ad9c840e55c57dda4d4c4566f3fea67f8defd03cf97099e00f",
3
3
  "registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
4
- "packageVersion": "1.3.1314"
4
+ "packageVersion": "1.3.1315"
5
5
  }
@@ -2,5 +2,5 @@
2
2
  "sha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
3
3
  "articleCount": 92,
4
4
  "generatedFrom": "docs/STANDARDS-REGISTRY.md",
5
- "packageVersion": "1.3.1314"
5
+ "packageVersion": "1.3.1315"
6
6
  }
@@ -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":"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"}
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
- if (remaining <= 0 || chunk.length === 0) {
353
- if (succeededCalls === 0 && !transientFailure)
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))), Math.min(this.readinessStageBudgetMs, remaining));
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 Error(`${stage} stage budget exceeded`)), budgetMs);
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 Error(`${stage} stage budget exceeded`);
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,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "1.3.1314",
3
+ "version": "1.3.1315",
4
4
  "description": "Coherence infrastructure for self-evolving AI agents — on the Claude Code or Codex subscription you already have.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "./builtin-manifest.schema.json",
3
3
  "schemaVersion": 1,
4
- "generatedAt": "2026-10-02T05:08:31.181Z",
5
- "instarVersion": "1.3.1314",
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.1314",
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": "7fe553525422086106fb8b43578a16daaea997b7f6ef9f77c93399071cc9f00e",
2
+ "sha256": "81bd9fa3c78c88ad9c840e55c57dda4d4c4566f3fea67f8defd03cf97099e00f",
3
3
  "registrySha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
4
- "packageVersion": "1.3.1314"
4
+ "packageVersion": "1.3.1315"
5
5
  }
@@ -2,5 +2,5 @@
2
2
  "sha256": "35448db940d659661ebdfb09761439033f93a15157540ee2f6eecf825488e1e6",
3
3
  "articleCount": 92,
4
4
  "generatedFrom": "docs/STANDARDS-REGISTRY.md",
5
- "packageVersion": "1.3.1314"
5
+ "packageVersion": "1.3.1315"
6
6
  }
@@ -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: 2
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
- POLL_SECONDS = float(os.environ.get('FEEDBACK_DRAIN_POLL_SECONDS') or 60)
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 (60 s). Still running at the limit is not a failure.
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
- done('run ' + run_id + ' still in flight; the next cadence observes it')
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.