agent-nuvira 3.3.0 → 3.3.3

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 (231) hide show
  1. package/.agents/skills/code-assessment/SKILL.md +10 -1
  2. package/.agents/skills/index.json +1 -1
  3. package/README.md +47 -9
  4. package/dist/agents/agents/runner.d.ts +9 -0
  5. package/dist/agents/agents/runner.d.ts.map +1 -1
  6. package/dist/agents/agents/runner.js +34 -12
  7. package/dist/agents/agents/runner.js.map +1 -1
  8. package/dist/agents/agents/writer-tool-calling.d.ts.map +1 -1
  9. package/dist/agents/agents/writer-tool-calling.js +7 -2
  10. package/dist/agents/agents/writer-tool-calling.js.map +1 -1
  11. package/dist/agents/agents/writer.d.ts.map +1 -1
  12. package/dist/agents/agents/writer.js +7 -1
  13. package/dist/agents/agents/writer.js.map +1 -1
  14. package/dist/agents/artifact-verification.d.ts +102 -0
  15. package/dist/agents/artifact-verification.d.ts.map +1 -0
  16. package/dist/agents/artifact-verification.js +216 -0
  17. package/dist/agents/artifact-verification.js.map +1 -0
  18. package/dist/agents/checkpoint-store.d.ts +73 -0
  19. package/dist/agents/checkpoint-store.d.ts.map +1 -1
  20. package/dist/agents/checkpoint-store.js +161 -0
  21. package/dist/agents/checkpoint-store.js.map +1 -1
  22. package/dist/agents/credential-store.d.ts +120 -0
  23. package/dist/agents/credential-store.d.ts.map +1 -1
  24. package/dist/agents/credential-store.js +358 -19
  25. package/dist/agents/credential-store.js.map +1 -1
  26. package/dist/agents/orchestrator.d.ts +10 -1
  27. package/dist/agents/orchestrator.d.ts.map +1 -1
  28. package/dist/agents/orchestrator.js +234 -75
  29. package/dist/agents/orchestrator.js.map +1 -1
  30. package/dist/agents/phase-engine.d.ts +61 -0
  31. package/dist/agents/phase-engine.d.ts.map +1 -1
  32. package/dist/agents/phase-engine.js +68 -2
  33. package/dist/agents/phase-engine.js.map +1 -1
  34. package/dist/agents/prompt-assembly.d.ts +11 -0
  35. package/dist/agents/prompt-assembly.d.ts.map +1 -1
  36. package/dist/agents/prompt-assembly.js +17 -0
  37. package/dist/agents/prompt-assembly.js.map +1 -1
  38. package/dist/agents/release-preflight.d.ts +121 -0
  39. package/dist/agents/release-preflight.d.ts.map +1 -0
  40. package/dist/agents/release-preflight.js +259 -0
  41. package/dist/agents/release-preflight.js.map +1 -0
  42. package/dist/agents/release-runner.d.ts +157 -0
  43. package/dist/agents/release-runner.d.ts.map +1 -0
  44. package/dist/agents/release-runner.js +719 -0
  45. package/dist/agents/release-runner.js.map +1 -0
  46. package/dist/agents/step-handoff.d.ts +190 -0
  47. package/dist/agents/step-handoff.d.ts.map +1 -0
  48. package/dist/agents/step-handoff.js +443 -0
  49. package/dist/agents/step-handoff.js.map +1 -0
  50. package/dist/cli/benchmark.d.ts.map +1 -1
  51. package/dist/cli/benchmark.js +11 -4
  52. package/dist/cli/benchmark.js.map +1 -1
  53. package/dist/cli/chat.d.ts.map +1 -1
  54. package/dist/cli/chat.js +25 -4
  55. package/dist/cli/chat.js.map +1 -1
  56. package/dist/cli/cli-program.d.ts.map +1 -1
  57. package/dist/cli/cli-program.js +9 -2
  58. package/dist/cli/cli-program.js.map +1 -1
  59. package/dist/cli/commands.d.ts +2 -1
  60. package/dist/cli/commands.d.ts.map +1 -1
  61. package/dist/cli/commands.js +3 -2
  62. package/dist/cli/commands.js.map +1 -1
  63. package/dist/cli/config.js +2 -2
  64. package/dist/cli/config.js.map +1 -1
  65. package/dist/cli/credentials.d.ts +28 -0
  66. package/dist/cli/credentials.d.ts.map +1 -0
  67. package/dist/cli/credentials.js +213 -0
  68. package/dist/cli/credentials.js.map +1 -0
  69. package/dist/cli/dashboard.d.ts +26 -0
  70. package/dist/cli/dashboard.d.ts.map +1 -1
  71. package/dist/cli/dashboard.js +123 -3
  72. package/dist/cli/dashboard.js.map +1 -1
  73. package/dist/cli/failover-runner.d.ts.map +1 -1
  74. package/dist/cli/failover-runner.js +9 -3
  75. package/dist/cli/failover-runner.js.map +1 -1
  76. package/dist/cli/intent.d.ts +1 -1
  77. package/dist/cli/intent.js +2 -2
  78. package/dist/cli/intent.js.map +1 -1
  79. package/dist/cli/loop-executor.d.ts +7 -0
  80. package/dist/cli/loop-executor.d.ts.map +1 -1
  81. package/dist/cli/loop-executor.js +75 -7
  82. package/dist/cli/loop-executor.js.map +1 -1
  83. package/dist/cli/nlu.d.ts.map +1 -1
  84. package/dist/cli/nlu.js +8 -2
  85. package/dist/cli/nlu.js.map +1 -1
  86. package/dist/cli/process-control.d.ts +15 -0
  87. package/dist/cli/process-control.d.ts.map +1 -1
  88. package/dist/cli/process-control.js +38 -14
  89. package/dist/cli/process-control.js.map +1 -1
  90. package/dist/cli/publish.d.ts +22 -0
  91. package/dist/cli/publish.d.ts.map +1 -1
  92. package/dist/cli/publish.js +109 -13
  93. package/dist/cli/publish.js.map +1 -1
  94. package/dist/config/live-credentials.d.ts +57 -0
  95. package/dist/config/live-credentials.d.ts.map +1 -0
  96. package/dist/config/live-credentials.js +126 -0
  97. package/dist/config/live-credentials.js.map +1 -0
  98. package/dist/config/paths.d.ts +18 -0
  99. package/dist/config/paths.d.ts.map +1 -1
  100. package/dist/config/paths.js +25 -0
  101. package/dist/config/paths.js.map +1 -1
  102. package/dist/federation/a2a-types.js +1 -1
  103. package/dist/federation/a2a-types.js.map +1 -1
  104. package/dist/forwarded.d.ts +2 -0
  105. package/dist/forwarded.d.ts.map +1 -0
  106. package/dist/forwarded.js +2 -0
  107. package/dist/forwarded.js.map +1 -0
  108. package/dist/inference/model-validator.d.ts +6 -1
  109. package/dist/inference/model-validator.d.ts.map +1 -1
  110. package/dist/inference/model-validator.js +7 -2
  111. package/dist/inference/model-validator.js.map +1 -1
  112. package/dist/inference/route-resolver.d.ts +116 -0
  113. package/dist/inference/route-resolver.d.ts.map +1 -0
  114. package/dist/inference/route-resolver.js +159 -0
  115. package/dist/inference/route-resolver.js.map +1 -0
  116. package/dist/inference/tool-call-utils.d.ts +44 -0
  117. package/dist/inference/tool-call-utils.d.ts.map +1 -1
  118. package/dist/inference/tool-call-utils.js +126 -4
  119. package/dist/inference/tool-call-utils.js.map +1 -1
  120. package/dist/learning/autonomy-policy.d.ts +24 -0
  121. package/dist/learning/autonomy-policy.d.ts.map +1 -1
  122. package/dist/learning/autonomy-policy.js +110 -23
  123. package/dist/learning/autonomy-policy.js.map +1 -1
  124. package/dist/learning/eval-framework.d.ts +24 -0
  125. package/dist/learning/eval-framework.d.ts.map +1 -1
  126. package/dist/learning/eval-framework.js +291 -0
  127. package/dist/learning/eval-framework.js.map +1 -1
  128. package/dist/learning/intent-envelope.d.ts +162 -0
  129. package/dist/learning/intent-envelope.d.ts.map +1 -0
  130. package/dist/learning/intent-envelope.js +235 -0
  131. package/dist/learning/intent-envelope.js.map +1 -0
  132. package/dist/learning/reasoning-trace.d.ts +2 -2
  133. package/dist/learning/reasoning-trace.d.ts.map +1 -1
  134. package/dist/learning/reasoning-trace.js +25 -1
  135. package/dist/learning/reasoning-trace.js.map +1 -1
  136. package/dist/learning/resilient-call.d.ts.map +1 -1
  137. package/dist/learning/resilient-call.js +29 -17
  138. package/dist/learning/resilient-call.js.map +1 -1
  139. package/dist/learning/run-trace.d.ts +164 -0
  140. package/dist/learning/run-trace.d.ts.map +1 -0
  141. package/dist/learning/run-trace.js +342 -0
  142. package/dist/learning/run-trace.js.map +1 -0
  143. package/dist/learning/skill-store.d.ts.map +1 -1
  144. package/dist/learning/skill-store.js +35 -10
  145. package/dist/learning/skill-store.js.map +1 -1
  146. package/dist/learning/skill-types.d.ts +14 -0
  147. package/dist/learning/skill-types.d.ts.map +1 -1
  148. package/dist/learning/skill-types.js +19 -0
  149. package/dist/learning/skill-types.js.map +1 -1
  150. package/dist/mcp/catalog.js +2 -3
  151. package/dist/mcp/catalog.js.map +1 -1
  152. package/dist/mcp/manager.d.ts.map +1 -1
  153. package/dist/mcp/manager.js +5 -3
  154. package/dist/mcp/manager.js.map +1 -1
  155. package/dist/resources/command-manifest.json +10 -10
  156. package/dist/skills/bundled-skills.d.ts.map +1 -1
  157. package/dist/skills/bundled-skills.js +13 -2
  158. package/dist/skills/bundled-skills.js.map +1 -1
  159. package/dist/skills/secret-capture.d.ts.map +1 -1
  160. package/dist/skills/secret-capture.js +9 -4
  161. package/dist/skills/secret-capture.js.map +1 -1
  162. package/dist/tools/coding-tools.d.ts.map +1 -1
  163. package/dist/tools/coding-tools.js +33 -8
  164. package/dist/tools/coding-tools.js.map +1 -1
  165. package/dist/tools/credentials-tool.d.ts +24 -0
  166. package/dist/tools/credentials-tool.d.ts.map +1 -0
  167. package/dist/tools/credentials-tool.js +125 -0
  168. package/dist/tools/credentials-tool.js.map +1 -0
  169. package/dist/tools/edit-verification.d.ts +78 -0
  170. package/dist/tools/edit-verification.d.ts.map +1 -1
  171. package/dist/tools/edit-verification.js +213 -16
  172. package/dist/tools/edit-verification.js.map +1 -1
  173. package/dist/tools/git-tool.d.ts +25 -7
  174. package/dist/tools/git-tool.d.ts.map +1 -1
  175. package/dist/tools/git-tool.js +155 -15
  176. package/dist/tools/git-tool.js.map +1 -1
  177. package/dist/tools/loop-project-context.d.ts.map +1 -1
  178. package/dist/tools/loop-project-context.js +16 -0
  179. package/dist/tools/loop-project-context.js.map +1 -1
  180. package/dist/tools/loop-route-feed.d.ts +57 -0
  181. package/dist/tools/loop-route-feed.d.ts.map +1 -0
  182. package/dist/tools/loop-route-feed.js +101 -0
  183. package/dist/tools/loop-route-feed.js.map +1 -0
  184. package/dist/tools/pipeline-tool.d.ts.map +1 -1
  185. package/dist/tools/pipeline-tool.js +8 -2
  186. package/dist/tools/pipeline-tool.js.map +1 -1
  187. package/dist/tools/publish-tool.d.ts.map +1 -1
  188. package/dist/tools/publish-tool.js +76 -10
  189. package/dist/tools/publish-tool.js.map +1 -1
  190. package/dist/tools/registry.d.ts +52 -3
  191. package/dist/tools/registry.d.ts.map +1 -1
  192. package/dist/tools/registry.js +88 -11
  193. package/dist/tools/registry.js.map +1 -1
  194. package/dist/tools/run-cli.d.ts.map +1 -1
  195. package/dist/tools/run-cli.js +15 -2
  196. package/dist/tools/run-cli.js.map +1 -1
  197. package/dist/tools/run-terminal.d.ts +9 -0
  198. package/dist/tools/run-terminal.d.ts.map +1 -1
  199. package/dist/tools/run-terminal.js +103 -6
  200. package/dist/tools/run-terminal.js.map +1 -1
  201. package/dist/tools/skill-tool.d.ts.map +1 -1
  202. package/dist/tools/skill-tool.js +5 -0
  203. package/dist/tools/skill-tool.js.map +1 -1
  204. package/dist/tools/tool-loop.d.ts +40 -6
  205. package/dist/tools/tool-loop.d.ts.map +1 -1
  206. package/dist/tools/tool-loop.js +409 -14
  207. package/dist/tools/tool-loop.js.map +1 -1
  208. package/dist/tools/toolsets.js +2 -2
  209. package/dist/tools/toolsets.js.map +1 -1
  210. package/dist/web-dashboard/chat-console.d.ts +5 -0
  211. package/dist/web-dashboard/chat-console.d.ts.map +1 -1
  212. package/dist/web-dashboard/chat-console.js +32 -3
  213. package/dist/web-dashboard/chat-console.js.map +1 -1
  214. package/dist/web-dashboard/server.d.ts +46 -0
  215. package/dist/web-dashboard/server.d.ts.map +1 -1
  216. package/dist/web-dashboard/server.js +115 -1
  217. package/dist/web-dashboard/server.js.map +1 -1
  218. package/dist/web-dashboard/src/admin-auth.d.ts +49 -2
  219. package/dist/web-dashboard/src/admin-auth.d.ts.map +1 -1
  220. package/dist/web-dashboard/src/admin-auth.js +64 -3
  221. package/dist/web-dashboard/src/admin-auth.js.map +1 -1
  222. package/dist/web-dashboard/src/types.d.ts +41 -0
  223. package/dist/web-dashboard/src/types.d.ts.map +1 -1
  224. package/dist/workflow/registry.js +1 -1
  225. package/dist/workflow/registry.js.map +1 -1
  226. package/package.json +9 -5
  227. package/src/web-dashboard/public/assets/index-CxDj7p6i.js +207 -0
  228. package/src/web-dashboard/public/assets/index-CxDj7p6i.js.map +1 -0
  229. package/src/web-dashboard/public/index.html +1 -1
  230. package/src/web-dashboard/public/assets/index-kCUkORm7.js +0 -207
  231. package/src/web-dashboard/public/assets/index-kCUkORm7.js.map +0 -1
