@quickchatai/quickreview 1.3.1 → 1.3.2
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/README.md +10 -11
- package/config.example.toml +5 -1
- package/dist/extensions/vendor/openviking-pi/index.js +4 -0
- package/dist/extensions/vendor/openviking-pi/index.js.map +1 -1
- package/dist/extensions/vendor/openviking-pi/qcr-hooks.js +3 -1
- package/dist/extensions/vendor/openviking-pi/qcr-hooks.js.map +1 -1
- package/dist/extensions/vendor/openviking-pi/sync.js +81 -0
- package/dist/extensions/vendor/openviking-pi/sync.js.map +1 -1
- package/dist/src/cli.js +2 -0
- package/dist/src/cli.js.map +1 -1
- package/dist/src/daemon.js +7 -4
- package/dist/src/daemon.js.map +1 -1
- package/dist/src/ledgercheck.js +39 -10
- package/dist/src/ledgercheck.js.map +1 -1
- package/dist/src/session-command-supervisor.js +38 -9
- package/dist/src/session-command-supervisor.js.map +1 -1
- package/dist/src/state.js +73 -9
- package/dist/src/state.js.map +1 -1
- package/dist/src/tui/alerts.js +4 -1
- package/dist/src/tui/alerts.js.map +1 -1
- package/dist/src/tui/board.js +1 -1
- package/dist/src/tui/board.js.map +1 -1
- package/dist/src/verdicts.js +12 -0
- package/dist/src/verdicts.js.map +1 -1
- package/dist/src/wire.js +3 -2
- package/dist/src/wire.js.map +1 -1
- package/dist/src/workerbreaker.js +32 -5
- package/dist/src/workerbreaker.js.map +1 -1
- package/extensions/vendor/openviking-pi/NOTICE +5 -0
- package/extensions/vendor/openviking-pi/README.md +39 -5
- package/extensions/vendor/openviking-pi/index.ts +4 -0
- package/extensions/vendor/openviking-pi/patches/0014-one-turn-sync-in-flight.patch +239 -0
- package/extensions/vendor/openviking-pi/qcr-hooks.ts +3 -1
- package/extensions/vendor/openviking-pi/sync.ts +80 -0
- package/extensions/vendor/openviking-pi/upstream.json +2 -1
- package/package.json +2 -2
- package/src/cli.ts +2 -0
- package/src/daemon.ts +8 -4
- package/src/ledgercheck.ts +45 -9
- package/src/session-command-supervisor.ts +41 -8
- package/src/state.ts +101 -11
- package/src/tui/alerts.ts +9 -2
- package/src/tui/board.ts +1 -1
- package/src/verdicts.ts +13 -0
- package/src/wire.ts +3 -2
- package/src/workerbreaker.ts +41 -5
package/dist/src/ledgercheck.js
CHANGED
|
@@ -11,8 +11,14 @@
|
|
|
11
11
|
// its ledger — no review work, no posting, no verdict file. A second stale
|
|
12
12
|
// detection for the same round never nudges again: it logs
|
|
13
13
|
// `ledger_stale_unresolved`, the grade that wakes the overseer (the session
|
|
14
|
-
// ignored its one nudge)
|
|
15
|
-
//
|
|
14
|
+
// ignored its one nudge), once per nudge key; later checks at the same key
|
|
15
|
+
// are a quiet `ledger_stale_repeat` event. The once-mark is persisted BEFORE
|
|
16
|
+
// the inject, so even a crashed inject can never turn into a nudge loop.
|
|
17
|
+
//
|
|
18
|
+
// A recheck uphold (round-less) updates the ledger only "if the delta settled
|
|
19
|
+
// or re-opened a finding" (prompts/round-recheck.md), so on that path a header
|
|
20
|
+
// naming the head the PR was last reviewed at, or a head a recheck upheld
|
|
21
|
+
// since, is fresh too.
|
|
16
22
|
import { readFileSync } from "node:fs";
|
|
17
23
|
import { wakeOrHold } from "./wakes.js";
|
|
18
24
|
/** The mirrored snapshot's header (see packages/pi-plugin/extensions/ledger-pin.ts LEDGER_RE):
|
|
@@ -26,7 +32,7 @@ const MIN_SHA_PREFIX = 7;
|
|
|
26
32
|
* means the file was missing/unreadable. Anything but "fresh" is enforced
|
|
27
33
|
* identically (anomaly + capped nudge) — the distinction is for the record.
|
|
28
34
|
*/
|
|
29
|
-
export function classifyLedger(content, pr, headSha) {
|
|
35
|
+
export function classifyLedger(content, pr, headSha, alsoFresh = []) {
|
|
30
36
|
if (content === null)
|
|
31
37
|
return "missing";
|
|
32
38
|
const match = LEDGER_HEADER_RE.exec(content);
|
|
@@ -35,9 +41,24 @@ export function classifyLedger(content, pr, headSha) {
|
|
|
35
41
|
if (Number(match[1]) !== pr)
|
|
36
42
|
return "wrong_pr";
|
|
37
43
|
const written = match[2].toLowerCase();
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
44
|
+
const names = (sha) => {
|
|
45
|
+
const head = sha.toLowerCase();
|
|
46
|
+
return written === head || (written.length >= MIN_SHA_PREFIX && head.startsWith(written));
|
|
47
|
+
};
|
|
48
|
+
return names(headSha) || alsoFresh.some(names) ? "fresh" : "stale_sha";
|
|
49
|
+
}
|
|
50
|
+
/** The heads a recheck uphold may find in the header besides its own: the head
|
|
51
|
+
* of the PR's last verdicted round and every head a recheck upheld since. */
|
|
52
|
+
export function upheldLedgerHeads(store, pr) {
|
|
53
|
+
const reviewed = store
|
|
54
|
+
.roundsFor(pr)
|
|
55
|
+
.filter((r) => r.verdict !== null)
|
|
56
|
+
.sort((a, b) => b.round_no - a.round_no)[0];
|
|
57
|
+
const since = reviewed ? (reviewed.finished_at ?? reviewed.started_at) : null;
|
|
58
|
+
return [
|
|
59
|
+
...(reviewed?.head_sha ? [reviewed.head_sha] : []),
|
|
60
|
+
...store.recheckUpheldHeads(pr, since),
|
|
61
|
+
];
|
|
41
62
|
}
|
|
42
63
|
/** The re-nudge wake. Explicitly bookkeeping-only: the rewrite arrives
|
|
43
64
|
* OUTSIDE a round, and the session must not mistake it for review work. */
|
|
@@ -69,7 +90,7 @@ export async function enforceLedgerFreshness(deps, target) {
|
|
|
69
90
|
catch {
|
|
70
91
|
content = null;
|
|
71
92
|
}
|
|
72
|
-
const freshness = classifyLedger(content, pr, headSha);
|
|
93
|
+
const freshness = classifyLedger(content, pr, headSha, roundNo === null ? upheldLedgerHeads(store, pr) : []);
|
|
73
94
|
if (freshness === "fresh")
|
|
74
95
|
return "fresh";
|
|
75
96
|
const detail = `ledger ${freshness} at ${path}: expected header "LEDGER PR #${pr} @ ${headSha}"`;
|
|
@@ -107,9 +128,17 @@ export async function enforceLedgerFreshness(deps, target) {
|
|
|
107
128
|
if (store.ledgerNudgeSent(pr, key)) {
|
|
108
129
|
// Still stale AFTER the re-nudge: the session ignored its one nudge —
|
|
109
130
|
// this grade WAKES the overseer (the severity map in src/anomalies.ts), first-detection
|
|
110
|
-
// "ledger_stale" stays quiet (the nudge itself is the response).
|
|
111
|
-
|
|
112
|
-
|
|
131
|
+
// "ledger_stale" stays quiet (the nudge itself is the response). Raised
|
|
132
|
+
// once per key: a later check at the same key has no new nudge to give,
|
|
133
|
+
// so it is the quiet repeat event alone.
|
|
134
|
+
if (!store.ledgerRepeatSeen(pr, key))
|
|
135
|
+
store.logAnomaly("ledger_stale_unresolved", pr, roundNo, detail);
|
|
136
|
+
store.logEvent("ledger_stale_repeat", pr, {
|
|
137
|
+
key,
|
|
138
|
+
round_no: roundNo,
|
|
139
|
+
head_sha: headSha,
|
|
140
|
+
freshness,
|
|
141
|
+
});
|
|
113
142
|
return "already_nudged";
|
|
114
143
|
}
|
|
115
144
|
store.logAnomaly("ledger_stale", pr, roundNo, detail);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledgercheck.js","sourceRoot":"","sources":["../../src/ledgercheck.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,EAAE;AACF,yEAAyE;AACzE,mEAAmE;AACnE,+EAA+E;AAC/E,oDAAoD;AACpD,uCAAuC;AACvC,EAAE;AACF,4EAA4E;AAC5E,6EAA6E;AAC7E,2EAA2E;AAC3E,2DAA2D;AAC3D,4EAA4E;AAC5E,2EAA2E;AAC3E,
|
|
1
|
+
{"version":3,"file":"ledgercheck.js","sourceRoot":"","sources":["../../src/ledgercheck.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
// scheduler. Delivery remains inject-bridge-owned; round recovery remains the
|
|
5
5
|
// VerdictWatcher's existing self-requeue path. The supervisor only classifies
|
|
6
6
|
// finite start/finish obligations from durable command state + JSONL receipts.
|
|
7
|
-
import { roundStageDeadlines } from "@quickchatai/pi-quickreview/src/round-stage-deadlines.js";
|
|
7
|
+
import { discoveryRowsOf, roundStageAllowanceMin, roundStageDeadlines, } from "@quickchatai/pi-quickreview/src/round-stage-deadlines.js";
|
|
8
8
|
import { existsSync } from "node:fs";
|
|
9
9
|
import { join } from "node:path";
|
|
10
10
|
import { DEFAULT_MAX_PROMPT_REDELIVERIES, DEFAULT_ROUND_FINALIZE_GRACE_MIN, DEFAULT_ROUND_FIRST_PASS_MAX_MIN, DEFAULT_ROUND_PASSES_MAX_MIN, DEFAULT_ROUND_STAGE_SUPERVISOR_STALE_S, DEFAULT_SESSION_COMMAND_MAX_START_RETRIES, DEFAULT_SESSION_COMMAND_RUNNING_MAX_MIN, DEFAULT_SESSION_COMMAND_UNKNOWN_GRACE_S, DEFAULT_FOLLOW_UP_SWEEP_EXTRA_MIN, resolveRoundStageBounds, } from "./config.js";
|
|
@@ -503,9 +503,10 @@ export class SessionCommandSupervisor {
|
|
|
503
503
|
const now = this.now().getTime();
|
|
504
504
|
const minute = 60_000;
|
|
505
505
|
const sweepOwed = round.sweep_owed === 1;
|
|
506
|
+
const discoveryRows = discoveryRowsOf(round);
|
|
506
507
|
const passesMaxMin = (this.deps.cfg.daemon.round_passes_max_min ?? DEFAULT_ROUND_PASSES_MAX_MIN) +
|
|
507
|
-
(sweepOwed
|
|
508
|
-
const deadlines = roundStageDeadlines(started, resolveRoundStageBounds(this.deps.cfg.daemon), sweepOwed);
|
|
508
|
+
roundStageAllowanceMin({ sweepOwed, sweepExtraMin: this.sweepExtraMin(), discoveryRows });
|
|
509
|
+
const deadlines = roundStageDeadlines(started, resolveRoundStageBounds(this.deps.cfg.daemon), sweepOwed, discoveryRows);
|
|
509
510
|
const firstPassAt = deadlines.first_pass_start;
|
|
510
511
|
const passesAt = deadlines.passes_complete;
|
|
511
512
|
const hardAt = deadlines.running_hard_bound;
|
|
@@ -515,9 +516,10 @@ export class SessionCommandSupervisor {
|
|
|
515
516
|
.filter(Boolean);
|
|
516
517
|
// The extension's generic subagent milestone is descriptive only. The
|
|
517
518
|
// finite gate opens solely when exact correlated progress names one of the
|
|
518
|
-
//
|
|
519
|
-
//
|
|
520
|
-
|
|
519
|
+
// DISCOVERY lenses the daemon dispatched — the planned ones or the round's
|
|
520
|
+
// optional rows. Validator-first, a lens added through the add protocol or
|
|
521
|
+
// a foreign tool cannot buy a later failure class.
|
|
522
|
+
const fanoutAgents = plannedFanoutAgents(progress, [...planned, ...optionalRowLenses(round)]);
|
|
521
523
|
const plannedFanout = fanoutAgents.length > 0;
|
|
522
524
|
if (plannedFanout) {
|
|
523
525
|
const firstStarted = fanoutAgents.map((agent) => agent.started_at).sort()[0];
|
|
@@ -677,8 +679,9 @@ export class SessionCommandSupervisor {
|
|
|
677
679
|
return this.deps.cfg.daemon.follow_up_sweep_extra_min ?? DEFAULT_FOLLOW_UP_SWEEP_EXTRA_MIN;
|
|
678
680
|
}
|
|
679
681
|
/** The command's fixed running cap in minutes: the configured bound, plus
|
|
680
|
-
* the
|
|
681
|
-
*
|
|
682
|
+
* the round's stage allowance (the pre-approval sweep's when it is owed, or
|
|
683
|
+
* a large plan's, whichever is larger). Derived from the round ROW, never
|
|
684
|
+
* from progress. */
|
|
682
685
|
runningMaxMin(command, round) {
|
|
683
686
|
const base = this.deps.cfg.daemon.session_command_running_max_min ??
|
|
684
687
|
DEFAULT_SESSION_COMMAND_RUNNING_MAX_MIN;
|
|
@@ -686,7 +689,14 @@ export class SessionCommandSupervisor {
|
|
|
686
689
|
return base;
|
|
687
690
|
const row = round ??
|
|
688
691
|
this.deps.store.roundsFor(command.pr).find((item) => item.round_no === command.round_no);
|
|
689
|
-
|
|
692
|
+
if (!row)
|
|
693
|
+
return base;
|
|
694
|
+
return (base +
|
|
695
|
+
roundStageAllowanceMin({
|
|
696
|
+
sweepOwed: row.sweep_owed === 1,
|
|
697
|
+
sweepExtraMin: this.sweepExtraMin(),
|
|
698
|
+
discoveryRows: discoveryRowsOf(row),
|
|
699
|
+
}));
|
|
690
700
|
}
|
|
691
701
|
/** The fixed running deadline (epoch ms) of a command whose run began at
|
|
692
702
|
* `origin`: the origin plus `runningMaxMin`. */
|
|
@@ -915,6 +925,25 @@ function firstExecutionPerLens(agents) {
|
|
|
915
925
|
}
|
|
916
926
|
return first;
|
|
917
927
|
}
|
|
928
|
+
/** The lenses of the optional rows the daemon dispatched with the round (the
|
|
929
|
+
* addable record's `optional` entries); a lens offered for the add protocol
|
|
930
|
+
* is not one. */
|
|
931
|
+
function optionalRowLenses(round) {
|
|
932
|
+
if (!round.addable_passes)
|
|
933
|
+
return [];
|
|
934
|
+
try {
|
|
935
|
+
const rows = JSON.parse(round.addable_passes);
|
|
936
|
+
if (!Array.isArray(rows))
|
|
937
|
+
return [];
|
|
938
|
+
return rows
|
|
939
|
+
.filter((row) => row?.optional === true)
|
|
940
|
+
.map((row) => row.lens)
|
|
941
|
+
.filter((lens) => typeof lens === "string");
|
|
942
|
+
}
|
|
943
|
+
catch {
|
|
944
|
+
return [];
|
|
945
|
+
}
|
|
946
|
+
}
|
|
918
947
|
/** Plan rows per lens name from the round's recorded `pass_plan`; empty when
|
|
919
948
|
* it is absent or unreadable (every lens then owes one execution). */
|
|
920
949
|
function plannedRowCounts(round) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-command-supervisor.js","sourceRoot":"","sources":["../../src/session-command-supervisor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-command-supervisor.js","sourceRoot":"","sources":["../../src/session-command-supervisor.ts"],"names":[],"mappings":"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"}
|
package/dist/src/state.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Core tables: pr_state, rounds, bot_comments (registry), deliveries
|
|
3
3
|
// (webhook dedupe), events (append log).
|
|
4
4
|
import { findingRowFields } from "@quickchatai/pi-quickreview/src/finding-row.js";
|
|
5
|
-
import { roundStageDeadlines } from "@quickchatai/pi-quickreview/src/round-stage-deadlines.js";
|
|
5
|
+
import { discoveryRowsOf, roundStageDeadlines, } from "@quickchatai/pi-quickreview/src/round-stage-deadlines.js";
|
|
6
6
|
import Database from "better-sqlite3";
|
|
7
7
|
import { chmodSync, mkdirSync, renameSync, writeFileSync } from "node:fs";
|
|
8
8
|
import { dirname, join } from "node:path";
|
|
@@ -598,7 +598,8 @@ CREATE TABLE IF NOT EXISTS drain_state (
|
|
|
598
598
|
-- with parked_at set gets no worker until the operator's rerun-round or
|
|
599
599
|
-- restart-session clears the row. worker_breaker_global.epoch ticks at every
|
|
600
600
|
-- worker success (and at the lift of the breaker's drain); a failure counts
|
|
601
|
-
-- toward the global drain only while it carries the current epoch.
|
|
601
|
+
-- toward the global drain only while it carries the current epoch. trips
|
|
602
|
+
-- counts the breaker's drains since then: each waits twice as long to lapse.
|
|
602
603
|
CREATE TABLE IF NOT EXISTS worker_breaker (
|
|
603
604
|
pr INTEGER PRIMARY KEY,
|
|
604
605
|
failures INTEGER NOT NULL DEFAULT 0,
|
|
@@ -612,6 +613,7 @@ CREATE TABLE IF NOT EXISTS worker_breaker (
|
|
|
612
613
|
CREATE TABLE IF NOT EXISTS worker_breaker_global (
|
|
613
614
|
id INTEGER PRIMARY KEY CHECK (id = 1),
|
|
614
615
|
epoch INTEGER NOT NULL DEFAULT 0,
|
|
616
|
+
trips INTEGER NOT NULL DEFAULT 0,
|
|
615
617
|
updated_at TEXT NOT NULL
|
|
616
618
|
);
|
|
617
619
|
-- The host lease: who holds a PR's session while the operator works
|
|
@@ -1109,6 +1111,7 @@ export class StateStore {
|
|
|
1109
1111
|
this.db.exec("CREATE INDEX IF NOT EXISTS bot_comments_id ON bot_comments(comment_id)");
|
|
1110
1112
|
this.migrateRecheckReceipts();
|
|
1111
1113
|
this.migrateDrainHold();
|
|
1114
|
+
this.migrateBreakerHeal();
|
|
1112
1115
|
this.migrateSessionCommandCancelledStatus();
|
|
1113
1116
|
this.runDataMigrations();
|
|
1114
1117
|
}
|
|
@@ -1208,6 +1211,30 @@ export class StateStore {
|
|
|
1208
1211
|
this.logEvent("drain_hold_carried", null, {});
|
|
1209
1212
|
})();
|
|
1210
1213
|
}
|
|
1214
|
+
/**
|
|
1215
|
+
* The breaker's drain lapses on its own (src/workerbreaker.ts). One an older
|
|
1216
|
+
* daemon set stands with no expiry, and only `drain off` would lift it: the
|
|
1217
|
+
* boot that adds the `trips` column gives it an expiry of now, so the first
|
|
1218
|
+
* sweep lifts it and the queue retries, with the failures that tripped it
|
|
1219
|
+
* spent. Only the breaker's drain is carried
|
|
1220
|
+
* (its reason, no hold); a hand-set drain stands as it was set.
|
|
1221
|
+
*/
|
|
1222
|
+
migrateBreakerHeal() {
|
|
1223
|
+
this.db.transaction(() => {
|
|
1224
|
+
if (!this.addColumn("ALTER TABLE worker_breaker_global ADD COLUMN trips INTEGER NOT NULL DEFAULT 0"))
|
|
1225
|
+
return;
|
|
1226
|
+
const info = this.db
|
|
1227
|
+
.prepare(`UPDATE drain_state SET expires_at = ?
|
|
1228
|
+
WHERE id = 1 AND draining = 1 AND reason = ? AND expires_at IS NULL AND hold = 0`)
|
|
1229
|
+
.run(this.ts(), WORKER_FAILURES_DRAIN_REASON);
|
|
1230
|
+
if (info.changes > 0) {
|
|
1231
|
+
// The failures that tripped it are spent, as at a new trip: a retry
|
|
1232
|
+
// failing once more must not re-drain with them.
|
|
1233
|
+
this.resetWorkerFailureWindow();
|
|
1234
|
+
this.logEvent("breaker_drain_heal_carried", null, {});
|
|
1235
|
+
}
|
|
1236
|
+
})();
|
|
1237
|
+
}
|
|
1211
1238
|
/** Existing databases carry a CHECK constraint that predates operator
|
|
1212
1239
|
* cancellation. Rebuild this one table in-place; every column and index is
|
|
1213
1240
|
* copied, and the transaction makes the old or new shape visible atomically. */
|
|
@@ -4840,7 +4867,9 @@ export class StateStore {
|
|
|
4840
4867
|
* One more consecutive worker failure for `pr`. The PR is parked when the count
|
|
4841
4868
|
* reaches `parkAfter`; `parked` says whether it stands parked now and
|
|
4842
4869
|
* `newlyParked` whether THIS failure parked it (the caller raises the anomaly
|
|
4843
|
-
* once).
|
|
4870
|
+
* once). With `drain: false` it does not count toward the global drain: its
|
|
4871
|
+
* epoch is one no window ever carries, so `failedWorkerPrsSince` never lists
|
|
4872
|
+
* it. With `park: false` it counts but does not park the PR by itself.
|
|
4844
4873
|
*/
|
|
4845
4874
|
recordWorkerFailure(pr, o) {
|
|
4846
4875
|
return this.db
|
|
@@ -4848,7 +4877,11 @@ export class StateStore {
|
|
|
4848
4877
|
const row = this.workerBreaker(pr);
|
|
4849
4878
|
const failures = (row?.failures ?? 0) + 1;
|
|
4850
4879
|
const wasParked = row?.parked_at != null;
|
|
4851
|
-
const parkedAt = wasParked
|
|
4880
|
+
const parkedAt = wasParked
|
|
4881
|
+
? row.parked_at
|
|
4882
|
+
: o.park !== false && failures >= o.parkAfter
|
|
4883
|
+
? o.at
|
|
4884
|
+
: null;
|
|
4852
4885
|
this.db
|
|
4853
4886
|
.prepare(`INSERT INTO worker_breaker (pr, failures, parked_at, last_error, last_failure_at, last_command_id, failure_epoch, updated_at)
|
|
4854
4887
|
VALUES (@pr, @failures, @parked, @error, @at, @command, @epoch, @at)
|
|
@@ -4861,7 +4894,7 @@ export class StateStore {
|
|
|
4861
4894
|
error: o.error,
|
|
4862
4895
|
at: o.at,
|
|
4863
4896
|
command: o.commandId,
|
|
4864
|
-
epoch: this.workerEpoch(),
|
|
4897
|
+
epoch: o.drain === false ? -1 : this.workerEpoch(),
|
|
4865
4898
|
});
|
|
4866
4899
|
return {
|
|
4867
4900
|
failures,
|
|
@@ -4897,11 +4930,25 @@ export class StateStore {
|
|
|
4897
4930
|
const row = this.db.prepare("SELECT epoch FROM worker_breaker_global WHERE id = 1").get();
|
|
4898
4931
|
return row?.epoch ?? 0;
|
|
4899
4932
|
}
|
|
4900
|
-
/** Start the global failure window afresh: earlier failures stop counting
|
|
4933
|
+
/** Start the global failure window afresh: earlier failures stop counting,
|
|
4934
|
+
* and the breaker's next drain waits the shortest time again. */
|
|
4901
4935
|
resetWorkerFailureWindow() {
|
|
4902
4936
|
this.db
|
|
4903
|
-
.prepare(`INSERT INTO worker_breaker_global (id, epoch, updated_at) VALUES (1, 1, @ts)
|
|
4904
|
-
ON CONFLICT(id) DO UPDATE SET epoch = epoch + 1, updated_at = @ts`)
|
|
4937
|
+
.prepare(`INSERT INTO worker_breaker_global (id, epoch, trips, updated_at) VALUES (1, 1, 0, @ts)
|
|
4938
|
+
ON CONFLICT(id) DO UPDATE SET epoch = epoch + 1, trips = 0, updated_at = @ts`)
|
|
4939
|
+
.run({ ts: this.ts() });
|
|
4940
|
+
}
|
|
4941
|
+
/** The breaker's drains since the last worker success or operator lift. */
|
|
4942
|
+
workerBreakerTrips() {
|
|
4943
|
+
const row = this.db.prepare("SELECT trips FROM worker_breaker_global WHERE id = 1").get();
|
|
4944
|
+
return row?.trips ?? 0;
|
|
4945
|
+
}
|
|
4946
|
+
/** The breaker drained once more: the failures that tripped it are spent (a
|
|
4947
|
+
* new epoch), and its next drain waits longer. */
|
|
4948
|
+
recordWorkerBreakerTrip() {
|
|
4949
|
+
this.db
|
|
4950
|
+
.prepare(`INSERT INTO worker_breaker_global (id, epoch, trips, updated_at) VALUES (1, 1, 1, @ts)
|
|
4951
|
+
ON CONFLICT(id) DO UPDATE SET epoch = epoch + 1, trips = trips + 1, updated_at = @ts`)
|
|
4905
4952
|
.run({ ts: this.ts() });
|
|
4906
4953
|
}
|
|
4907
4954
|
/** Charge a session grant to `day`'s budget. `pr` is null for a drain. */
|
|
@@ -5084,6 +5131,23 @@ export class StateStore {
|
|
|
5084
5131
|
.all(pr);
|
|
5085
5132
|
return someMarkHasKey(rows, key);
|
|
5086
5133
|
}
|
|
5134
|
+
/** Has a check after this (pr, key)'s spent nudge already been recorded? */
|
|
5135
|
+
ledgerRepeatSeen(pr, key) {
|
|
5136
|
+
const rows = this.db
|
|
5137
|
+
.prepare("SELECT payload FROM events WHERE kind = 'ledger_stale_repeat' AND pr = ?")
|
|
5138
|
+
.all(pr);
|
|
5139
|
+
return someMarkHasKey(rows, key);
|
|
5140
|
+
}
|
|
5141
|
+
/** The heads a recheck upheld on `pr` at or after `since` (every one when null). */
|
|
5142
|
+
recheckUpheldHeads(pr, since) {
|
|
5143
|
+
const rows = this.db
|
|
5144
|
+
.prepare("SELECT payload FROM events WHERE kind = 'recheck_upheld' AND pr = ? AND ts >= ?")
|
|
5145
|
+
.all(pr, since ?? "");
|
|
5146
|
+
// An unreadable mark names no head.
|
|
5147
|
+
return rows
|
|
5148
|
+
.map((r) => readStringField(r.payload, "head_sha"))
|
|
5149
|
+
.filter((head) => head !== undefined && head !== "");
|
|
5150
|
+
}
|
|
5087
5151
|
/**
|
|
5088
5152
|
* What the event log says about the migration-collision COMMENT with this
|
|
5089
5153
|
* fingerprint on this PR (the collision comment's dedupe). Scans every such event for the
|
|
@@ -5762,7 +5826,7 @@ export function buildStatusSnapshot(store, dryRun, digestHeadline, now = () => n
|
|
|
5762
5826
|
const started = Date.parse(command.started_at);
|
|
5763
5827
|
if (!Number.isFinite(started))
|
|
5764
5828
|
return identity;
|
|
5765
|
-
const deadlines = roundStageDeadlines(started, roundStageBounds, round.sweep_owed === 1);
|
|
5829
|
+
const deadlines = roundStageDeadlines(started, roundStageBounds, round.sweep_owed === 1, discoveryRowsOf(round));
|
|
5766
5830
|
return {
|
|
5767
5831
|
...identity,
|
|
5768
5832
|
stage_deadlines: {
|