instar 0.28.84 → 0.28.86

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.
Files changed (48) hide show
  1. package/dist/commands/intent.d.ts.map +1 -1
  2. package/dist/commands/intent.js +29 -2
  3. package/dist/commands/intent.js.map +1 -1
  4. package/dist/commands/server.d.ts.map +1 -1
  5. package/dist/commands/server.js +14 -0
  6. package/dist/commands/server.js.map +1 -1
  7. package/dist/core/DecisionJournal.d.ts +66 -3
  8. package/dist/core/DecisionJournal.d.ts.map +1 -1
  9. package/dist/core/DecisionJournal.js +116 -3
  10. package/dist/core/DecisionJournal.js.map +1 -1
  11. package/dist/core/DispatchExecutor.d.ts +74 -1
  12. package/dist/core/DispatchExecutor.d.ts.map +1 -1
  13. package/dist/core/DispatchExecutor.js +120 -1
  14. package/dist/core/DispatchExecutor.js.map +1 -1
  15. package/dist/core/EvolutionManager.d.ts +60 -0
  16. package/dist/core/EvolutionManager.d.ts.map +1 -1
  17. package/dist/core/EvolutionManager.js +118 -0
  18. package/dist/core/EvolutionManager.js.map +1 -1
  19. package/dist/core/InitiativeTracker.d.ts +256 -14
  20. package/dist/core/InitiativeTracker.d.ts.map +1 -1
  21. package/dist/core/InitiativeTracker.js +826 -34
  22. package/dist/core/InitiativeTracker.js.map +1 -1
  23. package/dist/core/LearnSkillBridge.d.ts +119 -0
  24. package/dist/core/LearnSkillBridge.d.ts.map +1 -0
  25. package/dist/core/LearnSkillBridge.js +160 -0
  26. package/dist/core/LearnSkillBridge.js.map +1 -0
  27. package/dist/core/types.d.ts +34 -0
  28. package/dist/core/types.d.ts.map +1 -1
  29. package/dist/core/types.js.map +1 -1
  30. package/dist/server/routes.d.ts.map +1 -1
  31. package/dist/server/routes.js +131 -14
  32. package/dist/server/routes.js.map +1 -1
  33. package/dist/threadline/ThreadlineMCPServer.d.ts +32 -0
  34. package/dist/threadline/ThreadlineMCPServer.d.ts.map +1 -1
  35. package/dist/threadline/ThreadlineMCPServer.js +82 -5
  36. package/dist/threadline/ThreadlineMCPServer.js.map +1 -1
  37. package/dist/threadline/mcp-stdio-entry.js +56 -0
  38. package/dist/threadline/mcp-stdio-entry.js.map +1 -1
  39. package/package.json +1 -1
  40. package/src/data/builtin-manifest.json +47 -47
  41. package/upgrades/0.28.85.md +64 -0
  42. package/upgrades/0.28.86.md +86 -0
  43. package/upgrades/side-effects/0.28.83.md +27 -0
  44. package/upgrades/side-effects/project-scope-phase1a-pr1.md +232 -0
  45. package/upgrades/side-effects/taskflow-phase4.md +377 -0
  46. package/upgrades/side-effects/threadline-discover-relay-and-trust.md +122 -0
  47. package/upgrades/side-effects/wikiclaim-evidence-phase2.md +148 -0
  48. package/upgrades/side-effects/wikiclaim-evidence-phase3.md +125 -0
@@ -1,3 +1,4 @@
1
+ import type { TaskFlowRegistry } from '../tasks/TaskFlowRegistry.js';
1
2
  export type InitiativePhaseStatus = 'pending' | 'in-progress' | 'done' | 'blocked';