@@ -0,0 +1,159 @@
1
+ /**
2
+ * Route resolution — the ONE place a provider and its model are validated as a
3
+ * PAIR, against the very adapter that will serve the call.
4
+ *
5
+ * WHY THIS EXISTS (issue #9). A live release run failed its first model call
6
+ * with `Groq API error (404): The model 'gemini-3.1-flash-lite' does not exist`
7
+ * — a Gemini id sent to Groq, on a machine whose `nuviraconfig.json` pins
8
+ * `providers.groq.model = openai/gpt-oss-120b` and `providers.gemini.model =
9
+ * gemini-flash-latest`. Neither pin was stale, so the foreign id came from a
10
+ * RESOLUTION: provider and model were decided in different places (provider
11
+ * ranking, the auto-router's per-task decision, and a site-local
12
+ * `config.model || inferenceOptions?.model` fallback), and nothing checked that
13
+ * the three agreed.
14
+ *
15
+ * The same class had already been found twice and patched at one call site each
16
+ * time — chat's failover path (`src/cli/chat.ts`) and catalog-provider
17
+ * substitution (`src/cli/router.ts`) — which is why `publish` still walked into
18
+ * it: the fix never reached a SHARED path. This module is that shared path.
19
+ *
20
+ * INVARIANTS
21
+ * 1. The model is validated against `provider` — the instance the caller is
22
+ * about to call — never against a provider looked up separately.
23
+ * 2. A substitution is NEVER silent: it is printed, and it is recorded (the
24
+ * routing history the dashboard reads, plus the active run trace when one
25
+ * exists). A broken pair that looks healthy is worse than no report at all.
26
+ * 3. `strict` (or `NUVIRA_STRICT_MODEL=1`) refuses to substitute at all, so a
27
+ * pinned model that is dead fails with a sentence naming the pair instead of
28
+ * quietly running on a different model.
29
+ *
30
+ * It is deliberately thin: `resolveWorkingModel()` already owns the repair
31
+ * policy (registry fast path → live list → catalog default) and is the only
32
+ * place a model list is fetched. This wrapper adds the PAIR guarantee, the
33
+ * audit, and the reporting — it must never grow a second repair policy.
34
+ */
35
+ import { resolveWorkingModel } from './model-validator.js';
36
+ import { getDefaultModel } from './provider-catalog.js';
37
+ import { logger } from '../utils/logger.js';
38
+ import { recordRoutingDecision } from '../learning/routing-history.js';
39
+ import { recordTraceEvent } from '../learning/reasoning-trace.js';
40
+ /** Strip a {@link ResolvedRoute} down to the feedable fact. */
41
+ export function servedRouteFrom(route) {
42
+ return {
43
+ providerType: route.providerType,
44
+ providerName: route.provider?.name,
45
+ model: route.model,
46
+ requested: route.requested,
47
+ substituted: route.substituted,
48
+ };
49
+ }
50
+ /**
51
+ * Strict model mode — a dead pin FAILS instead of being substituted.
52
+ *
53
+ * Off by default: a release or a long agent run must not stop dead because one
54
+ * provider retired a model. On for a caller who would rather know than proceed
55
+ * (`NUVIRA_STRICT_MODEL=1`), because "it ran on something else" is exactly the
56
+ * outcome that is invisible until much later.
57
+ */
58
+ export function strictModelMode() {
59
+ return process.env.NUVIRA_STRICT_MODEL === '1';
60
+ }
61
+ /**
62
+ * Substitutions already reported in this process, keyed by `provider::requested→served`.
63
+ *
64
+ * A substitution is a property of the PAIR, not of the call: the router selects
65
+ * the same dead model on every message, and one release pipeline can make
66
+ * hundreds of calls. Reporting each one buried the transcript (a live chat run
67
+ * printed the same repair twice for a single turn — once from the pinned repair,
68
+ * once from the failover walk) and wrote the same routing-history row over and
69
+ * over. Announced once per pair per process, then quiet.
70
+ */
71
+ const reportedSubstitutions = new Set();
72
+ /** Test hook: forget what has already been announced. */
73
+ export function resetSubstitutionReporting() {
74
+ reportedSubstitutions.clear();
75
+ }
76
+ /** One line naming the pair that was substituted, for the console and the trace. */
77
+ export function substitutionLine(input) {
78
+ return (`🔀 Model substituted: ${input.providerType}/${input.requested} → ${input.served} ` +
79
+ `('${input.requested}' is not available on ${input.providerType})`);
80
+ }
81
+ /**
82
+ * Report a substitution: print it, audit it, and attach it to the active run
83
+ * trace when there is one. Best-effort throughout — reporting must never break
84
+ * the call it is reporting on.
85
+ */
86
+ export function reportSubstitution(input) {
87
+ const line = substitutionLine(input);
88
+ const key = `${input.providerType}::${input.requested}->${input.served}`;
89
+ // Say it ONCE. The audit entries below are deduped with the line (see
90
+ // `reportedSubstitutions`) so the console, the dashboard history and the run
91
+ // trace agree about how many substitutions happened.
92
+ if (reportedSubstitutions.has(key))
93
+ return;
94
+ reportedSubstitutions.add(key);
95
+ logger.warn(line);
96
+ try {
97
+ const source = input.source === 'chat' ? 'chat' : 'orchestrator';
98
+ recordRoutingDecision({
99
+ source,
100
+ agentType: input.agentType || 'unknown',
101
+ task: input.task || `model substituted on ${input.providerType}`,
102
+ complexity: 'simple',
103
+ provider: input.providerType,
104
+ model: input.served,
105
+ score: 0,
106
+ });
107
+ }
108
+ catch {
109
+ // Best-effort — audit is not allowed to break the call.
110
+ }
111
+ try {
112
+ // No trace id: the trace module attaches this to the run in progress.
113
+ recordTraceEvent(undefined, { kind: 'decision', summary: line, ok: true });
114
+ }
115
+ catch {
116
+ // Best-effort.
117
+ }
118
+ }
119
+ /**
120
+ * Resolve `{providerType, provider, model}` as ONE validated pair.
121
+ *
122
+ * Never throws for a missing/unreachable model (it resolves one); it throws ONLY
123
+ * when strict mode is on and a requested model could not be honoured, which is
124
+ * the one case where proceeding would be a lie about what ran.
125
+ */
126
+ export async function resolveRoute(request) {
127
+ const { provider, providerType } = request;
128
+ const requested = request.model && request.model !== 'default' ? request.model : undefined;
129
+ let served = '';
130
+ try {
131
+ served = await resolveWorkingModel(provider, providerType, request.model);
132
+ }
133
+ catch {
134
+ // The validator is best-effort by contract; if it throws, a real model id is
135
+ // still better than the 'default' sentinel reaching the API.
136
+ served = requested || '';
137
+ }
138
+ if (!served || served === 'default') {
139
+ served = requested || getDefaultModel(providerType) || '';
140
+ }
141
+ const substituted = !!requested && served !== requested;
142
+ if (substituted) {
143
+ if (request.strict ?? strictModelMode()) {
144
+ throw new Error(`Model '${requested}' is not available on '${providerType}', and strict model mode ` +
145
+ 'forbids substituting another model. Pick a model this provider serves ' +
146
+ '(`nuvira models`), or unset NUVIRA_STRICT_MODEL to let the router repair it.');
147
+ }
148
+ reportSubstitution({
149
+ providerType,
150
+ requested: requested,
151
+ served,
152
+ source: request.source,
153
+ agentType: request.agentType,
154
+ task: request.task,
155
+ });
156
+ }
157
+ return { providerType, provider, model: served, requested, substituted };
158
+ }
159
+ //# sourceMappingURL=route-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-resolver.js","sourceRoot":"","sources":["../../src/inference/route-resolver.ts"],"names":[],"mappings":"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"}
@@ -290,6 +290,50 @@ export declare function toUserFacingGenerationError(err: unknown): string;
290
290
  * for, are untouched.
