@noodleseed/one 0.17.0 → 0.18.0

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 (144) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +3 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/alerts-ops.d.ts +2 -0
  5. package/dist/commands/alerts-ops.d.ts.map +1 -0
  6. package/dist/commands/alerts-ops.js +249 -0
  7. package/dist/commands/alerts-ops.js.map +1 -0
  8. package/dist/commands/analytics-ops.d.ts +13 -0
  9. package/dist/commands/analytics-ops.d.ts.map +1 -1
  10. package/dist/commands/analytics-ops.js +5 -2
  11. package/dist/commands/analytics-ops.js.map +1 -1
  12. package/dist/commands/catalog-data-resources.d.ts.map +1 -1
  13. package/dist/commands/catalog-data-resources.js +45 -0
  14. package/dist/commands/catalog-data-resources.js.map +1 -1
  15. package/dist/commands/github-ops.d.ts.map +1 -1
  16. package/dist/commands/github-ops.js +24 -4
  17. package/dist/commands/github-ops.js.map +1 -1
  18. package/dist/commands/github-runs-ops.d.ts +32 -0
  19. package/dist/commands/github-runs-ops.d.ts.map +1 -0
  20. package/dist/commands/github-runs-ops.js +132 -0
  21. package/dist/commands/github-runs-ops.js.map +1 -0
  22. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.d.ts.map +1 -1
  23. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js +5 -0
  24. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js.map +1 -1
  25. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  26. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +1 -0
  27. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  28. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  29. package/node_modules/@noodle-borg/authoring/dist/recording.js +18 -23
  30. package/node_modules/@noodle-borg/authoring/dist/recording.js.map +1 -1
  31. package/node_modules/@noodle-borg/service/dist/alert-evaluator.d.ts +57 -0
  32. package/node_modules/@noodle-borg/service/dist/alert-evaluator.d.ts.map +1 -0
  33. package/node_modules/@noodle-borg/service/dist/alert-evaluator.js +158 -0
  34. package/node_modules/@noodle-borg/service/dist/alert-evaluator.js.map +1 -0
  35. package/node_modules/@noodle-borg/service/dist/alert-webhook.d.ts +72 -0
  36. package/node_modules/@noodle-borg/service/dist/alert-webhook.d.ts.map +1 -0
  37. package/node_modules/@noodle-borg/service/dist/alert-webhook.js +138 -0
  38. package/node_modules/@noodle-borg/service/dist/alert-webhook.js.map +1 -0
  39. package/node_modules/@noodle-borg/service/dist/github/pending-installations.d.ts +15 -8
  40. package/node_modules/@noodle-borg/service/dist/github/pending-installations.d.ts.map +1 -1
  41. package/node_modules/@noodle-borg/service/dist/github/pending-installations.js +16 -9
  42. package/node_modules/@noodle-borg/service/dist/github/pending-installations.js.map +1 -1
  43. package/node_modules/@noodle-borg/service/dist/index.d.ts +10 -2
  44. package/node_modules/@noodle-borg/service/dist/index.d.ts.map +1 -1
  45. package/node_modules/@noodle-borg/service/dist/index.js +9 -1
  46. package/node_modules/@noodle-borg/service/dist/index.js.map +1 -1
  47. package/node_modules/@noodle-borg/service/dist/options.d.ts +20 -1
  48. package/node_modules/@noodle-borg/service/dist/options.d.ts.map +1 -1
  49. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.d.ts +28 -0
  50. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.d.ts.map +1 -0
  51. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.js +50 -0
  52. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.js.map +1 -0
  53. package/node_modules/@noodle-borg/service/dist/routes/alerts.d.ts +39 -0
  54. package/node_modules/@noodle-borg/service/dist/routes/alerts.d.ts.map +1 -0
  55. package/node_modules/@noodle-borg/service/dist/routes/alerts.js +204 -0
  56. package/node_modules/@noodle-borg/service/dist/routes/alerts.js.map +1 -0
  57. package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts +149 -0
  58. package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts.map +1 -1
  59. package/node_modules/@noodle-borg/service/dist/routes/contracts.js +81 -0
  60. package/node_modules/@noodle-borg/service/dist/routes/contracts.js.map +1 -1
  61. package/node_modules/@noodle-borg/service/dist/routes/github-connection.js +1 -1
  62. package/node_modules/@noodle-borg/service/dist/routes/github-connection.js.map +1 -1
  63. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.d.ts +2 -1
  64. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.d.ts.map +1 -1
  65. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.js +37 -2
  66. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.js.map +1 -1
  67. package/node_modules/@noodle-borg/service/dist/routes/github-runs.d.ts +8 -0
  68. package/node_modules/@noodle-borg/service/dist/routes/github-runs.d.ts.map +1 -0
  69. package/node_modules/@noodle-borg/service/dist/routes/github-runs.js +33 -0
  70. package/node_modules/@noodle-borg/service/dist/routes/github-runs.js.map +1 -0
  71. package/node_modules/@noodle-borg/service/dist/routes/github-setup.d.ts +1 -1
  72. package/node_modules/@noodle-borg/service/dist/routes/github-setup.d.ts.map +1 -1
  73. package/node_modules/@noodle-borg/service/dist/routes/github-setup.js +3 -3
  74. package/node_modules/@noodle-borg/service/dist/routes/github-setup.js.map +1 -1
  75. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.d.ts +29 -0
  76. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.d.ts.map +1 -0
  77. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.js +355 -0
  78. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.js.map +1 -0
  79. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.d.ts +27 -0
  80. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.d.ts.map +1 -0
  81. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.js +61 -0
  82. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.js.map +1 -0
  83. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts +20 -1
  84. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts.map +1 -1
  85. package/node_modules/@noodle-borg/service/dist/routes/paths.js +54 -0
  86. package/node_modules/@noodle-borg/service/dist/routes/paths.js.map +1 -1
  87. package/node_modules/@noodle-borg/service/dist/serve.d.ts.map +1 -1
  88. package/node_modules/@noodle-borg/service/dist/serve.js +42 -1
  89. package/node_modules/@noodle-borg/service/dist/serve.js.map +1 -1
  90. package/node_modules/@noodle-borg/service/dist/service.d.ts.map +1 -1
  91. package/node_modules/@noodle-borg/service/dist/service.js +37 -53
  92. package/node_modules/@noodle-borg/service/dist/service.js.map +1 -1
  93. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.d.ts +21 -0
  94. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.d.ts.map +1 -0
  95. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.js +115 -0
  96. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.js.map +1 -0
  97. package/node_modules/@noodle-borg/service/dist/store/alert-rules.d.ts +108 -0
  98. package/node_modules/@noodle-borg/service/dist/store/alert-rules.d.ts.map +1 -0
  99. package/node_modules/@noodle-borg/service/dist/store/alert-rules.js +181 -0
  100. package/node_modules/@noodle-borg/service/dist/store/alert-rules.js.map +1 -0
  101. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.d.ts +1 -0
  102. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.d.ts.map +1 -1
  103. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.js +4 -0
  104. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.js.map +1 -1
  105. package/node_modules/@noodle-borg/service/dist/store/github-connections.d.ts +1 -0
  106. package/node_modules/@noodle-borg/service/dist/store/github-connections.d.ts.map +1 -1
  107. package/node_modules/@noodle-borg/service/dist/store/github-connections.js +4 -0
  108. package/node_modules/@noodle-borg/service/dist/store/github-connections.js.map +1 -1
  109. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.d.ts +22 -0
  110. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.d.ts.map +1 -0
  111. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.js +116 -0
  112. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.js.map +1 -0
  113. package/node_modules/@noodle-borg/service/dist/store/github-runs.d.ts +51 -0
  114. package/node_modules/@noodle-borg/service/dist/store/github-runs.d.ts.map +1 -0
  115. package/node_modules/@noodle-borg/service/dist/store/github-runs.js +158 -0
  116. package/node_modules/@noodle-borg/service/dist/store/github-runs.js.map +1 -0
  117. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.d.ts +19 -0
  118. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.d.ts.map +1 -0
  119. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.js +46 -0
  120. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.js.map +1 -0
  121. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.d.ts +26 -0
  122. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.d.ts.map +1 -0
  123. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.js +142 -0
  124. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.js.map +1 -0
  125. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.d.ts +9 -0
  126. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.d.ts.map +1 -0
  127. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.js +113 -0
  128. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.js.map +1 -0
  129. package/node_modules/@noodle-borg/service/dist/store/postgres-github.d.ts +1 -0
  130. package/node_modules/@noodle-borg/service/dist/store/postgres-github.d.ts.map +1 -1
  131. package/node_modules/@noodle-borg/service/dist/store/postgres-github.js +7 -2
  132. package/node_modules/@noodle-borg/service/dist/store/postgres-github.js.map +1 -1
  133. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.d.ts.map +1 -1
  134. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js +49 -0
  135. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js.map +1 -1
  136. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts +9 -2
  137. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts.map +1 -1
  138. package/node_modules/@noodle-borg/service/dist/store/postgres.js +17 -1
  139. package/node_modules/@noodle-borg/service/dist/store/postgres.js.map +1 -1
  140. package/node_modules/@noodle-borg/service/dist/store.d.ts +104 -0
  141. package/node_modules/@noodle-borg/service/dist/store.d.ts.map +1 -1
  142. package/node_modules/@noodle-borg/service/dist/store.js +2 -0
  143. package/node_modules/@noodle-borg/service/dist/store.js.map +1 -1
  144. package/package.json +2 -2
