@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
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Propagation-staleness sensor (focus: "Propagation Staleness Is Invisible").
|
|
3
|
+
*
|
|
4
|
+
* The differential instrument this focus is named for: it computes
|
|
5
|
+
* newest-available MINUS actually-running for a tracked target. Its first (and
|
|
6
|
+
* directly observable) target is the running daemon vs the Gitea npm registry:
|
|
7
|
+
*
|
|
8
|
+
* running = ~/.telora/daemon.meta.json .version (this daemon's own build)
|
|
9
|
+
* newest = the warm version cache .latestVersion (Gitea registry dist-tags.latest,
|
|
10
|
+
* kept fresh by startVersionCacheRefreshLoop)
|
|
11
|
+
*
|
|
12
|
+
* CLOSING the gap, not reporting it. The daemon-version gap is machine-closable:
|
|
13
|
+
* the safe-seam auto-update controller (auto-update.ts) already installs a newer
|
|
14
|
+
* registry version at the next batch-safe idle seam. So when the gap is beyond
|
|
15
|
+
* threshold this sensor DEFERS to that closer -- it does NOT tell a human "the
|
|
16
|
+
* daemon is stale, restart it". Telling a human about a gap the machine is
|
|
17
|
+
* already closing converts machine signal into human chore, and firing on a
|
|
18
|
+
* healthy daemon that is merely deferring to its next safe seam is exactly the
|
|
19
|
+
* failure mode this focus exists to remove.
|
|
20
|
+
*
|
|
21
|
+
* A human is involved ONLY where the machine genuinely cannot act: auto-update
|
|
22
|
+
* is disabled for this daemon (installMode=npx, or --no-auto-update /
|
|
23
|
+
* TELORA_AUTO_UPDATE=0, reflected as autoUpdateEnabled=false in daemon.meta.json).
|
|
24
|
+
* The operator opted out of automation, so the machine cannot close the gap --
|
|
25
|
+
* and even then the deliverable is a READY ACTION handed over (the exact
|
|
26
|
+
* `npm install -g` command + restart), never an inbox item that merely says a
|
|
27
|
+
* gap exists. That handover auto-resolves once the running version catches up,
|
|
28
|
+
* and is retired immediately if auto-update is re-enabled (the machine reclaims
|
|
29
|
+
* closure).
|
|
30
|
+
*
|
|
31
|
+
* Every tick leaves a trace (delegated-to-auto-update / handed-over /
|
|
32
|
+
* back-in-sync / "measured, within threshold" / "UNMEASURED"), so an ABSENT
|
|
33
|
+
* trace positively means "measured and in sync" -- never "not measured". Wedged
|
|
34
|
+
* auto-update (enabled but not running) is made visible by the SEPARATE
|
|
35
|
+
* auto-update decision heartbeat (auto-update.ts): an absent [auto-update] trace
|
|
36
|
+
* identifies a controller that is not running. That is not re-derived here.
|
|
37
|
+
*
|
|
38
|
+
* Pure decision (computeDaemonVersionDifferential / decideStalenessAction) +
|
|
39
|
+
* injected IO, mirroring ci-sensor-loop.ts, so the loop is unit-testable without
|
|
40
|
+
* a live registry or DB. Registered in LOOP_REGISTRY under the opt-out guard
|
|
41
|
+
* TELORA_STALENESS_SENSOR_LOOP.
|
|
42
|
+
*
|
|
43
|
+
* The two infra-owned targets observed 2026-07-24 (npmjs mirror serving a stale
|
|
44
|
+
* version; Opus 5 seed merged-but-maybe-not-applied) are NOT computable from
|
|
45
|
+
* this repo (no prod DB access; infra alone publishes to npmjs). They are
|
|
46
|
+
* recorded, with their operator-facing close action, in
|
|
47
|
+
* docs/runbook-propagation-staleness-targets.md -- the sensor deliberately does
|
|
48
|
+
* NOT attempt those infra actions.
|
|
49
|
+
*
|
|
50
|
+
* @module staleness-sensor
|
|
51
|
+
*/
|
|
52
|
+
import type { DaemonConfig } from './types.js';
|
|
53
|
+
/**
|
|
54
|
+
* escalation_kind for a stale daemon that the machine CANNOT auto-close (auto-update
|
|
55
|
+
* disabled). Carries a ready action, not a bare "gap exists" notice.
|
|
56
|
+
*/
|
|
57
|
+
export declare const PROPAGATION_STALE_ESCALATION_KIND = "propagation_stale";
|
|
58
|
+
/** Stable target id for the daemon-vs-registry differential. */
|
|
59
|
+
export declare const DAEMON_VERSION_TARGET = "daemon-version";
|
|
60
|
+
/**
|
|
61
|
+
* Default patch-version distance that trips the signal. Any minor/major gap
|
|
62
|
+
* always trips regardless. A 1-2 patch gap is left quiet: auto-update closes it
|
|
63
|
+
* at the next idle seam, so signaling immediately would be noise. The observed
|
|
64
|
+
* failure (0.20.21 vs 0.20.28 = 7 patches) is well past this floor.
|
|
65
|
+
*/
|
|
66
|
+
export declare const DEFAULT_STALENESS_PATCH_THRESHOLD = 3;
|
|
67
|
+
/** Component-wise magnitude of how far `running` is behind `newest` (clamped at 0). */
|
|
68
|
+
export interface VersionDistance {
|
|
69
|
+
major: number;
|
|
70
|
+
minor: number;
|
|
71
|
+
patch: number;
|
|
72
|
+
}
|
|
73
|
+
/** The computed newest-vs-running differential for a tracked target. */
|
|
74
|
+
export interface StalenessDifferential {
|
|
75
|
+
target: string;
|
|
76
|
+
running: string;
|
|
77
|
+
newest: string;
|
|
78
|
+
/** True when `newest` is strictly newer than `running`. */
|
|
79
|
+
behind: boolean;
|
|
80
|
+
distance: VersionDistance;
|
|
81
|
+
/** True when the gap exceeds the declared threshold (any minor/major, or >= patchThreshold patches). */
|
|
82
|
+
beyondThreshold: boolean;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Compute the daemon-vs-registry differential. Returns null when it cannot be
|
|
86
|
+
* MEASURED (either version missing) -- the caller must then emit an explicit
|
|
87
|
+
* "UNMEASURED" trace rather than staying silent, so silence always means "in
|
|
88
|
+
* sync", never "not measured".
|
|
89
|
+
*/
|
|
90
|
+
export declare function computeDaemonVersionDifferential(running: string | null, newest: string | null, patchThreshold?: number): StalenessDifferential | null;
|
|
91
|
+
/**
|
|
92
|
+
* What the sensor should do with the current differential.
|
|
93
|
+
* - `delegate` -- gap is beyond threshold and the machine closes it itself
|
|
94
|
+
* (auto-update enabled): defer to that closer, no human.
|
|
95
|
+
* - `hand-over` -- gap is beyond threshold but the machine cannot act
|
|
96
|
+
* (auto-update disabled): hand a human a ready action.
|
|
97
|
+
* - `resolve` -- an open handover exists but the machine is now closing the
|
|
98
|
+
* gap (back within threshold, OR auto-update re-enabled).
|
|
99
|
+
* - `none` -- nothing to do.
|
|
100
|
+
*/
|
|
101
|
+
export type StalenessAction = 'delegate' | 'hand-over' | 'resolve' | 'none';
|
|
102
|
+
/**
|
|
103
|
+
* Pure decision. The pivot is `canMachineClose`: when the auto-update controller
|
|
104
|
+
* owns closing the daemon-version gap, the sensor NEVER hands a human a report --
|
|
105
|
+
* it defers (and retires any stale handover). A human is handed a ready action
|
|
106
|
+
* ONLY when the machine genuinely cannot act. A null differential (unmeasurable)
|
|
107
|
+
* never acts -- it is handled as a trace by the tick.
|
|
108
|
+
*/
|
|
109
|
+
export declare function decideStalenessAction(diff: StalenessDifferential | null, hasOpen: boolean, canMachineClose: boolean): StalenessAction;
|
|
110
|
+
/** Injected IO for the sensor tick. Defaults reach for the real implementations. */
|
|
111
|
+
export interface StalenessSensorDeps {
|
|
112
|
+
readRunningVersion: () => string | null;
|
|
113
|
+
readNewestAvailable: () => string | null;
|
|
114
|
+
patchThreshold: number;
|
|
115
|
+
/**
|
|
116
|
+
* True when the auto-update controller can close the daemon-version gap itself.
|
|
117
|
+
* When true the sensor defers to that closer and never hands a human a report;
|
|
118
|
+
* when false the operator opted out and the machine genuinely cannot act.
|
|
119
|
+
*/
|
|
120
|
+
canMachineCloseGap: () => boolean;
|
|
121
|
+
hasOpenStalenessEscalation: () => Promise<boolean>;
|
|
122
|
+
/** Hand a human a READY ACTION when (and only when) the machine cannot act. */
|
|
123
|
+
handOverReadyAction: (params: {
|
|
124
|
+
organizationId: string;
|
|
125
|
+
productId: string;
|
|
126
|
+
diff: StalenessDifferential;
|
|
127
|
+
readyCommand: string;
|
|
128
|
+
}) => Promise<void>;
|
|
129
|
+
resolveStalenessEscalations: () => Promise<number>;
|
|
130
|
+
}
|
|
131
|
+
export interface StalenessSensorTickCounts {
|
|
132
|
+
/** True when the differential could be computed (both versions known). */
|
|
133
|
+
measured: boolean;
|
|
134
|
+
/** True when the daemon is behind the registry at all (any distance). */
|
|
135
|
+
behind: boolean;
|
|
136
|
+
/** True when the machine (auto-update) owns closing the measured gap this tick. */
|
|
137
|
+
delegatedToAutoUpdate: boolean;
|
|
138
|
+
/** Ready-action handovers filed -- only when the machine genuinely cannot act. */
|
|
139
|
+
handoversToOperator: number;
|
|
140
|
+
escalationsResolved: number;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* One propagation-staleness sensor tick. Computes the global daemon-vs-registry
|
|
144
|
+
* differential once (the running daemon has a single version). When the gap is
|
|
145
|
+
* beyond threshold the sensor DEFERS to the auto-update controller if that closer
|
|
146
|
+
* is active, and hands a human a ready action ONLY when it is not. Any handover
|
|
147
|
+
* is anchored to the first configured product for inbox visibility (the fact is
|
|
148
|
+
* process-global; all products share one org).
|
|
149
|
+
*
|
|
150
|
+
* Every path emits a trace so an absent signal means "measured and in sync".
|
|
151
|
+
*/
|
|
152
|
+
export declare function runStalenessSensorTick(config: DaemonConfig, deps?: StalenessSensorDeps): Promise<StalenessSensorTickCounts>;
|
|
153
|
+
//# sourceMappingURL=staleness-sensor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"staleness-sensor.d.ts","sourceRoot":"","sources":["../src/staleness-sensor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAa/C;;;GAGG;AACH,eAAO,MAAM,iCAAiC,sBAAsB,CAAC;AAErE,gEAAgE;AAChE,eAAO,MAAM,qBAAqB,mBAAmB,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAEnD,uFAAuF;AACvF,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wEAAwE;AACxE,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,eAAe,CAAC;IAC1B,wGAAwG;IACxG,eAAe,EAAE,OAAO,CAAC;CAC1B;AAcD;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,cAAc,GAAE,MAA0C,GACzD,qBAAqB,GAAG,IAAI,CAO9B;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC;AAE5E;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,qBAAqB,GAAG,IAAI,EAClC,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,OAAO,GACvB,eAAe,CAcjB;AAgHD,oFAAoF;AACpF,MAAM,WAAW,mBAAmB;IAClC,kBAAkB,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACxC,mBAAmB,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,kBAAkB,EAAE,MAAM,OAAO,CAAC;IAClC,0BAA0B,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,+EAA+E;IAC/E,mBAAmB,EAAE,CAAC,MAAM,EAAE;QAC5B,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,qBAAqB,CAAC;QAC5B,YAAY,EAAE,MAAM,CAAC;KACtB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,2BAA2B,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CACpD;AAYD,MAAM,WAAW,yBAAyB;IACxC,0EAA0E;IAC1E,QAAQ,EAAE,OAAO,CAAC;IAClB,yEAAyE;IACzE,MAAM,EAAE,OAAO,CAAC;IAChB,mFAAmF;IACnF,qBAAqB,EAAE,OAAO,CAAC;IAC/B,kFAAkF;IAClF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,YAAY,EACpB,IAAI,GAAE,mBAAiC,GACtC,OAAO,CAAC,yBAAyB,CAAC,CAyFpC"}
|
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Propagation-staleness sensor (focus: "Propagation Staleness Is Invisible").
|
|
3
|
+
*
|
|
4
|
+
* The differential instrument this focus is named for: it computes
|
|
5
|
+
* newest-available MINUS actually-running for a tracked target. Its first (and
|
|
6
|
+
* directly observable) target is the running daemon vs the Gitea npm registry:
|
|
7
|
+
*
|
|
8
|
+
* running = ~/.telora/daemon.meta.json .version (this daemon's own build)
|
|
9
|
+
* newest = the warm version cache .latestVersion (Gitea registry dist-tags.latest,
|
|
10
|
+
* kept fresh by startVersionCacheRefreshLoop)
|
|
11
|
+
*
|
|
12
|
+
* CLOSING the gap, not reporting it. The daemon-version gap is machine-closable:
|
|
13
|
+
* the safe-seam auto-update controller (auto-update.ts) already installs a newer
|
|
14
|
+
* registry version at the next batch-safe idle seam. So when the gap is beyond
|
|
15
|
+
* threshold this sensor DEFERS to that closer -- it does NOT tell a human "the
|
|
16
|
+
* daemon is stale, restart it". Telling a human about a gap the machine is
|
|
17
|
+
* already closing converts machine signal into human chore, and firing on a
|
|
18
|
+
* healthy daemon that is merely deferring to its next safe seam is exactly the
|
|
19
|
+
* failure mode this focus exists to remove.
|
|
20
|
+
*
|
|
21
|
+
* A human is involved ONLY where the machine genuinely cannot act: auto-update
|
|
22
|
+
* is disabled for this daemon (installMode=npx, or --no-auto-update /
|
|
23
|
+
* TELORA_AUTO_UPDATE=0, reflected as autoUpdateEnabled=false in daemon.meta.json).
|
|
24
|
+
* The operator opted out of automation, so the machine cannot close the gap --
|
|
25
|
+
* and even then the deliverable is a READY ACTION handed over (the exact
|
|
26
|
+
* `npm install -g` command + restart), never an inbox item that merely says a
|
|
27
|
+
* gap exists. That handover auto-resolves once the running version catches up,
|
|
28
|
+
* and is retired immediately if auto-update is re-enabled (the machine reclaims
|
|
29
|
+
* closure).
|
|
30
|
+
*
|
|
31
|
+
* Every tick leaves a trace (delegated-to-auto-update / handed-over /
|
|
32
|
+
* back-in-sync / "measured, within threshold" / "UNMEASURED"), so an ABSENT
|
|
33
|
+
* trace positively means "measured and in sync" -- never "not measured". Wedged
|
|
34
|
+
* auto-update (enabled but not running) is made visible by the SEPARATE
|
|
35
|
+
* auto-update decision heartbeat (auto-update.ts): an absent [auto-update] trace
|
|
36
|
+
* identifies a controller that is not running. That is not re-derived here.
|
|
37
|
+
*
|
|
38
|
+
* Pure decision (computeDaemonVersionDifferential / decideStalenessAction) +
|
|
39
|
+
* injected IO, mirroring ci-sensor-loop.ts, so the loop is unit-testable without
|
|
40
|
+
* a live registry or DB. Registered in LOOP_REGISTRY under the opt-out guard
|
|
41
|
+
* TELORA_STALENESS_SENSOR_LOOP.
|
|
42
|
+
*
|
|
43
|
+
* The two infra-owned targets observed 2026-07-24 (npmjs mirror serving a stale
|
|
44
|
+
* version; Opus 5 seed merged-but-maybe-not-applied) are NOT computable from
|
|
45
|
+
* this repo (no prod DB access; infra alone publishes to npmjs). They are
|
|
46
|
+
* recorded, with their operator-facing close action, in
|
|
47
|
+
* docs/runbook-propagation-staleness-targets.md -- the sensor deliberately does
|
|
48
|
+
* NOT attempt those infra actions.
|
|
49
|
+
*
|
|
50
|
+
* @module staleness-sensor
|
|
51
|
+
*/
|
|
52
|
+
import { configForProduct } from './config.js';
|
|
53
|
+
import { readFreshVersionCache } from './staleness.js';
|
|
54
|
+
import { readDaemonMeta } from './daemon-process.js';
|
|
55
|
+
import { isNewerVersion, parseVersionCore } from './version-check.js';
|
|
56
|
+
import { createEscalation, markEscalationResolved } from './queries/issues.js';
|
|
57
|
+
import { callApi } from './queries/shared.js';
|
|
58
|
+
import { ESCALATION_REASONS, ESCALATION_DISPOSITIONS } from '@telora/daemon-core';
|
|
59
|
+
import { createLogger } from './log.js';
|
|
60
|
+
const log = createLogger({ module: 'staleness-sensor' });
|
|
61
|
+
/**
|
|
62
|
+
* escalation_kind for a stale daemon that the machine CANNOT auto-close (auto-update
|
|
63
|
+
* disabled). Carries a ready action, not a bare "gap exists" notice.
|
|
64
|
+
*/
|
|
65
|
+
export const PROPAGATION_STALE_ESCALATION_KIND = 'propagation_stale';
|
|
66
|
+
/** Stable target id for the daemon-vs-registry differential. */
|
|
67
|
+
export const DAEMON_VERSION_TARGET = 'daemon-version';
|
|
68
|
+
/**
|
|
69
|
+
* Default patch-version distance that trips the signal. Any minor/major gap
|
|
70
|
+
* always trips regardless. A 1-2 patch gap is left quiet: auto-update closes it
|
|
71
|
+
* at the next idle seam, so signaling immediately would be noise. The observed
|
|
72
|
+
* failure (0.20.21 vs 0.20.28 = 7 patches) is well past this floor.
|
|
73
|
+
*/
|
|
74
|
+
export const DEFAULT_STALENESS_PATCH_THRESHOLD = 3;
|
|
75
|
+
/** Component-wise (newest - running), clamped at 0 per component. */
|
|
76
|
+
function versionDistance(running, newest) {
|
|
77
|
+
const r = parseVersionCore(running);
|
|
78
|
+
const n = parseVersionCore(newest);
|
|
79
|
+
if (!r || !n)
|
|
80
|
+
return { major: 0, minor: 0, patch: 0 };
|
|
81
|
+
return {
|
|
82
|
+
major: Math.max(0, n[0] - r[0]),
|
|
83
|
+
minor: Math.max(0, n[1] - r[1]),
|
|
84
|
+
patch: Math.max(0, n[2] - r[2]),
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Compute the daemon-vs-registry differential. Returns null when it cannot be
|
|
89
|
+
* MEASURED (either version missing) -- the caller must then emit an explicit
|
|
90
|
+
* "UNMEASURED" trace rather than staying silent, so silence always means "in
|
|
91
|
+
* sync", never "not measured".
|
|
92
|
+
*/
|
|
93
|
+
export function computeDaemonVersionDifferential(running, newest, patchThreshold = DEFAULT_STALENESS_PATCH_THRESHOLD) {
|
|
94
|
+
if (!running || !newest)
|
|
95
|
+
return null;
|
|
96
|
+
const behind = isNewerVersion(newest, running);
|
|
97
|
+
const distance = versionDistance(running, newest);
|
|
98
|
+
const beyondThreshold = behind && (distance.major > 0 || distance.minor > 0 || distance.patch >= patchThreshold);
|
|
99
|
+
return { target: DAEMON_VERSION_TARGET, running, newest, behind, distance, beyondThreshold };
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Pure decision. The pivot is `canMachineClose`: when the auto-update controller
|
|
103
|
+
* owns closing the daemon-version gap, the sensor NEVER hands a human a report --
|
|
104
|
+
* it defers (and retires any stale handover). A human is handed a ready action
|
|
105
|
+
* ONLY when the machine genuinely cannot act. A null differential (unmeasurable)
|
|
106
|
+
* never acts -- it is handled as a trace by the tick.
|
|
107
|
+
*/
|
|
108
|
+
export function decideStalenessAction(diff, hasOpen, canMachineClose) {
|
|
109
|
+
if (!diff)
|
|
110
|
+
return 'none';
|
|
111
|
+
if (diff.beyondThreshold) {
|
|
112
|
+
if (canMachineClose) {
|
|
113
|
+
// Auto-update closes this at the next safe seam. Defer to it. If a stale
|
|
114
|
+
// handover from a prior disabled period is still open, retire it -- the
|
|
115
|
+
// machine has reclaimed closure.
|
|
116
|
+
return hasOpen ? 'resolve' : 'delegate';
|
|
117
|
+
}
|
|
118
|
+
// Machine cannot act (auto-update off / npx). Hand over a ready action once.
|
|
119
|
+
return hasOpen ? 'none' : 'hand-over';
|
|
120
|
+
}
|
|
121
|
+
// Within threshold / in sync: retire any open handover, else stay quiet.
|
|
122
|
+
return hasOpen ? 'resolve' : 'none';
|
|
123
|
+
}
|
|
124
|
+
function formatDistance(d) {
|
|
125
|
+
return `${d.major}.${d.minor}.${d.patch}`;
|
|
126
|
+
}
|
|
127
|
+
/** The exact operator command that closes the gap when the machine cannot. */
|
|
128
|
+
function readyUpdateCommand(newest) {
|
|
129
|
+
return `npm install -g @telora/daemon@${newest} # then restart the daemon`;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Whether the auto-update controller can close the daemon-version gap itself.
|
|
133
|
+
* Mirrors auto-update.ts's own disable conditions: npx-cache installs never
|
|
134
|
+
* update, and --no-auto-update / TELORA_AUTO_UPDATE=0 (surfaced as
|
|
135
|
+
* autoUpdateEnabled=false in daemon.meta.json) opt the operator out.
|
|
136
|
+
*
|
|
137
|
+
* Defaults to true (the closer is opt-out and runs by default) when meta is
|
|
138
|
+
* absent or the field is unstamped, so an unknown state never manufactures a
|
|
139
|
+
* spurious human handover.
|
|
140
|
+
*/
|
|
141
|
+
function defaultCanMachineCloseGap() {
|
|
142
|
+
const meta = readDaemonMeta();
|
|
143
|
+
if (!meta)
|
|
144
|
+
return true;
|
|
145
|
+
if (meta.installMode === 'npx')
|
|
146
|
+
return false;
|
|
147
|
+
return meta.autoUpdateEnabled !== false;
|
|
148
|
+
}
|
|
149
|
+
const OPEN_STATUSES = new Set(['pending', 'in_review']);
|
|
150
|
+
function isOpenPropagationStale(e) {
|
|
151
|
+
if (e.status && !OPEN_STATUSES.has(e.status))
|
|
152
|
+
return false;
|
|
153
|
+
return e.escalationKind === PROPAGATION_STALE_ESCALATION_KIND;
|
|
154
|
+
}
|
|
155
|
+
async function defaultHasOpenStalenessEscalation() {
|
|
156
|
+
const result = await callApi('escalation_list', {
|
|
157
|
+
fields: { statuses: ['pending', 'in_review'] },
|
|
158
|
+
limit: 500,
|
|
159
|
+
});
|
|
160
|
+
return (result.escalations ?? []).some(isOpenPropagationStale);
|
|
161
|
+
}
|
|
162
|
+
async function defaultResolveStalenessEscalations() {
|
|
163
|
+
const result = await callApi('escalation_list', {
|
|
164
|
+
fields: { statuses: ['pending', 'in_review'] },
|
|
165
|
+
limit: 500,
|
|
166
|
+
});
|
|
167
|
+
const open = (result.escalations ?? []).filter(isOpenPropagationStale);
|
|
168
|
+
let resolved = 0;
|
|
169
|
+
for (const e of open) {
|
|
170
|
+
try {
|
|
171
|
+
await markEscalationResolved(e.id, 'Auto-resolved by the daemon: the machine is closing the daemon-version gap ' +
|
|
172
|
+
'(back in sync, or auto-update re-enabled) -- no operator action needed.');
|
|
173
|
+
resolved++;
|
|
174
|
+
}
|
|
175
|
+
catch (err) {
|
|
176
|
+
log.warn(`Failed to resolve propagation_stale escalation ${e.id}: ${err.message}`);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
return resolved;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Hand a human a READY ACTION (not a gap report) for a stale daemon the machine
|
|
183
|
+
* cannot auto-close. The description leads with the exact command to run; the
|
|
184
|
+
* escalation exists to carry the action, not to announce that a gap exists.
|
|
185
|
+
*/
|
|
186
|
+
async function defaultHandOverReadyAction(params) {
|
|
187
|
+
const { diff, readyCommand } = params;
|
|
188
|
+
await createEscalation({
|
|
189
|
+
organizationId: params.organizationId,
|
|
190
|
+
issueId: null,
|
|
191
|
+
reasonType: ESCALATION_REASONS.ERROR_ENCOUNTERED,
|
|
192
|
+
disposition: ESCALATION_DISPOSITIONS.NEEDS_OPERATOR,
|
|
193
|
+
productId: params.productId,
|
|
194
|
+
escalationKind: PROPAGATION_STALE_ESCALATION_KIND,
|
|
195
|
+
description: `Ready action -- update this daemon:\n\n ${readyCommand}\n\n` +
|
|
196
|
+
`Auto-update is disabled on this daemon (running from an npx cache, or ` +
|
|
197
|
+
`--no-auto-update / TELORA_AUTO_UPDATE=0), so the machine cannot close the ` +
|
|
198
|
+
`daemon-version gap itself: running v${diff.running} while the Gitea registry ` +
|
|
199
|
+
`serves v${diff.newest} (behind by ${formatDistance(diff.distance)}). Running the ` +
|
|
200
|
+
`command above closes it. This resolves automatically once the running version ` +
|
|
201
|
+
`catches up, or if auto-update is re-enabled.`,
|
|
202
|
+
metadata: {
|
|
203
|
+
target: diff.target,
|
|
204
|
+
running_version: diff.running,
|
|
205
|
+
newest_version: diff.newest,
|
|
206
|
+
distance: diff.distance,
|
|
207
|
+
ready_command: readyCommand,
|
|
208
|
+
reason: 'auto_update_disabled',
|
|
209
|
+
product_id: params.productId,
|
|
210
|
+
},
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
const defaultDeps = {
|
|
214
|
+
readRunningVersion: () => readDaemonMeta()?.version ?? null,
|
|
215
|
+
readNewestAvailable: () => readFreshVersionCache()?.latestVersion ?? null,
|
|
216
|
+
patchThreshold: DEFAULT_STALENESS_PATCH_THRESHOLD,
|
|
217
|
+
canMachineCloseGap: defaultCanMachineCloseGap,
|
|
218
|
+
hasOpenStalenessEscalation: defaultHasOpenStalenessEscalation,
|
|
219
|
+
handOverReadyAction: defaultHandOverReadyAction,
|
|
220
|
+
resolveStalenessEscalations: defaultResolveStalenessEscalations,
|
|
221
|
+
};
|
|
222
|
+
/**
|
|
223
|
+
* One propagation-staleness sensor tick. Computes the global daemon-vs-registry
|
|
224
|
+
* differential once (the running daemon has a single version). When the gap is
|
|
225
|
+
* beyond threshold the sensor DEFERS to the auto-update controller if that closer
|
|
226
|
+
* is active, and hands a human a ready action ONLY when it is not. Any handover
|
|
227
|
+
* is anchored to the first configured product for inbox visibility (the fact is
|
|
228
|
+
* process-global; all products share one org).
|
|
229
|
+
*
|
|
230
|
+
* Every path emits a trace so an absent signal means "measured and in sync".
|
|
231
|
+
*/
|
|
232
|
+
export async function runStalenessSensorTick(config, deps = defaultDeps) {
|
|
233
|
+
const counts = {
|
|
234
|
+
measured: false,
|
|
235
|
+
behind: false,
|
|
236
|
+
delegatedToAutoUpdate: false,
|
|
237
|
+
handoversToOperator: 0,
|
|
238
|
+
escalationsResolved: 0,
|
|
239
|
+
};
|
|
240
|
+
try {
|
|
241
|
+
const running = deps.readRunningVersion();
|
|
242
|
+
const newest = deps.readNewestAvailable();
|
|
243
|
+
const diff = computeDaemonVersionDifferential(running, newest, deps.patchThreshold);
|
|
244
|
+
if (!diff) {
|
|
245
|
+
// Not measurable this tick -- must NOT be silent (silence means in-sync).
|
|
246
|
+
log.warn(`[staleness] daemon-version differential UNMEASURED ` +
|
|
247
|
+
`(running=${running ?? 'unknown'}, newest=${newest ?? 'unknown'}); ` +
|
|
248
|
+
`cannot compute the propagation gap -- the version cache may not be warm yet.`);
|
|
249
|
+
return counts;
|
|
250
|
+
}
|
|
251
|
+
counts.measured = true;
|
|
252
|
+
counts.behind = diff.behind;
|
|
253
|
+
const anchor = config.products[0];
|
|
254
|
+
if (!anchor) {
|
|
255
|
+
log.info(`[staleness] measured: running v${diff.running} vs newest v${diff.newest} ` +
|
|
256
|
+
`(${diff.behind ? `behind ${formatDistance(diff.distance)}` : 'in sync'}); ` +
|
|
257
|
+
`no product configured to anchor a handover.`);
|
|
258
|
+
return counts;
|
|
259
|
+
}
|
|
260
|
+
const pc = configForProduct(config, anchor);
|
|
261
|
+
const canMachineClose = deps.canMachineCloseGap();
|
|
262
|
+
const hasOpen = await deps.hasOpenStalenessEscalation();
|
|
263
|
+
const action = decideStalenessAction(diff, hasOpen, canMachineClose);
|
|
264
|
+
if (diff.beyondThreshold && canMachineClose) {
|
|
265
|
+
counts.delegatedToAutoUpdate = true;
|
|
266
|
+
}
|
|
267
|
+
if (action === 'hand-over') {
|
|
268
|
+
const readyCommand = readyUpdateCommand(diff.newest);
|
|
269
|
+
await deps.handOverReadyAction({
|
|
270
|
+
organizationId: pc.organizationId,
|
|
271
|
+
productId: pc.productId,
|
|
272
|
+
diff,
|
|
273
|
+
readyCommand,
|
|
274
|
+
});
|
|
275
|
+
counts.handoversToOperator++;
|
|
276
|
+
log.warn(`[staleness] daemon behind registry (running v${diff.running} < newest v${diff.newest}, ` +
|
|
277
|
+
`behind ${formatDistance(diff.distance)}) and auto-update is DISABLED -- the machine ` +
|
|
278
|
+
`cannot close it. Handed over ready action: ${readyCommand}`);
|
|
279
|
+
}
|
|
280
|
+
else if (action === 'delegate') {
|
|
281
|
+
log.info(`[staleness] daemon behind registry (running v${diff.running} < newest v${diff.newest}, ` +
|
|
282
|
+
`behind ${formatDistance(diff.distance)}); auto-update owns closure at the next safe ` +
|
|
283
|
+
`seam -- deferring, no operator action.`);
|
|
284
|
+
}
|
|
285
|
+
else if (action === 'resolve') {
|
|
286
|
+
counts.escalationsResolved += await deps.resolveStalenessEscalations();
|
|
287
|
+
log.info(diff.beyondThreshold
|
|
288
|
+
? `[staleness] auto-update re-enabled while behind (v${diff.running}); the machine now ` +
|
|
289
|
+
`owns closure -- retired the operator handover.`
|
|
290
|
+
: `[staleness] daemon back in sync with registry (v${diff.running}); ` +
|
|
291
|
+
`retired the operator handover.`);
|
|
292
|
+
}
|
|
293
|
+
else {
|
|
294
|
+
// Positive in-sync (or within-threshold) trace: silence must never mean
|
|
295
|
+
// "not measured". This is the heartbeat that makes an absent signal
|
|
296
|
+
// diagnostic.
|
|
297
|
+
log.info(`[staleness] measured: running v${diff.running} vs newest v${diff.newest} -- ` +
|
|
298
|
+
(diff.behind
|
|
299
|
+
? `behind by ${formatDistance(diff.distance)} (within threshold).`
|
|
300
|
+
: 'in sync.'));
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
catch (err) {
|
|
304
|
+
log.warn(`[staleness] tick failed: ${err.message}`);
|
|
305
|
+
}
|
|
306
|
+
return counts;
|
|
307
|
+
}
|
|
308
|
+
//# sourceMappingURL=staleness-sensor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"staleness-sensor.js","sourceRoot":"","sources":["../src/staleness-sensor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAGzD;;;GAGG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,mBAAmB,CAAC;AAErE,gEAAgE;AAChE,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC;AAqBnD,qEAAqE;AACrE,SAAS,eAAe,CAAC,OAAe,EAAE,MAAc;IACtD,MAAM,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACtD,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/B,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KAChC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gCAAgC,CAC9C,OAAsB,EACtB,MAAqB,EACrB,iBAAyB,iCAAiC;IAE1D,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,eAAe,GACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,IAAI,cAAc,CAAC,CAAC;IAC3F,OAAO,EAAE,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;AAC/F,CAAC;AAcD;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAkC,EAClC,OAAgB,EAChB,eAAwB;IAExB,IAAI,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC;IACzB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,IAAI,eAAe,EAAE,CAAC;YACpB,yEAAyE;YACzE,wEAAwE;YACxE,iCAAiC;YACjC,OAAO,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QAC1C,CAAC;QACD,6EAA6E;QAC7E,OAAO,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC;IACxC,CAAC;IACD,yEAAyE;IACzE,OAAO,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;AACtC,CAAC;AAED,SAAS,cAAc,CAAC,CAAkB;IACxC,OAAO,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;AAC5C,CAAC;AAED,8EAA8E;AAC9E,SAAS,kBAAkB,CAAC,MAAc;IACxC,OAAO,iCAAiC,MAAM,8BAA8B,CAAC;AAC/E,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,yBAAyB;IAChC,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;IAC9B,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAC7C,OAAO,IAAI,CAAC,iBAAiB,KAAK,KAAK,CAAC;AAC1C,CAAC;AAUD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;AAExD,SAAS,sBAAsB,CAAC,CAAyB;IACvD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3D,OAAO,CAAC,CAAC,cAAc,KAAK,iCAAiC,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,iCAAiC;IAC9C,MAAM,MAAM,GAAG,MAAM,OAAO,CAA4C,iBAAiB,EAAE;QACzF,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE;QAC9C,KAAK,EAAE,GAAG;KACX,CAAC,CAAC;IACH,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AACjE,CAAC;AAED,KAAK,UAAU,kCAAkC;IAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAA4C,iBAAiB,EAAE;QACzF,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE;QAC9C,KAAK,EAAE,GAAG;KACX,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;IACvE,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,sBAAsB,CAC1B,CAAC,CAAC,EAAE,EACJ,6EAA6E;gBAC3E,yEAAyE,CAC5E,CAAC;YACF,QAAQ,EAAE,CAAC;QACb,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC,EAAE,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAChG,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,0BAA0B,CAAC,MAKzC;IACC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;IACtC,MAAM,gBAAgB,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,kBAAkB,CAAC,iBAAiB;QAChD,WAAW,EAAE,uBAAuB,CAAC,cAAc;QACnD,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,cAAc,EAAE,iCAAiC;QACjD,WAAW,EACT,8CAA8C,YAAY,MAAM;YAChE,wEAAwE;YACxE,4EAA4E;YAC5E,uCAAuC,IAAI,CAAC,OAAO,4BAA4B;YAC/E,WAAW,IAAI,CAAC,MAAM,eAAe,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB;YACnF,gFAAgF;YAChF,8CAA8C;QAChD,QAAQ,EAAE;YACR,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,eAAe,EAAE,IAAI,CAAC,OAAO;YAC7B,cAAc,EAAE,IAAI,CAAC,MAAM;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,aAAa,EAAE,YAAY;YAC3B,MAAM,EAAE,sBAAsB;YAC9B,UAAU,EAAE,MAAM,CAAC,SAAS;SAC7B;KACF,CAAC,CAAC;AACL,CAAC;AAwBD,MAAM,WAAW,GAAwB;IACvC,kBAAkB,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE,EAAE,OAAO,IAAI,IAAI;IAC3D,mBAAmB,EAAE,GAAG,EAAE,CAAC,qBAAqB,EAAE,EAAE,aAAa,IAAI,IAAI;IACzE,cAAc,EAAE,iCAAiC;IACjD,kBAAkB,EAAE,yBAAyB;IAC7C,0BAA0B,EAAE,iCAAiC;IAC7D,mBAAmB,EAAE,0BAA0B;IAC/C,2BAA2B,EAAE,kCAAkC;CAChE,CAAC;AAcF;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAoB,EACpB,OAA4B,WAAW;IAEvC,MAAM,MAAM,GAA8B;QACxC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;QACb,qBAAqB,EAAE,KAAK;QAC5B,mBAAmB,EAAE,CAAC;QACtB,mBAAmB,EAAE,CAAC;KACvB,CAAC;IACF,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,gCAAgC,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAEpF,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,0EAA0E;YAC1E,GAAG,CAAC,IAAI,CACN,qDAAqD;gBACnD,YAAY,OAAO,IAAI,SAAS,YAAY,MAAM,IAAI,SAAS,KAAK;gBACpE,8EAA8E,CACjF,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE5B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CACN,kCAAkC,IAAI,CAAC,OAAO,eAAe,IAAI,CAAC,MAAM,GAAG;gBACzE,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK;gBAC5E,6CAA6C,CAChD,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,EAAE,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAE5C,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QAErE,IAAI,IAAI,CAAC,eAAe,IAAI,eAAe,EAAE,CAAC;YAC5C,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACtC,CAAC;QAED,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3B,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,mBAAmB,CAAC;gBAC7B,cAAc,EAAE,EAAE,CAAC,cAAc;gBACjC,SAAS,EAAE,EAAE,CAAC,SAAS;gBACvB,IAAI;gBACJ,YAAY;aACb,CAAC,CAAC;YACH,MAAM,CAAC,mBAAmB,EAAE,CAAC;YAC7B,GAAG,CAAC,IAAI,CACN,gDAAgD,IAAI,CAAC,OAAO,cAAc,IAAI,CAAC,MAAM,IAAI;gBACvF,UAAU,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,+CAA+C;gBACtF,8CAA8C,YAAY,EAAE,CAC/D,CAAC;QACJ,CAAC;aAAM,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YACjC,GAAG,CAAC,IAAI,CACN,gDAAgD,IAAI,CAAC,OAAO,cAAc,IAAI,CAAC,MAAM,IAAI;gBACvF,UAAU,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,+CAA+C;gBACtF,wCAAwC,CAC3C,CAAC;QACJ,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,CAAC,mBAAmB,IAAI,MAAM,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACvE,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,eAAe;gBAClB,CAAC,CAAC,qDAAqD,IAAI,CAAC,OAAO,qBAAqB;oBACtF,gDAAgD;gBAClD,CAAC,CAAC,mDAAmD,IAAI,CAAC,OAAO,KAAK;oBACpE,gCAAgC,CACrC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,wEAAwE;YACxE,oEAAoE;YACpE,cAAc;YACd,GAAG,CAAC,IAAI,CACN,kCAAkC,IAAI,CAAC,OAAO,eAAe,IAAI,CAAC,MAAM,MAAM;gBAC5E,CAAC,IAAI,CAAC,MAAM;oBACV,CAAC,CAAC,aAAa,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,sBAAsB;oBAClE,CAAC,CAAC,UAAU,CAAC,CAClB,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,4BAA6B,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified-shell.d.ts","sourceRoot":"","sources":["../src/unified-shell.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAMH,OAAO,EACL,KAAK,aAAa,EAMnB,MAAM,qBAAqB,CAAC;AAyC7B,YAAY,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAmFtE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAkBlE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CA8BtE;AAMD;;;;;;;;;;;GAWG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,aAAa,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC,CA2BlB;AAMD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"unified-shell.d.ts","sourceRoot":"","sources":["../src/unified-shell.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAMH,OAAO,EACL,KAAK,aAAa,EAMnB,MAAM,qBAAqB,CAAC;AAyC7B,YAAY,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAmFtE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAkBlE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CA8BtE;AAMD;;;;;;;;;;;GAWG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,aAAa,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC,CA2BlB;AAMD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAidhF"}
|
package/dist/unified-shell.js
CHANGED
|
@@ -658,6 +658,17 @@ export async function runUnifiedDaemon(opts) {
|
|
|
658
658
|
},
|
|
659
659
|
});
|
|
660
660
|
}
|
|
661
|
+
else {
|
|
662
|
+
// Auto-update is off. Emit a distinguishable trace naming which short-circuit
|
|
663
|
+
// fired, so "disabled by config/flag" is never confused with a controller
|
|
664
|
+
// that silently never ran (the invisibility this focus closes). The npx-cache
|
|
665
|
+
// short-circuit logs its own line from inside startAutoUpdateLoop.
|
|
666
|
+
const reason = opts.noAutoUpdate
|
|
667
|
+
? 'the --no-auto-update flag'
|
|
668
|
+
: 'TELORA_AUTO_UPDATE=0 / config autoUpdate.enabled=false';
|
|
669
|
+
log.info(`[auto-update] Disabled by ${reason}; not sampling for updates ` +
|
|
670
|
+
'(version staleness is still tracked via the session-state staleness warning).');
|
|
671
|
+
}
|
|
661
672
|
// -- 13. Keep process alive -----------------------------------------------
|
|
662
673
|
await new Promise(() => { });
|
|
663
674
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified-shell.js","sourceRoot":"","sources":["../src/unified-shell.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"unified-shell.js","sourceRoot":"","sources":["../src/unified-shell.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,7 @@ import { runDeterministicStrategy, type StrategyResult } from './verification-de
|
|
|
26
26
|
export { runDeterministicStrategy, type DeterministicLogContext } from './verification-deterministic.js';
|
|
27
27
|
import { getPendingVerifications, type PendingVerification, type VerificationOutcome } from './queries/verification.js';
|
|
28
28
|
import type { NodeWriteback } from './reality-writeback.js';
|
|
29
|
-
import { type ReconcileTargetsResult, type TargetRestatement, type VerifyEvidence } from './verify-restatement.js';
|
|
29
|
+
import { type ReconcileTargetsResult, type TargetRestatement, type TargetShortfall, type VerifyEvidence } from './verify-restatement.js';
|
|
30
30
|
import { type FileEscalationInput } from './escalations.js';
|
|
31
31
|
import type { DaemonConfig } from './types.js';
|
|
32
32
|
import { type ResolvedDefaultVerification } from './verification-config.js';
|
|
@@ -125,8 +125,24 @@ export interface VerificationDeps {
|
|
|
125
125
|
getFocusDeliveries: typeof getFocusDeliveries;
|
|
126
126
|
/** Failed-run feedback (gate_state + live inject). Optional; defaultDeps provides it. */
|
|
127
127
|
deliverFailureFeedback?: (v: PendingVerification, result: StrategyResult) => Promise<void>;
|
|
128
|
+
/**
|
|
129
|
+
* Shortfall-origin re-work re-entry: route the delivery verify -> verify_failed
|
|
130
|
+
* through the single-writer reconciler (carrying the declared-vs-achieved gap in
|
|
131
|
+
* gate_state under the shortfall guard) so it re-enters bounded re-work instead
|
|
132
|
+
* of a human inbox, and live-inject the gap into a running coding team.
|
|
133
|
+
* Distinct from deliverFailureFeedback so a shortfall hold never reports under
|
|
134
|
+
* the deterministic guard. Optional; defaultDeps provides it (requeueShortfallAsRework).
|
|
135
|
+
*/
|
|
136
|
+
deliverShortfallFeedback?: (v: PendingVerification, shortfalls: readonly TargetShortfall[]) => Promise<void>;
|
|
128
137
|
/** cwd for the HEAD run -- the focus worktree. Optional; dispatch falls back to resolveCwd. */
|
|
129
138
|
resolveVerificationCwd?: (v: PendingVerification) => string;
|
|
139
|
+
/**
|
|
140
|
+
* Count of commits the delivery branch is ahead of the integration base.
|
|
141
|
+
* Used by the evidence-integrity guard to tell a broken diff MEASUREMENT
|
|
142
|
+
* (commits present but diff empty -> hold) from genuine inaction (no commits
|
|
143
|
+
* -> a real shortfall). Optional; defaultDeps resolves it in the focus worktree.
|
|
144
|
+
*/
|
|
145
|
+
resolveCommitsAhead?: (v: PendingVerification) => number;
|
|
130
146
|
/** Baseline-diff attribution; null => no baseline resolvable (gate all). Optional. */
|
|
131
147
|
attributeFailures?: (v: PendingVerification, result: StrategyResult) => Promise<FailureClassification | null>;
|
|
132
148
|
}
|