291
291
  */
292
292
  export declare function stripToolCallArtifacts(content: string): string;
293
+ /**
294
+ * `isFollowupsPayload` for a payload written as TEXT with no caption — the
295
+ * question the tool loop's recovery asks before consuming a block it found by
296
+ * the name-keyed opener. Exported so the strip and the recovery share one
297
+ * definition of "this is our contract".
298
+ */
299
+ export declare function isTextualFollowupsPayload(value: unknown): boolean;
300
+ /**
301
+ * The followup entries a parsed `suggest_followups` payload carries — for
302
+ * RECOVERY, as opposed to `isFollowupsPayload`'s strip-or-keep question.
303
+ *
304
+ * Returns null when the payload is ours but carries nothing usable (the model
305
+ * wrote the call with no arguments): the block still gets stripped, there is
306
+ * simply nothing to offer the user.
307
+ *
308
+ * Exported so the tool loop's text-call recovery and the strip share ONE
309
+ * definition of which shapes are the contract. They drifted apart once already
310
+ * — the strip knew a shape the recovery's gate did not, which is exactly how
311
+ * 14 turns lost their followups.
312
+ */
313
+ export declare function followupEntriesFromPayload(value: unknown): FollowupSuggestion[] | null;
314
+ /**
315
+ * Cheap pre-check for "could this text carry a tool call written as JSON?".
316
+ *
317
+ * Deliberately shape-agnostic: it matches the canonical `{"tool":…}` opener
318
+ * AND the name-keyed `{"suggest_followups":…}` one. The tool loop's recovery
319
+ * used to gate on the literal `"tool"` substring, so a model that wrote a real
320
+ * call in the name-keyed shape never reached the extractor at all. A gate that
321
+ * only knows one shape is a gate that silently disables the fix for the other.
322
+ */
323
+ export declare const TEXTUAL_TOOL_CALL_HINT: RegExp;
324
+ /**
325
+ * Remove the caption line left after a payload was stripped — a
326
+ * `**suggest_followups**` label and/or the horizontal rule the model tends to
327
+ * put in front of it. Only ever called once a payload WAS removed, so an
328
+ * answer that legitimately ends in `---` on its own is untouched.
329
+ *
330
+ * The separator match tolerates a trailing NEWLINE (`\s*$`, not `[ \t]*$`):
331
+ * the caller slices the text at the payload's opening brace, so a model that
332
+ * wrote `…answer\n\n---\n{payload}` hands this function `…answer\n\n---\n`.
333
+ * Requiring the rule to sit at the very end missed exactly that — the common
334
+ * case — and left a dangling `---` under every cleaned answer.
335
+ */
336
+ export declare function stripTrailingFollowupsHeader(text: string): string;
293
337
  /**
294
338
  * S3 — salvage the model's generated content from a tool-calling 400.
295
339
  *
@@ -1 +1 @@
1
- {"version":3,"file":"tool-call-utils.d.ts","sourceRoot":"","sources":["../../src/inference/tool-call-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,MAAM,EACf,KAAK,GAAE,MAAM,EAA0B,GACtC,OAAO,CAwBT;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAoGD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAuBxG;AAuGD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAmC/D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAyBlE;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,WAAW,CAAC;AAE1D,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,KAAK,GAAE,MAAM,EAA0B,EACvC,OAAO,GAAE,oBAAyB,GACjC,oBAAoB,GAAG,IAAI,CAI7B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,KAAK,CASxF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,4MACoJ,CAAC;AAE7L;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAK1D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAgB9D;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,uHAC0E,CAAC;AAElH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAiFhE;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA4B9D;AAgHD;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,OAAO,GACX;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAAE,GAAG,IAAI,CAiD9D;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,CAepE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,EAAE,cAAc,EAAE,GACxB,MAAM,CAiBR"}
1
+ {"version":3,"file":"tool-call-utils.d.ts","sourceRoot":"","sources":["../../src/inference/tool-call-utils.ts"],"names":[],"mappings":"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"}
@@ -689,6 +689,20 @@ function parseJsonLoose(text) {
689
689
  return null;
690
690
  }
691
691
  }
692
+ /**
693
+ * The list inside a value keyed by our own tool NAME — either the list itself
694
+ * or a `{followups: …}` wrapper. `undefined` when it is neither.
695
+ */
696
+ function namedFollowupList(value) {
697
+ if (Array.isArray(value))
698
+ return value;
699
+ if (value && typeof value === 'object') {
700
+ const list = value.followups;
701
+ if (Array.isArray(list))
702
+ return list;
703
+ }
704
+ return undefined;
705
+ }
692
706
  /**
693
707
  * Is this parsed value the model's `suggest_followups` payload?
694
708
  *
@@ -697,13 +711,24 @@ function parseJsonLoose(text) {
697
711
  * BARE ARRAY under a `**suggest_followups**` caption (both observed live
698
712
  * 2026-09-21 from `nuvira execute`).
699
713
  *
714
+ * ALSO accepts our tool's ARGUMENTS keyed by our own tool NAME
715
+ * (`{"suggest_followups":[{prompt,label},…]}`) — the shape models actually
716
+ * hand-write when they cannot emit a real call. Observed live 2026-09-22 on the
717
+ * dashboard chat: 14 of 116 stored assistant turns ended with this block, and
718
+ * it was delivered to the reader verbatim while the suggestions were lost
719
+ * entirely (no chips) — the contract's own documented shape (`{"tool":…}`)
720
+ * appeared ZERO times, so matching only that shape matched nothing in practice.
721
+ *
700
722
  * CONSERVATISM ON PLAIN STRINGS: an entry that is a `{prompt}` object is the
701
723
  * tool's own schema and is accepted anywhere; a plain STRING entry is only
702
724
  * accepted when the model captioned the payload with the tool name, because
703
725
  * `{"followups":["Do you like it?"]}` is also a perfectly ordinary config a
704
726
  * user could have asked for and a bare one must survive. (These flags are
705
727
  * deliberately asymmetric rather than perfectly symmetric — this helper must
706
- * never delete a deliverable.)
728
+ * never delete a deliverable.) The name-keyed branch is ALWAYS strict about
729
+ * this for the same reason: the tool's schema only ever allows `{prompt}`
730
+ * objects, so a list of plain strings under that key is almost certainly the
731
+ * user's own JSON, not our contract.
707
732
  */