2
3
  export interface InitiativePhase {
3
4
  /** Stable identifier within this initiative (e.g. 'phase-a'). */
@@ -12,7 +13,35 @@ export interface InitiativePhase {
12
13
  /** ISO timestamp when status first became 'done'. */
13
14
  completedAt?: string;
14
15
  }
15
- export type InitiativeStatus = 'active' | 'completed' | 'archived' | 'abandoned';
16
+ export type InitiativeStatus = 'active' | 'completed' | 'archived' | 'abandoned' | 'paused' | 'halted' | 'awaiting-user';
17
+ export type InitiativeKind = 'task' | 'project';
18
+ export type PipelineStage = 'outline' | 'spec-drafted' | 'spec-converged' | 'approved' | 'building' | 'merged' | 'regressed' | 'skipped';
19
+ export type RoundStatus = 'pending' | 'ready' | 'in-progress' | 'partially-complete' | 'complete' | 'complete-with-skips' | 'failed' | 'regressed';
20
+ export interface InitiativeRound {
21
+ name: string;
22
+ /** Child initiative IDs in this round. */
23
+ itemIds: string[];
24
+ status: RoundStatus;
25
+ /** ISO; populated when prior round completes and this one becomes ready. */
26
+ autoAdvanceAt?: string;
27
+ completedAt?: string;
28
+ haltedAt?: string;
29
+ haltReason?: string;
30
+ /** Counter; round-runner caps this at 3. */
31
+ resumeAttempts?: number;
32
+ /** Cached drift verdict from the most recent attempt. Typed in Phase 1b. */
33
+ lastDriftVerdict?: unknown;
34
+ }
35
+ export interface InitiativeConflictPatch {
36
+ patchId: string;
37
+ recordId: string;
38
+ path: string;
39
+ oursValue: unknown;
40
+ theirsValue: unknown;
41
+ baseValue?: unknown;
42
+ losingMachineId: string;
43
+ capturedAt: string;
44
+ }
16
45
  export interface InitiativeLink {
17
46
  type: 'spec' | 'pr' | 'commit' | 'topic' | 'doc' | 'other';
18
47
  label: string;
@@ -42,6 +71,53 @@ export interface Initiative {
42
71
  links: InitiativeLink[];
43
72
  createdAt: string;
44
73
  updatedAt: string;
74
+ /** Distinguishes leaf work items ('task') from rollups ('project').
75
+ * Immutable after creation. Defaults to 'task' when omitted. */
76
+ kind?: InitiativeKind;
77
+ /** Bumped on backfill / migration. */
78
+ schemaVersion?: number;
79
+ /** Optimistic concurrency counter. Increments on every successful write.
80
+ * Starts at 1 on create. */
81
+ version?: number;
82
+ /** Back-pointer to a project that lists this child in `rounds[].itemIds`. */
83
+ parentProjectId?: string;
84
+ pipelineStage?: PipelineStage;
85
+ /** Relative to repo root; required for stages ≥ 'spec-drafted'. */
86
+ specPath?: string;
87
+ /** Required for stages = 'building' or 'merged'. */
88
+ prNumber?: number;
89
+ /** GitHub-reported merge commit; recorded at building → merged. */
90
+ mergeCommitOid?: string;
91
+ /** ISO; last revalidation against origin/main. */
92
+ ciCheckedAt?: string;
93
+ skippedAt?: string;
94
+ skippedBy?: string;
95
+ skippedReason?: string;
96
+ /** Recorded on skipped → outline reverse transition. */
97
+ unskippedAt?: string;
98
+ /** Default true at runtime; false marks infrastructure-of-tracker specs. */
99
+ driftCheck?: boolean;
100
+ rounds?: InitiativeRound[];
101
+ /** Paths jailed to project-root allowlist. */
102
+ sourceDocs?: string[];
103
+ /** Default true at runtime. */
104
+ autoAdvance?: boolean;
105
+ /** For round-complete and halt notifications. */
106
+ telegramTopicId?: string;
107
+ /** Current round owner (Phase 1.5). */
108
+ ownerMachineId?: string;
109
+ /** Absolute path to the target source repo; required for projects. */
110
+ targetRepoPath?: string;
111
+ /** Increments on each auto-advance without ack; pauses project at ≥ 2. */
112
+ unacknowledgedAdvanceCount?: number;
113
+ /** Populated when user acks the first-launch digest. */
114
+ firstLaunchAckAt?: string;
115
+ /** Highest round index acked. */
116
+ lastAckedRoundIndex?: number;
117
+ /** Populated by git-sync conflict handler (Phase 1.12). */
118
+ awaitingReconciliation?: InitiativeConflictPatch[];
119
+ /** For cache invalidation on drift-prompt edits. */
120
+ driftPromptTemplateVersion?: number;
45
121
  }
46
122
  export interface InitiativeCreateInput {
47
123
  id: string;
@@ -58,6 +134,22 @@ export interface InitiativeCreateInput {
58
134
  needsUser?: boolean;
59
135
  needsUserReason?: string;
60
136
  blockers?: string[];
137
+ /** Defaults to 'task' if omitted. Immutable after creation. */
138
+ kind?: InitiativeKind;
139
+ parentProjectId?: string;
140
+ pipelineStage?: PipelineStage;
141
+ specPath?: string;
142
+ prNumber?: number;
143
+ mergeCommitOid?: string;
144
+ ciCheckedAt?: string;
145
+ driftCheck?: boolean;
146
+ rounds?: InitiativeRound[];
147
+ sourceDocs?: string[];
148
+ autoAdvance?: boolean;
149
+ telegramTopicId?: string;
150
+ ownerMachineId?: string;
151
+ targetRepoPath?: string;
152
+ driftPromptTemplateVersion?: number;
61
153
  }
62
154
  export interface InitiativeUpdateInput {
63
155
  title?: string;
@@ -68,6 +160,62 @@ export interface InitiativeUpdateInput {
68
160
  needsUserReason?: string | null;
69
161
  blockers?: string[];
70
162
  links?: InitiativeLink[];
163
+ /** Optimistic concurrency guard. When provided, must equal the current
164
+ * `version` or update() throws `OccVersionMismatchError`. Backward
165
+ * compatible: callers that omit ifMatch get unconditional writes. */
166
+ ifMatch?: number;
167
+ /** Presence triggers immutability check: any value that differs from
168
+ * the current `kind` throws `KindImmutableError`. */
169
+ kind?: InitiativeKind;
170
+ /** Set to a project id to attach; set to null to clear. Bidirectional
171
+ * validation against the named project's `rounds[].itemIds` runs on set. */
172
+ parentProjectId?: string | null;
173
+ pipelineStage?: PipelineStage;
174
+ specPath?: string | null;
175
+ prNumber?: number | null;
176
+ mergeCommitOid?: string | null;
177
+ ciCheckedAt?: string | null;
178
+ skippedAt?: string | null;
179
+ skippedBy?: string | null;
180
+ skippedReason?: string | null;
181
+ unskippedAt?: string | null;
182
+ driftCheck?: boolean;
183
+ rounds?: InitiativeRound[];
184
+ sourceDocs?: string[];
185
+ autoAdvance?: boolean;
186
+ telegramTopicId?: string | null;
187
+ ownerMachineId?: string | null;
188
+ targetRepoPath?: string;
189
+ unacknowledgedAdvanceCount?: number;
190
+ firstLaunchAckAt?: string | null;
191
+ lastAckedRoundIndex?: number;
192
+ awaitingReconciliation?: InitiativeConflictPatch[];
193
+ driftPromptTemplateVersion?: number;
194
+ }
195
+ /**
196
+ * Thrown by `update()` when the caller supplied `ifMatch` and it didn't
197
+ * equal the current `version`. The HTTP layer (Phase 1.3) translates this
198
+ * to a 409 response with body `{ currentVersion }`.
199
+ */
200
+ export declare class OccVersionMismatchError extends Error {
201
+ readonly currentVersion: number;
202
+ constructor(message: string, currentVersion: number);
203
+ }
204
+ /**
205
+ * Thrown by `update()` when the caller attempted to change `kind`. The
206
+ * `kind` field is set at creation time and never changes thereafter.
207
+ */
208
+ export declare class KindImmutableError extends Error {
209
+ constructor(message?: string);
210
+ }
211
+ /**
212
+ * Thrown by `update()` when setting `parentProjectId` and the named parent
213
+ * either doesn't exist, isn't a `kind: 'project'` initiative, or doesn't
214
+ * list this child in any of its `rounds[].itemIds`. Bidirectional check
215
+ * keeps the parent/child relationship internally consistent.
216
+ */
217
+ export declare class InvalidParentProjectError extends Error {
218
+ constructor(message: string);
71
219
  }
72
220
  export interface DigestItem {
73
221
  initiativeId: string;
@@ -84,30 +232,124 @@ export interface Digest {
84
232
  * active initiative triggers a 'stale' flag).
85
233
  */
86
234
  export declare const STALE_THRESHOLD_MS: number;
235
+ /**
236
+ * TaskFlow controller identity for InitiativeTracker (Phase 4 migration).
237
+ * Every initiative's flow is owned by this controllerId; the registry uses
238
+ * it for OCC scope checks. Single instance per server process.
239
+ */
240
+ export declare const INITIATIVE_TASKFLOW_CONTROLLER_ID = "InitiativeTracker";
87
241
  export declare class InitiativeTracker {
88
242
  private readonly filePath;
243
+ /** In-process cache. Authoritative when TaskFlow is not wired; otherwise
244
+ * a read-side projection of TaskFlow's stateJson. */
89
245
  private readonly initiatives;
246
+ private taskFlowRegistry;
247
+ private taskFlowControllerInstanceId;
248
+ private digestCacheInvalidator;
90
249
  constructor(stateDir: string);
91
- private load;
92
- private save;
250
+ /**
251
+ * Register a callback invoked once after every successful mutating call
252
+ * (`create`, `update`, `setPhaseStatus`, `remove`). The default is a
253
+ * no-op so legacy callers see no change. PR 3 wires the real cache
254
+ * invalidator.
255
+ */
256
+ setDigestCacheInvalidator(fn: () => void): void;
257
+ /**
258
+ * Wire a TaskFlow registry to make TaskFlow the source of truth.
259
+ * Idempotent — safe to call multiple times. After wiring, all reads come
260
+ * from TaskFlow and all writes go through TaskFlow APIs. The legacy JSON
261
+ * file is no longer written.
262
+ *
263
+ * Callers are expected to call `migrateExistingToTaskFlow()` after this
264
+ * to backfill any initiatives that were loaded from the legacy file.
265
+ */
266
+ setTaskFlowRegistry(registry: TaskFlowRegistry, controllerInstanceId: string): void;
267
+ /** True when TaskFlow is wired and authoritative. */
268
+ isTaskFlowEnabled(): boolean;
269
+ private taskFlowPrincipal;
270
+ private loadFromDisk;
271
+ private saveToDisk;
272
+ private initiativeFromFlow;
273
+ private refreshCacheFromTaskFlow;
274
+ /**
275
+ * Layer TaskFlow data on top of the existing cache without clearing it.
276
+ * Used during `setTaskFlowRegistry` so legacy-loaded initiatives are
277
+ * preserved as backfill candidates while any pre-existing TaskFlow
278
+ * records take precedence.
279
+ */
280
+ private layerCacheFromTaskFlow;
281
+ /**
282
+ * A flow is "tombstoned" when remove() marked it as removed before
283
+ * cancelling. The marker lives in stateJson._removed and is the
284
+ * single signal that a flow's owning Initiative should be hidden from
285
+ * list() / get(). We can't delete TaskFlow records from this layer, so
286
+ * the marker is the durable equivalent of deletion.
287
+ */
288
+ private isTombstoned;
289
+ private waitJsonForInitiative;
290
+ /** Determine the desired TaskFlow status for an Initiative. */
291
+ private desiredFlowStatus;
292
+ /**
293
+ * Persist an Initiative through TaskFlow. Walks the flow state machine
294
+ * to the desired target (running / waiting / succeeded / failed /
295
+ * cancelled), updating `stateJson` along the way so reads see the latest
296
+ * shape. Returns the Initiative as projected from TaskFlow after
297
+ * transitions settle.
298
+ */
299
+ private persistThroughTaskFlow;
300
+ /**
301
+ * Patch a running flow's stateJson without changing its observable
302
+ * status. Uses a brief setFlowWaiting → resumeFlow round-trip (the only
303
+ * atomic state-bearing transitions for `running` flows that accept
304
+ * `statePatch`). The wait kind `'human-review'` with a sentinel question
305
+ * is used; the wait is consumed in the same call, so no external
306
+ * observer sees `waiting`.
307
+ */
308
+ private patchStateJson;
309
+ private findFlowIdForInitiative;
310
+ private logTaskFlowError;
311
+ /**
312
+ * Backfill all initiatives currently in the in-memory cache (loaded from
313
+ * legacy JSON in the constructor) into TaskFlow. Idempotent via
314
+ * `findIdempotent`. Safe to call multiple times.
315
+ */
316
+ migrateExistingToTaskFlow(): Promise<{
317
+ created: number;
318
+ alreadyExisted: number;
319
+ advanced: number;
320
+ skipped: number;
321
+ }>;
93
322
  list(filter?: {
94
323
  status?: InitiativeStatus;
95
324
  }): Initiative[];
96
325
  get(id: string): Initiative | undefined;
97
- create(input: InitiativeCreateInput): Initiative;
98
- update(id: string, input: InitiativeUpdateInput): Initiative;
326
+ create(input: InitiativeCreateInput): Promise<Initiative>;
327
+ update(id: string, input: InitiativeUpdateInput): Promise<Initiative>;
328
+ /**
329
+ * Verify that `parentId` names an existing `kind: 'project'` initiative
330
+ * AND that one of its rounds lists `childId` in itemIds. Throws
331
+ * `InvalidParentProjectError` on any failure. Used by `update()` when
332
+ * a child's `parentProjectId` is set to a non-null value.
333
+ */
334
+ private assertValidParentProject;
335
+ setPhaseStatus(id: string, phaseId: string, status: InitiativePhaseStatus): Promise<Initiative>;
336
+ remove(id: string): Promise<boolean>;
99
337
  /**
100
- * Transition a phase's status. Updates currentPhaseIndex to point to the
101
- * earliest non-done phase; marks the whole initiative 'completed' when
102
- * all phases are 'done'. Sets startedAt/completedAt the first time a
103
- * phase reaches 'in-progress' / 'done' respectively.
338
+ * One-time backfill helper for TaskFlow-enabled installs: scans all
339
+ * records, identifies those missing `kind`, and updates them through
340
+ * TaskFlow. Idempotent — running twice produces no change after the
341
+ * first pass. The legacy-JSON path runs an equivalent backfill inside
342
+ * `loadFromDisk()` on first load.
343
+ *
344
+ * Returns counts so callers can log/observe what happened.
104
345
  */
105
- setPhaseStatus(id: string, phaseId: string, status: InitiativePhaseStatus): Initiative;
106
- remove(id: string): boolean;
346
+ backfillKindAndSchema(): Promise<{
347
+ backfilled: number;
348
+ scanned: number;
349
+ }>;
107
350
  /**
108
- * Scan active initiatives for anything actionable. The digest job uses
109
- * this to decide whether to send a push notification. Empty items[]
110
- * means "quiet day, don't spam the user."
351
+ * Scan active initiatives for anything actionable. Empty items[] means
352
+ * "quiet day, don't spam the user."
111
353
  */
112
354
  digest(now?: Date): Digest;
113
355
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InitiativeTracker.d.ts","sourceRoot":"","sources":["../../src/core/InitiativeTracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InitiativeTracker.d.ts","sourceRoot":"","sources":["../../src/core/InitiativeTracker.ts"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAQrE,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,aAAa,GAAG,MAAM,GAAG,SAAS,CAAC;AAEnF,MAAM,WAAW,eAAe;IAC9B,iEAAiE;IACjE,EAAE,EAAE,MAAM,CAAC;IACX,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,gBAAgB,GACxB,QAAQ,GACR,WAAW,GACX,UAAU,GACV,WAAW,GACX,QAAQ,GACR,QAAQ,GACR,eAAe,CAAC;AAEpB,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,SAAS,CAAC;AAEhD,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,cAAc,GACd,gBAAgB,GAChB,UAAU,GACV,UAAU,GACV,QAAQ,GACR,WAAW,GACX,SAAS,CAAC;AAEd,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,OAAO,GACP,aAAa,GACb,oBAAoB,GACpB,UAAU,GACV,qBAAqB,GACrB,QAAQ,GACR,WAAW,CAAC;AAEhB,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,WAAW,CAAC;IACpB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,CAAC;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,yCAAyC;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,6EAA6E;IAC7E,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qDAAqD;IACrD,aAAa,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wEAAwE;IACxE,SAAS,EAAE,OAAO,CAAC;IACnB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yEAAyE;IACzE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,0EAA0E;IAC1E,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAOlB;qEACiE;IACjE,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,sCAAsC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;iCAC6B;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,OAAO,CAAC;IAGrB,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,+BAA+B;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iDAAiD;IACjD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uCAAuC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sEAAsE;IACtE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iCAAiC;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,2DAA2D;IAC3D,sBAAsB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACnD,oDAAoD;IACpD,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,qBAAqB,CAAA;KAAE,CAAC,CAAC;IAC9F,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAGpB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IAGzB;;0EAEsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;0DACsD;IACtD,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB;iFAC6E;IAC7E,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACnD,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;gBACpB,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;CAKpD;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,SAAkD;CAItE;AAED;;;;;GAKG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,GAAG,YAAY,GAAG,gBAAgB,GAAG,kBAAkB,CAAC;IACvE,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,MAAM;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,UAAU,EAAE,CAAC;CACrB;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,QAA0B,CAAC;AAE1D;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,sBAAsB,CAAC;AAuDrE,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC;yDACqD;IACrD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiC;IAG7D,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,4BAA4B,CAAuB;IAM3D,OAAO,CAAC,sBAAsB,CAAwB;gBAE1C,QAAQ,EAAE,MAAM;IAK5B;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI;IAI/C;;;;;;;;OAQG;IACH,mBAAmB,CACjB,QAAQ,EAAE,gBAAgB,EAC1B,oBAAoB,EAAE,MAAM,GAC3B,IAAI;IASP,qDAAqD;IACrD,iBAAiB,IAAI,OAAO;IAI5B,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,YAAY;IAgCpB,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,wBAAwB;IAgBhC;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAgB9B;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,qBAAqB;IAU7B,+DAA+D;IAC/D,OAAO,CAAC,iBAAiB;IAgBzB;;;;;;OAMG;YACW,sBAAsB;IAyIpC;;;;;;;OAOG;YACW,cAAc;IA8B5B,OAAO,CAAC,uBAAuB;IAW/B,OAAO,CAAC,gBAAgB;IAaxB;;;;OAIG;IACG,yBAAyB,IAAI,OAAO,CAAC;QACzC,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IA+CF,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,gBAAgB,CAAA;KAAE,GAAG,UAAU,EAAE;IAO1D,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAiBjC,MAAM,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IA+EzD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IA0H3E;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAqB1B,cAAc,CAClB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,UAAU,CAAC;IAiChB,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2E1C;;;;;;;;OAQG;IACG,qBAAqB,IAAI,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAgC/E;;;OAGG;IACH,MAAM,CAAC,GAAG,GAAE,IAAiB,GAAG,MAAM;CAyDvC"}