@telora/daemon 0.15.18 → 0.15.23
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 +2 -2
- package/dist/directive-executor.d.ts.map +1 -1
- package/dist/directive-executor.js +23 -1
- package/dist/directive-executor.js.map +1 -1
- package/dist/focus-completion.d.ts.map +1 -1
- package/dist/focus-completion.js +31 -3
- package/dist/focus-completion.js.map +1 -1
- package/dist/focus-engine.d.ts +1 -0
- package/dist/focus-engine.d.ts.map +1 -1
- package/dist/focus-engine.js +57 -0
- package/dist/focus-engine.js.map +1 -1
- package/dist/focus-executor.d.ts.map +1 -1
- package/dist/focus-executor.js +2 -0
- package/dist/focus-executor.js.map +1 -1
- package/dist/focus-loop.d.ts +59 -0
- package/dist/focus-loop.d.ts.map +1 -0
- package/dist/focus-loop.js +231 -0
- package/dist/focus-loop.js.map +1 -0
- package/dist/listener.d.ts.map +1 -1
- package/dist/listener.js +16 -18
- package/dist/listener.js.map +1 -1
- package/dist/queries/focus-cycle-evaluations.d.ts +32 -0
- package/dist/queries/focus-cycle-evaluations.d.ts.map +1 -0
- package/dist/queries/focus-cycle-evaluations.js +25 -0
- package/dist/queries/focus-cycle-evaluations.js.map +1 -0
- package/dist/queries/shared.d.ts.map +1 -1
- package/dist/queries/shared.js +7 -0
- package/dist/queries/shared.js.map +1 -1
- package/dist/queries/verification.d.ts +25 -0
- package/dist/queries/verification.d.ts.map +1 -0
- package/dist/queries/verification.js +20 -0
- package/dist/queries/verification.js.map +1 -0
- package/dist/state-cascade.d.ts +11 -30
- package/dist/state-cascade.d.ts.map +1 -1
- package/dist/state-cascade.js +13 -105
- package/dist/state-cascade.js.map +1 -1
- package/dist/team-prompt-base.d.ts +11 -0
- package/dist/team-prompt-base.d.ts.map +1 -1
- package/dist/team-prompt-base.js +63 -0
- package/dist/team-prompt-base.js.map +1 -1
- package/dist/team-spawner.d.ts.map +1 -1
- package/dist/team-spawner.js +2 -0
- package/dist/team-spawner.js.map +1 -1
- package/dist/types/focus.d.ts +13 -0
- package/dist/types/focus.d.ts.map +1 -1
- package/dist/verification-engine.d.ts +61 -0
- package/dist/verification-engine.d.ts.map +1 -0
- package/dist/verification-engine.js +167 -0
- package/dist/verification-engine.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Focus iteration loop -- the cybernetic control layer for a focus.
|
|
3
|
+
*
|
|
4
|
+
* Differential Focus Spec model: each active focus advances through phases:
|
|
5
|
+
*
|
|
6
|
+
* audit -> realign_crt -> propose_injections -> execute -> gate -> evaluate
|
|
7
|
+
* | |
|
|
8
|
+
* +--------------------- loop on outcome=continue -----------------+
|
|
9
|
+
*
|
|
10
|
+
* The loop layer ADDS to the existing focus engine; it does not replace
|
|
11
|
+
* delivery execution. Per-delivery work continues to flow through the
|
|
12
|
+
* listener; this loop drives focus-level state across iteration cycles.
|
|
13
|
+
*
|
|
14
|
+
* Per project memory: focus.status is human-controlled. The loop does NOT
|
|
15
|
+
* mutate focus.status; on outcome=complete it records the evaluation and
|
|
16
|
+
* lets humans close the loop.
|
|
17
|
+
*
|
|
18
|
+
* @module focus-loop
|
|
19
|
+
*/
|
|
20
|
+
import { getFocusDeliveries as defaultGetFocusDeliveries } from './queries/focuses.js';
|
|
21
|
+
import { createFocusCycleEvaluation, getRecentFocusCycleEvaluation, } from './queries/focus-cycle-evaluations.js';
|
|
22
|
+
const defaultDeps = {
|
|
23
|
+
getFocusDeliveries: defaultGetFocusDeliveries,
|
|
24
|
+
};
|
|
25
|
+
// ---------------------------------------------------------------------------
|
|
26
|
+
// Phase ordering
|
|
27
|
+
// ---------------------------------------------------------------------------
|
|
28
|
+
const PHASE_ORDER = [
|
|
29
|
+
'audit',
|
|
30
|
+
'realign_crt',
|
|
31
|
+
'propose_injections',
|
|
32
|
+
'execute',
|
|
33
|
+
'gate',
|
|
34
|
+
'evaluate',
|
|
35
|
+
];
|
|
36
|
+
/** Decide which phase to run next given the most recent evaluation row. */
|
|
37
|
+
export function nextPhase(prev) {
|
|
38
|
+
if (!prev) {
|
|
39
|
+
return { phase: 'audit', cycleNumber: 1 };
|
|
40
|
+
}
|
|
41
|
+
// After evaluate -> continue, increment cycle and start over at audit.
|
|
42
|
+
// After evaluate -> complete/escalate/blocked, stay on evaluate (terminal
|
|
43
|
+
// until something changes; the dispatcher will keep recording snapshots
|
|
44
|
+
// but they collapse to the existing row via the unique constraint, so we
|
|
45
|
+
// simply re-run the deterministic check and re-emit if it flips).
|
|
46
|
+
if (prev.phase === 'evaluate') {
|
|
47
|
+
if (prev.outcome === 'continue') {
|
|
48
|
+
return { phase: 'audit', cycleNumber: prev.cycle_number + 1 };
|
|
49
|
+
}
|
|
50
|
+
return { phase: 'evaluate', cycleNumber: prev.cycle_number };
|
|
51
|
+
}
|
|
52
|
+
const idx = PHASE_ORDER.indexOf(prev.phase);
|
|
53
|
+
if (idx < 0 || idx === PHASE_ORDER.length - 1) {
|
|
54
|
+
// Defensive: unknown phase -> reset to audit on the same cycle.
|
|
55
|
+
return { phase: 'audit', cycleNumber: prev.cycle_number };
|
|
56
|
+
}
|
|
57
|
+
return { phase: PHASE_ORDER[idx + 1], cycleNumber: prev.cycle_number };
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Audit observable state. Stub: emits 'continue' so the dispatcher advances.
|
|
61
|
+
* Filled in by a downstream delivery that spawns an AI process to compare
|
|
62
|
+
* observable state against the CRT.
|
|
63
|
+
*/
|
|
64
|
+
async function runAuditPhase(_focusId) {
|
|
65
|
+
return {
|
|
66
|
+
outcome: 'continue',
|
|
67
|
+
rationale: 'audit scaffold -- AI-driven observable comparison not yet wired',
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Realign CRT. Stub: emits 'continue'. AI inspection of CRT vs observable
|
|
72
|
+
* lives in delivery 82bdf164 (Drift detection); this phase is the loop's
|
|
73
|
+
* hook for surfacing those updates.
|
|
74
|
+
*/
|
|
75
|
+
async function runRealignCrtPhase(_focusId) {
|
|
76
|
+
return {
|
|
77
|
+
outcome: 'continue',
|
|
78
|
+
rationale: 'realign_crt scaffold -- drift detection (82bdf164) feeds this phase',
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Propose injection adjustments to close CRT-FRT gap. Stub.
|
|
83
|
+
*/
|
|
84
|
+
async function runProposeInjectionsPhase(_focusId) {
|
|
85
|
+
return {
|
|
86
|
+
outcome: 'continue',
|
|
87
|
+
rationale: 'propose_injections scaffold -- AI gap analysis not yet wired',
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Execute deliveries. The existing focus engine listener already drives
|
|
92
|
+
* per-delivery execution; this phase records that execution is in progress
|
|
93
|
+
* and yields back to the listener until the gate phase.
|
|
94
|
+
*/
|
|
95
|
+
async function runExecutePhase(focusId, deps = defaultDeps) {
|
|
96
|
+
const deliveries = await deps.getFocusDeliveries(focusId);
|
|
97
|
+
const counts = countByStatus(deliveries.map(d => d.executionStatus));
|
|
98
|
+
return {
|
|
99
|
+
outcome: 'continue',
|
|
100
|
+
rationale: `execute phase -- delivery listener owns per-delivery work`,
|
|
101
|
+
metadata: { deliveryStatusCounts: counts, deliveryCount: deliveries.length },
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Gate. Returns 'continue' if any delivery still needs human/agent action.
|
|
106
|
+
* Returns 'continue' to evaluate when execution is settled.
|
|
107
|
+
*/
|
|
108
|
+
async function runGatePhase(focusId, deps = defaultDeps) {
|
|
109
|
+
const deliveries = await deps.getFocusDeliveries(focusId);
|
|
110
|
+
const blocking = deliveries.filter(d => isBlockingStatus(d.executionStatus));
|
|
111
|
+
if (blocking.length > 0) {
|
|
112
|
+
return {
|
|
113
|
+
outcome: 'continue',
|
|
114
|
+
rationale: `gate -- ${blocking.length} delivery(s) still active`,
|
|
115
|
+
metadata: {
|
|
116
|
+
blocking: blocking.map(d => ({ id: d.id, name: d.name, status: d.executionStatus })),
|
|
117
|
+
},
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
return {
|
|
121
|
+
outcome: 'continue',
|
|
122
|
+
rationale: 'gate -- all deliveries settled, advancing to evaluate',
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Evaluate. Deterministic check: are we done?
|
|
127
|
+
*
|
|
128
|
+
* - All deliveries in done/verify (or cancelled): outcome candidates depend on
|
|
129
|
+
* downstream state.
|
|
130
|
+
* - Any delivery in done/verify but no injections retired: not yet -- continue
|
|
131
|
+
* (because the focus's FRT goal probably still has live injections; the
|
|
132
|
+
* agent needs to verify them). For MVP, deliveries in 'done' status
|
|
133
|
+
* without verification are treated as 'continue' -- a verification
|
|
134
|
+
* mechanism (delivery a5dbd922) will tighten this.
|
|
135
|
+
* - Any delivery still queued/coding/iterating: 'continue' (work in flight).
|
|
136
|
+
* - All deliveries done/verify with no further work: 'complete'.
|
|
137
|
+
* - All deliveries paused/blocked with no progress: 'blocked'.
|
|
138
|
+
*/
|
|
139
|
+
export async function runEvaluatePhase(focusId, deps = defaultDeps) {
|
|
140
|
+
const deliveries = await deps.getFocusDeliveries(focusId);
|
|
141
|
+
if (deliveries.length === 0) {
|
|
142
|
+
return {
|
|
143
|
+
outcome: 'blocked',
|
|
144
|
+
rationale: 'evaluate -- focus has no deliveries; cannot determine completion',
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
const counts = countByStatus(deliveries.map(d => d.executionStatus));
|
|
148
|
+
const inFlight = deliveries.filter(d => isInFlightStatus(d.executionStatus));
|
|
149
|
+
if (inFlight.length > 0) {
|
|
150
|
+
return {
|
|
151
|
+
outcome: 'continue',
|
|
152
|
+
rationale: `evaluate -- ${inFlight.length} delivery(s) still in flight`,
|
|
153
|
+
metadata: { deliveryStatusCounts: counts },
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
const settled = deliveries.filter(d => isSettledStatus(d.executionStatus));
|
|
157
|
+
if (settled.length === deliveries.length) {
|
|
158
|
+
return {
|
|
159
|
+
outcome: 'complete',
|
|
160
|
+
rationale: 'evaluate -- all deliveries settled (done/verify/cancelled). Awaiting human focus completion.',
|
|
161
|
+
metadata: { deliveryStatusCounts: counts },
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
return {
|
|
165
|
+
outcome: 'blocked',
|
|
166
|
+
rationale: 'evaluate -- deliveries are not in flight and not settled (paused/blocked)',
|
|
167
|
+
metadata: { deliveryStatusCounts: counts },
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
// ---------------------------------------------------------------------------
|
|
171
|
+
// Status classification
|
|
172
|
+
// ---------------------------------------------------------------------------
|
|
173
|
+
const IN_FLIGHT = new Set(['queued', 'coding', 'iterating', 'planning', 'draft', 'in_review']);
|
|
174
|
+
const SETTLED = new Set(['done', 'verify', 'cancelled']);
|
|
175
|
+
function isInFlightStatus(status) {
|
|
176
|
+
return IN_FLIGHT.has(status ?? '');
|
|
177
|
+
}
|
|
178
|
+
function isSettledStatus(status) {
|
|
179
|
+
return SETTLED.has(status ?? '');
|
|
180
|
+
}
|
|
181
|
+
function isBlockingStatus(status) {
|
|
182
|
+
return IN_FLIGHT.has(status ?? '');
|
|
183
|
+
}
|
|
184
|
+
function countByStatus(statuses) {
|
|
185
|
+
const out = {};
|
|
186
|
+
for (const s of statuses) {
|
|
187
|
+
const key = s ?? 'unknown';
|
|
188
|
+
out[key] = (out[key] ?? 0) + 1;
|
|
189
|
+
}
|
|
190
|
+
return out;
|
|
191
|
+
}
|
|
192
|
+
// ---------------------------------------------------------------------------
|
|
193
|
+
// Dispatch
|
|
194
|
+
// ---------------------------------------------------------------------------
|
|
195
|
+
const PHASE_RUNNERS = {
|
|
196
|
+
audit: (focusId) => runAuditPhase(focusId),
|
|
197
|
+
realign_crt: (focusId) => runRealignCrtPhase(focusId),
|
|
198
|
+
propose_injections: (focusId) => runProposeInjectionsPhase(focusId),
|
|
199
|
+
execute: (focusId, deps) => runExecutePhase(focusId, deps),
|
|
200
|
+
gate: (focusId, deps) => runGatePhase(focusId, deps),
|
|
201
|
+
evaluate: (focusId, deps) => runEvaluatePhase(focusId, deps),
|
|
202
|
+
};
|
|
203
|
+
/**
|
|
204
|
+
* Run one tick of the focus loop for a single focus.
|
|
205
|
+
* Reads the most recent evaluation, advances to the next phase, runs it,
|
|
206
|
+
* and persists the outcome. Returns the inserted evaluation row, or null
|
|
207
|
+
* if the loop is on a terminal evaluation row that has not changed.
|
|
208
|
+
*/
|
|
209
|
+
export async function runFocusLoopOnce(focusId, deps = defaultDeps) {
|
|
210
|
+
const prev = await getRecentFocusCycleEvaluation(focusId);
|
|
211
|
+
const { phase, cycleNumber } = nextPhase(prev);
|
|
212
|
+
const runner = PHASE_RUNNERS[phase];
|
|
213
|
+
const result = await runner(focusId, deps);
|
|
214
|
+
// Skip persistence if we'd rewrite the same terminal evaluate row.
|
|
215
|
+
if (prev &&
|
|
216
|
+
prev.phase === 'evaluate' &&
|
|
217
|
+
prev.cycle_number === cycleNumber &&
|
|
218
|
+
prev.phase === phase &&
|
|
219
|
+
prev.outcome === result.outcome) {
|
|
220
|
+
return null;
|
|
221
|
+
}
|
|
222
|
+
return await createFocusCycleEvaluation({
|
|
223
|
+
focusId,
|
|
224
|
+
cycleNumber,
|
|
225
|
+
phase,
|
|
226
|
+
outcome: result.outcome,
|
|
227
|
+
rationale: result.rationale,
|
|
228
|
+
metadata: result.metadata,
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
//# sourceMappingURL=focus-loop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"focus-loop.js","sourceRoot":"","sources":["../src/focus-loop.ts"],"names":[],"mappings":"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"}
|
package/dist/listener.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listener.d.ts","sourceRoot":"","sources":["../src/listener.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,YAAY,CAAC;AAkD1D;;GAEG;AACH,wBAAsB,YAAY,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"listener.d.ts","sourceRoot":"","sources":["../src/listener.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,YAAY,CAAC;AAkD1D;;GAEG;AACH,wBAAsB,YAAY,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA4D5E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CA6C5C;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAO3C;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAqHzD;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAuEhE;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAoIxD;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAMnD;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAUlD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAGnC"}
|
package/dist/listener.js
CHANGED
|
@@ -62,8 +62,9 @@ export async function initListener(daemonConfig) {
|
|
|
62
62
|
// (the user clicked Review, the team was supposed to spawn, the
|
|
63
63
|
// pending-spawn map was wiped on restart). Without this skip, the
|
|
64
64
|
// directive sees the seeded stage as already processed and never
|
|
65
|
-
// fires -- leaving the
|
|
66
|
-
//
|
|
65
|
+
// fires -- leaving the focus stuck in `reviewing` indefinitely
|
|
66
|
+
// because nothing else routes in_review deliveries to a terminal
|
|
67
|
+
// status.
|
|
67
68
|
let seededCount = 0;
|
|
68
69
|
let skippedReviewCount = 0;
|
|
69
70
|
for (const product of daemonConfig.products) {
|
|
@@ -125,24 +126,21 @@ export function startDeliveryListener() {
|
|
|
125
126
|
}
|
|
126
127
|
await processReadyFocuses();
|
|
127
128
|
await checkAndMergeCompletedDeliveries(config);
|
|
128
|
-
// checkDirectives
|
|
129
|
-
//
|
|
130
|
-
//
|
|
131
|
-
//
|
|
132
|
-
//
|
|
133
|
-
// done/iterating when phase=reviewing AND no team is active. If the
|
|
134
|
-
// cascade runs first on a freshly-reviewing focus, the team hasn't
|
|
135
|
-
// had a chance to spawn -- we'd silently route the deliveries past
|
|
136
|
-
// the user-requested review. The state-cascade.ts top-of-file
|
|
137
|
-
// comment explicitly documents this ordering requirement.
|
|
129
|
+
// checkDirectives runs syncFocusPhase (writing
|
|
130
|
+
// focus.current_workflow_stage_id) and fires stage-change directives
|
|
131
|
+
// -- including the spawn directive that starts the review team on
|
|
132
|
+
// entry to the `reviewing` phase. Run it before the cascade so phase
|
|
133
|
+
// and directive state are settled when the cascade reads them.
|
|
138
134
|
await checkDirectives(config);
|
|
139
|
-
//
|
|
140
|
-
//
|
|
141
|
-
//
|
|
142
|
-
// deliveries are all in_review). Must run before runCascadeChecks
|
|
143
|
-
// so the spawned team is registered as active before the cascade
|
|
144
|
-
// runs checkReviewCompletion.
|
|
135
|
+
// Pick up focuses that have a pending spawn directive but weren't
|
|
136
|
+
// surfaced by getReadyFocuses (e.g., review-stage spawns on focuses
|
|
137
|
+
// whose deliveries are all in_review).
|
|
145
138
|
await processPendingSpawnFocuses();
|
|
139
|
+
// The cascade no longer auto-completes reviews -- closing out a
|
|
140
|
+
// review and routing in_review deliveries to done/iterating is the
|
|
141
|
+
// exclusive responsibility of focus-completion.ts's review exit
|
|
142
|
+
// handler, which gates on the exiting team's sessionType === 'review'
|
|
143
|
+
// (positive signal that an actual review ran).
|
|
146
144
|
await runCascadeChecks(config);
|
|
147
145
|
await checkResolvedMergeConflicts(config);
|
|
148
146
|
await detectGitStates(config);
|
package/dist/listener.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listener.js","sourceRoot":"","sources":["../src/listener.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,kCAAkC,EAAE,MAAM,4BAA4B,CAAC;AAC1G,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,kBAAkB,EAAE,cAAc,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAC;AAC1I,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC3G,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,0EAA0E;AAC1E,iFAAiF;AACjF,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE5C,IAAI,MAAM,GAAwB,IAAI,CAAC;AACvC,MAAM,KAAK,GAA2B,IAAI,GAAG,EAAE,CAAC;AAChD,IAAI,YAAY,GAA0C,IAAI,CAAC;AAS/D,IAAI,SAAS,GAAc,MAAM,CAAC;AAElC,yDAAyD;AACzD,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAE/B,kEAAkE;AAClE,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;AAC7D,IAAI,kBAAkB,GAAG,CAAC,CAAC;AAE3B,mFAAmF;AACnF,IAAI,8BAA8B,GAAG,CAAC,CAAC;AACvC,MAAM,4BAA4B,GAAG,EAAE,CAAC,CAAC,qCAAqC;AAE9E,uEAAuE;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,YAA0B;IAC3D,MAAM,GAAG,YAAY,CAAC;IAEtB,iBAAiB;IACjB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC5D,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,IAAI,cAAc,CAAC,CAAC;QAEhD,4DAA4D;QAC5D,oEAAoE;QACpE,EAAE;QACF,4DAA4D;QAC5D,iEAAiE;QACjE,gEAAgE;QAChE,kEAAkE;QAClE,iEAAiE;QACjE,uDAAuD;QACvD,qDAAqD;QACrD,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,KAAK,MAAM,OAAO,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC;YAC5C,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;gBAChF,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC5B,IAAI,CAAC,KAAK,CAAC,yBAAyB;wBAAE,SAAS;oBAC/C,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;wBAC9B,kBAAkB,EAAE,CAAC;wBACrB,SAAS;oBACX,CAAC;oBACD,sBAAsB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,yBAAyB,CAAC,CAAC;oBACxE,WAAW,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,0DAA0D,OAAO,CAAC,EAAE,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAClH,CAAC;QACH,CAAC;QACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,kDAAkD,WAAW,iBAAiB,CAAC,CAAC;QAC9F,CAAC;QACD,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,kCAAkC,kBAAkB,kEAAkE,CAAC,CAAC;QACtI,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,GAAG,GAAI,KAAe,CAAC,OAAO,IAAI,EAAE,CAAC;QAC3C,IAAI,GAAG,CAAC,QAAQ,CAAC,oDAAoD,CAAC,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CACb,0FAA0F;kBACxF,0FAA0F;kBAC1F,0FAA0F;kBAC1F,+DAA+D,CAClE,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,gBAAgB;IAChB,mBAAmB,EAAE,CAAC;IAEtB,0EAA0E;IAC1E,uEAAuE;IACvE,uEAAuE;IACvE,YAAY,GAAG,YAAY,CAAC,KAAK,IAAI,EAAE;QACrC,KAAK,MAAM,OAAO,IAAI,MAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,MAAM,EAAE,GAAG,gBAAgB,CAAC,MAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,MAAM,oBAAoB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACtC,MAAM,0BAA0B,CAAC,EAAE,CAAC,CAAC;YACrC,MAAM,wBAAwB,CAAC,EAAE,CAAC,CAAC;YACnC,MAAM,wBAAwB,CAAC,EAAE,CAAC,CAAC;YACnC,MAAM,kCAAkC,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,mBAAmB,EAAE,CAAC;QAC5B,MAAM,gCAAgC,CAAC,MAAO,CAAC,CAAC;QAChD,oEAAoE;QACpE,oEAAoE;QACpE,iEAAiE;QACjE,kDAAkD;QAClD,+DAA+D;QAC/D,oEAAoE;QACpE,mEAAmE;QACnE,mEAAmE;QACnE,8DAA8D;QAC9D,0DAA0D;QAC1D,MAAM,eAAe,CAAC,MAAO,CAAC,CAAC;QAC/B,iEAAiE;QACjE,wDAAwD;QACxD,8DAA8D;QAC9D,kEAAkE;QAClE,iEAAiE;QACjE,8BAA8B;QAC9B,MAAM,0BAA0B,EAAE,CAAC;QACnC,MAAM,gBAAgB,CAAC,MAAO,CAAC,CAAC;QAChC,MAAM,2BAA2B,CAAC,MAAO,CAAC,CAAC;QAC3C,MAAM,eAAe,CAAC,MAAO,CAAC,CAAC;QAC/B,MAAM,iBAAiB,CAAC,MAAO,CAAC,CAAC;QACjC,MAAM,kBAAkB,EAAE,CAAC;IAC7B,CAAC,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;IAEnC,OAAO,CAAC,GAAG,CAAC,gCAAgC,gBAAgB,GAAG,IAAI,IAAI,CAAC,CAAC;AAC3E,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAClC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,yEAAyE;IACzE,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,IAAI,CAAC,MAAM;QAAE,OAAO;IAEpB,6EAA6E;IAC7E,IAAI,SAAS,KAAK,YAAY,IAAI,SAAS,KAAK,aAAa,EAAE,CAAC;QAC9D,OAAO;IACT,CAAC;IACD,SAAS,GAAG,YAAY,CAAC;IAEzB,IAAI,CAAC;QACH,sDAAsD;QACtD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,GAAG,yBAAyB,EAAE,CAAC;YAChE,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBAC5D,KAAK,CAAC,KAAK,EAAE,CAAC;gBACd,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;oBAC5B,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC3B,CAAC;gBACD,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,qCAAqC,KAAK,CAAC,IAAI,gBAAgB,CAAC,CAAC;YAC/E,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,6CAA8C,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;QAED,iEAAiE;QACjE,cAAc,EAAE,CAAC;QAEjB,+DAA+D;QAC/D,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAE7D,wEAAwE;QACxE,wDAAwD;QAExD,mDAAmD;QACnD,MAAM,YAAY,GAAgD,EAAE,CAAC;QACrE,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;gBACzE,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,wDAAwD,OAAO,CAAC,EAAE,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAChH,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEjE,iEAAiE;QACjE,8DAA8D;QAC9D,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9F,MAAM,WAAW,GAAG,gBAAgB,GAAG,IAAI,CAAC;gBAC5C,OAAO,CAAC,GAAG,CAAC,iCAAiC,OAAO,+CAA+C,WAAW,GAAG,CAAC,CAAC;gBACnH,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;YAC7C,CAAC,CAAC,WAAW,MAAM,CAAC,QAAQ,CAAC,MAAM,aAAa;YAChD,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,SAAS,YAAY,CAAC,MAAM,iBAAiB,YAAY,EAAE,CAAC,CAAC;QAEzE,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,uBAAuB,KAAK,CAAC,sBAAsB,EAAE,CAAC,CAAC;gBACrE,SAAS;YACX,CAAC;YAED,yDAAyD;YACzD,IAAI,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,yEAAyE;gBACzE,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACzC,SAAS;YACX,CAAC;YAED,kEAAkE;YAClE,IAAI,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtC,SAAS;YACX,CAAC;YAED,uBAAuB;YACvB,IAAI,kBAAkB,EAAE,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBACpD,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;gBACrD,MAAM;YACR,CAAC;YAED,8DAA8D;YAC9D,+DAA+D;YAC/D,yDAAyD;YACzD,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtD,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAEzC,kEAAkE;YAClE,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1F,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAEnF,0CAA0C;YAC1C,MAAM,cAAc,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,eAAe,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,mBAAmB,EAAE,KAAK,CAAC,sBAAsB,EAAE,CAAC,CAAC;YAE/N,sEAAsE;YACtE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC/C,MAAM,WAAW,GAAG,gBAAgB,GAAG,IAAI,CAAC;gBAC5C,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,CAAC,UAAU,qEAAqE,WAAW,GAAG,CAAC,CAAC;gBAClJ,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;YAAS,CAAC;QACT,SAAS,GAAG,8BAA8B,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC;IAC1E,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B;IAC9C,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,IAAI,oBAAoB,EAAE;QAAE,OAAO;IAEnC,MAAM,UAAU,GAAG,uBAAuB,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9E,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEpC,oEAAoE;IACpE,6CAA6C;IAC7C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAgE,CAAC;IACjG,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1E,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CACV,qFAAqF,OAAO,CAAC,EAAE,KAAM,GAAa,CAAC,OAAO,EAAE,CAC7H,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,UAAU,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CACV,gDAAgD,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,sCAAsC;gBACzG,0DAA0D,CAC3D,CAAC;YACF,SAAS;QACX,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CACV,gDAAgD,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,UAAU,oCAAoC;gBAC7H,iBAAiB,CAClB,CAAC;YACF,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CACV,gDAAgD,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,UAAU,8BAA8B,KAAK,CAAC,sBAAsB,IAAI;gBACvJ,iBAAiB,CAClB,CAAC;YACF,SAAS;QACX,CAAC;QACD,IAAI,kBAAkB,EAAE,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACpD,OAAO,CAAC,GAAG,CAAC,wEAAwE,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;YACzG,MAAM;QACR,CAAC;QAED,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1F,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAEnF,OAAO,CAAC,GAAG,CACT,uCAAuC,KAAK,CAAC,UAAU,gCAAgC;YACvF,qDAAqD,CACtD,CAAC;QACF,MAAM,cAAc,CAAC;YACnB,MAAM,EAAE,WAAW;YACnB,OAAO,EAAE,KAAK,CAAC,QAAQ;YACvB,SAAS,EAAE,KAAK,CAAC,UAAU;YAC3B,IAAI;YACJ,cAAc,EAAE,KAAK,CAAC,eAAe;YACrC,QAAQ,EAAE,KAAK,CAAC,SAAS;YACzB,mBAAmB,EAAE,IAAI;SAC1B,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;IAEnD,8DAA8D;IAC9D,wEAAwE;IACxE,IAAI,8BAA8B,GAAG,CAAC,EAAE,CAAC;QACvC,wDAAwD;QACxD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,8BAA8B,EAAE,4BAA4B,CAAC,CAAC;QAC1F,8BAA8B,EAAE,CAAC;QACjC,IAAI,8BAA8B,GAAG,UAAU,KAAK,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,kBAAkB;QAC5B,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,2BAA2B,8BAA8B,yCAAyC,UAAU,UAAU,CAAC,CAAC;IACtI,CAAC;IAED,2DAA2D;IAC3D,MAAM,cAAc,GAAkD,EAAE,CAAC;IACzE,IAAI,CAAC;QACH,KAAK,MAAM,OAAO,IAAI,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACrD,cAAc,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;QACnC,CAAC;QACD,2BAA2B;QAC3B,IAAI,8BAA8B,GAAG,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,iDAAiD,8BAA8B,WAAW,CAAC,CAAC;YACxG,8BAA8B,GAAG,CAAC,CAAC;YACnC,SAAS,GAAG,MAAM,CAAC;QACrB,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,8BAA8B,EAAE,CAAC;QACjC,SAAS,GAAG,aAAa,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,sDAAsD,8BAA8B,MAAO,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACjI,OAAO;IACT,CAAC;IAED,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,qBAAqB,cAAc,CAAC,MAAM,2CAA2C,CAAC,CAAC;IAEnG,gEAAgE;IAChE,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5C,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;QACxC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,8DAA8D;QAC9D,IAAI,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACtC,SAAS;QACX,CAAC;QAED,iEAAiE;QACjE,qEAAqE;QACrE,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC;QAC1D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,qDAAqD;YACrD,SAAS;QACX,CAAC;QACD,MAAM,YAAY,GAAG,GAAG,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;QACzD,IAAI,YAAY,GAAG,eAAe,EAAE,CAAC;YACnC,SAAS;QACX,CAAC;QAED,+DAA+D;QAC/D,gEAAgE;QAChE,oEAAoE;QACpE,EAAE;QACF,4EAA4E;QAC5E,4EAA4E;QAC5E,6EAA6E;QAC7E,iFAAiF;QACjF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACxB,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,oCAAoC;gBAC1D,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;gBACzC,MAAM,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACtD,OAAO,CAAC,IAAI,CACV,oBAAoB,OAAO,CAAC,EAAE,kCAAkC,GAAG,uCAAuC;oBAC1G,WAAW,OAAO,CAAC,QAAQ,IAAI,MAAM,qBAAqB,eAAe,GAAG,CAC7E,CAAC;gBACF,SAAS;YACX,CAAC;YAAC,MAAM,CAAC;gBACP,0EAA0E;YAC5E,CAAC;QACH,CAAC;QAED,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACjC,OAAO,CAAC,IAAI,CACV,uCAAuC,OAAO,CAAC,EAAE,GAAG;YACpD,WAAW,OAAO,CAAC,MAAM,SAAS,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK;YACtE,SAAS,OAAO,CAAC,QAAQ,IAAI,MAAM,cAAc,OAAO,CAAC,WAAW,IAAI,MAAM,GAAG,CAClF,CAAC;IACJ,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,oBAAoB,eAAe,CAAC,MAAM,gCAAgC,CAAC,CAAC;IAExF,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,UAAU,CAC5C,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAC9B,SAAS,CACP,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE;QAC7B,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,gEAAgE;QAC7E,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACnC,CAAC,EACF,EAAE,WAAW,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAC5E,CACF,CACF,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CACX,mCAAmC,eAAe,CAAC,CAAC,CAAC,eAAgB,MAAM,CAAC,MAAgB,CAAC,OAAO,EAAE,CACvG,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,2BAA2B,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,IAAI,YAAY,EAAE,CAAC;QACjB,aAAa,CAAC,YAAY,CAAC,CAAC;QAC5B,YAAY,GAAG,IAAI,CAAC;IACtB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,IAAI,CAAC,MAAM;QAAE,OAAO;IAEpB,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC5D,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAChC,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,IAAI,cAAc,CAAC,CAAC;AACrD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY;IAC1B,IAAI,oBAAoB,EAAE;QAAE,OAAO;IACnC,mBAAmB,EAAE,CAAC;AACxB,CAAC;AAED,mFAAmF;AACnF,6EAA6E;AAC7E,6FAA6F;AAC7F,qFAAqF;AACrF,0FAA0F;AAC1F,yFAAyF"}
|
|
1
|
+
{"version":3,"file":"listener.js","sourceRoot":"","sources":["../src/listener.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Focus cycle evaluation queries (Differential Focus Spec).
|
|
3
|
+
*
|
|
4
|
+
* Read/insert focus_cycle_evaluations rows -- the per-phase outcome trail
|
|
5
|
+
* for the focus iteration loop.
|
|
6
|
+
*/
|
|
7
|
+
export type FocusPhase = 'audit' | 'realign_crt' | 'propose_injections' | 'execute' | 'gate' | 'evaluate';
|
|
8
|
+
export type FocusPhaseOutcome = 'continue' | 'complete' | 'escalate' | 'blocked';
|
|
9
|
+
export interface FocusCycleEvaluation {
|
|
10
|
+
id: string;
|
|
11
|
+
focus_id: string;
|
|
12
|
+
cycle_number: number;
|
|
13
|
+
phase: FocusPhase;
|
|
14
|
+
outcome: FocusPhaseOutcome;
|
|
15
|
+
rationale: string | null;
|
|
16
|
+
metadata: Record<string, unknown> | null;
|
|
17
|
+
created_at: string;
|
|
18
|
+
}
|
|
19
|
+
interface CreateFocusCycleEvaluationInput {
|
|
20
|
+
focusId: string;
|
|
21
|
+
cycleNumber: number;
|
|
22
|
+
phase: FocusPhase;
|
|
23
|
+
outcome: FocusPhaseOutcome;
|
|
24
|
+
rationale?: string;
|
|
25
|
+
metadata?: Record<string, unknown>;
|
|
26
|
+
}
|
|
27
|
+
/** Insert one phase tick. Idempotent on (focusId, cycleNumber, phase). */
|
|
28
|
+
export declare function createFocusCycleEvaluation(input: CreateFocusCycleEvaluationInput): Promise<FocusCycleEvaluation>;
|
|
29
|
+
/** Fetch the most recent evaluation for a focus, or null if none exist. */
|
|
30
|
+
export declare function getRecentFocusCycleEvaluation(focusId: string): Promise<FocusCycleEvaluation | null>;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=focus-cycle-evaluations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"focus-cycle-evaluations.d.ts","sourceRoot":"","sources":["../../src/queries/focus-cycle-evaluations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,MAAM,UAAU,GAClB,OAAO,GACP,aAAa,GACb,oBAAoB,GACpB,SAAS,GACT,MAAM,GACN,UAAU,CAAC;AAEf,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;AAEjF,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,+BAA+B;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,0EAA0E;AAC1E,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,oBAAoB,CAAC,CAa/B;AAED,2EAA2E;AAC3E,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAMtC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Focus cycle evaluation queries (Differential Focus Spec).
|
|
3
|
+
*
|
|
4
|
+
* Read/insert focus_cycle_evaluations rows -- the per-phase outcome trail
|
|
5
|
+
* for the focus iteration loop.
|
|
6
|
+
*/
|
|
7
|
+
import { callApi } from './shared.js';
|
|
8
|
+
/** Insert one phase tick. Idempotent on (focusId, cycleNumber, phase). */
|
|
9
|
+
export async function createFocusCycleEvaluation(input) {
|
|
10
|
+
const response = await callApi('daemon_create_focus_cycle_evaluation', {
|
|
11
|
+
focusId: input.focusId,
|
|
12
|
+
cycleNumber: input.cycleNumber,
|
|
13
|
+
phase: input.phase,
|
|
14
|
+
outcome: input.outcome,
|
|
15
|
+
...(input.rationale ? { rationale: input.rationale } : {}),
|
|
16
|
+
...(input.metadata ? { metadata: input.metadata } : {}),
|
|
17
|
+
});
|
|
18
|
+
return response.evaluation;
|
|
19
|
+
}
|
|
20
|
+
/** Fetch the most recent evaluation for a focus, or null if none exist. */
|
|
21
|
+
export async function getRecentFocusCycleEvaluation(focusId) {
|
|
22
|
+
const response = await callApi('daemon_get_recent_focus_cycle_evaluation', { focusId });
|
|
23
|
+
return response.evaluation ?? null;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=focus-cycle-evaluations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"focus-cycle-evaluations.js","sourceRoot":"","sources":["../../src/queries/focus-cycle-evaluations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAgCtC,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,KAAsC;IAEtC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,sCAAsC,EACtC;QACE,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CACF,CAAC;IACF,OAAO,QAAQ,CAAC,UAAU,CAAC;AAC7B,CAAC;AAED,2EAA2E;AAC3E,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,OAAe;IAEf,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,0CAA0C,EAC1C,EAAE,OAAO,EAAE,CACZ,CAAC;IACF,OAAO,QAAQ,CAAC,UAAU,IAAI,IAAI,CAAC;AACrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/queries/shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EACL,cAAc,EAEd,eAAe,EACf,cAAc,EAEf,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC;AA0B3C,QAAA,MAAM,eAAe;;;;;CAyBX,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/queries/shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EACL,cAAc,EAEd,eAAe,EACf,cAAc,EAEf,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC;AA0B3C,QAAA,MAAM,eAAe;;;;;CAyBX,CAAC;AA2FX;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,eAAe,CAE9D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAIvD;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,YAAY,CAKxC;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzD;AAED;;;GAGG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAC7B,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACnC,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EACpB,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACnC,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACnC,OAAO,CAAC,CAAC,CAAC,CAEZ"}
|
package/dist/queries/shared.js
CHANGED
|
@@ -106,6 +106,13 @@ const actionToConcern = {
|
|
|
106
106
|
focus_merge_list: 'polling',
|
|
107
107
|
// Product claiming (startup, one-shot)
|
|
108
108
|
daemon_claim_product: 'heartbeat',
|
|
109
|
+
// Focus iteration loop (Differential Focus Spec)
|
|
110
|
+
daemon_create_focus_cycle_evaluation: 'activity',
|
|
111
|
+
daemon_get_recent_focus_cycle_evaluation: 'polling',
|
|
112
|
+
// Pluggable delivery verification (Differential Focus Spec)
|
|
113
|
+
daemon_get_pending_verifications: 'polling',
|
|
114
|
+
daemon_record_delivery_verification_outcome: 'activity',
|
|
115
|
+
reality_tree_verify_injection: 'activity',
|
|
109
116
|
};
|
|
110
117
|
/**
|
|
111
118
|
* Resolve the concern name for a given API action.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/queries/shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EACL,cAAc,EACd,eAAe,EACf,eAAe,EACf,cAAc,GAEf,MAAM,qBAAqB,CAAC;AAE7B,8EAA8E;AAC9E,uEAAuE;AACvE,8EAA8E;AAE9E,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC;AAE3C,8EAA8E;AAC9E,+BAA+B;AAC/B,8EAA8E;AAC9E,oEAAoE;AACpE,iFAAiF;AAEjF,qCAAqC;AACrC,EAAE;AACF,wEAAwE;AACxE,+EAA+E;AAC/E,sEAAsE;AACtE,EAAE;AACF,0EAA0E;AAC1E,8EAA8E;AAC9E,qEAAqE;AACrE,EAAE;AACF,8EAA8E;AAC9E,+DAA+D;AAC/D,kDAAkD;AAClD,EAAE;AACF,4EAA4E;AAC5E,2DAA2D;AAC3D,sEAAsE;AAEtE,MAAM,eAAe,GAAG;IACtB,SAAS,EAAE,IAAI,cAAc,CAAC;QAC5B,gBAAgB,EAAE,CAAC;QACnB,UAAU,EAAE,KAAK;QACjB,aAAa,EAAE,MAAM;QACrB,KAAK,EAAE,WAAW;KACnB,CAAC;IACF,OAAO,EAAE,IAAI,cAAc,CAAC;QAC1B,gBAAgB,EAAE,CAAC;QACnB,UAAU,EAAE,KAAK;QACjB,aAAa,EAAE,MAAM;QACrB,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,QAAQ,EAAE,IAAI,cAAc,CAAC;QAC3B,gBAAgB,EAAE,CAAC;QACnB,UAAU,EAAE,KAAK;QACjB,aAAa,EAAE,MAAM;QACrB,KAAK,EAAE,UAAU;KAClB,CAAC;IACF,QAAQ,EAAE,IAAI,cAAc,CAAC;QAC3B,gBAAgB,EAAE,CAAC;QACnB,UAAU,EAAE,KAAK;QACjB,aAAa,EAAE,MAAM;QACrB,KAAK,EAAE,UAAU;KAClB,CAAC;CACM,CAAC;AAIX;;;GAGG;AACH,MAAM,eAAe,GAA0C;IAC7D,oBAAoB;IACpB,gBAAgB,EAAE,WAAW;IAC7B,iBAAiB,EAAE,WAAW;IAE9B,yCAAyC;IACzC,wBAAwB,EAAE,SAAS;IACnC,yBAAyB,EAAE,SAAS;IACpC,eAAe,EAAE,SAAS;IAC1B,0BAA0B,EAAE,SAAS;IACrC,oCAAoC,EAAE,SAAS;IAC/C,0BAA0B,EAAE,UAAU;IACtC,yBAAyB,EAAE,UAAU;IAErC,yDAAyD;IACzD,qBAAqB,EAAE,UAAU;IACjC,qBAAqB,EAAE,UAAU;IACjC,0BAA0B,EAAE,UAAU;IACtC,+BAA+B,EAAE,UAAU;IAC3C,6BAA6B,EAAE,UAAU;IACzC,uBAAuB,EAAE,UAAU;IACnC,0BAA0B,EAAE,UAAU;IACtC,yBAAyB,EAAE,UAAU;IAErC,2EAA2E;IAC3E,sBAAsB,EAAE,UAAU;IAClC,sBAAsB,EAAE,UAAU;IAClC,oBAAoB,EAAE,SAAS;IAE/B,yEAAyE;IACzE,gCAAgC,EAAE,SAAS;IAC3C,gCAAgC,EAAE,UAAU;IAE5C,gDAAgD;IAChD,0BAA0B,EAAE,UAAU;IACtC,8BAA8B,EAAE,SAAS;IAEzC,qCAAqC;IACrC,yBAAyB,EAAE,UAAU;IACrC,gBAAgB,EAAE,SAAS;IAE3B,uCAAuC;IACvC,oBAAoB,EAAE,WAAW;
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/queries/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pluggable verification queries (Differential Focus Spec).
|
|
3
|
+
*
|
|
4
|
+
* - Fetch deliveries in verify status that need verification.
|
|
5
|
+
* - Record the outcome of a verification attempt.
|
|
6
|
+
* - Trigger the existing reality_tree_verify_injection compound op on pass.
|
|
7
|
+
*/
|
|
8
|
+
export type VerificationMethod = 'deterministic' | 'behavioral' | 'ai_inspection' | 'human';
|
|
9
|
+
export type VerificationOutcome = 'pending' | 'passed' | 'failed' | 'escalated';
|
|
10
|
+
export interface PendingVerification {
|
|
11
|
+
deliveryId: string;
|
|
12
|
+
deliveryName: string;
|
|
13
|
+
productId: string | null;
|
|
14
|
+
focusId: string | null;
|
|
15
|
+
injectionNodeId: string;
|
|
16
|
+
verificationMethod: VerificationMethod;
|
|
17
|
+
verificationConfig: Record<string, unknown> | null;
|
|
18
|
+
verificationOutcome: VerificationOutcome | null;
|
|
19
|
+
verificationLastRunAt: string | null;
|
|
20
|
+
}
|
|
21
|
+
export declare function getPendingVerifications(productId?: string): Promise<PendingVerification[]>;
|
|
22
|
+
export declare function recordDeliveryVerificationOutcome(deliveryId: string, outcome: VerificationOutcome): Promise<void>;
|
|
23
|
+
/** Compound op: retires the injection and promotes its FRT overlay to CRT. */
|
|
24
|
+
export declare function verifyInjectionOnPass(injectionNodeId: string): Promise<void>;
|
|
25
|
+
//# sourceMappingURL=verification.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../src/queries/verification.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,YAAY,GAAG,eAAe,GAAG,OAAO,CAAC;AAC5F,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;AAEhF,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACnD,mBAAmB,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAChD,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,wBAAsB,uBAAuB,CAC3C,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAMhC;AAED,wBAAsB,iCAAiC,CACrD,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,8EAA8E;AAC9E,wBAAsB,qBAAqB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pluggable verification queries (Differential Focus Spec).
|
|
3
|
+
*
|
|
4
|
+
* - Fetch deliveries in verify status that need verification.
|
|
5
|
+
* - Record the outcome of a verification attempt.
|
|
6
|
+
* - Trigger the existing reality_tree_verify_injection compound op on pass.
|
|
7
|
+
*/
|
|
8
|
+
import { callApi } from './shared.js';
|
|
9
|
+
export async function getPendingVerifications(productId) {
|
|
10
|
+
const response = await callApi('daemon_get_pending_verifications', productId ? { productId } : {});
|
|
11
|
+
return response.items ?? [];
|
|
12
|
+
}
|
|
13
|
+
export async function recordDeliveryVerificationOutcome(deliveryId, outcome) {
|
|
14
|
+
await callApi('daemon_record_delivery_verification_outcome', { deliveryId, outcome });
|
|
15
|
+
}
|
|
16
|
+
/** Compound op: retires the injection and promotes its FRT overlay to CRT. */
|
|
17
|
+
export async function verifyInjectionOnPass(injectionNodeId) {
|
|
18
|
+
await callApi('reality_tree_verify_injection', { injectionNodeId });
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=verification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verification.js","sourceRoot":"","sources":["../../src/queries/verification.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAiBtC,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,SAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,kCAAkC,EAClC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAC/B,CAAC;IACF,OAAO,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,UAAkB,EAClB,OAA4B;IAE5B,MAAM,OAAO,CAAC,6CAA6C,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;AACxF,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,eAAuB;IACjE,MAAM,OAAO,CAAC,+BAA+B,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC;AACtE,CAAC"}
|
package/dist/state-cascade.d.ts
CHANGED
|
@@ -2,28 +2,32 @@
|
|
|
2
2
|
* Deterministic state cascade engine.
|
|
3
3
|
*
|
|
4
4
|
* Operates on the focus EXECUTION PHASE axis (derived from delivery
|
|
5
|
-
* aggregate via deriveFocusPhase).
|
|
5
|
+
* aggregate via deriveFocusPhase). Two behaviors live here:
|
|
6
6
|
*
|
|
7
7
|
* 1. Auto-review: phase === 'verifying' + pipelineConfig.review.enabled
|
|
8
8
|
* -> set review_requested_at and transition verify deliveries to
|
|
9
9
|
* in_review. The phase will become 'reviewing' on the next
|
|
10
10
|
* syncFocusPhase poll.
|
|
11
11
|
*
|
|
12
|
-
* 2.
|
|
13
|
-
* all in_review deliveries pass (no open work issues)
|
|
14
|
-
* -> deliveries -> done, clear review_requested_at.
|
|
15
|
-
*
|
|
16
|
-
* 3. Stale review clearing: review_requested_at set but a delivery has
|
|
12
|
+
* 2. Stale review clearing: review_requested_at set but a delivery has
|
|
17
13
|
* regressed back to active work -> clear review_requested_at so the
|
|
18
14
|
* user can request a fresh review when verify is reached again.
|
|
19
15
|
*
|
|
16
|
+
* Review completion is NOT auto-routed here. Closing out a review and
|
|
17
|
+
* routing in_review deliveries to done/iterating is the exclusive
|
|
18
|
+
* responsibility of focus-completion.ts's review exit handler, which
|
|
19
|
+
* gates on the exiting team's sessionType === 'review' (a positive
|
|
20
|
+
* signal that an actual review ran). If the review team never spawns
|
|
21
|
+
* or never exits cleanly, the focus stays in `reviewing` phase until a
|
|
22
|
+
* human intervenes -- silent auto-completion would mask a missing
|
|
23
|
+
* review and violate the asymmetric correction principle.
|
|
24
|
+
*
|
|
20
25
|
* The "deliveries all reach verify -> focus advances" cascade and focus
|
|
21
26
|
* phase regression are handled by syncFocusPhase in directive-executor.ts;
|
|
22
27
|
* they no longer live here.
|
|
23
28
|
*/
|
|
24
29
|
import type { DaemonConfig, PipelineConfig, Workflow } from './types.js';
|
|
25
30
|
import type { FocusDeliveryInfo } from './types.js';
|
|
26
|
-
import { type WorkflowWithDirectives } from './queries/focuses.js';
|
|
27
31
|
import { type FocusExecutionPhase } from './focus-phase.js';
|
|
28
32
|
/** Injectable dependencies for cascade functions (testing). */
|
|
29
33
|
export interface CascadeDeps {
|
|
@@ -31,14 +35,7 @@ export interface CascadeDeps {
|
|
|
31
35
|
setReviewRequestedAt: (focusId: string, isoTimestamp: string) => Promise<void>;
|
|
32
36
|
clearReviewRequestedAt: (focusId: string) => Promise<void>;
|
|
33
37
|
fetchEffectiveWorkflow: (deliveryId: string) => Promise<Workflow>;
|
|
34
|
-
fetchFocusWorkflow: (focusId: string) => Promise<WorkflowWithDirectives>;
|
|
35
38
|
updateDeliveryStatus: (deliveryId: string, status: string, stageId?: string | null) => Promise<void>;
|
|
36
|
-
getDeliveryIssues: (deliveryId: string) => Promise<Array<{
|
|
37
|
-
id: string;
|
|
38
|
-
title: string;
|
|
39
|
-
status: string;
|
|
40
|
-
issueType: string;
|
|
41
|
-
}>>;
|
|
42
39
|
}
|
|
43
40
|
/**
|
|
44
41
|
* When a focus reaches the verifying phase and pipelineConfig.review is
|
|
@@ -48,22 +45,6 @@ export interface CascadeDeps {
|
|
|
48
45
|
* directive.
|
|
49
46
|
*/
|
|
50
47
|
export declare function checkAutoReview(focusId: string, phase: FocusExecutionPhase, pipelineConfig: PipelineConfig | null, reviewRequestedAt: string | null, deliveries: FocusDeliveryInfo[], deps?: CascadeDeps): Promise<void>;
|
|
51
|
-
/**
|
|
52
|
-
* When a focus is in the reviewing phase but no review team is running,
|
|
53
|
-
* route each in_review delivery to its outcome and clear
|
|
54
|
-
* review_requested_at:
|
|
55
|
-
* - delivery has open work issues -> iterating (a team will pick it up)
|
|
56
|
-
* - delivery has none -> done
|
|
57
|
-
*
|
|
58
|
-
* Only fires when the focus's workflow has a `reviewing` stage with a
|
|
59
|
-
* populated agent_directive -- i.e., when a review was structurally
|
|
60
|
-
* possible. If the workflow can't review (missing stage, missing
|
|
61
|
-
* directive), we refuse to auto-complete: silently routing deliveries
|
|
62
|
-
* past a review the user explicitly requested would mask the
|
|
63
|
-
* misconfiguration. The user gets a loud warn in the daemon log instead
|
|
64
|
-
* of a phantom "review completed" outcome.
|
|
65
|
-
*/
|
|
66
|
-
export declare function checkReviewCompletion(focusId: string, phase: FocusExecutionPhase, deliveries: FocusDeliveryInfo[], deps?: CascadeDeps): Promise<void>;
|
|
67
48
|
/**
|
|
68
49
|
* If a focus has review_requested_at set but a delivery has reverted to
|
|
69
50
|
* active work, the prior review request is stale -- clear it so the user
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-cascade.d.ts","sourceRoot":"","sources":["../src/state-cascade.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"state-cascade.d.ts","sourceRoot":"","sources":["../src/state-cascade.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAapD,OAAO,EAAoB,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE9E,+DAA+D;AAC/D,MAAM,WAAW,WAAW;IAC1B,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACtE,oBAAoB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,sBAAsB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClE,oBAAoB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtG;AAUD;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,mBAAmB,EAC1B,cAAc,EAAE,cAAc,GAAG,IAAI,EACrC,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,UAAU,EAAE,iBAAiB,EAAE,EAC/B,IAAI,GAAE,WAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAwCf;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,mBAAmB,EAC1B,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,IAAI,GAAE,WAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAqBf;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAsC1E"}
|