@telora/daemon 0.22.91 → 0.22.97
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 +6 -3
- package/dist/completion/event-phases.js +5 -5
- package/dist/completion/event-phases.js.map +1 -1
- package/dist/completion/event.d.ts +7 -0
- package/dist/completion/event.d.ts.map +1 -1
- package/dist/completion/event.js.map +1 -1
- package/dist/completion/review-exit-phase.d.ts.map +1 -1
- package/dist/completion/review-exit-phase.js +2 -1
- package/dist/completion/review-exit-phase.js.map +1 -1
- package/dist/delivery/external-hold.js +1 -1
- package/dist/delivery/external-hold.js.map +1 -1
- package/dist/delivery/operator-hold.d.ts +14 -0
- package/dist/delivery/operator-hold.d.ts.map +1 -1
- package/dist/delivery/operator-hold.js +31 -1
- package/dist/delivery/operator-hold.js.map +1 -1
- package/dist/directive/directive-dispatch.js +2 -2
- package/dist/directive/directive-dispatch.js.map +1 -1
- package/dist/directive/directive-executor.d.ts.map +1 -1
- package/dist/directive/directive-executor.js +2 -1
- package/dist/directive/directive-executor.js.map +1 -1
- package/dist/directive/directive-verify-hold-gate.d.ts +32 -8
- package/dist/directive/directive-verify-hold-gate.d.ts.map +1 -1
- package/dist/directive/directive-verify-hold-gate.js +20 -21
- package/dist/directive/directive-verify-hold-gate.js.map +1 -1
- package/dist/focus/focus-engine.d.ts.map +1 -1
- package/dist/focus/focus-engine.js +6 -9
- package/dist/focus/focus-engine.js.map +1 -1
- package/dist/focus/listener-spawn.d.ts +31 -0
- package/dist/focus/listener-spawn.d.ts.map +1 -1
- package/dist/focus/listener-spawn.js +44 -22
- package/dist/focus/listener-spawn.js.map +1 -1
- package/dist/focus/listener.d.ts.map +1 -1
- package/dist/focus/listener.js +4 -0
- package/dist/focus/listener.js.map +1 -1
- package/dist/focus/team-actionable-work.d.ts +76 -20
- package/dist/focus/team-actionable-work.d.ts.map +1 -1
- package/dist/focus/team-actionable-work.js +85 -20
- package/dist/focus/team-actionable-work.js.map +1 -1
- package/dist/nexus/incoming.js +1 -1
- package/dist/nexus/incoming.js.map +1 -1
- package/dist/nexus/pending-returns.d.ts +124 -0
- package/dist/nexus/pending-returns.d.ts.map +1 -0
- package/dist/nexus/pending-returns.js +194 -0
- package/dist/nexus/pending-returns.js.map +1 -0
- package/dist/nexus/return-routing.d.ts +89 -0
- package/dist/nexus/return-routing.d.ts.map +1 -0
- package/dist/nexus/return-routing.js +148 -0
- package/dist/nexus/return-routing.js.map +1 -0
- package/dist/nexus/return.d.ts +66 -89
- package/dist/nexus/return.d.ts.map +1 -1
- package/dist/nexus/return.js +116 -279
- package/dist/nexus/return.js.map +1 -1
- package/dist/prompt/focus-prompt-builder.d.ts.map +1 -1
- package/dist/prompt/focus-prompt-builder.js +1 -0
- package/dist/prompt/focus-prompt-builder.js.map +1 -1
- package/dist/queries/delivery-gate-state.d.ts +23 -0
- package/dist/queries/delivery-gate-state.d.ts.map +1 -1
- package/dist/queries/delivery-gate-state.js +31 -4
- package/dist/queries/delivery-gate-state.js.map +1 -1
- package/dist/queries/focus-discovery.d.ts +7 -1
- package/dist/queries/focus-discovery.d.ts.map +1 -1
- package/dist/queries/focus-discovery.js +9 -3
- package/dist/queries/focus-discovery.js.map +1 -1
- package/dist/queries/requests.d.ts +51 -3
- package/dist/queries/requests.d.ts.map +1 -1
- package/dist/queries/requests.js +63 -10
- package/dist/queries/requests.js.map +1 -1
- package/dist/queries/shared.js +1 -1
- package/dist/queries/verification.d.ts.map +1 -1
- package/dist/queries/verification.js +1 -0
- package/dist/queries/verification.js.map +1 -1
- package/dist/spawn/prompt-assembly.js +1 -1
- package/dist/spawn/prompt-assembly.js.map +1 -1
- package/dist/spawn/respawn-cycle-escalation.d.ts.map +1 -1
- package/dist/spawn/respawn-cycle-escalation.js +11 -3
- package/dist/spawn/respawn-cycle-escalation.js.map +1 -1
- package/dist/spawn/review-hold-park.d.ts +31 -0
- package/dist/spawn/review-hold-park.d.ts.map +1 -0
- package/dist/spawn/review-hold-park.js +120 -0
- package/dist/spawn/review-hold-park.js.map +1 -0
- package/dist/spawn/spawn-cooldown.d.ts +27 -4
- package/dist/spawn/spawn-cooldown.d.ts.map +1 -1
- package/dist/spawn/spawn-cooldown.js +88 -3
- package/dist/spawn/spawn-cooldown.js.map +1 -1
- package/dist/spawn/spawn-decision.d.ts.map +1 -1
- package/dist/spawn/spawn-decision.js +6 -0
- package/dist/spawn/spawn-decision.js.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/update/auto-update-idle.d.ts.map +1 -1
- package/dist/update/auto-update-idle.js +2 -1
- package/dist/update/auto-update-idle.js.map +1 -1
- package/dist/verify/failure-signature.d.ts.map +1 -1
- package/dist/verify/failure-signature.js +1 -0
- package/dist/verify/failure-signature.js.map +1 -1
- package/dist/verify/verification-checkout.d.ts +58 -0
- package/dist/verify/verification-checkout.d.ts.map +1 -0
- package/dist/verify/verification-checkout.js +266 -0
- package/dist/verify/verification-checkout.js.map +1 -0
- package/dist/verify/verification-default-on.d.ts +27 -3
- package/dist/verify/verification-default-on.d.ts.map +1 -1
- package/dist/verify/verification-default-on.js +98 -5
- package/dist/verify/verification-default-on.js.map +1 -1
- package/dist/verify/verification-deps.d.ts +11 -0
- package/dist/verify/verification-deps.d.ts.map +1 -1
- package/dist/verify/verification-deterministic.d.ts +22 -1
- package/dist/verify/verification-deterministic.d.ts.map +1 -1
- package/dist/verify/verification-deterministic.js +6 -7
- package/dist/verify/verification-deterministic.js.map +1 -1
- package/dist/verify/verification-engine.d.ts.map +1 -1
- package/dist/verify/verification-engine.js +10 -8
- package/dist/verify/verification-engine.js.map +1 -1
- package/dist/verify/verification-feedback.d.ts +3 -0
- package/dist/verify/verification-feedback.d.ts.map +1 -1
- package/dist/verify/verification-feedback.js +5 -2
- package/dist/verify/verification-feedback.js.map +1 -1
- package/dist/worktree/verify-interlock.d.ts +9 -1
- package/dist/worktree/verify-interlock.d.ts.map +1 -1
- package/dist/worktree/verify-interlock.js +40 -3
- package/dist/worktree/verify-interlock.js.map +1 -1
- package/package.json +2 -2
package/dist/nexus/return.d.ts
CHANGED
|
@@ -11,19 +11,21 @@
|
|
|
11
11
|
* gate); any other delivery state is a no-op. So merely calling resolve
|
|
12
12
|
* every tick converges the request the moment B's work lands.
|
|
13
13
|
*
|
|
14
|
-
* SOURCE side --
|
|
15
|
-
*
|
|
16
|
-
* its
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
14
|
+
* SOURCE side -- the requesting work that waits on an outgoing request is
|
|
15
|
+
* held while the request is open, released when it closes, and handed back
|
|
16
|
+
* to its team to re-plan when it is declined (reconcileSourceDeliveryGates).
|
|
17
|
+
* WHAT came back -- every return entry and the request's close or decline --
|
|
18
|
+
* reaches the requesting focus as a pending return through
|
|
19
|
+
* nexus/return-routing.ts, which the poll runs right after this pass. (This
|
|
20
|
+
* module used to file a nexus_request_resolved escalation at closure instead;
|
|
21
|
+
* that reached only a later coding spawn and truncated the findings, so it is
|
|
22
|
+
* retired.)
|
|
20
23
|
*
|
|
21
24
|
* shouldResolve is a pure predicate so the gate is unit-testable with no I/O;
|
|
22
|
-
* the side effects (list/resolve/
|
|
25
|
+
* the side effects (list/resolve/gate writes) are injected as deps so the poll
|
|
23
26
|
* wiring is testable with mocks. Mirrors incoming.ts.
|
|
24
27
|
*/
|
|
25
28
|
import type { DaemonConfig } from '../types/index.js';
|
|
26
|
-
import { createEscalation, ESCALATION_DESCRIPTION_MAX } from '../queries/escalations.js';
|
|
27
29
|
import { type DeliveryGateState } from '../queries/deliveries.js';
|
|
28
30
|
import type { ExternalHoldState } from '../queries/deliveries.js';
|
|
29
31
|
/**
|
|
@@ -49,29 +51,6 @@ export interface Req {
|
|
|
49
51
|
/** Contract-fulfillment results carried back by the target's deliver step. */
|
|
50
52
|
findings?: string | null;
|
|
51
53
|
}
|
|
52
|
-
/**
|
|
53
|
-
* The escalation `description` hard cap, defined once in queries/escalations.ts and
|
|
54
|
-
* re-exported for Nexus importers/tests. The producer fits notifications under it
|
|
55
|
-
* (an 8407-char description was once re-submitted 3012 times against a 5000 cap).
|
|
56
|
-
*/
|
|
57
|
-
export { ESCALATION_DESCRIPTION_MAX };
|
|
58
|
-
/**
|
|
59
|
-
* Fit a Nexus source-notification description to the escalation cap. The `head`
|
|
60
|
-
* (prefix + reason + action sentence) is invariant and always kept; only the
|
|
61
|
-
* variable-length `findings` tail is truncated, with a pointer to the full record
|
|
62
|
-
* (the Nexus request) so no content is silently dropped and no write is ever
|
|
63
|
-
* rejected for length. Pure + exported for direct unit testing.
|
|
64
|
-
*/
|
|
65
|
-
export declare function fitNotificationDescription(head: string, findings: string | null | undefined, requestId: string, cap?: number): string;
|
|
66
|
-
/**
|
|
67
|
-
* True when a write error is a DETERMINISTIC rejection -- one that will fail
|
|
68
|
-
* identically on every retry (a hard length cap or a shape/validation reject),
|
|
69
|
-
* as opposed to a transient error (network, 5xx) worth retrying. Matching the
|
|
70
|
-
* length/validation message lets the return loop classify such a rejection
|
|
71
|
-
* permanent on FIRST occurrence and stop re-submitting an impossible write.
|
|
72
|
-
* Pure + exported for direct unit testing.
|
|
73
|
-
*/
|
|
74
|
-
export declare function isDeterministicWriteRejection(err: unknown): boolean;
|
|
75
54
|
/**
|
|
76
55
|
* gate_state written onto a source delivery the Nexus gate pauses. It carries
|
|
77
56
|
* the dashboard "Waiting on" blocker (rendered from `blocking[].guardName`) plus
|
|
@@ -127,35 +106,8 @@ export interface NexusReturnDeps {
|
|
|
127
106
|
getDeliveryStatus: (deliveryId: string) => Promise<string | undefined>;
|
|
128
107
|
/** Ask the server to resolve a request; returns true when it closed the loop. */
|
|
129
108
|
resolveRequest: (requestId: string) => Promise<boolean>;
|
|
130
|
-
/**
|
|
109
|
+
/** EVERY outgoing request for the source product (any status, paged past the API default). */
|
|
131
110
|
listOutgoing: (productId: string) => Promise<Req[]>;
|
|
132
|
-
/** Notify the source side (escalation on the blocked focus) about a terminal state. */
|
|
133
|
-
notifySource: (req: Req) => Promise<void>;
|
|
134
|
-
/**
|
|
135
|
-
* Permanent-failure path: report ONCE that a source notification whose write was
|
|
136
|
-
* rejected DETERMINISTICALLY (hard length cap / validation) is undeliverable --
|
|
137
|
-
* a compact, anchored, under-cap escalation -- rather than re-submitting the
|
|
138
|
-
* impossible write every poll. Optional so existing NexusReturnDeps literals need
|
|
139
|
-
* not supply it; production always does.
|
|
140
|
-
*/
|
|
141
|
-
notifySourceUndeliverable?: (req: Req, reason: string) => Promise<void>;
|
|
142
|
-
/**
|
|
143
|
-
* Permanent-failure path: mark the REQUEST RECORD ITSELF visibly undeliverable
|
|
144
|
-
* (a distinct hold_state on the request, surfaced on the Nexus tab) AND stamp
|
|
145
|
-
* the retry guard atomically -- so a permanently-failed notification is
|
|
146
|
-
* distinguishable from a successfully-delivered one instead of sharing the same
|
|
147
|
-
* source_notified_at stamp. Optional so existing NexusReturnDeps literals need
|
|
148
|
-
* not supply it; production always does. When absent the loop falls back to the
|
|
149
|
-
* plain markSourceNotified stamp (stops the retry storm, but leaves the record
|
|
150
|
-
* indistinguishable -- the pre-fix behaviour).
|
|
151
|
-
*/
|
|
152
|
-
markSourceUndeliverable?: (requestId: string, reason: string) => Promise<void>;
|
|
153
|
-
/** Stamp source_notified_at so the request is not re-notified. */
|
|
154
|
-
markSourceNotified: (requestId: string) => Promise<void>;
|
|
155
|
-
/** Notify the source side that the target requested clarification. */
|
|
156
|
-
notifyClarification: (req: Req) => Promise<void>;
|
|
157
|
-
/** Stamp clarification_notified_at so the same clarification is not re-notified. */
|
|
158
|
-
markClarificationNotified: (requestId: string) => Promise<void>;
|
|
159
111
|
/**
|
|
160
112
|
* Current execution_status + gate_state for every delivery in the source
|
|
161
113
|
* product (one read per poll). The source-gate reconciler keys off these.
|
|
@@ -165,6 +117,12 @@ export interface NexusReturnDeps {
|
|
|
165
117
|
pauseSourceDelivery: (deliveryId: string, gateState: NexusGateState, fromStatus?: string) => Promise<void>;
|
|
166
118
|
/** Daemon-owned transition: re-queue a paused source delivery; gateState replaces the Nexus block (history-only or null). */
|
|
167
119
|
requeueSourceDelivery: (deliveryId: string, fromStatus?: string, gateState?: DeliveryGateState | null) => Promise<void>;
|
|
120
|
+
/**
|
|
121
|
+
* Daemon-owned transition: hand a VERIFY delivery whose external hold named a
|
|
122
|
+
* now-DECLINED request back to its team (verify -> verify_failed) so the work
|
|
123
|
+
* that waited on the request is re-planned. The gate_state replaces the hold.
|
|
124
|
+
*/
|
|
125
|
+
handBackVerifyDelivery: (deliveryId: string, gateState: DeliveryGateState, fromStatus?: string) => Promise<void>;
|
|
168
126
|
/**
|
|
169
127
|
* Declare an irreducibly-external hold on a VERIFY-stage source delivery
|
|
170
128
|
* waiting on an open outgoing request: durable gate_state (re-asserts verify),
|
|
@@ -183,11 +141,20 @@ export interface NexusReturnDeps {
|
|
|
183
141
|
getProductName: (productId: string) => Promise<string | undefined>;
|
|
184
142
|
log?: (msg: string) => void;
|
|
185
143
|
}
|
|
186
|
-
/**
|
|
187
|
-
|
|
144
|
+
/**
|
|
145
|
+
* Pure: the request ids a verify delivery's external hold names while a request
|
|
146
|
+
* is still open -- every open request, PLUS every declined request the current
|
|
147
|
+
* hold already names. Keeping the declined provenance is what stops a decline
|
|
148
|
+
* being forgotten: a declined id never reads as closed, so the hold cannot clear
|
|
149
|
+
* to done around it when the open siblings close, and once nothing is open HAND
|
|
150
|
+
* BACK finds it and returns the work to be re-planned.
|
|
151
|
+
*/
|
|
152
|
+
export declare function verifyHoldRequestIds(openIds: readonly string[], currentHoldIds: readonly string[] | undefined, reqs: readonly Req[]): string[];
|
|
153
|
+
/** Production deps over callApi + the delivery status writer. */
|
|
154
|
+
export declare function defaultNexusReturnDeps(config: DaemonConfig): NexusReturnDeps;
|
|
188
155
|
/**
|
|
189
156
|
* Deps for the auto-deliver pass. Kept SEPARATE from NexusReturnDeps (and its
|
|
190
|
-
* factory) so this
|
|
157
|
+
* factory) so this capability does not grow defaultNexusReturnDeps.
|
|
191
158
|
*/
|
|
192
159
|
export interface NexusAutoDeliverDeps {
|
|
193
160
|
/** in_progress incoming requests whose materialized delivery is done but delivered_at is null. */
|
|
@@ -220,43 +187,53 @@ export declare function autoDeliverCompletedRequests(config: DaemonConfig, deps?
|
|
|
220
187
|
* Poll one product for return-path loop closure. Runs both sides:
|
|
221
188
|
* TARGET -- resolve materialized in_progress incoming requests (server gates
|
|
222
189
|
* on delivery 'done').
|
|
223
|
-
* SOURCE --
|
|
190
|
+
* SOURCE -- hold / release / hand back the requesting work each outgoing
|
|
191
|
+
* request gates. (Returns themselves route through nexus/return-routing.ts.)
|
|
224
192
|
* Each request's work is wrapped in try/catch so one failure does not abort the
|
|
225
193
|
* batch (mirrors nexus-incoming).
|
|
226
194
|
*/
|
|
227
195
|
export declare function checkResolvedRequests(config: DaemonConfig, deps?: NexusReturnDeps): Promise<void>;
|
|
228
196
|
/**
|
|
229
|
-
* Block
|
|
197
|
+
* Block, release and hand back the source deliveries gated by outgoing Nexus
|
|
198
|
+
* requests.
|
|
230
199
|
*
|
|
231
200
|
* Per source delivery (grouped from `outgoing` by sourceDeliveryId):
|
|
232
|
-
* BLOCK
|
|
233
|
-
*
|
|
234
|
-
*
|
|
235
|
-
*
|
|
236
|
-
*
|
|
237
|
-
* DECLARE
|
|
238
|
-
*
|
|
239
|
-
*
|
|
240
|
-
*
|
|
241
|
-
*
|
|
242
|
-
*
|
|
243
|
-
*
|
|
244
|
-
*
|
|
245
|
-
*
|
|
246
|
-
*
|
|
247
|
-
*
|
|
248
|
-
*
|
|
249
|
-
*
|
|
201
|
+
* BLOCK -- a currently-`queued` (actionable) delivery with >=1 non-terminal
|
|
202
|
+
* outgoing request is paused, with gate_state carrying the
|
|
203
|
+
* "Waiting on <target product>" blocker + a nexusBlock provenance
|
|
204
|
+
* marker. `paused` is non-actionable + blocking in the spawn walk,
|
|
205
|
+
* so an armed focus stops spawning a team that cannot do the work.
|
|
206
|
+
* DECLARE -- a `verify`-stage delivery with >=1 non-terminal outgoing request
|
|
207
|
+
* is held by an external-hold gate_state (external-hold.ts) carrying
|
|
208
|
+
* the open request ids, WITHOUT pause/re-queue: its work is finished
|
|
209
|
+
* and merged, so re-queueing would re-open it and coding cannot
|
|
210
|
+
* resolve a cross-repo dependency. The verify->done readers clear it
|
|
211
|
+
* by re-reading the requests' closure -- no escalation, no human act.
|
|
212
|
+
* Idempotent: skipped when the delivery is already held on exactly
|
|
213
|
+
* these request ids. A declined request the hold already names STAYS
|
|
214
|
+
* named while a sibling is open (verifyHoldRequestIds), so the hold
|
|
215
|
+
* cannot clear to done around the decline.
|
|
216
|
+
* HAND BACK -- a `verify` delivery with no open request whose hold names a
|
|
217
|
+
* DECLINED request goes verify -> verify_failed so the work is
|
|
218
|
+
* re-planned (handBackDeclinedVerifyHold).
|
|
219
|
+
* RELEASE -- a `paused` delivery THIS gate paused (nexusBlock provenance) is
|
|
220
|
+
* re-queued (gate_state cleared to its carried history) once ALL its
|
|
221
|
+
* outgoing requests have ended. A closed request released the work;
|
|
222
|
+
* a declined one hands it back to the requesting team to re-plan --
|
|
223
|
+
* either way the delivery is actionable again and the request's
|
|
224
|
+
* pending return (nexus/return-routing.ts) tells the team which.
|
|
225
|
+
* Nothing is left paused with nothing that will clear it.
|
|
250
226
|
*
|
|
251
|
-
* Every gate_state write
|
|
252
|
-
*
|
|
227
|
+
* Every gate_state write carries the verification history of the gate it
|
|
228
|
+
* replaces (carryVerificationHistory).
|
|
253
229
|
*
|
|
254
230
|
* Idempotent: only a `queued` delivery is paused, only a nexus-paused delivery
|
|
255
|
-
* is resumed, only a not-yet-held verify delivery is declared
|
|
256
|
-
*
|
|
257
|
-
*
|
|
258
|
-
*
|
|
259
|
-
* and never aborts the
|
|
231
|
+
* is resumed, only a not-yet-held verify delivery is declared, and a handed-back
|
|
232
|
+
* delivery no longer carries the hold; re-running with the same inputs is a
|
|
233
|
+
* no-op. Never clobbers a delivery a human paused (no nexusBlock marker) or one
|
|
234
|
+
* with no open request. Each delivery's arm runs under the per-delivery
|
|
235
|
+
* try/catch, so a write/read failure holds (never advances) and never aborts the
|
|
236
|
+
* batch.
|
|
260
237
|
*/
|
|
261
238
|
export declare function reconcileSourceDeliveryGates(outgoing: Req[], deps: NexusReturnDeps, log: (msg: string) => void): Promise<void>;
|
|
262
239
|
//# sourceMappingURL=return.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"return.d.ts","sourceRoot":"","sources":["../../src/nexus/return.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"return.d.ts","sourceRoot":"","sources":["../../src/nexus/return.ts"],"names":[],"mappings":"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"}
|