@telora/daemon 0.13.27 → 0.13.29
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/branch-status.d.ts +2 -2
- package/dist/branch-status.d.ts.map +1 -1
- package/dist/branch-status.js +4 -6
- package/dist/branch-status.js.map +1 -1
- package/dist/directive-executor.d.ts +1 -0
- package/dist/directive-executor.d.ts.map +1 -1
- package/dist/directive-executor.js +9 -6
- package/dist/directive-executor.js.map +1 -1
- package/dist/pm-engine.d.ts +42 -13
- package/dist/pm-engine.d.ts.map +1 -1
- package/dist/pm-engine.js +306 -43
- package/dist/pm-engine.js.map +1 -1
- package/dist/pm-process.d.ts +45 -0
- package/dist/pm-process.d.ts.map +1 -0
- package/dist/pm-process.js +191 -0
- package/dist/pm-process.js.map +1 -0
- package/dist/pm-prompt-builder.d.ts +23 -0
- package/dist/pm-prompt-builder.d.ts.map +1 -0
- package/dist/pm-prompt-builder.js +64 -0
- package/dist/pm-prompt-builder.js.map +1 -0
- package/dist/strategy-executor.js +1 -1
- package/dist/strategy-executor.js.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/pm.d.ts +53 -0
- package/dist/types/pm.d.ts.map +1 -0
- package/dist/types/pm.js +10 -0
- package/dist/types/pm.js.map +1 -0
- package/package.json +1 -1
package/build-info.json
CHANGED
package/dist/branch-status.d.ts
CHANGED
|
@@ -22,8 +22,8 @@ export interface IntegrationBranchStatus {
|
|
|
22
22
|
export interface RemoteBranchStatus {
|
|
23
23
|
ref: string;
|
|
24
24
|
label: string;
|
|
25
|
-
aheadOfMain: number;
|
|
26
|
-
behindMain: number;
|
|
25
|
+
aheadOfMain: number | null;
|
|
26
|
+
behindMain: number | null;
|
|
27
27
|
}
|
|
28
28
|
export interface StrategyBranchStatus {
|
|
29
29
|
strategyId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch-status.d.ts","sourceRoot":"","sources":["../src/branch-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAK/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAkBhE,gDAAgD;AAChD,wBAAgB,sBAAsB,IAAI,IAAI,CAG7C;AAID,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"branch-status.d.ts","sourceRoot":"","sources":["../src/branch-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAK/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAkBhE,gDAAgD;AAChD,wBAAgB,sBAAsB,IAAI,IAAI,CAG7C;AAID,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAC5C,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,UAAU,EAAE,oBAAoB,EAAE,CAAC;CACpC;AAED,kDAAkD;AAClD,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACvC;AAuBD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,mBAAmB,CAiJ5G"}
|
package/dist/branch-status.js
CHANGED
|
@@ -104,17 +104,15 @@ export function computeBranchStatus(config, options) {
|
|
|
104
104
|
remotes.push(entry);
|
|
105
105
|
}
|
|
106
106
|
else {
|
|
107
|
-
// Ref doesn't exist — use cached if available, otherwise
|
|
107
|
+
// Ref doesn't exist — use cached if available, otherwise emit grey sentinel
|
|
108
108
|
const cached = lastGoodRemoteStatus.get(monitor.ref);
|
|
109
|
-
|
|
110
|
-
remotes.push(cached);
|
|
109
|
+
remotes.push(cached ?? { ref: monitor.ref, label: monitor.label, aheadOfMain: null, behindMain: null });
|
|
111
110
|
}
|
|
112
111
|
}
|
|
113
112
|
catch {
|
|
114
|
-
// Non-fatal: use cached status if available
|
|
113
|
+
// Non-fatal: use cached status if available, otherwise emit grey sentinel
|
|
115
114
|
const cached = lastGoodRemoteStatus.get(monitor.ref);
|
|
116
|
-
|
|
117
|
-
remotes.push(cached);
|
|
115
|
+
remotes.push(cached ?? { ref: monitor.ref, label: monitor.label, aheadOfMain: null, behindMain: null });
|
|
118
116
|
}
|
|
119
117
|
}
|
|
120
118
|
// Evict remote cache entries for monitors no longer configured
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch-status.js","sourceRoot":"","sources":["../src/branch-status.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"branch-status.js","sourceRoot":"","sources":["../src/branch-status.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ export declare function getLastProcessedStages(): ReadonlyMap<string, string>;
|
|
|
19
19
|
export interface PendingSpawnDirective {
|
|
20
20
|
message: string;
|
|
21
21
|
model: string | null;
|
|
22
|
+
sessionType: 'coding' | 'review';
|
|
22
23
|
}
|
|
23
24
|
/**
|
|
24
25
|
* Consume a pending spawn directive for a strategy.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directive-executor.d.ts","sourceRoot":"","sources":["../src/directive-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAI/D,OAAO,yBAAyB,CAAC;AAgBjC,6EAA6E;AAC7E,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAEhF;AAED,2DAA2D;AAC3D,wBAAgB,sBAAsB,IAAI,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAEpE;AAID;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"directive-executor.d.ts","sourceRoot":"","sources":["../src/directive-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAI/D,OAAO,yBAAyB,CAAC;AAgBjC,6EAA6E;AAC7E,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAEhF;AAED,2DAA2D;AAC3D,wBAAgB,sBAAsB,IAAI,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAEpE;AAID;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,QAAQ,GAAG,QAAQ,CAAC;CAClC;AAID;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CAMlG;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEpE;AAID;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,cAAc,EACzB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B,OAAO,CAAC,MAAM,CAAC,CA4CjB;AAuID;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiEzE"}
|
|
@@ -104,14 +104,15 @@ export async function assembleDirectiveContent(config, strategyId, directive, wo
|
|
|
104
104
|
* inject mode: sends /compact + assembled context + prompt to the active team's stdin.
|
|
105
105
|
* spawn mode: terminates the current team, assembles directive content, stores for respawn.
|
|
106
106
|
*/
|
|
107
|
-
async function executeDirective(config, strategyId, directive, strategyWorkflowStageId) {
|
|
107
|
+
async function executeDirective(config, strategyId, directive, strategyWorkflowStageId, stageName) {
|
|
108
108
|
console.log(`[directive-executor] Executing ${directive.execution} directive for strategy ${strategyId.slice(0, 8)} ` +
|
|
109
109
|
`(stage ${strategyWorkflowStageId.slice(0, 8)})`);
|
|
110
|
+
const sessionType = stageName === 'in_review' ? 'review' : 'coding';
|
|
110
111
|
if (directive.execution === 'inject') {
|
|
111
|
-
await executeInjectDirective(config, strategyId, directive);
|
|
112
|
+
await executeInjectDirective(config, strategyId, directive, sessionType);
|
|
112
113
|
}
|
|
113
114
|
else if (directive.execution === 'spawn') {
|
|
114
|
-
await executeSpawnDirective(config, strategyId, directive);
|
|
115
|
+
await executeSpawnDirective(config, strategyId, directive, sessionType);
|
|
115
116
|
}
|
|
116
117
|
else {
|
|
117
118
|
console.warn(`[directive-executor] Unknown execution mode "${directive.execution}" for strategy ${strategyId.slice(0, 8)}`);
|
|
@@ -120,7 +121,7 @@ async function executeDirective(config, strategyId, directive, strategyWorkflowS
|
|
|
120
121
|
/**
|
|
121
122
|
* Inject mode: send /compact + assembled context + prompt to the active team's stdin.
|
|
122
123
|
*/
|
|
123
|
-
async function executeInjectDirective(config, strategyId, directive) {
|
|
124
|
+
async function executeInjectDirective(config, strategyId, directive, sessionType = 'coding') {
|
|
124
125
|
const activeTeams = getActiveTeams();
|
|
125
126
|
const team = activeTeams.get(strategyId);
|
|
126
127
|
if (!team || !team.leadStdin) {
|
|
@@ -134,6 +135,7 @@ async function executeInjectDirective(config, strategyId, directive) {
|
|
|
134
135
|
pendingSpawnDirectives.set(strategyId, {
|
|
135
136
|
message,
|
|
136
137
|
model: directive.model ?? null,
|
|
138
|
+
sessionType,
|
|
137
139
|
});
|
|
138
140
|
return;
|
|
139
141
|
}
|
|
@@ -155,7 +157,7 @@ async function executeInjectDirective(config, strategyId, directive) {
|
|
|
155
157
|
* Spawn mode: terminate the current team, assemble directive content,
|
|
156
158
|
* and store it for the next spawn cycle to deliver.
|
|
157
159
|
*/
|
|
158
|
-
async function executeSpawnDirective(config, strategyId, directive) {
|
|
160
|
+
async function executeSpawnDirective(config, strategyId, directive, sessionType = 'coding') {
|
|
159
161
|
const activeTeams = getActiveTeams();
|
|
160
162
|
const team = activeTeams.get(strategyId);
|
|
161
163
|
const worktreePath = team?.worktreePath ?? null;
|
|
@@ -166,6 +168,7 @@ async function executeSpawnDirective(config, strategyId, directive) {
|
|
|
166
168
|
pendingSpawnDirectives.set(strategyId, {
|
|
167
169
|
message,
|
|
168
170
|
model: directive.model ?? null,
|
|
171
|
+
sessionType,
|
|
169
172
|
});
|
|
170
173
|
// If a team was recently spawned (within last 60s), it likely already
|
|
171
174
|
// received this directive via the pending spawn directive mechanism.
|
|
@@ -228,7 +231,7 @@ export async function checkDirectives(config) {
|
|
|
228
231
|
}
|
|
229
232
|
console.log(`[directive-executor] Strategy "${strategy.strategy_name}" entered stage "${stage.name}" -- ` +
|
|
230
233
|
`executing ${stage.agentDirective.execution} directive`);
|
|
231
|
-
await executeDirective(pc, strategy.strategy_id, stage.agentDirective, currentStageId);
|
|
234
|
+
await executeDirective(pc, strategy.strategy_id, stage.agentDirective, currentStageId, stage.name);
|
|
232
235
|
}
|
|
233
236
|
catch (err) {
|
|
234
237
|
// Update tracking even on error to avoid retry loops
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directive-executor.js","sourceRoot":"","sources":["../src/directive-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAwB,MAAM,sBAAsB,CAAC;AACnF,gDAAgD;AAChD,OAAO,yBAAyB,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEvF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,oEAAoE;AAEpE;;;GAGG;AACH,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEtD,6EAA6E;AAC7E,MAAM,UAAU,sBAAsB,CAAC,UAAkB,EAAE,OAAe;IACxE,mBAAmB,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,sBAAsB;IACpC,OAAO,mBAAmB,CAAC;AAC7B,CAAC;
|
|
1
|
+
{"version":3,"file":"directive-executor.js","sourceRoot":"","sources":["../src/directive-executor.ts"],"names":[],"mappings":"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"}
|
package/dist/pm-engine.d.ts
CHANGED
|
@@ -1,28 +1,35 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* PMEngine -- ExecutionEngine adapter for the PM (Project Manager)
|
|
2
|
+
* PMEngine -- ExecutionEngine adapter for the PM (Project Manager) engine.
|
|
3
3
|
*
|
|
4
|
-
* The PM engine
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* The PM engine now serves dual roles:
|
|
5
|
+
* 1. Process supervision: Spawns a persistent Claude Code session per product
|
|
6
|
+
* that runs /loop for its PM cycle (report generation, inbox, action plan).
|
|
7
|
+
* 2. Risk monitoring: Polls risk states and dependencies (unchanged from before).
|
|
7
8
|
*
|
|
8
9
|
* Lifecycle (called by the process shell):
|
|
9
10
|
* 1. init(config) -- validate config, initialize API client
|
|
10
|
-
* 2. recoverFromCrash() --
|
|
11
|
-
* 3. start() -- begin
|
|
11
|
+
* 2. recoverFromCrash() -- detect orphaned PM sessions, restart
|
|
12
|
+
* 3. start() -- spawn PM processes, begin risk poll loop
|
|
12
13
|
* 4. stop() -- clear intervals, set shutting-down flag
|
|
13
|
-
* 5. shutdown() --
|
|
14
|
+
* 5. shutdown() -- terminate PM processes gracefully
|
|
14
15
|
*/
|
|
15
16
|
import type { ExecutionEngine, EngineHealth, ResourceUsage, BaseConfig, ResourceGovernor } from '@telora/daemon-core';
|
|
16
17
|
export declare class PMEngine implements ExecutionEngine {
|
|
17
18
|
readonly name = "pm";
|
|
18
19
|
/** Daemon config, set during init(). */
|
|
19
20
|
private config;
|
|
20
|
-
/**
|
|
21
|
+
/** Resource governor for slot management. */
|
|
21
22
|
private governor;
|
|
22
|
-
/**
|
|
23
|
+
/** PM process-specific configuration. */
|
|
24
|
+
private pmProcessConfig;
|
|
25
|
+
/** Poll cadence configuration (for risk monitoring). */
|
|
23
26
|
private pollCadence;
|
|
24
27
|
/** Active poll timeout handle (for adaptive interval). */
|
|
25
28
|
private pollTimeout;
|
|
29
|
+
/** Session status poll interval handle. */
|
|
30
|
+
private sessionPollInterval;
|
|
31
|
+
/** Pending restart timeouts (for backoff). */
|
|
32
|
+
private restartTimeouts;
|
|
26
33
|
/** Whether the engine is shutting down. */
|
|
27
34
|
private shuttingDown;
|
|
28
35
|
/** Count of active (non-resolved, non-draft) risks from last scan. */
|
|
@@ -43,6 +50,32 @@ export declare class PMEngine implements ExecutionEngine {
|
|
|
43
50
|
shutdown(): Promise<void>;
|
|
44
51
|
healthCheck(): EngineHealth;
|
|
45
52
|
getResourceUsage(): ResourceUsage;
|
|
53
|
+
/**
|
|
54
|
+
* Poll pm_sessions.status for each product and spawn/terminate PM processes
|
|
55
|
+
* accordingly. This allows runtime control of the PM agent via UI toggle
|
|
56
|
+
* or MCP tool without requiring a daemon restart.
|
|
57
|
+
*
|
|
58
|
+
* - status=active && no process running → spawn
|
|
59
|
+
* - status=stopped/paused && process running → terminate
|
|
60
|
+
* - no session → no action (user hasn't started PM yet)
|
|
61
|
+
*/
|
|
62
|
+
private pollSessionStatuses;
|
|
63
|
+
/**
|
|
64
|
+
* Set up monitoring for a PM process. When it exits, attempt restart
|
|
65
|
+
* with exponential backoff. Also triggers a health restart when the
|
|
66
|
+
* process exceeds maxSessionAgeMs.
|
|
67
|
+
*/
|
|
68
|
+
private setupProcessMonitor;
|
|
69
|
+
/**
|
|
70
|
+
* Handle PM process exit -- check session status before scheduling restart.
|
|
71
|
+
* Only restarts if the session is still active. If stopped/paused, the
|
|
72
|
+
* exit is intentional and no restart is scheduled.
|
|
73
|
+
*/
|
|
74
|
+
private handleProcessExit;
|
|
75
|
+
/** Restart count tracking (simple in-memory map). */
|
|
76
|
+
private restartCounts;
|
|
77
|
+
private getRestartCount;
|
|
78
|
+
private incrementRestartCount;
|
|
46
79
|
/**
|
|
47
80
|
* Run a single poll cycle: scan dependencies, correlate mitigation, log results.
|
|
48
81
|
*/
|
|
@@ -53,10 +86,6 @@ export declare class PMEngine implements ExecutionEngine {
|
|
|
53
86
|
private pollProduct;
|
|
54
87
|
/**
|
|
55
88
|
* Create communication drafts for high-urgency follow-up actions.
|
|
56
|
-
*
|
|
57
|
-
* Only drafts for 'high' urgency actions with a 'send_followup' recommendation.
|
|
58
|
-
* Drafts are stored via the API with status='draft' for human approval.
|
|
59
|
-
* Returns the number of drafts successfully created.
|
|
60
89
|
*/
|
|
61
90
|
private createFollowupDrafts;
|
|
62
91
|
/**
|
package/dist/pm-engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pm-engine.d.ts","sourceRoot":"","sources":["../src/pm-engine.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"pm-engine.d.ts","sourceRoot":"","sources":["../src/pm-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,aAAa,EACb,UAAU,EACV,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AA0D7B,qBAAa,QAAS,YAAW,eAAe;IAC9C,QAAQ,CAAC,IAAI,QAAQ;IAErB,wCAAwC;IACxC,OAAO,CAAC,MAAM,CAA6B;IAE3C,6CAA6C;IAC7C,OAAO,CAAC,QAAQ,CAAiC;IAEjD,yCAAyC;IACzC,OAAO,CAAC,eAAe,CAA8C;IAErE,wDAAwD;IACxD,OAAO,CAAC,WAAW,CAA2C;IAE9D,0DAA0D;IAC1D,OAAO,CAAC,WAAW,CAA8C;IAEjE,2CAA2C;IAC3C,OAAO,CAAC,mBAAmB,CAA+C;IAE1E,8CAA8C;IAC9C,OAAO,CAAC,eAAe,CAAoD;IAE3E,2CAA2C;IAC3C,OAAO,CAAC,YAAY,CAAS;IAE7B,sEAAsE;IACtE,OAAO,CAAC,eAAe,CAAK;IAE5B,gDAAgD;IAChD,OAAO,CAAC,UAAU,CAAqB;IAEvC,2DAA2D;IAC3D,OAAO,CAAC,cAAc,CAAgB;IAEtC,8CAA8C;IAC9C,OAAO,CAAC,uBAAuB,CAAK;IAEpC,oDAAoD;IACpD,OAAO,CAAC,qBAAqB,CAA8B;IAM3D,WAAW,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI;IAQlC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAiDjE,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAsDjC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAkC5B,IAAI,IAAI,IAAI;IAsBN,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAc/B,WAAW,IAAI,YAAY;IA+B3B,gBAAgB,IAAI,aAAa;IAYjC;;;;;;;;OAQG;YACW,mBAAmB;IAoDjC;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAmC3B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA8DzB,qDAAqD;IACrD,OAAO,CAAC,aAAa,CAA6B;IAElD,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,qBAAqB;IAS7B;;OAEG;YACW,YAAY;IAiB1B;;OAEG;YACW,WAAW;IAuDzB;;OAEG;YACW,oBAAoB;IA4DlC;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAoBzB"}
|