@monoes/monomindcli 2.16.6 → 2.16.8

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 (193) hide show
  1. package/.claude/agents/github/monoswarm-multi-repo.md +2 -2
  2. package/.claude/agents/github/sync-coordinator.md +1 -1
  3. package/.claude/commands/agents/agent-capabilities.md +2 -5
  4. package/.claude/commands/coordination/task-orchestrate.md +0 -1
  5. package/.claude/commands/hooks/post-edit.md +1 -1
  6. package/.claude/commands/hooks/post-task.md +2 -3
  7. package/.claude/commands/hooks/pre-edit.md +0 -2
  8. package/.claude/commands/hooks/session-end.md +4 -4
  9. package/.claude/commands/monoswarm/consensus.md +1 -1
  10. package/.claude/commands/monoswarm/memory.md +1 -1
  11. package/.claude/commands/monoswarm/monoswarm.md +1 -1
  12. package/.claude/commands/monoswarm/spawn.md +1 -1
  13. package/.claude/commands/optimization/auto-topology.md +6 -9
  14. package/.claude/commands/optimization/performance-optimize.md +23 -39
  15. package/.claude/helpers/build-skill-registry.cjs +4 -3
  16. package/.claude/helpers/pick-rank.cjs +118 -9
  17. package/dist/src/catalog/projection.d.ts.map +1 -1
  18. package/dist/src/catalog/projection.js +2 -1
  19. package/dist/src/catalog/projection.js.map +1 -1
  20. package/dist/src/commands/agent-exec.d.ts.map +1 -1
  21. package/dist/src/commands/agent-exec.js +10 -1
  22. package/dist/src/commands/agent-exec.js.map +1 -1
  23. package/dist/src/commands/cleanup-plan.js +1 -1
  24. package/dist/src/commands/cleanup-plan.js.map +1 -1
  25. package/dist/src/commands/doctor.js +1 -1
  26. package/dist/src/commands/doctor.js.map +1 -1
  27. package/dist/src/commands/hooks-core-commands.d.ts.map +1 -1
  28. package/dist/src/commands/hooks-core-commands.js +10 -42
  29. package/dist/src/commands/hooks-core-commands.js.map +1 -1
  30. package/dist/src/commands/hooks-extended-commands.d.ts.map +1 -1
  31. package/dist/src/commands/hooks-extended-commands.js +9 -5
  32. package/dist/src/commands/hooks-extended-commands.js.map +1 -1
  33. package/dist/src/commands/hooks-routing-commands.d.ts.map +1 -1
  34. package/dist/src/commands/hooks-routing-commands.js +13 -24
  35. package/dist/src/commands/hooks-routing-commands.js.map +1 -1
  36. package/dist/src/commands/hooks-workers.d.ts.map +1 -1
  37. package/dist/src/commands/hooks-workers.js +8 -8
  38. package/dist/src/commands/hooks-workers.js.map +1 -1
  39. package/dist/src/commands/hooks.d.ts.map +1 -1
  40. package/dist/src/commands/hooks.js +9 -16
  41. package/dist/src/commands/hooks.js.map +1 -1
  42. package/dist/src/commands/monograph.d.ts.map +1 -1
  43. package/dist/src/commands/monograph.js +24 -2
  44. package/dist/src/commands/monograph.js.map +1 -1
  45. package/dist/src/commands/org.d.ts.map +1 -1
  46. package/dist/src/commands/org.js +29 -1
  47. package/dist/src/commands/org.js.map +1 -1
  48. package/dist/src/commands/platforms.js +2 -1
  49. package/dist/src/commands/platforms.js.map +1 -1
  50. package/dist/src/init/asset-maps.d.ts +46 -0
  51. package/dist/src/init/asset-maps.d.ts.map +1 -0
  52. package/dist/src/init/asset-maps.js +177 -0
  53. package/dist/src/init/asset-maps.js.map +1 -0
  54. package/dist/src/init/copy-assets.d.ts.map +1 -1
  55. package/dist/src/init/copy-assets.js +4 -1
  56. package/dist/src/init/copy-assets.js.map +1 -1
  57. package/dist/src/init/executor.d.ts.map +1 -1
  58. package/dist/src/init/executor.js +5 -3
  59. package/dist/src/init/executor.js.map +1 -1
  60. package/dist/src/init/file-guard.d.ts +6 -0
  61. package/dist/src/init/file-guard.d.ts.map +1 -1
  62. package/dist/src/init/file-guard.js +22 -8
  63. package/dist/src/init/file-guard.js.map +1 -1
  64. package/dist/src/init/fs-helpers.d.ts +63 -0
  65. package/dist/src/init/fs-helpers.d.ts.map +1 -0
  66. package/dist/src/init/fs-helpers.js +198 -0
  67. package/dist/src/init/fs-helpers.js.map +1 -0
  68. package/dist/src/init/init-manifest.d.ts +106 -0
  69. package/dist/src/init/init-manifest.d.ts.map +1 -0
  70. package/dist/src/init/init-manifest.js +222 -0
  71. package/dist/src/init/init-manifest.js.map +1 -0
  72. package/dist/src/init/shared.d.ts +3 -201
  73. package/dist/src/init/shared.d.ts.map +1 -1
  74. package/dist/src/init/shared.js +7 -573
  75. package/dist/src/init/shared.js.map +1 -1
  76. package/dist/src/init/upgrade.d.ts.map +1 -1
  77. package/dist/src/init/upgrade.js +3 -1
  78. package/dist/src/init/upgrade.js.map +1 -1
  79. package/dist/src/init/write-antigravity.d.ts.map +1 -1
  80. package/dist/src/init/write-antigravity.js +2 -1
  81. package/dist/src/init/write-antigravity.js.map +1 -1
  82. package/dist/src/init/write-capabilities.js +2 -1
  83. package/dist/src/init/write-capabilities.js.map +1 -1
  84. package/dist/src/init/write-claude.d.ts +3 -5
  85. package/dist/src/init/write-claude.d.ts.map +1 -1
  86. package/dist/src/init/write-claude.js +6 -210
  87. package/dist/src/init/write-claude.js.map +1 -1
  88. package/dist/src/init/write-codex.js +1 -1
  89. package/dist/src/init/write-codex.js.map +1 -1
  90. package/dist/src/init/write-kimicode.d.ts.map +1 -1
  91. package/dist/src/init/write-kimicode.js +6 -2
  92. package/dist/src/init/write-kimicode.js.map +1 -1
  93. package/dist/src/init/write-opencode.d.ts.map +1 -1
  94. package/dist/src/init/write-opencode.js +5 -4
  95. package/dist/src/init/write-opencode.js.map +1 -1
  96. package/dist/src/init/write-runtime-config.d.ts.map +1 -1
  97. package/dist/src/init/write-runtime-config.js +2 -1
  98. package/dist/src/init/write-runtime-config.js.map +1 -1
  99. package/dist/src/init/write-settings.d.ts +9 -0
  100. package/dist/src/init/write-settings.d.ts.map +1 -0
  101. package/dist/src/init/write-settings.js +217 -0
  102. package/dist/src/init/write-settings.js.map +1 -0
  103. package/dist/src/mcp-tools/hooks-embedding.d.ts +2 -1
  104. package/dist/src/mcp-tools/hooks-embedding.d.ts.map +1 -1
  105. package/dist/src/mcp-tools/hooks-embedding.js +3 -0
  106. package/dist/src/mcp-tools/hooks-embedding.js.map +1 -1
  107. package/dist/src/mcp-tools/hooks-intelligence.d.ts.map +1 -1
  108. package/dist/src/mcp-tools/hooks-intelligence.js +11 -8
  109. package/dist/src/mcp-tools/hooks-intelligence.js.map +1 -1
  110. package/dist/src/mcp-tools/hooks-routing.d.ts.map +1 -1
  111. package/dist/src/mcp-tools/hooks-routing.js +31 -38
  112. package/dist/src/mcp-tools/hooks-routing.js.map +1 -1
  113. package/dist/src/mcp-tools/platforms-tools.js +1 -1
  114. package/dist/src/mcp-tools/platforms-tools.js.map +1 -1
  115. package/dist/src/memory/memory-bridge.d.ts +13 -0
  116. package/dist/src/memory/memory-bridge.d.ts.map +1 -1
  117. package/dist/src/memory/memory-bridge.js +68 -20
  118. package/dist/src/memory/memory-bridge.js.map +1 -1
  119. package/dist/src/monovector/command-outcomes.d.ts +2 -1
  120. package/dist/src/monovector/command-outcomes.d.ts.map +1 -1
  121. package/dist/src/monovector/command-outcomes.js +2 -2
  122. package/dist/src/monovector/command-outcomes.js.map +1 -1
  123. package/dist/src/monovector/model-outcomes.d.ts +4 -2
  124. package/dist/src/monovector/model-outcomes.d.ts.map +1 -1
  125. package/dist/src/monovector/model-outcomes.js +11 -3
  126. package/dist/src/monovector/model-outcomes.js.map +1 -1
  127. package/dist/src/orgrt/approvals.d.ts +25 -0
  128. package/dist/src/orgrt/approvals.d.ts.map +1 -1
  129. package/dist/src/orgrt/approvals.js +51 -2
  130. package/dist/src/orgrt/approvals.js.map +1 -1
  131. package/dist/src/orgrt/budget-closure.d.ts +39 -0
  132. package/dist/src/orgrt/budget-closure.d.ts.map +1 -0
  133. package/dist/src/orgrt/budget-closure.js +380 -0
  134. package/dist/src/orgrt/budget-closure.js.map +1 -0
  135. package/dist/src/orgrt/daemon.d.ts +21 -2
  136. package/dist/src/orgrt/daemon.d.ts.map +1 -1
  137. package/dist/src/orgrt/daemon.js +39 -45
  138. package/dist/src/orgrt/daemon.js.map +1 -1
  139. package/dist/src/orgrt/decisions.d.ts +8 -0
  140. package/dist/src/orgrt/decisions.d.ts.map +1 -1
  141. package/dist/src/orgrt/decisions.js +7 -1
  142. package/dist/src/orgrt/decisions.js.map +1 -1
  143. package/dist/src/orgrt/policy.d.ts +6 -0
  144. package/dist/src/orgrt/policy.d.ts.map +1 -1
  145. package/dist/src/orgrt/policy.js +5 -0
  146. package/dist/src/orgrt/policy.js.map +1 -1
  147. package/dist/src/orgrt/runner-registry.d.ts +11 -2
  148. package/dist/src/orgrt/runner-registry.d.ts.map +1 -1
  149. package/dist/src/orgrt/runner-registry.js +11 -34
  150. package/dist/src/orgrt/runner-registry.js.map +1 -1
  151. package/dist/src/orgrt/task-dag.d.ts +13 -0
  152. package/dist/src/orgrt/task-dag.d.ts.map +1 -1
  153. package/dist/src/orgrt/task-dag.js +29 -0
  154. package/dist/src/orgrt/task-dag.js.map +1 -1
  155. package/dist/src/orgrt/version-probe.d.ts +43 -0
  156. package/dist/src/orgrt/version-probe.d.ts.map +1 -0
  157. package/dist/src/orgrt/version-probe.js +136 -0
  158. package/dist/src/orgrt/version-probe.js.map +1 -0
  159. package/dist/src/platform-adapters/locations.d.ts +12 -0
  160. package/dist/src/platform-adapters/locations.d.ts.map +1 -0
  161. package/dist/src/platform-adapters/locations.js +57 -0
  162. package/dist/src/platform-adapters/locations.js.map +1 -0
  163. package/dist/src/platform-adapters/merge.d.ts +2 -0
  164. package/dist/src/platform-adapters/merge.d.ts.map +1 -1
  165. package/dist/src/platform-adapters/merge.js +7 -0
  166. package/dist/src/platform-adapters/merge.js.map +1 -1
  167. package/dist/src/platform-adapters/migration.js +1 -1
  168. package/dist/src/platform-adapters/migration.js.map +1 -1
  169. package/dist/src/platform-adapters/mutation.js +1 -1
  170. package/dist/src/platform-adapters/mutation.js.map +1 -1
  171. package/dist/src/platform-adapters/operations.d.ts +3 -16
  172. package/dist/src/platform-adapters/operations.d.ts.map +1 -1
  173. package/dist/src/platform-adapters/operations.js +25 -168
  174. package/dist/src/platform-adapters/operations.js.map +1 -1
  175. package/dist/src/platform-adapters/owned-files.js +1 -1
  176. package/dist/src/platform-adapters/owned-files.js.map +1 -1
  177. package/dist/src/platform-adapters/platform-doctor.d.ts +9 -0
  178. package/dist/src/platform-adapters/platform-doctor.d.ts.map +1 -0
  179. package/dist/src/platform-adapters/platform-doctor.js +117 -0
  180. package/dist/src/platform-adapters/platform-doctor.js.map +1 -0
  181. package/dist/src/platform-adapters/shared-surface.d.ts.map +1 -1
  182. package/dist/src/platform-adapters/shared-surface.js +2 -1
  183. package/dist/src/platform-adapters/shared-surface.js.map +1 -1
  184. package/dist/src/platform-adapters/types.d.ts +14 -1
  185. package/dist/src/platform-adapters/types.d.ts.map +1 -1
  186. package/dist/src/protocol-capabilities.d.ts +4 -1
  187. package/dist/src/protocol-capabilities.d.ts.map +1 -1
  188. package/dist/src/protocol-capabilities.js +4 -0
  189. package/dist/src/protocol-capabilities.js.map +1 -1
  190. package/dist/tsconfig.tsbuildinfo +1 -1
  191. package/org-skills/api-designer/SKILL.md +1 -1
  192. package/org-skills/code-documenter/SKILL.md +1 -1
  193. package/package.json +3 -3