@@ -9,8 +9,10 @@
9
9
  */
10
10
  import { resolveControlPlaneToken, ServiceRequestError, serviceJson } from '../control-plane.js';
11
11
  import { AbortPromptError, confirm, isInteractive, select } from '../prompts.js';
12
+ import { relativeTime } from '../relative-time.js';
12
13
  import { printStep } from '../status.js';
13
14
  import { openUrl, shouldOpenBrowser } from './deploy-ops.js';
15
+ import { runGithubRuns } from './github-runs-ops.js';
14
16
  import { authRequired, conflictFailure, githubAppNotConfiguredFailure, installTimeoutFailure, missingRepoAnswerFailure, noRepositoriesFailure, ownerRoleFailure, parseGithubArgs, repoNotFoundFailure, resolveGithubTarget, serviceErrorFailure, } from './github-shared.js';
15
17
  import { EXIT, printJsonOk } from './output.js';
16
18
  import { dimText } from './resource-shared.js';
@@ -194,8 +196,22 @@ export async function runGithubStatus(rest, env, home) {
194
196
  try {
195
197
  const body = await serviceJson(`${serviceUrl}/v1/orgs/${encodeURIComponent(org)}/apps/${encodeURIComponent(app)}/github/connection`, token);
196
198
  const record = body.data;
199
+ // Best-effort last-run line (GHD-2): the runs feed exists now, so status can surface it. A read
200
+ // failure here must never break status itself.
201
+ let lastRun;
202
+ try {
203
+ const runsBody = await serviceJson(`${serviceUrl}/v1/orgs/${encodeURIComponent(org)}/apps/${encodeURIComponent(app)}/github/runs?limit=1`, token);
204
+ lastRun = runsBody.data.runs[0];
205
+ }
206
+ catch {
207
+ lastRun = undefined;
208
+ }
197
209
  if (json) {
198
- printJsonOk({ connected: true, connection: record });
210
+ printJsonOk({
211
+ connected: true,
212
+ connection: record,
213
+ ...(lastRun !== undefined ? { lastRun } : {}),
214
+ });
199
215
  return EXIT.OK;
200
216
  }
201
217
  console.log(`repo: ${record.repoName} #${record.githubRepositoryId}`);
@@ -203,7 +219,9 @@ export async function runGithubStatus(rest, env, home) {
203
219
  console.log(`branch: ${record.defaultBranch} → prod`);
204
220
  console.log('state: connected');
205
221
  console.log(`installation: ${record.installationId}`);
206
- console.log('last push: — (no deploy runs yet)');
222
+ console.log(lastRun !== undefined
223
+ ? `last run: ${lastRun.commitSha.slice(0, 7)} → ${lastRun.envName} (${lastRun.status}, ${relativeTime(lastRun.createdAt)}) — noodle github runs`
224
+ : 'last run: — (no deploy runs yet)');
207
225
  return EXIT.OK;
208
226
  }
209
227
  catch (error) {
@@ -283,11 +301,13 @@ export async function runGithub(rest, env, home) {
283
301
  return runGithubStatus(actionRest, env, home);
284
302
  if (action === 'disconnect')
285
303
  return runGithubDisconnect(actionRest, env, home);
304
+ if (action === 'runs')
305
+ return runGithubRuns(actionRest, env, home);
286
306
  const json = rest.includes('--json');
287
307
  return printCliFailure('github', {
288
308
  code: 'usage_error',
289
- message: 'usage: noodle github connect|status|disconnect',
290
- cause: 'usage: noodle github connect|status|disconnect',
309
+ message: 'usage: noodle github connect|status|disconnect|runs',
310
+ cause: 'usage: noodle github connect|status|disconnect|runs',
291
311
  fix: 'Check the command arguments.',
292
312
  next: 'noodle github --help',
293
313
  exitCode: EXIT.USAGE,
@@ -1 +1 @@
1
- {"version":3,"file":"github-ops.js","sourceRoot":"","sources":["../../src/commands/github-ops.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github-ops.js","sourceRoot":"","sources":["../../src/commands/github-ops.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import type { TableOptions } from '../table.js';
2
+ /**
3
+ * `noodle github runs [--org --app --limit N --json --watch]` (GHD-2): the deploy-runs feed behind
4
+ * `GET /v1/orgs/{org}/apps/{app}/github/runs`. Pulled forward from GHD-4.4 so Phase 2 is observable
5
+ * the moment webhook intake lands — a queued/blocked run is visible here (and in the console feed)
6
+ * even though nothing builds it until GHD-3. Split from `github-ops.ts` for the size gate.
7
+ */
8
+ /** Wire shape of one deploy run — mirrors `DeployRunSchema` (`contract/v1/github-runs-response.json`). */
9
+ export interface DeployRun {
10
+ readonly runId: string;
11
+ readonly orgSlug: string;
12
+ readonly appSlug: string;
13
+ readonly envName: string;
14
+ readonly sourceEvent: 'push' | 'pull_request';
15
+ readonly deliveryId: string;
16
+ readonly githubRepositoryId: number;
17
+ readonly commitSha: string;
18
+ readonly ref: string;
19
+ readonly prNumber?: number;
20
+ readonly status: 'queued' | 'building' | 'deploying' | 'deployed' | 'failed' | 'canceled' | 'superseded';
21
+ readonly blockedReason?: string;
22
+ readonly deploymentId?: string;
23
+ readonly actorLogin: string;
24
+ readonly errorSummary?: string;
25
+ readonly createdAt: string;
26
+ readonly startedAt?: string;
27
+ readonly finishedAt?: string;
28
+ }
29
+ /** Render the `github runs` table. Exported for tests and the contract drift gate. */
30
+ export declare function renderRunsTable(runs: readonly DeployRun[], opts: TableOptions): string;
31
+ export declare function runGithubRuns(rest: readonly string[], env: NodeJS.ProcessEnv, home: string): Promise<number>;
32
+ //# sourceMappingURL=github-runs-ops.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-runs-ops.d.ts","sourceRoot":"","sources":["../../src/commands/github-runs-ops.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAU,YAAY,EAAE,MAAM,aAAa,CAAC;AAmBxD;;;;;GAKG;AAEH,0GAA0G;AAC1G,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EACX,QAAQ,GACR,UAAU,GACV,WAAW,GACX,UAAU,GACV,QAAQ,GACR,UAAU,GACV,YAAY,CAAC;IACjB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AA4CD,sFAAsF;AACtF,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CAEtF;AA+CD,wBAAsB,aAAa,CACjC,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,CA+CjB"}
@@ -0,0 +1,132 @@
1
+ import { resolveControlPlaneToken, ServiceRequestError, serviceJson } from '../control-plane.js';
2
+ import { ORANGE } from '../gradient.js';
3
+ import { relativeTime } from '../relative-time.js';
4
+ import { renderTable } from '../table.js';
5
+ import { parseWatchFlags, runWatch, watchJsonConflictFailure } from '../watch.js';
6
+ import { authRequired, parseGithubArgs, resolveGithubTarget, serviceErrorFailure, } from './github-shared.js';
7
+ import { EXIT, printJsonOk } from './output.js';
8
+ import { ACTIVE_GREEN, ARCHIVED_AMBER, DIM_GRAY, notFoundApp, stdoutTableOptions, } from './resource-shared.js';
9
+ import { printCliFailure } from './shared.js';
10
+ const ROSE_RED = [244, 63, 94];
11
+ const IN_FLIGHT_ORANGE = ORANGE;
12
+ const STATUS_COLORS = {
13
+ queued: ARCHIVED_AMBER,
14
+ building: IN_FLIGHT_ORANGE,
15
+ deploying: IN_FLIGHT_ORANGE,
16
+ deployed: ACTIVE_GREEN,
17
+ failed: ROSE_RED,
18
+ canceled: DIM_GRAY,
19
+ superseded: DIM_GRAY,
20
+ };
21
+ function statusText(run) {
22
+ if (run.blockedReason === 'fork_pending_approval')
23
+ return `${run.status} (fork)`;
24
+ if (run.blockedReason !== undefined)
25
+ return `${run.status} (blocked)`;
26
+ return run.status;
27
+ }
28
+ const RUNS_COLUMNS = [
29
+ { header: 'RUN', get: (r) => r.runId, maxWidth: 16 },
30
+ { header: 'EVENT', get: (r) => (r.sourceEvent === 'push' ? 'push' : `PR #${r.prNumber ?? '?'}`) },
31
+ { header: 'COMMIT', get: (r) => r.commitSha.slice(0, 7) },
32
+ { header: 'ENV', get: (r) => r.envName },
33
+ {
34
+ header: 'STATUS',
35
+ get: statusText,
36
+ color: (r) => STATUS_COLORS[r.status],
37
+ },
38
+ {
39
+ header: 'AGE',
40
+ get: (r) => relativeTime(r.createdAt),
41
+ align: 'right',
42
+ color: () => DIM_GRAY,
43
+ },
44
+ ];
45
+ /** Render the `github runs` table. Exported for tests and the contract drift gate. */
46
+ export function renderRunsTable(runs, opts) {
47
+ return renderTable(RUNS_COLUMNS, runs, opts);
48
+ }
49
+ function parseLimit(rest) {
50
+ const at = rest.indexOf('--limit');
51
+ if (at === -1)
52
+ return undefined;
53
+ const value = Number(rest[at + 1]);
54
+ return Number.isInteger(value) && value > 0 ? value : undefined;
55
+ }
56
+ function runsUrl(serviceUrl, org, app, limit) {
57
+ const url = new URL(`${serviceUrl}/v1/orgs/${encodeURIComponent(org)}/apps/${encodeURIComponent(app)}/github/runs`);
58
+ if (limit !== undefined)
59
+ url.searchParams.set('limit', String(limit));
60
+ return url.toString();
61
+ }
62
+ async function runsListFrame(serviceUrl, token, org, app, limit) {
63
+ try {
64
+ const body = await serviceJson(runsUrl(serviceUrl, org, app, limit), token);
65
+ if (body.data.runs.length === 0) {
66
+ return {
67
+ ok: true,
68
+ frame: `No deploy runs for ${org}/${app} yet.\n` +
69
+ 'Push to the connected repository — or connect one: noodle github connect',
70
+ };
71
+ }
72
+ const table = renderRunsTable(body.data.runs, stdoutTableOptions());
73
+ const truncatedNote = body.data.truncated
74
+ ? '\n(older runs not shown — raise --limit to see more)'
75
+ : '';
76
+ return { ok: true, frame: `${table}${truncatedNote}` };
77
+ }
78
+ catch (error) {
79
+ if (error instanceof ServiceRequestError && error.status === 404) {
80
+ return { ok: false, error: notFoundApp(org, app) };
81
+ }
82
+ return { ok: false, error: serviceErrorFailure('noodle github runs', error) };
83
+ }
84
+ }
85
+ export async function runGithubRuns(rest, env, home) {
86
+ const args = parseGithubArgs(rest);
87
+ const json = args.json;
88
+ const { watch, intervalMs } = parseWatchFlags(rest);
89
+ if (watch && json) {
90
+ return printCliFailure('github', watchJsonConflictFailure('noodle github runs --json'), true);
91
+ }
92
+ const limit = parseLimit(rest);
93
+ const resolved = resolveGithubTarget(args, home);
94
+ if (!resolved.ok)
95
+ return printCliFailure('github', resolved.error, json);
96
+ const { org, app } = resolved.target;
97
+ const tokenResolution = await resolveControlPlaneToken({
98
+ serviceFlag: args.service ?? resolved.target.serviceUrl,
99
+ authFlag: args.authToken,
100
+ env,
101
+ home,
102
+ });
103
+ if (tokenResolution.token === undefined)
104
+ return printCliFailure('github', authRequired(), json);
105
+ const { serviceUrl, token } = tokenResolution;
106
+ if (json) {
107
+ try {
108
+ const body = await serviceJson(runsUrl(serviceUrl, org, app, limit), token);
109
+ printJsonOk(body.data);
110
+ return EXIT.OK;
111
+ }
112
+ catch (error) {
113
+ if (error instanceof ServiceRequestError && error.status === 404) {
114
+ return printCliFailure('github', notFoundApp(org, app), true);
115
+ }
116
+ return printCliFailure('github', serviceErrorFailure('noodle github runs', error), true);
117
+ }
118
+ }
119
+ if (watch) {
120
+ return runWatch({
121
+ command: 'github runs',
122
+ intervalMs,
123
+ render: () => runsListFrame(serviceUrl, token, org, app, limit),
124
+ });
125
+ }
126
+ const result = await runsListFrame(serviceUrl, token, org, app, limit);
127
+ if (!result.ok)
128
+ return printCliFailure('github', result.error, false);
129
+ console.log(result.frame);
130
+ return EXIT.OK;
131
+ }
132
+ //# sourceMappingURL=github-runs-ops.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-runs-ops.js","sourceRoot":"","sources":["../../src/commands/github-runs-ops.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"command-groups.d.ts","sourceRoot":"","sources":["../../src/curated/command-groups.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,iBAAiB;IAChC,yEAAyE;IACzE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,qEAAqE;AACrE,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAShD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAqM5D,CAAC"}
1
+ {"version":3,"file":"command-groups.d.ts","sourceRoot":"","sources":["../../src/curated/command-groups.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,iBAAiB;IAChC,yEAAyE;IACzE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,qEAAqE;AACrE,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAShD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CA2M5D,CAAC"}
@@ -180,6 +180,11 @@ export const COMMAND_GROUPS = {
180
180
  summary: 'The per-request MCP event stream with status/tool/client filters; `--session <id>` replays one ' +
181
181
  'session in order. Agents: add `--json` and filter (`--status tool_error|mcp_error`) when debugging.',
182
182
  },
183
+ alerts: {
184
+ group: 'Governance & observability',
185
+ summary: 'Analytics alert rules (`add|list|remove|test`): an edge-triggered webhook fires when error share, ' +
186
+ 'error count, calls, or p95 latency breaches. Webhook URLs are stored server-side and shown redacted.',
187
+ },
183
188
  help: { group: 'CLI maintenance', summary: 'Print CLI usage and command help.' },
184
189
  version: { group: 'CLI maintenance', summary: 'Print the installed CLI version.' },
185
190
  commands: {
@@ -1 +1 @@
1
- {"version":3,"file":"command-groups.js","sourceRoot":"","sources":["../../src/curated/command-groups.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-groups.js","sourceRoot":"","sources":["../../src/curated/command-groups.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/generated/surface.ts"],"names":[],"mappings":"AAIA,8FAA8F;AAC9F,eAAO,MAAM,YAAY,EAAE,SAAS,MAAM,EAqDzC,CAAC;AAEF,8FAA8F;AAC9F,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAgBxC,CAAC;AAEF,iGAAiG;AACjG,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAwChD,CAAC"}
1
+ {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/generated/surface.ts"],"names":[],"mappings":"AAIA,8FAA8F;AAC9F,eAAO,MAAM,YAAY,EAAE,SAAS,MAAM,EAsDzC,CAAC;AAEF,8FAA8F;AAC9F,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAgBxC,CAAC;AAEF,iGAAiG;AACjG,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAwChD,CAAC"}
@@ -30,6 +30,7 @@ export const CLI_COMMANDS = [
30
30
  'logs',
31
31
  'metrics',
32
32
  'events',
33
+ 'alerts',
33
34
  'policy',
34
35
  'deploy',
35
36
  'open',
@@ -1 +1 @@
1
- {"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/generated/surface.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,6EAA6E;AAC7E,iGAAiG;AAEjG,8FAA8F;AAC9F,MAAM,CAAC,MAAM,YAAY,GAAsB;IAC7C,MAAM;IACN,SAAS;IACT,UAAU;IACV,OAAO;IACP,QAAQ;IACR,MAAM;IACN,OAAO;IACP,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,OAAO;IACP,MAAM;IACN,OAAO;IACP,WAAW;IACX,SAAS;IACT,KAAK;IACL,UAAU;IACV,OAAO;IACP,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,SAAS;IACT,OAAO;IACP,UAAU;IACV,SAAS;IACT,SAAS;IACT,QAAQ;IACR,MAAM;IACN,MAAM;IACN,aAAa;IACb,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,SAAS;IACT,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,SAAS;IACT,WAAW;CACZ,CAAC;AAEF,8FAA8F;AAC9F,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C,aAAa;IACb,OAAO;IACP,WAAW;IACX,gBAAgB;IAChB,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,eAAe;IACf,gBAAgB;IAChB,UAAU;IACV,MAAM;IACN,QAAQ;IACR,GAAG;CACJ,CAAC;AAEF,iGAAiG;AACjG,MAAM,CAAC,MAAM,mBAAmB,GAAsB;IACpD,kBAAkB;IAClB,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,8BAA8B;IAC9B,uBAAuB;IACvB,cAAc;IACd,oBAAoB;IACpB,oBAAoB;IACpB,qBAAqB;IACrB,oBAAoB;IACpB,mBAAmB;IACnB,uBAAuB;IACvB,2BAA2B;IAC3B,qBAAqB;IACrB,kBAAkB;IAClB,kBAAkB;IAClB,eAAe;IACf,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,oBAAoB;IACpB,kBAAkB;IAClB,wBAAwB;IACxB,0BAA0B;IAC1B,kBAAkB;IAClB,qBAAqB;IACrB,4BAA4B;IAC5B,uBAAuB;IACvB,wBAAwB;IACxB,6BAA6B;IAC7B,eAAe;IACf,gCAAgC;IAChC,oBAAoB;IACpB,yBAAyB;IACzB,0BAA0B;IAC1B,mBAAmB;IACnB,wBAAwB;IACxB,cAAc;CACf,CAAC"}
1
+ {"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/generated/surface.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,6EAA6E;AAC7E,iGAAiG;AAEjG,8FAA8F;AAC9F,MAAM,CAAC,MAAM,YAAY,GAAsB;IAC7C,MAAM;IACN,SAAS;IACT,UAAU;IACV,OAAO;IACP,QAAQ;IACR,MAAM;IACN,OAAO;IACP,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,OAAO;IACP,MAAM;IACN,OAAO;IACP,WAAW;IACX,SAAS;IACT,KAAK;IACL,UAAU;IACV,OAAO;IACP,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,SAAS;IACT,OAAO;IACP,UAAU;IACV,SAAS;IACT,SAAS;IACT,QAAQ;IACR,MAAM;IACN,MAAM;IACN,aAAa;IACb,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,SAAS;IACT,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,SAAS;IACT,WAAW;CACZ,CAAC;AAEF,8FAA8F;AAC9F,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C,aAAa;IACb,OAAO;IACP,WAAW;IACX,gBAAgB;IAChB,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,eAAe;IACf,gBAAgB;IAChB,UAAU;IACV,MAAM;IACN,QAAQ;IACR,GAAG;CACJ,CAAC;AAEF,iGAAiG;AACjG,MAAM,CAAC,MAAM,mBAAmB,GAAsB;IACpD,kBAAkB;IAClB,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,8BAA8B;IAC9B,uBAAuB;IACvB,cAAc;IACd,oBAAoB;IACpB,oBAAoB;IACpB,qBAAqB;IACrB,oBAAoB;IACpB,mBAAmB;IACnB,uBAAuB;IACvB,2BAA2B;IAC3B,qBAAqB;IACrB,kBAAkB;IAClB,kBAAkB;IAClB,eAAe;IACf,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,oBAAoB;IACpB,kBAAkB;IAClB,wBAAwB;IACxB,0BAA0B;IAC1B,kBAAkB;IAClB,qBAAqB;IACrB,4BAA4B;IAC5B,uBAAuB;IACvB,wBAAwB;IACxB,6BAA6B;IAC7B,eAAe;IACf,gCAAgC;IAChC,oBAAoB;IACpB,yBAAyB;IACzB,0BAA0B;IAC1B,mBAAmB;IACnB,wBAAwB;IACxB,cAAc;CACf,CAAC"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@noodle-borg/agent-kit",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "engines": {
@@ -130,12 +130,23 @@ function serializeMap(value) {
130
130
  return Object.fromEntries(Object.entries(value).map(([k, v]) => [k, serializeValue(v)]));
131
131
  }
132
132
  function serializeValue(value) {
133
+ return serializeTree(value, 'tool fulfilment');
134
+ }
135
+ /**
136
+ * Recursively serialize a fulfilment value into mapping data: refs/conds become `${...}`
137
+ * expressions, arrays and plain objects recurse (the compiler's nested-mapping support carries
138
+ * them), scalars pass verbatim. Arrays and nested objects are the natural shape for list-style
139
+ * tool output and widget props (carousels, search results), not just resource/prompt blobs.
140
+ */
141
+ function serializeTree(value, context) {
133
142
  if (isConfigRef(value))
134
- return serializeVariableRef(value, 'tool output');
143
+ return serializeVariableRef(value, context);
135
144
  if (isRef(value) || isCond(value))
136
145
  return value.toExpression();
137
- if (Array.isArray(value) || isPlainObject(value)) {
138
- throw new Error('nested objects/arrays are not supported as mapping values in this phase');
146
+ if (Array.isArray(value))
147
+ return value.map((item) => serializeTree(item, context));
148
+ if (isPlainObject(value)) {
149
+ return Object.fromEntries(Object.entries(value).map(([k, v]) => [k, serializeTree(v, context)]));
139
150
  }
140
151
  if (value === null ||
141
152
  typeof value === 'string' ||
@@ -143,34 +154,18 @@ function serializeValue(value) {
143
154
  typeof value === 'boolean') {
144
155
  return value;
145
156
  }
146
- throw new Error(`cannot serialize ${typeof value} from tool fulfilment`);
157
+ throw new Error(`cannot serialize ${typeof value} from ${context}`);
147
158
  }
148
159
  function serializeConnectorArgs(value) {
149
160
  return Object.fromEntries(Object.entries(value).map(([k, v]) => [k, serializeReturn(v)]));
150
161
  }
151
162
  /**
152
163
  * Serialize a resource/prompt `fulfil` return value into the single-key `{ value }` wrapper the runtime
153
- * unwraps. Unlike tool output (a flat field map), a resource/prompt returns one value — a string, a
154
- * symbolic ref, or a structure — so this recurses through arrays and plain objects (refs → `${...}`,
155
- * scalars verbatim), letting the compiler's nested-mapping support carry blobs and multi-message prompts.
164
+ * unwraps. Unlike tool output (an object of named fields), a resource/prompt returns one value — a
165
+ * string, a symbolic ref, or a structure.
156
166
  */
157
167
  function serializeReturn(value) {
158
- if (isConfigRef(value))
159
- return serializeVariableRef(value, 'fulfilment value');
160
- if (isRef(value) || isCond(value))
161
- return value.toExpression();
162
- if (Array.isArray(value))
163
- return value.map(serializeReturn);
164
- if (isPlainObject(value)) {
165
- return Object.fromEntries(Object.entries(value).map(([k, v]) => [k, serializeReturn(v)]));
166
- }
167
- if (value === null ||
168
- typeof value === 'string' ||
169
- typeof value === 'number' ||
170
- typeof value === 'boolean') {
171
- return value;
172
- }
173
- throw new Error(`cannot serialize ${typeof value} from a resource/prompt fulfilment`);
168
+ return serializeTree(value, 'a resource/prompt fulfilment');
174
169
  }
175
170
  function isRef(value) {
176
171
  return (typeof value === 'object' &&
@@ -1 +1 @@
1
- {"version":3,"file":"recording.js","sourceRoot":"","sources":["../src/recording.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recording.js","sourceRoot":"","sources":["../src/recording.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import type { RequestEventStore } from '@noodle-borg/module';
2
+ import { type Logger } from '@noodle-borg/transport-http';
3
+ import { type AlertWebhookDelivery, type AlertWebhookPayload } from './alert-webhook.js';
4
+ import { type RequestMetrics } from './request-event-metrics.js';
5
+ import type { AlertMetric, AlertRuleStore } from './store/alert-rules.js';
6
+ /**
7
+ * Periodic alert-rule evaluator (E2, ADR 0130), modeled on `ArchiveSweeper`: a throttled
8
+ * `maybeSweep()` (boot + a `serveService` interval timer) drives `sweepNow()`, which evaluates
9
+ * every ENABLED rule against its own window of the tenant's request-event stream using the same
10
+ * `aggregateRequestEvents` the metrics route serves — one aggregation, no duplicate math.
11
+ *
12
+ * EDGE-TRIGGERED: a rule fires on the non-breaching → breaching transition, and re-fires while
13
+ * still breaching only after `cooldownMinutes` since the last fire. Delivery is a single attempt;
14
+ * a failed delivery still stamps `lastFiredAt` so the sweep never becomes a retry loop (retries/
15
+ * backoff are an explicit E3 deferral). Firing state persists so edge-triggering survives restarts.
16
+ *
17
+ * Logging is closed-vocabulary + rule id + HTTP status only — the webhook URL is sensitive and
18
+ * never appears in any log line.
19
+ *
20
+ * Instance scope: the sweep is per-instance (in-flight-guarded and throttled locally). On a
21
+ * multi-instance deployment two instances can each fire the same breach once before the shared
22
+ * firing state persists — a duplicate notification, never lost/corrupted state. A cross-instance
23
+ * atomic fire claim is an explicit E3 deferral (ADR 0130).
24
+ */
25
+ export declare const ALERT_EVALUATION_INTERVAL_MS = 60000;
26
+ /** The observed value a rule compares against its threshold, per metric. */
27
+ export declare function observedMetricValue(metric: AlertMetric, metrics: RequestMetrics): number;
28
+ export interface AlertEvaluatorOptions {
29
+ readonly alertRules: AlertRuleStore;
30
+ readonly requestEvents: RequestEventStore;
31
+ /** Dev/test-only loopback webhook carve-out, threaded to the delivery policy. Default false. */
32
+ readonly allowLoopbackWebhooks?: boolean;
33
+ /** Injectable delivery seam for tests. Default {@link deliverAlertWebhook}. */
34
+ readonly deliver?: (url: string, payload: AlertWebhookPayload, options: {
35
+ readonly allowLoopback: boolean;
36
+ }) => Promise<AlertWebhookDelivery>;
37
+ /** Injectable clock for deterministic edge-trigger/cooldown tests. Default `new Date()`. */
38
+ readonly clock?: () => Date;
39
+ readonly logger?: Logger;
40
+ /** Throttle for {@link maybeSweep}. Default {@link ALERT_EVALUATION_INTERVAL_MS}. */
41
+ readonly intervalMs?: number;
42
+ }
43
+ export declare class AlertEvaluator {
44
+ #private;
45
+ constructor(options: AlertEvaluatorOptions);
46
+ /**
47
+ * Throttled, fire-and-forget sweep (the serve-time interval calls this): never throws, and
48
+ * never overlaps — a sweep that outlives the interval (slow store/webhook timeouts) must not
49
+ * race a second sweep into double-delivering the same breach before state persists.
50
+ */
51
+ maybeSweep(): void;
52
+ sweepNow(): Promise<{
53
+ readonly evaluated: number;
54
+ readonly fired: number;
55
+ }>;
56
+ }
57
+ //# sourceMappingURL=alert-evaluator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-evaluator.d.ts","sourceRoot":"","sources":["../src/alert-evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,MAAM,EAAc,MAAM,6BAA6B,CAAC;AACtE,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EAGzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,KAAK,EAAE,WAAW,EAAmB,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE3F;;;;;;;;;;;;;;;;;;GAkBG;AAEH,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAInD,4EAA4E;AAC5E,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,GAAG,MAAM,CAWxF;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;IAC1C,gGAAgG;IAChG,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC,+EAA+E;IAC/E,QAAQ,CAAC,OAAO,CAAC,EAAE,CACjB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE;QAAE,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;KAAE,KACzC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnC,4FAA4F;IAC5F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,qFAAqF;IACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,cAAc;;gBAWb,OAAO,EAAE,qBAAqB;IAY1C;;;;OAIG;IACH,UAAU,IAAI,IAAI;IAsBZ,QAAQ,IAAI,OAAO,CAAC;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAyElF"}