instar 0.28.85 → 0.28.87

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 (35) hide show
  1. package/dist/core/InitiativeTracker.d.ts +177 -1
  2. package/dist/core/InitiativeTracker.d.ts.map +1 -1
  3. package/dist/core/InitiativeTracker.js +341 -13
  4. package/dist/core/InitiativeTracker.js.map +1 -1
  5. package/dist/core/PlanDocParser.d.ts +62 -0
  6. package/dist/core/PlanDocParser.d.ts.map +1 -0
  7. package/dist/core/PlanDocParser.js +328 -0
  8. package/dist/core/PlanDocParser.js.map +1 -0
  9. package/dist/core/SafeYaml.d.ts +45 -0
  10. package/dist/core/SafeYaml.d.ts.map +1 -0
  11. package/dist/core/SafeYaml.js +230 -0
  12. package/dist/core/SafeYaml.js.map +1 -0
  13. package/dist/core/SessionManager.d.ts +12 -0
  14. package/dist/core/SessionManager.d.ts.map +1 -1
  15. package/dist/core/SessionManager.js +60 -0
  16. package/dist/core/SessionManager.js.map +1 -1
  17. package/dist/core/StageTransitionValidator.d.ts +97 -0
  18. package/dist/core/StageTransitionValidator.d.ts.map +1 -0
  19. package/dist/core/StageTransitionValidator.js +338 -0
  20. package/dist/core/StageTransitionValidator.js.map +1 -0
  21. package/dist/monitoring/StallTriageNurse.d.ts +11 -0
  22. package/dist/monitoring/StallTriageNurse.d.ts.map +1 -1
  23. package/dist/monitoring/StallTriageNurse.js +66 -0
  24. package/dist/monitoring/StallTriageNurse.js.map +1 -1
  25. package/dist/server/routes.d.ts.map +1 -1
  26. package/dist/server/routes.js +312 -0
  27. package/dist/server/routes.js.map +1 -1
  28. package/package.json +1 -1
  29. package/src/data/builtin-manifest.json +47 -47
  30. package/upgrades/0.28.86.md +86 -0
  31. package/upgrades/0.28.87.md +153 -0
  32. package/upgrades/side-effects/0.28.86.md +13 -0
  33. package/upgrades/side-effects/project-scope-phase1a-pr1.md +232 -0
  34. package/upgrades/side-effects/project-scope-phase1a-pr2.md +377 -0
  35. package/upgrades/side-effects/verify-injection-stuck-input.md +107 -0
@@ -13,7 +13,35 @@ export interface InitiativePhase {
13
13
  /** ISO timestamp when status first became 'done'. */
14
14
  completedAt?: string;
15
15
  }
16
- 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
+ }
17
45
  export interface InitiativeLink {
18
46
  type: 'spec' | 'pr' | 'commit' | 'topic' | 'doc' | 'other';
19
47
  label: string;
@@ -43,6 +71,53 @@ export interface Initiative {
43
71
  links: InitiativeLink[];
44
72
  createdAt: string;
45
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;
46
121
  }
47
122
  export interface InitiativeCreateInput {
48
123
  id: string;
@@ -59,6 +134,22 @@ export interface InitiativeCreateInput {
59
134
  needsUser?: boolean;
60
135
  needsUserReason?: string;
61
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;
62
153
  }
63
154
  export interface InitiativeUpdateInput {
64
155
  title?: string;
@@ -69,6 +160,62 @@ export interface InitiativeUpdateInput {
69
160
  needsUserReason?: string | null;
70
161
  blockers?: string[];
71
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);
72
219
  }
73
220
  export interface DigestItem {
74
221
  initiativeId: string;
@@ -98,7 +245,15 @@ export declare class InitiativeTracker {
98
245
  private readonly initiatives;
99
246
  private taskFlowRegistry;
100
247
  private taskFlowControllerInstanceId;
248
+ private digestCacheInvalidator;
101
249
  constructor(stateDir: string);
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;
102
257
  /**
103
258
  * Wire a TaskFlow registry to make TaskFlow the source of truth.
104
259
  * Idempotent — safe to call multiple times. After wiring, all reads come
@@ -166,12 +321,33 @@ export declare class InitiativeTracker {
166
321
  }>;
167
322
  list(filter?: {
168
323
  status?: InitiativeStatus;
324
+ kind?: InitiativeKind;
169
325
  }): Initiative[];
170
326
  get(id: string): Initiative | undefined;
171
327
  create(input: InitiativeCreateInput): Promise<Initiative>;
172
328
  update(id: string, input: InitiativeUpdateInput): Promise<Initiative>;
329
+ /**
330
+ * Verify that `parentId` names an existing `kind: 'project'` initiative
331
+ * AND that one of its rounds lists `childId` in itemIds. Throws
332
+ * `InvalidParentProjectError` on any failure. Used by `update()` when
333
+ * a child's `parentProjectId` is set to a non-null value.
334
+ */
335
+ private assertValidParentProject;
173
336
  setPhaseStatus(id: string, phaseId: string, status: InitiativePhaseStatus): Promise<Initiative>;
174
337
  remove(id: string): Promise<boolean>;
338
+ /**
339
+ * One-time backfill helper for TaskFlow-enabled installs: scans all
340
+ * records, identifies those missing `kind`, and updates them through
341
+ * TaskFlow. Idempotent — running twice produces no change after the
342
+ * first pass. The legacy-JSON path runs an equivalent backfill inside
343
+ * `loadFromDisk()` on first load.
344
+ *
345
+ * Returns counts so callers can log/observe what happened.
346
+ */
347
+ backfillKindAndSchema(): Promise<{
348
+ backfilled: number;
349
+ scanned: number;
350
+ }>;
175
351
  /**
176
352
  * Scan active initiatives for anything actionable. Empty items[] means
177
353
  * "quiet day, don't spam the user."
@@ -1 +1 @@
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,GAAG,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,CAAC;AAEjF,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;CACnB;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;CACrB;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;CAC1B;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;AAUrE,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;gBAE/C,QAAQ,EAAE,MAAM;IAK5B;;;;;;;;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;IAgBpB,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;IAgDzD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAyBrE,cAAc,CAClB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,UAAU,CAAC;IA4BhB,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAqE1C;;;OAGG;IACH,MAAM,CAAC,GAAG,GAAE,IAAiB,GAAG,MAAM;CAyDvC"}
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,CAAC;QAAC,IAAI,CAAC,EAAE,cAAc,CAAA;KAAE,GAAG,UAAU,EAAE;IAcjF,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"}