@@ -0,0 +1,39 @@
1
+ import type { OrgDaemon, RunningOrg } from './daemon.js';
2
+ import type { OrgTask } from './task-dag.js';
3
+ import type { BusEvent } from './types.js';
4
+ /** Share of a budget at which the coordinator is warned: once per role per
5
+ * run for budget_usd and budget_tokens, once per run for run_config.budget_tokens. */
6
+ export declare const BUDGET_WARN_FRACTION = 0.8;
7
+ /** The run's spend against run_config.budget_tokens: every live session on
8
+ * the budgeted basis (ADR-O001 D1), plus what replaced incarnations retired
9
+ * into their slot (role-slot.ts / respawnRole) — a replacement must not reset
10
+ * the org's spend. */
11
+ export declare function orgBudgetedUsage(running: RunningOrg): number;
12
+ /** Why `roleId`'s session is closed for budget, or undefined when it is not.
13
+ * A role closed by the org-wide run_config.budget_tokens ceiling carries the
14
+ * same close reason without being over its own caps. */
15
+ export declare function budgetClosureDetail(running: RunningOrg, roleId: string): string | undefined;
16
+ /** Bus hook (daemon.ts's org subscriber): enforce the org-wide ceiling, note
17
+ * a per-role budget closure and warn on the approach to a budget. */
18
+ export declare function onBudgetBusEvent(running: RunningOrg, e: BusEvent): void;
19
+ /** dispatchReadyTasks, for a task whose assignee's mailbox is closed: when it
20
+ * was closed for budget, hold the task with the reason, warn, tell the task's
21
+ * creator (or the coordinator) and return true. The task leaves 'ready', so
22
+ * this happens once per task. */
23
+ export declare function holdForBudgetClosedAssignee(running: RunningOrg, task: OrgTask): boolean;
24
+ /** Put every budget-held task whose assignee is no longer budget-closed back
25
+ * to 'ready' — after a reload reopened it, a respawn replaced it, or a resume
26
+ * left its recoverable close open. Called at the top of dispatchReadyTasks. */
27
+ export declare function releaseBudgetHolds(running: RunningOrg): void;
28
+ /** Before a reload changes the def: the live roles whose token cap is the one
29
+ * the def gives them (their own budget_tokens, policy.maxTokens or their even
30
+ * split of run_config.budget_tokens) — not a replacement's explicit budget. */
31
+ export declare function rolesOnDefTokenCaps(running: RunningOrg): Set<string>;
32
+ /** After a hot reload applied new caps: re-derive the token caps of `onDef`'s
33
+ * roles (rolesOnDefTokenCaps, taken before the def changed), reopen the roles
34
+ * the org-wide ceiling closed if it now allows, then reopen each role closed
35
+ * for its own budget that is no longer over it, keeping its spend (the new
36
+ * cap applies to the total), and re-dispatch their tasks. A role still over
37
+ * its cap stays closed; its held tasks get the new numbers in their reason. */
38
+ export declare function reopenBudgetClosedRoles(daemon: OrgDaemon, org: string, running: RunningOrg, onDef?: Set<string>): string[];
39
+ //# sourceMappingURL=budget-closure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budget-closure.d.ts","sourceRoot":"","sources":["../../../src/orgrt/budget-closure.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAMzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C;uFACuF;AACvF,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAWxC;;;uBAGuB;AACvB,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAK5D;AAKD;;yDAEyD;AACzD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAS3F;AA0CD;sEACsE;AACtE,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,GAAG,IAAI,CAKvE;AAgID;;;kCAGkC;AAClC,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAmBvF;AAED;;gFAEgF;AAChF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAO5D;AAED;;gFAEgF;AAChF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,CAOpE;AA4ED;;;;;gFAKgF;AAChF,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,UAAU,EACnB,KAAK,GAAE,GAAG,CAAC,MAAM,CAAa,GAC7B,MAAM,EAAE,CA4BV"}
@@ -0,0 +1,380 @@
1
+ // packages/@monomind/cli/src/orgrt/budget-closure.ts
2
+ //
3
+ // #343: a role whose budget_usd / budget_tokens runs out has its session
4
+ // closed (session.ts, mailbox.close('usd-budget' | 'token-budget')). Tasks
5
+ // assigned to it used to stay 'ready' forever behind a bus warning that the
6
+ // assignee was "crashed or unreachable", so the coordinator took it for a
7
+ // dispatch stall. Here: such tasks are held as 'blocked' with the reason, the
8
+ // coordinator is told, a role nearing its budget_usd / budget_tokens (or the
9
+ // org nearing run_config.budget_tokens) is flagged, and a hot reload that
10
+ // raises the budget reopens the role with its spend kept. The org-wide
11
+ // run_config.budget_tokens ceiling lives here too, so a reload that raises it
12
+ // reopens the roles it closed and re-arms it at the new value.
13
+ import { captureCheckpoint } from './checkpoint.js';
14
+ import { dispatchReadyTasks, queueDispatch } from './decisions.js';
15
+ import { taskTag } from './loadouts.js';
16
+ import { isRecoverableCloseReason } from './mailbox.js';
17
+ import { computeReplacementBudget } from './role-slot.js';
18
+ /** Share of a budget at which the coordinator is warned: once per role per
19
+ * run for budget_usd and budget_tokens, once per run for run_config.budget_tokens. */
20
+ export const BUDGET_WARN_FRACTION = 0.8;
21
+ /** Which of the role's own caps it has spent, or undefined when neither. */
22
+ function exhaustedDetail(policy) {
23
+ if (policy.overBudgetUsd)
24
+ return `budget_usd exhausted ($${policy.usageUsd.toFixed(2)} / $${policy.policy.maxUsd})`;
25
+ if (policy.overBudget)
26
+ return `budget_tokens exhausted (${policy.budgetedUsage} / ${policy.policy.maxTokens})`;
27
+ return undefined;
28
+ }
29
+ /** The run's spend against run_config.budget_tokens: every live session on
30
+ * the budgeted basis (ADR-O001 D1), plus what replaced incarnations retired
31
+ * into their slot (role-slot.ts / respawnRole) — a replacement must not reset
32
+ * the org's spend. */
33
+ export function orgBudgetedUsage(running) {
34
+ let used = 0;
35
+ for (const rt of running.agents.values())
36
+ used += rt.policy.budgetedUsage;
37
+ for (const slot of running.roleSlots.values())
38
+ used += slot.retiredUsage.tokens;
39
+ return used;
40
+ }
41
+ const orgDetail = (running) => `org-wide budget_tokens exhausted (${orgBudgetedUsage(running)} / ${running.def.run_config.budget_tokens})`;
42
+ /** Why `roleId`'s session is closed for budget, or undefined when it is not.
43
+ * A role closed by the org-wide run_config.budget_tokens ceiling carries the
44
+ * same close reason without being over its own caps. */
45
+ export function budgetClosureDetail(running, roleId) {
46
+ const rt = running.agents.get(roleId);
47
+ if (!rt?.mailbox.isClosed || !isRecoverableCloseReason(rt.mailbox.closeReason))
48
+ return undefined;
49
+ const own = exhaustedDetail(rt.policy);
50
+ if (own)
51
+ return own;
52
+ if (running.orgBudgetClosed?.has(roleId))
53
+ return orgDetail(running);
54
+ return running.budgetClosed?.has(roleId)
55
+ ? 'budget exhausted'
56
+ : 'org-wide budget_tokens exhausted';
57
+ }
58
+ const holdReason = (roleId, detail) => `assignee "${roleId}" closed: ${detail}`;
59
+ const ORG_REMEDY = "Raise run_config.budget_tokens in the org definition and hot-reload it (`monomind org reload`) — the closed roles reopen with the run's spend so far kept.";
60
+ const remedy = (running, roleId) => running.orgBudgetClosed?.has(roleId) && !exhaustedDetail(running.agents.get(roleId).policy)
61
+ ? `${ORG_REMEDY} Or reassign the work to another role.`
62
+ : `Raise budget_usd / budget_tokens for "${roleId}" in the org definition and hot-reload it (\`monomind org reload\`) — the role reopens with its spend so far kept — or reassign the work to another role.`;
63
+ /** Hold `roleId`'s open tasks — one it was working would otherwise sit
64
+ * 'running' with no one on it. */
65
+ function holdOpenTasks(running, roleId, detail) {
66
+ const held = [];
67
+ for (const t of running.taskDag?.all() ?? []) {
68
+ if (t.assignee !== roleId || (t.status !== 'ready' && t.status !== 'running'))
69
+ continue;
70
+ held.push(running.taskDag.holdForAssignee(t.id, holdReason(roleId, detail)));
71
+ }
72
+ return held;
73
+ }
74
+ /** Re-word `roleId`'s budget-held tasks with the current numbers. */
75
+ function refreshHolds(running, roleId) {
76
+ const detail = budgetClosureDetail(running, roleId);
77
+ if (!detail)
78
+ return;
79
+ for (const t of running.taskDag?.all() ?? []) {
80
+ if (t.assignee === roleId && t.status === 'blocked' && t.heldForAssignee)
81
+ running.taskDag?.holdForAssignee(t.id, holdReason(roleId, detail));
82
+ }
83
+ }
84
+ /** Tell the coordinator (or `preferred`, e.g. the task's creator) — never the
85
+ * closed role itself. Uses the same coalesced dispatch as task notices. */
86
+ function notify(running, closedRole, line, preferred) {
87
+ const to = preferred && preferred !== closedRole ? preferred : running.bossRoleId;
88
+ if (!to || to === closedRole)
89
+ return;
90
+ queueDispatch(running, to, line);
91
+ }
92
+ /** Bus hook (daemon.ts's org subscriber): enforce the org-wide ceiling, note
93
+ * a per-role budget closure and warn on the approach to a budget. */
94
+ export function onBudgetBusEvent(running, e) {
95
+ if (e.type === 'usage')
96
+ enforceOrgBudget(running);
97
+ if (!e.from)
98
+ return;
99
+ if (e.type === 'status' && e.reason === 'budget-exhausted')
100
+ noteBudgetClosure(running, e.from);
101
+ else if (e.type === 'usage')
102
+ warnNearBudget(running, e.from);
103
+ }
104
+ /** The role's session is about to close for budget (session.ts emits the
105
+ * status event right before mailbox.close). Hold its open tasks — one it was
106
+ * working would otherwise sit 'running' with no one on it — and tell the
107
+ * coordinator. Both caps can trip in one turn: noted once. */
108
+ function noteBudgetClosure(running, roleId) {
109
+ const rt = running.agents.get(roleId);
110
+ if (!rt || !running.taskDag)
111
+ return;
112
+ if (running.budgetClosed?.has(roleId) && rt.mailbox.isClosed)
113
+ return;
114
+ (running.budgetClosed ??= new Set()).add(roleId);
115
+ const detail = exhaustedDetail(rt.policy) ?? 'budget exhausted';
116
+ const held = holdOpenTasks(running, roleId, detail);
117
+ const tasks = held.length
118
+ ? ` Its open task(s) are now blocked: ${held.map((t) => `${t.id} ("${t.title}")`).join(', ')}.`
119
+ : '';
120
+ notify(running, roleId, `[budget] "${roleId}" was closed: ${detail}. Tasks assigned to it stay blocked until its budget is raised.${tasks} ${remedy(running, roleId)}`);
121
+ }
122
+ /** Bus 'usage' hook: run_config.budget_tokens is an org-wide ceiling, not
123
+ * just a per-role one — a role's explicit budget_tokens override lets IT
124
+ * spend more without raising what every other role can spend. Once the run's
125
+ * total reaches it, close every open mailbox, stop lazy-spawning roles and
126
+ * hold the closed roles' tasks. Recorded on the running org, so a reload that
127
+ * raises the ceiling can reopen them and re-arm it (reopenOrgBudgetClosedRoles). */
128
+ function enforceOrgBudget(running) {
129
+ const cap = running.def.run_config.budget_tokens;
130
+ if (cap == null || running.orgBudgetClosed)
131
+ return;
132
+ const used = orgBudgetedUsage(running);
133
+ if (used < cap) {
134
+ warnApproach(running, {
135
+ key: 'run_config.budget_tokens',
136
+ budget: 'run_config.budget_tokens',
137
+ line: `the org has used ${used} of its ${cap} run_config.budget_tokens`,
138
+ spent: used,
139
+ cap,
140
+ consequence: `At the ceiling every role's session closes and their tasks are blocked. ${ORG_REMEDY}`,
141
+ data: { spentTokens: used, budgetTokens: cap },
142
+ });
143
+ return;
144
+ }
145
+ const closed = new Set();
146
+ running.orgBudgetClosed = closed;
147
+ if (running.pendingRoles?.size) {
148
+ // prevent lazy spawns after the org budget is exhausted; put back on reopen
149
+ running.orgBudgetPendingRoles = new Map(running.pendingRoles);
150
+ running.pendingRoles.clear();
151
+ }
152
+ for (const [roleId, rt] of running.agents) {
153
+ if (rt.mailbox.isClosed)
154
+ continue;
155
+ rt.mailbox.close('token-budget');
156
+ closed.add(roleId);
157
+ }
158
+ running.bus.emit({
159
+ type: 'status',
160
+ reason: 'org-budget-exhausted',
161
+ msg: `org-wide token budget exhausted (${used}/${cap}) — closing all roles`,
162
+ });
163
+ for (const roleId of closed)
164
+ holdOpenTasks(running, roleId, orgDetail(running));
165
+ }
166
+ function warnNearBudget(running, roleId) {
167
+ const policy = running.agents.get(roleId)?.policy;
168
+ if (!policy)
169
+ return;
170
+ const { maxUsd, maxTokens } = policy.policy;
171
+ const consequence = `At the cap its session closes and tasks assigned to it are blocked. ${remedy(running, roleId)}`;
172
+ if (maxUsd != null) {
173
+ const spent = policy.usageUsd;
174
+ warnApproach(running, {
175
+ key: `${roleId}:budget_usd`,
176
+ roleId,
177
+ budget: 'budget_usd',
178
+ line: `"${roleId}" has spent $${spent.toFixed(2)} of its $${maxUsd} budget_usd`,
179
+ spent,
180
+ cap: maxUsd,
181
+ consequence,
182
+ data: { spentUsd: spent, budgetUsd: maxUsd },
183
+ });
184
+ }
185
+ if (maxTokens != null) {
186
+ const spent = policy.budgetedUsage;
187
+ warnApproach(running, {
188
+ key: `${roleId}:budget_tokens`,
189
+ roleId,
190
+ budget: 'budget_tokens',
191
+ line: `"${roleId}" has used ${spent} of its ${maxTokens} budget_tokens`,
192
+ spent,
193
+ cap: maxTokens,
194
+ consequence,
195
+ data: { spentTokens: spent, budgetTokens: maxTokens },
196
+ });
197
+ }
198
+ }
199
+ /** Once per `key` per run, between BUDGET_WARN_FRACTION and the cap (at or
200
+ * over it the closure notice says it instead): a `budget-warning` audit event
201
+ * naming the budget, and a notice to the coordinator. */
202
+ function warnApproach(running, w) {
203
+ if (running.budgetWarned?.has(w.key))
204
+ return;
205
+ if (w.cap <= 0 || w.spent < w.cap * BUDGET_WARN_FRACTION || w.spent >= w.cap)
206
+ return;
207
+ (running.budgetWarned ??= new Set()).add(w.key);
208
+ const pct = Math.round((w.spent / w.cap) * 100);
209
+ running.bus.emit({
210
+ type: 'audit',
211
+ ...(w.roleId ? { from: w.roleId } : {}),
212
+ reason: 'budget-warning',
213
+ msg: `${w.line} (${pct}%)`,
214
+ data: { ...(w.roleId ? { roleId: w.roleId } : {}), budget: w.budget, ...w.data },
215
+ });
216
+ notify(running, w.roleId ?? '', `[budget] ${w.line} (${pct}%). ${w.consequence}`);
217
+ }
218
+ /** dispatchReadyTasks, for a task whose assignee's mailbox is closed: when it
219
+ * was closed for budget, hold the task with the reason, warn, tell the task's
220
+ * creator (or the coordinator) and return true. The task leaves 'ready', so
221
+ * this happens once per task. */
222
+ export function holdForBudgetClosedAssignee(running, task) {
223
+ const detail = budgetClosureDetail(running, task.assignee);
224
+ if (!detail || !running.taskDag)
225
+ return false;
226
+ const reason = holdReason(task.assignee, detail);
227
+ running.taskDag.holdForAssignee(task.id, reason);
228
+ running.bus.emit({
229
+ type: 'audit',
230
+ from: 'dag',
231
+ reason: 'dispatch-recipient-unavailable',
232
+ msg: `task ${task.id} not dispatched — assignee "${task.assignee}" budget exhausted (${detail}); task blocked`,
233
+ data: { taskId: task.id, assignee: task.assignee, blockedReason: reason },
234
+ });
235
+ notify(running, task.assignee, `${taskTag(task)} BLOCKED — "${task.title}" was not dispatched: ${reason}. ${remedy(running, task.assignee)}`, task.createdBy);
236
+ return true;
237
+ }
238
+ /** Put every budget-held task whose assignee is no longer budget-closed back
239
+ * to 'ready' — after a reload reopened it, a respawn replaced it, or a resume
240
+ * left its recoverable close open. Called at the top of dispatchReadyTasks. */
241
+ export function releaseBudgetHolds(running) {
242
+ if (!running.taskDag)
243
+ return;
244
+ for (const t of running.taskDag.all()) {
245
+ if (t.status !== 'blocked' || !t.heldForAssignee)
246
+ continue;
247
+ if (budgetClosureDetail(running, t.assignee) === undefined)
248
+ running.taskDag.releaseAssigneeHold(t.id);
249
+ }
250
+ }
251
+ /** Before a reload changes the def: the live roles whose token cap is the one
252
+ * the def gives them (their own budget_tokens, policy.maxTokens or their even
253
+ * split of run_config.budget_tokens) — not a replacement's explicit budget. */
254
+ export function rolesOnDefTokenCaps(running) {
255
+ const onDef = new Set();
256
+ for (const [roleId, rt] of running.agents) {
257
+ const cap = defTokenCap(running, roleId);
258
+ if (cap !== undefined && rt.policy.policy.maxTokens === cap)
259
+ onDef.add(roleId);
260
+ }
261
+ return onDef;
262
+ }
263
+ function defTokenCap(running, roleId) {
264
+ const role = running.def.roles.find((r) => r.id === roleId);
265
+ if (!role)
266
+ return undefined;
267
+ return role.policy?.maxTokens ?? computeReplacementBudget(running.def, roleId);
268
+ }
269
+ /** After a reload: give each of `onDef`'s live roles the token cap the new def
270
+ * gives it — a changed run_config.budget_tokens, or one role taking its own
271
+ * budget_tokens, moves every even-split role's share. */
272
+ function reapplyDefTokenCaps(running, onDef) {
273
+ for (const roleId of onDef) {
274
+ const policy = running.agents.get(roleId)?.policy;
275
+ const cap = defTokenCap(running, roleId);
276
+ if (!policy || cap === undefined || policy.policy.maxTokens === cap)
277
+ continue;
278
+ policy.setBudgetCaps({ maxTokens: cap, maxUsd: policy.policy.maxUsd });
279
+ }
280
+ }
281
+ /** Resume `roleId` the way a checkpoint resume does (a budget close is
282
+ * recoverable, so the new mailbox opens), one generation on, with its spend
283
+ * kept. False when it could not be spawned; the closed runtime stays. */
284
+ function respawnFromCheckpoint(running, roleId) {
285
+ const rt = running.agents.get(roleId);
286
+ const role = running.def.roles.find((r) => r.id === roleId);
287
+ if (!rt || !role || !running.spawnRole)
288
+ return false;
289
+ const rc = captureCheckpoint(running).roleState[roleId];
290
+ running.agents.delete(roleId);
291
+ running.spawnRole(role, { ...rc, generation: rc.generation + 1, status: 'running' });
292
+ const next = running.agents.get(roleId);
293
+ if (!next) {
294
+ running.agents.set(roleId, rt);
295
+ return false;
296
+ }
297
+ next.policy.setTokenUsage(rt.policy.tokenUsage);
298
+ next.policy.setUsageUsd(rt.policy.usageUsd);
299
+ return true;
300
+ }
301
+ /** After a reload: when the run's spend is now under run_config.budget_tokens,
302
+ * re-arm the ceiling at the new value and reopen the roles it closed (a role
303
+ * also over its own cap moves to the per-role path). Otherwise they stay
304
+ * closed and their held tasks get the new numbers. */
305
+ function reopenOrgBudgetClosedRoles(running) {
306
+ const closed = running.orgBudgetClosed;
307
+ if (!closed)
308
+ return [];
309
+ const cap = running.def.run_config.budget_tokens;
310
+ const used = orgBudgetedUsage(running);
311
+ if (cap != null && used >= cap) {
312
+ for (const roleId of closed)
313
+ refreshHolds(running, roleId);
314
+ return [];
315
+ }
316
+ running.orgBudgetClosed = undefined;
317
+ if (running.orgBudgetPendingRoles) {
318
+ running.pendingRoles ??= new Map();
319
+ for (const [id, role] of running.orgBudgetPendingRoles)
320
+ if (!running.agents.has(id))
321
+ running.pendingRoles.set(id, role);
322
+ running.orgBudgetPendingRoles = undefined;
323
+ }
324
+ const reopened = [];
325
+ for (const roleId of closed) {
326
+ const rt = running.agents.get(roleId);
327
+ if (!rt?.mailbox.isClosed || !isRecoverableCloseReason(rt.mailbox.closeReason))
328
+ continue;
329
+ if (exhaustedDetail(rt.policy))
330
+ (running.budgetClosed ??= new Set()).add(roleId);
331
+ else if (respawnFromCheckpoint(running, roleId))
332
+ reopened.push(roleId);
333
+ }
334
+ running.bus.emit({
335
+ type: 'audit',
336
+ reason: 'org-budget-reopened',
337
+ msg: `run_config.budget_tokens raised to ${cap ?? 'none'} (${used} used so far)${reopened.length ? ` — reopened ${reopened.join(', ')}` : ''}`,
338
+ data: { spentTokens: used, budgetTokens: cap ?? null, reopened },
339
+ });
340
+ return reopened;
341
+ }
342
+ /** After a hot reload applied new caps: re-derive the token caps of `onDef`'s
343
+ * roles (rolesOnDefTokenCaps, taken before the def changed), reopen the roles
344
+ * the org-wide ceiling closed if it now allows, then reopen each role closed
345
+ * for its own budget that is no longer over it, keeping its spend (the new
346
+ * cap applies to the total), and re-dispatch their tasks. A role still over
347
+ * its cap stays closed; its held tasks get the new numbers in their reason. */
348
+ export function reopenBudgetClosedRoles(daemon, org, running, onDef = new Set()) {
349
+ reapplyDefTokenCaps(running, onDef);
350
+ const reopened = reopenOrgBudgetClosedRoles(running);
351
+ for (const roleId of [...(running.budgetClosed ?? [])]) {
352
+ const rt = running.agents.get(roleId);
353
+ const role = running.def.roles.find((r) => r.id === roleId);
354
+ if (!rt || !role || !running.spawnRole)
355
+ continue;
356
+ if (!rt.mailbox.isClosed || !isRecoverableCloseReason(rt.mailbox.closeReason)) {
357
+ running.budgetClosed?.delete(roleId);
358
+ continue;
359
+ }
360
+ if (exhaustedDetail(rt.policy)) {
361
+ refreshHolds(running, roleId);
362
+ continue;
363
+ }
364
+ if (!respawnFromCheckpoint(running, roleId))
365
+ continue;
366
+ running.budgetClosed?.delete(roleId);
367
+ reopened.push(roleId);
368
+ running.bus.emit({
369
+ type: 'audit',
370
+ from: roleId,
371
+ reason: 'role-budget-reopened',
372
+ msg: `"${roleId}" reopened after its budget was raised ($${rt.policy.usageUsd.toFixed(2)} spent so far${role.budget_usd != null ? ` / $${role.budget_usd}` : ''})`,
373
+ data: { roleId, spentUsd: rt.policy.usageUsd, budgetUsd: role.budget_usd ?? null },
374
+ });
375
+ }
376
+ if (reopened.length)
377
+ dispatchReadyTasks(daemon, org, running);
378
+ return reopened;
379
+ }
380
+ //# sourceMappingURL=budget-closure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budget-closure.js","sourceRoot":"","sources":["../../../src/orgrt/budget-closure.ts"],"names":[],"mappings":"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"}
@@ -141,8 +141,9 @@ export interface RunningOrg {
141
141
  busEvents: () => BusEvent[];
142
142
  /** Roles not yet spawned — spawned lazily on first message. */
143
143
  pendingRoles?: Map<string, OrgRole>;
144
- /** Spawn a pending role on demand. */
145
- spawnRole?: (role: OrgRole) => void;
144
+ /** Spawn a pending role on demand — or, with a checkpoint, resume one
145
+ * (budget-closure.ts reopens a budget-closed role this way). */
146
+ spawnRole?: (role: OrgRole, roleCheckpoint?: RoleCheckpoint) => void;
146
147
  /** Git worktree path if workspace: 'worktree' — cleaned up on stop. */
147
148
  worktreePath?: string;
148
149
  /** Task DAG for structured work ordering. */
@@ -193,6 +194,19 @@ export interface RunningOrg {
193
194
  * bound on decisions.ts's nudgeOpenTasksAtTurnEnd. Cleared for a task when
194
195
  * it is dispatched again, so each dispatch is worth one nudge at most. */
195
196
  nudgedOpenTasks?: Set<string>;
197
+ /** #343: roles whose session closed on their own budget_usd/budget_tokens
198
+ * this run, reopened by a reload that raises it (budget-closure.ts). */
199
+ budgetClosed?: Set<string>;
200
+ /** #343: budgets the coordinator was warned about nearing, once per run:
201
+ * `<role>:budget_usd`, `<role>:budget_tokens`, `run_config.budget_tokens`. */
202
+ budgetWarned?: Set<string>;
203
+ /** #343: set while the org-wide run_config.budget_tokens ceiling is spent —
204
+ * the roles it closed. A reload that raises the ceiling past the run's
205
+ * spend reopens them and clears this, re-arming the ceiling (budget-closure.ts). */
206
+ orgBudgetClosed?: Set<string>;
207
+ /** #343: pendingRoles set aside when the org-wide ceiling closed the org,
208
+ * put back when a reload reopens it. */
209
+ orgBudgetPendingRoles?: Map<string, OrgRole>;
196
210
  /** #304: why this run is stopping, set by stopOrg before the org is removed from
197
211
  * `this.orgs`. Read by the role loop so a planned stop is logged with one stable
198
212
  * wording instead of whichever abort string the SDK produced. */
@@ -299,6 +313,10 @@ export declare class OrgDaemon {
299
313
  resolvedBy?: string;
300
314
  resolvedAt?: number;
301
315
  }[]>;
316
+ /** @internal #345: per org, the actions `org run --auto-approve` pre-approved
317
+ * for the current run (approvals.ts's checkApproval). Kept across a boss
318
+ * auto-restart, replaced by every other start. */
319
+ runAutoApprove: Map<string, string[]>;
302
320
  /** @internal */ approvalLocks: Map<string, Promise<unknown>>;
303
321
  /** @internal */ gatesLocks: Map<string, Promise<unknown>>;
304
322
  /** @internal */ questionsLocks: Map<string, Promise<unknown>>;
@@ -354,6 +372,7 @@ export declare class OrgDaemon {
354
372
  private workspaceSetting;
355
373
  startOrg(name: string, taskOverride?: string, options?: {
356
374
  resume?: boolean;
375
+ autoApprove?: string[];
357
376
  }): Promise<RunningOrg>;
358
377
  /** The actual startOrg implementation. Split out of startOrg() so the
359
378
  * reservation guard above runs synchronously, before any `await` in here —
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../../src/orgrt/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../../src/orgrt/daemon.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAQ5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAQ9C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAKL,KAAK,aAAa,EAClB,KAAK,cAAc,EAIpB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,KAAK,eAAe,EAAsC,MAAM,sBAAsB,CAAC;AAEhG,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAI3C,OAAO,EAEL,KAAK,YAAY,EAMlB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,YAAY,CAAC;AAmBpB,OAAO,EAA4B,OAAO,EAAE,MAAM,cAAc,CAAC;AAKjE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAa3C,OAAO,EAIL,KAAK,cAAc,EAEnB,KAAK,QAAQ,EAGd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAA6B,KAAK,SAAS,EAAa,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAuB,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAGvF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,KAAK,UAAU,EAAwB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC7F,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,YAAY,EAEjB,KAAK,MAAM,EAEX,KAAK,OAAO,EACZ,KAAK,cAAc,EACpB,MAAM,YAAY,CAAC;AAsCpB;;;;;;+BAM+B;AAC/B,MAAM,MAAM,WAAW,GACnB,QAAQ,GACR,UAAU,GACV,UAAU,GACV,QAAQ,GACR,OAAO,GACP,aAAa,GACb,MAAM,GACN,MAAM,GACN,OAAO,GACP,SAAS,GACT,IAAI;AACN;;;;6DAI6D;GAC3D,QAAQ;AACV;;;;;;;;;kBASkB;GAChB,UAAU;AACZ;;;;;0BAK0B;GACxB,QAAQ,CAAC;AACb,MAAM,MAAM,YAAY,GACpB,cAAc,GACd,SAAS,GACT,UAAU,GACV,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,gBAAgB,GAChB,OAAO,GACP,aAAa,CAAC;AAUlB,wBAAgB,aAAa,CAC3B,UAAU,CAAC,EAAE,WAAW,EACxB,YAAY,CAAC,EAAE,YAAY,EAC3B,QAAQ,CAAC,EAAE,cAAc,GACxB,WAAW,GAAG,SAAS,CA8BzB;AAED;;;;0EAI0E;AAC1E,wBAAgB,iBAAiB,CAC/B,WAAW,CAAC,EAAE,WAAW,EACzB,UAAU,CAAC,EAAE,WAAW,EACxB,gBAAgB,CAAC,EAAE,YAAY,EAC/B,eAAe,CAAC,EAAE,YAAY,EAC9B,YAAY,CAAC,EAAE,cAAc,GAC5B,WAAW,GAAG,SAAS,CAIzB;AAED,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD;+DAC+D;AAC/D,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAOlE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;+CAyB+C;AAC/C,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,GACvB,MAAM,CAER;AAED,yDAAyD;AACzD,qBAAa,gBAAgB;IAEf,OAAO,CAAC,QAAQ;IAD5B,OAAO,CAAC,KAAK,CAAgB;IAC7B,YAAoB,QAAQ,SAAM,EAAI;IACtC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAGvB;IACD,QAAQ,IAAI,MAAM,EAAE,CAEnB;IACD,KAAK,IAAI,IAAI,CAEZ;CACF;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,yFAAyF;IACzF,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,oDAAoD;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sGAAsG;IACtG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,UAAU,EAAE,gBAAgB,CAAC;IAC7B;;;0EAGsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;uDACmD;IACnD,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ;kFAC8E;IAC9E,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,2EAA2E;IAC3E,KAAK,CAAC,EAAE;QAAE,KAAK,EAAE,YAAY,EAAE,CAAA;KAAE,CAAC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAClC,SAAS,EAAE,MAAM,QAAQ,EAAE,CAAC;IAC5B,+DAA+D;IAC/D,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC;qEACiE;IACjE,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IACrE,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAChC;;kFAE8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;sDAIkD;IAClD,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjC;;wCAEoC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB;4EACwE;IACxE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;mDAC+C;IAC/C,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB;gFAC4E;IAC5E,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjC,iFAAiF;IACjF,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,wEAAwE;IACxE,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B;;;;gDAI4C;IAC5C,eAAe,CAAC,EAAE,GAAG,CACnB,MAAM,EACN;QACE,KAAK,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACpC,KAAK,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;QACrC,2DAA2D;QAC3D,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;KAC/C,CACF,CAAC;IACF;;+EAE2E;IAC3E,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B;6EACyE;IACzE,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B;mFAC+E;IAC/E,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B;;yFAEqF;IACrF,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B;6CACyC;IACzC,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7C;;sEAEkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;gFAGgF;AAChF,wBAAgB,eAAe,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,CAIvD;AAED;;;;;;;;4EAQ4E;AAC5E,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,EAC1C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,EAC7D,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,QAAQ,EAAE,IAAI,CACZ,eAAe,EACf,MAAM,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,gBAAgB,CACzF,GACA,MAAM,GAAG,IAAI,CA6Bf;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB;;4EAEwE;IACxE,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;+EAG2E;IAC3E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;uEAEmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mHAAmH;IACnH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;6BAEyB;IACzB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B;oCACgC;IAChC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC;8CAC0C;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;mEAE+D;IAC/D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uFAAuF;IACvF,WAAW,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;KAAE,CAAC;IAC7D,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,iFAAiF;IACjF,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iEAAiE;IACjE,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,qBAAa,SAAS;IAkElB,gBAAgB,CAAQ,IAAI,EAAE,MAAM;IACpC,gBAAgB,CAAQ,IAAI,EAAE,UAAU;IAlE1C,gBAAgB,CAAC,IAAI,0BAAiC;IACtD,gBAAgB,CAAC,MAAM,cAAqB;IAC5C,gBAAgB,CAAC,iBAAiB,UAAe,QAAQ,KAAK,IAAI,EAAI;IACtE,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAkC;IACjE,gBAAgB,CAAC,OAAO,CAAC,UAAU,CAAyD;IAC5F,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAqD;IACvF,gBAAgB,CAAC,QAAQ,6BAAoC;IAC7D;;;;sDAIkD;IAClD,gBAAgB,CAAC,YAAY,cAAqB;IAClD,gBAAgB,CAAC,SAAS;gBAGd,MAAM;gBACN,MAAM;QACd;;;;;qEAK6D;sBAC/C,MAAM;kBACV,MAAM;YACZ,MAAM;kBACA,OAAO,GAAG,IAAI;QACxB,+DAA+D;oBACnD,MAAM;QAClB,gEAAgE;gBACxD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;QAC/B,gDAAgD;qBACnC,MAAM;qBACN,MAAM;SAEnB;IACJ;;uDAEmD;IACnD,cAAc,wBAA+B;IAC7C,gBAAgB,CAAC,aAAa,gCAAuC;IACrE,gBAAgB,CAAC,UAAU,gCAAuC;IAClE,gBAAgB,CAAC,cAAc,gCAAuC;IACtE,gBAAgB,CAAC,QAAQ,2BAAkC;IAC3D,MAAM,CAAC,QAAQ,CAAC,iBAAiB,KAAK;IACtC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,WAAoB;IAC3D,gBAAgB,CAAC,iBAAiB,sBAA6B;IAC/D,gBAAgB,CAAC,UAAU,cAAqB;IAGhD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CACsF;IAE9H,gBAAgB,CAAC,WAAW,2BAAkC;IAC9D,gBAAgB,CAAC,cAAc,cAAqB;IACpD,gBAAgB,CAAC,SAAS,2BAAkC;IAC5D;;0DAEsD;IACtD,gBAAgB,CAAC,YAAY,sBAA6B;IAC1D,0EAA0E;IAC1E,gBAAgB,CAAC,aAAa,kBAAyB;IAEvD;IACE,gBAAgB,CAAQ,IAAI,EAAE,MAAM;IACpC,gBAAgB,CAAQ,IAAI,GAAE,UAAe,EAC3C;IAEJ,4FAA4F;IAC5F,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAG1D;IAED,6EAA6E;IAC7E,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,GAAG,MAAM,IAAI,CAG/C;IAED,QAAQ,IAAI,UAAU,EAAE,CAEvB;IACD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAE3C;IAED;;;6CAGyC;IACzC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,YAAY,EAAE,MAAM,EAAE,CAAA;KAAE,CAgG5F;IACD;8DAC0D;IAC1D,WAAW,IAAI,MAAM,EAAE,CAEtB;IAED;;;sCAGkC;IAClC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAE9C;IAED,yFAAyF;IACzF,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,KAAK,IAAI,CAE9C;IAEF,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqB/C;IAEF;;;+BAG2B;IAC3B,OAAO,CAAC,gBAAgB;IAOlB,QAAQ,CACZ,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GACrD,OAAO,CAAC,UAAU,CAAC,CAyDrB;IAED;;+CAE2C;YAC7B,aAAa;IA65B3B;;;;qEAIiE;IACjE,oBAAoB,CAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,OAAO,EACb,UAAU,EAAE,MAAM,EAClB,IAAI,GAAE;QACJ,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,KAAK,CAAC,EAAE,eAAe,CAAC;QACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;KAC1B,GACL;QAAE,OAAO,EAAE,YAAY,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE,CAymBnD;IAED;;gDAE4C;IACtC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CA4U5F;IAED,gBAAgB;IAChB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG/B;IAED;;;;;;;4EAOwE;IAClE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BzF;YAEa,UAAU;IA8RlB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAK7B;IAED;;;;;kEAK8D;IAC9D,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,GAAG,CAAC,EAAE,UAAU,EAChB,kBAAkB,CAAC,EAAE,aAAa,GAAG,IAAI,EACzC,QAAQ,CAAC,EAAE,MAAM,GAChB,IAAI,CAgDN;IAED;;;;8EAI0E;IAC1E,oBAAoB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CA6BzC;IAED,OAAO,CAAC,aAAa;IAIrB;mEAC+D;IAC/D,cAAc,IAAI,IAAI,CAcrB;IAED,cAAc,IAAI,IAAI,CAMrB;IAKD,OAAO,CAAC,aAAa;IAQf,WAAW,CACf,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,OAAO,EACjB,IAAI,CAAC,EAAE,WAAW,CAAC,mBAAmB,GACrC,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAEtD;IAGK,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAE/F;IACK,cAAc,CAClB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAEtD;IAGD,OAAO,CAAC,SAAS;IAGX,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAE9F;IACK,WAAW,CACf,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,OAAO,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAEtD;IACD,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,EAAE,CAEnF;IACD,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,eAAe;IASvB,yDAAyD;IACzD,gBAAgB,CACd,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,MAAM,GACZ,MAAM,CAER;IACD,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;IAGpB,OAAO,CAAC,aAAa;IAGrB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,YAAY;IAGpB,cAAc,CACZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;QAClD,IAAI,EAAE,YAAY,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACxE,OAAO,EAAE,MAAM,CAAC;KACjB,GACA,IAAI,CAEN;IAGK,OAAO,CACX,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,CAEjB;IACD,aAAa,CACX,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,cAAc,CAAC,EAAE,MAAM,EACvB,IAAI,CAAC,EAAE,QAAQ,CAAC,iBAAiB,GAChC,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAWvE;IAGD,kBAAkB,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAEnD;IAGD,gBAAgB;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAE3B;IACD,OAAO,CAAC,mBAAmB;IAG3B,gBAAgB;IAChB,qBAAqB,CACnB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CAEN;IACD;;kFAE8E;IAC9E,gBAAgB;IAChB,gCAAgC,CAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GACjC,IAAI,CAEN;IAGD,OAAO,CAAC,kBAAkB;IAG1B,OAAO,CAAC,eAAe;IAGvB,OAAO,CAAC,eAAe;YAGT,iBAAiB;YAUjB,eAAe;IAQvB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAEnF;YACa,iBAAiB;YAOjB,cAAc;IAWtB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAEtE;IACK,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAExD;CACF"}