708
733
  function isFollowupsPayload(value, allowStringEntries) {
709
734
  if (!value || typeof value !== 'object')
@@ -713,10 +738,72 @@ function isFollowupsPayload(value, allowStringEntries) {
713
738
  const o = value;
714
739
  if (o.tool === 'suggest_followups')
715
740
  return true;
741
+ if ('suggest_followups' in o)
742
+ return isFollowupList(namedFollowupList(o.suggest_followups), false);
716
743
  const nested = (o.arguments ?? {});
717
744
  const list = Array.isArray(o.followups) ? o.followups : nested.followups;
718
745
  return isFollowupList(list, allowStringEntries);
719
746
  }
747
+ /**
748
+ * `isFollowupsPayload` for a payload written as TEXT with no caption — the
749
+ * question the tool loop's recovery asks before consuming a block it found by
750
+ * the name-keyed opener. Exported so the strip and the recovery share one
751
+ * definition of "this is our contract".
752
+ */
753
+ export function isTextualFollowupsPayload(value) {
754
+ return isFollowupsPayload(value, false);
755
+ }
756
+ /**
757
+ * The followup entries a parsed `suggest_followups` payload carries — for
758
+ * RECOVERY, as opposed to `isFollowupsPayload`'s strip-or-keep question.
759
+ *
760
+ * Returns null when the payload is ours but carries nothing usable (the model
761
+ * wrote the call with no arguments): the block still gets stripped, there is
762
+ * simply nothing to offer the user.
763
+ *
764
+ * Exported so the tool loop's text-call recovery and the strip share ONE
765
+ * definition of which shapes are the contract. They drifted apart once already
766
+ * — the strip knew a shape the recovery's gate did not, which is exactly how
767
+ * 14 turns lost their followups.
768
+ */
769
+ export function followupEntriesFromPayload(value) {
770
+ if (!value || typeof value !== 'object')
771
+ return null;
772
+ // One expression per accepted shape, in the order the shapes appear on the
773
+ // wire: the list itself, the name-keyed arguments, then the arguments
774
+ // object (directly or wrapped in a `{tool, arguments}` call).
775
+ const o = value;
776
+ const nested = (o.arguments && typeof o.arguments === 'object' ? o.arguments : {});
777
+ const list = Array.isArray(value)
778
+ ? value
779
+ : 'suggest_followups' in o
780
+ ? namedFollowupList(o.suggest_followups)
781
+ : Array.isArray(o.followups)
782
+ ? o.followups
783
+ : nested.followups;
784
+ if (!isFollowupList(list, false))
785
+ return null;
786
+ const entries = list
787
+ .map((f) => {
788
+ const e = f;
789
+ return {
790
+ prompt: typeof e?.prompt === 'string' ? e.prompt : '',
791
+ ...(typeof e?.label === 'string' && e.label ? { label: e.label } : {}),
792
+ };
793
+ })
794
+ .filter((e) => e.prompt.trim());
795
+ return entries.length > 0 ? entries : null;
796
+ }
797
+ /**
798
+ * Cheap pre-check for "could this text carry a tool call written as JSON?".
799
+ *
800
+ * Deliberately shape-agnostic: it matches the canonical `{"tool":…}` opener
801
+ * AND the name-keyed `{"suggest_followups":…}` one. The tool loop's recovery
802
+ * used to gate on the literal `"tool"` substring, so a model that wrote a real
803
+ * call in the name-keyed shape never reached the extractor at all. A gate that
804
+ * only knows one shape is a gate that silently disables the fix for the other.
805
+ */
806
+ export const TEXTUAL_TOOL_CALL_HINT = /[{[]\s*"(?:tool|suggest_followups)"\s*:/;
720
807
  /** A non-empty list of followup entries (`{prompt,label?}` objects, ± strings). */
721
808
  function isFollowupList(list, allowStringEntries) {
722
809
  if (!Array.isArray(list) || list.length === 0)
@@ -724,6 +811,20 @@ function isFollowupList(list, allowStringEntries) {
724
811
  return list.every((f) => (allowStringEntries && typeof f === 'string') ||
725
812
  (f !== null && typeof f === 'object' && typeof f.prompt === 'string'));
726
813
  }
814
+ /**
815
+ * The exact name-keyed opener — our tool's own NAME as the JSON key.
816
+ * A truncated payload (the model hit a token cap mid-block) is scaffolding too,
817
+ * and it is only safe to strip when the block is BOUNDED by fences, which is
818
+ * what `isTruncatedNamedPayload` is for; the tool loop's own extraction handles
819
+ * the unbounded case before any surface sees the text.
820
+ */
821
+ const NAMED_PAYLOAD_OPENER = /^\s*\{\s*"suggest_followups"\s*:/;
822
+ /** A fenced body that only BEGINS the name-keyed payload (cut off mid-JSON). */
823
+ function isTruncatedNamedPayload(body) {
824
+ if (!NAMED_PAYLOAD_OPENER.test(body))
825
+ return false;
826
+ return parseJsonLoose(body) === null;
827
+ }
727
828
  /** Does the text immediately before a payload end on a tool-name caption? */
728
829
  function hasFollowupsCaption(textBefore) {
729
830
  return /\*{0,2}\s*suggest[_ ]?follow[_ ]?ups\s*\*{0,2}\s*:?[ \t]*$/i.test(textBefore.replace(/\s+$/, ''));
@@ -739,6 +840,20 @@ function stripTrailingFollowupsPayload(text) {
739
840
  const trimmed = text.replace(/\s+$/, '');
740
841
  if (!trimmed)
741
842
  return text;
843
+ // 0. An UNTERMINATED trailing fence whose body BEGINS with our tool name as
844
+ // the key — the model was cut off mid-payload (token cap) and the fence
845
+ // never closed. Only the exact name-keyed opener qualifies, so a truncated
846
+ // code block the user actually asked for is untouched.
847
+ if (!trimmed.endsWith('```')) {
848
+ const fenceOpen = trimmed.lastIndexOf('```');
849
+ if (fenceOpen >= 0) {
850
+ const afterFence = trimmed.slice(fenceOpen + 3);
851
+ const nl = afterFence.indexOf('\n');
852
+ const body = nl >= 0 ? afterFence.slice(nl + 1) : afterFence.replace(/^[a-zA-Z]*/, '');
853
+ if (isTruncatedNamedPayload(body))
854
+ return stripTrailingFollowupsHeader(trimmed.slice(0, fenceOpen));
855
+ }
856
+ }
742
857
  // 1. The LAST fenced block, when it ends the text and its body parses to
743
858
  // the payload. (Anchoring on the last block — not the first — keeps an
744
859
  // answer+code-block+followups-fence sequence correct.)
@@ -749,7 +864,8 @@ function stripTrailingFollowupsPayload(text) {
749
864
  const newline = trimmed.indexOf('\n', opening);
750
865
  if (newline >= 0 && newline < closing) {
751
866
  const body = trimmed.slice(newline + 1, closing);
752
- if (isFollowupsPayload(parseJsonLoose(body), hasFollowupsCaption(trimmed.slice(0, opening)))) {
867
+ if (isFollowupsPayload(parseJsonLoose(body), hasFollowupsCaption(trimmed.slice(0, opening))) ||
868
+ isTruncatedNamedPayload(body)) {
753
869
  return stripTrailingFollowupsHeader(trimmed.slice(0, opening));
754
870
  }
755
871
  }
@@ -777,11 +893,17 @@ function stripTrailingFollowupsPayload(text) {
777
893
  * `**suggest_followups**` label and/or the horizontal rule the model tends to
778
894
  * put in front of it. Only ever called once a payload WAS removed, so an
779
895
  * answer that legitimately ends in `---` on its own is untouched.
896
+ *
897
+ * The separator match tolerates a trailing NEWLINE (`\s*$`, not `[ \t]*$`):
898
+ * the caller slices the text at the payload's opening brace, so a model that
899
+ * wrote `…answer\n\n---\n{payload}` hands this function `…answer\n\n---\n`.
900
+ * Requiring the rule to sit at the very end missed exactly that — the common
901
+ * case — and left a dangling `---` under every cleaned answer.
780
902
  */
781
- function stripTrailingFollowupsHeader(text) {
903
+ export function stripTrailingFollowupsHeader(text) {
782
904
  return text
783
905
  .replace(/\n+\s*\*{0,2}\s*suggest[_ ]?follow[_ ]?ups\s*\*{0,2}\s*:?[ \t]*$/i, '')
784
- .replace(/\n+\s*(?:-{3,}|\*{3,}|_{3,})[ \t]*$/, '')
906
+ .replace(/\n+\s*(?:-{3,}|\*{3,}|_{3,})\s*$/, '')
785
907
  .replace(/\s+$/, '');
786
908
  }
787
909
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"tool-call-utils.js","sourceRoot":"","sources":["../../src/inference/tool-call-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-call-utils.js","sourceRoot":"","sources":["../../src/inference/tool-call-utils.ts"],"names":[],"mappings":"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"}
@@ -131,6 +131,12 @@ export interface WriteAuthorization {
131
131
  * which keeps today's confirm-or-refuse gate exactly as strict as it was.
132
132
  */
133
133
  export declare function requestAuthorizesWrites(request: string): WriteAuthorization;
134
+ /**
135
+ * Is this message a plain confirmation of work already proposed ("yes", "go
136
+ * ahead", "do it")? Exported because the intent grant reads it: an affirmative
137
+ * reply to a plan is what turns that plan into an approved envelope.
138
+ */
139
+ export declare function isAffirmativeReply(request: string): boolean;
134
140
  /**
135
141
  * Pull the destination path out of a request, when it names one.
136
142
  *
@@ -153,6 +159,24 @@ export declare function extractRequestedPath(request: string): string | undefine
153
159
  * and an analysis opener ("how do I commit?") is asking ABOUT it.
154
160
  */
155
161
  export declare function requestRequestsCommit(request: string): boolean;
162
+ /**
163
+ * A request that asks for the work to LEAVE this machine's copy — a push.
164
+ *
165
+ * The same shape as {@link requestRequestsCommit}, one step further out, and the
166
+ * distinction it has to draw is sharper. A commit writes to this repository and
167
+ * is undone by a reset; a push writes to a remote that other people and CI read,
168
+ * so the gate must not infer it from a request that only asked to record work
169
+ * locally. "Commit these changes" is therefore NOT push authorization — it names
170
+ * no destination — while "commit and push this to GitHub" is, because the user
171
+ * named where it goes.
172
+ *
173
+ * Evidence, in order: a push verb, or a commit verb PAIRED with a remote
174
+ * destination ("get this committed to github", where the destination carries the
175
+ * intent the verb leaves out). An analysis opener ("how do I push?") is asking
176
+ * ABOUT it, and a negated push ("don't push yet") is explicitly not a request
177
+ * for one.
178
+ */
179
+ export declare function requestRequestsPush(request: string): boolean;
156
180
  /**
157
181
  * Does the request name THIS file?
158
182
  *
@@ -1 +1 @@
1
- {"version":3,"file":"autonomy-policy.d.ts","sourceRoot":"","sources":["../../src/learning/autonomy-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autonomy-policy.d.ts","sourceRoot":"","sources":["../../src/learning/autonomy-policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,2CAA2C;AAC3C,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEvD,wCAAwC;AACxC,MAAM,WAAW,eAAe;IAC9B,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,oFAAoF;IACpF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,kBAAkB;AAClB,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,eAAO,MAAM,gCAAgC,KAAK,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,GAAG,eAAe,CA6D5E;AA+DD,2EAA2E;AAC3E,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB,CAuD3E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAG3D;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASxE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAM9D;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAgB5D;AAOD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAQvE;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAI7F;AA4BD,iFAAiF;AACjF,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAOrE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAIhE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAI3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAYnE;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QACmJ,CAAC;AAEvL;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,wBAAwB;IACvC,gFAAgF;IAChF,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,MAAM,EAAE,OAAO,CAAC;IAChB,gFAAgF;IAChF,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,4CAA4C;AAC5C,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,SAAS,GAAG,KAAK,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,uEAAuE;AACvE,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,wBAAwB,GAAG,wBAAwB,CAiBnG;AAID;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,aAAa,CAAC;AAEhG,+EAA+E;AAC/E,MAAM,WAAW,kBAAkB;IACjC,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,WAAW,EAAE,gBAAgB,CAAC;IAC9B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,wBAAwB,CAoCvF;AAID;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,MAAM,CAKvD,CAAC;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,EAAE,WAAW,CAAC,MAAM,CAWtD,CAAC;AAEH;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE;IACnD,MAAM,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,cAAc,EAAE,OAAO,CAAC;CACzB,GAAG,wBAAwB,CAsB3B;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEhG;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,CAUtF"}