@jinn-network/client 0.1.6-canary.bb73be6b → 0.1.6-canary.bc8c4ccc

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 (63) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/adapters/mech/adapter.js +43 -6
  3. package/dist/adapters/mech/adapter.js.map +1 -1
  4. package/dist/api/codex-doctor-endpoint.d.ts +73 -0
  5. package/dist/api/codex-doctor-endpoint.js +158 -0
  6. package/dist/api/codex-doctor-endpoint.js.map +1 -0
  7. package/dist/api/hermes-doctor-endpoint.d.ts +30 -0
  8. package/dist/api/hermes-doctor-endpoint.js +44 -5
  9. package/dist/api/hermes-doctor-endpoint.js.map +1 -1
  10. package/dist/api/server.d.ts +17 -0
  11. package/dist/api/server.js +46 -1
  12. package/dist/api/server.js.map +1 -1
  13. package/dist/api/setup-endpoints.js +49 -3
  14. package/dist/api/setup-endpoints.js.map +1 -1
  15. package/dist/api/solvernets-endpoints.js +8 -1
  16. package/dist/api/solvernets-endpoints.js.map +1 -1
  17. package/dist/build-info.json +4 -4
  18. package/dist/build-meta.json +1 -1
  19. package/dist/chain-read-errors.d.ts +10 -0
  20. package/dist/chain-read-errors.js +15 -0
  21. package/dist/chain-read-errors.js.map +1 -1
  22. package/dist/cli/commands/create.js +3 -2
  23. package/dist/cli/commands/create.js.map +1 -1
  24. package/dist/config.d.ts +15 -0
  25. package/dist/config.js +12 -0
  26. package/dist/config.js.map +1 -1
  27. package/dist/daemon/daemon.js +25 -7
  28. package/dist/daemon/daemon.js.map +1 -1
  29. package/dist/daemon/skip-log-dedup.d.ts +50 -4
  30. package/dist/daemon/skip-log-dedup.js +79 -18
  31. package/dist/daemon/skip-log-dedup.js.map +1 -1
  32. package/dist/dashboard/assets/index-2PkRESIa.js +170 -0
  33. package/dist/dashboard/assets/{index-CarzUepP.css → index-DE4qUnzV.css} +1 -1
  34. package/dist/dashboard/index.html +2 -2
  35. package/dist/discovery/onchain.js +19 -8
  36. package/dist/discovery/onchain.js.map +1 -1
  37. package/dist/discovery/types.d.ts +15 -1
  38. package/dist/discovery/types.js +8 -10
  39. package/dist/discovery/types.js.map +1 -1
  40. package/dist/harnesses/impls/hermes-agent/harness.d.ts +7 -1
  41. package/dist/harnesses/impls/hermes-agent/harness.js +21 -4
  42. package/dist/harnesses/impls/hermes-agent/harness.js.map +1 -1
  43. package/dist/harnesses/impls/index.d.ts +5 -0
  44. package/dist/harnesses/impls/index.js +11 -0
  45. package/dist/harnesses/impls/index.js.map +1 -1
  46. package/dist/harnesses/impls/learner/harness.d.ts +38 -4
  47. package/dist/harnesses/impls/learner/harness.js +96 -2
  48. package/dist/harnesses/impls/learner/harness.js.map +1 -1
  49. package/dist/harnesses/impls/learner/types.d.ts +11 -0
  50. package/dist/harnesses/impls/stub.d.ts +58 -0
  51. package/dist/harnesses/impls/stub.js +89 -0
  52. package/dist/harnesses/impls/stub.js.map +1 -0
  53. package/dist/harnesses/readiness-registry.js +9 -1
  54. package/dist/harnesses/readiness-registry.js.map +1 -1
  55. package/dist/main.js +6 -0
  56. package/dist/main.js.map +1 -1
  57. package/dist/solver-nets/prediction-operator-ux.js +31 -12
  58. package/dist/solver-nets/prediction-operator-ux.js.map +1 -1
  59. package/dist/solvernets/daemon-init.d.ts +10 -2
  60. package/dist/solvernets/daemon-init.js +22 -2
  61. package/dist/solvernets/daemon-init.js.map +1 -1
  62. package/package.json +27 -11
  63. package/dist/dashboard/assets/index-DO0ZFsGp.js +0 -140
package/CHANGELOG.md CHANGED
@@ -19,6 +19,20 @@
19
19
  Claude Code as their SolverNet harness — that path is independent of the
20
20
  embedded chat surface and its WebSocket bridge.
21
21
 
22
+ ### Operator app
23
+
24
+ - **Plug-in builder UI surfaces hidden by default (issue #327).** The `/build`
25
+ route and the Build top-tab no longer appear in the operator app. Hitting
26
+ `/build` by direct URL redirects to `/overview`. The plug-in substrate stays
27
+ fully live — `jinn solver-plugins publish` / `revoke`, the Ponder indexer,
28
+ the Discovery API endpoints, and the `client/docs/build/` tree are
29
+ unchanged, so direct-CLI builders following the docs are not blocked. The
30
+ surfaces are gated to keep the operator-app first-run UX focused; they will
31
+ be re-promoted once that UX is solid and plug-in indexing is end-to-end
32
+ populated. Set `JINN_ENABLE_PLUGIN_BUILDER_UI=1` on the daemon to re-enable
33
+ the full builder surface for development and design work — the daemon injects
34
+ the flag into the SPA via `window.__JINN_FEATURES__`.
35
+
22
36
  ### SWE-rebench v2 admission
23
37
 
24
38
  - **Admission semantics bumped from `'2'` → `'3'`.** Operators running the
@@ -8,6 +8,7 @@ import { buildResultPayload, uploadToIpfs, cidToDigestHex, fetchFromIpfs, fetchS
8
8
  import { canonicalJson } from '../../harnesses/engine/canonical-json.js';
9
9
  import { normalizeEnvelopeRole, SignedEnvelopeSchema } from '../../types/envelope.js';
10
10
  import { submitTask, claimTask as claimTaskOnchain, claimEvaluation as claimEvaluationOnchain, claimDelivery, getMechDeliveryRate, getTimeoutBounds, decodeTaskCreatedLogs, decodeSolutionDeliveryClaimedLogs, decodeDeliverLogs, findLatestDeliveryDataHexForRequest, getMarketplaceRequestDeliveryMech, getTaskCidDigest, callDeliverToMarketplace, canClaimTask, canClaimEvaluation, } from './contracts.js';
11
+ import { isNonRecoverableInnerRevert } from './safe-revert.js';
11
12
  import { verdictCodeFromValue } from './verdict-code.js';
12
13
  import { manifestDigestForCid } from './digest.js';
13
14
  import { withRecoverableRetry } from '../../tx-retry.js';
@@ -17,6 +18,26 @@ import { signTaskV1 } from '../../tasks/signing.js';
17
18
  const ROUTER_REQUEST_CURSOR_CONFIG_KEY = 'mech_router_request_block_cursor_v1';
18
19
  const PENDING_EVALUATION_SOLUTIONS_CONFIG_KEY = 'mech_pending_evaluation_solutions_v1';
19
20
  const DEFAULT_MECH_DELIVER_BACKFILL_LOOKBACK_BLOCKS = 100000n;
21
+ /** Yield to the event loop every N evaluation opportunities so a large retry
22
+ * backlog can't starve the HTTP API mid-cycle. */
23
+ const EVALUATION_RETRY_YIELD_EVERY = 10;
24
+ /**
25
+ * Decide whether a `canClaimEvaluation` failure reason means the opportunity
26
+ * can NEVER become claimable (terminal, prune it) versus one that could still
27
+ * clear later (transient, keep retrying).
28
+ *
29
+ * A false-keep (re-checking a dead opportunity) only costs one more RPC; a
30
+ * false-prune (dropping a still-claimable opportunity) loses real work — so
31
+ * when in doubt we keep. Anything that does not resolve to a known
32
+ * non-recoverable revert name is treated as transient.
33
+ */
34
+ function isTerminalEvaluationReason(reason) {
35
+ if (!reason)
36
+ return false;
37
+ // Strip a decoded-argument suffix, e.g. `TCAttemptAlreadyFinalized(1, 0)`.
38
+ const bareName = reason.replace(/\(.*$/s, '').trim();
39
+ return isNonRecoverableInnerRevert(bareName);
40
+ }
20
41
  const DEFAULT_ROUTER_LOG_CHUNK_BLOCKS = 9999n;
21
42
  /**
22
43
  * Floor block for the on-chain TaskCreated backlog scan, per chain.
@@ -530,13 +551,23 @@ export class MechAdapter {
530
551
  this.forgetPendingEvaluationSolution(solution.requestId);
531
552
  return undefined;
532
553
  }
533
- const restoration = await this.restorationAnnouncementForTaskId(solution.taskId);
554
+ // Cheap claimability gate FIRST — before the restoration lookup + IPFS
555
+ // fetch. A backlog of terminal opportunities (finalized / evaluation
556
+ // deadline passed / max verdicts reached) must not pay the expensive
557
+ // restoration-announcement cost on every poll cycle. Terminal reasons are
558
+ // pruned from the working set so the loop never re-scans on-chain history;
559
+ // transient reasons are left in place to be retried next cycle.
534
560
  const claimable = await canClaimEvaluation(this.publicClient, this.config.safeAddress, this.config.routerAddress, solution.taskId, solution.attemptIndex, this.config.mechContractAddress);
535
561
  if (!claimable.ok) {
536
- console.log(`[mech] skipping evaluation opportunity ${solution.requestId} for task ${solution.taskId}/${solution.attemptIndex}: ${claimable.reason}`);
537
- this.forgetPendingEvaluationSolution(solution.requestId);
562
+ const terminal = isTerminalEvaluationReason(claimable.reason);
563
+ console.log(`[mech] skipping evaluation opportunity ${solution.requestId} for task ${solution.taskId}/${solution.attemptIndex}: ${claimable.reason}` +
564
+ (terminal ? ' (terminal — pruned)' : ' (transient — will retry)'));
565
+ if (terminal) {
566
+ this.forgetPendingEvaluationSolution(solution.requestId);
567
+ }
538
568
  return undefined;
539
569
  }
570
+ const restoration = await this.restorationAnnouncementForTaskId(solution.taskId);
540
571
  const solutionEnvelopeCid = await this.deliveryEnvelopeCidForSolution(solution);
541
572
  const resultPayload = await fetchFromIpfs(this.config.ipfsGatewayUrl, solutionEnvelopeCid);
542
573
  const resultData = resultPayload.data ?? JSON.stringify(resultPayload);
@@ -565,15 +596,21 @@ export class MechAdapter {
565
596
  return announcement;
566
597
  }
567
598
  async *retryPendingEvaluationSolutions() {
599
+ let processed = 0;
568
600
  for (const [requestId, solution] of Array.from(this.pendingEvaluationSolutions)) {
601
+ // Yield to the event loop periodically so a large backlog of pending
602
+ // evaluation solutions can't starve the HTTP API mid-cycle.
603
+ if (processed > 0 && processed % EVALUATION_RETRY_YIELD_EVERY === 0) {
604
+ await new Promise((resolve) => setImmediate(resolve));
605
+ }
606
+ processed++;
569
607
  try {
570
608
  const announcement = await this.evaluationAnnouncementForSolution(solution);
571
609
  if (announcement) {
572
610
  yield announcement;
573
611
  }
574
- else {
575
- this.forgetPendingEvaluationSolution(requestId);
576
- }
612
+ // No announcement does NOT mean "forget" — pruning is owned by
613
+ // evaluationAnnouncementForSolution, which only removes terminal cases.
577
614
  }
578
615
  catch (err) {
579
616
  console.error(`[mech] evaluation opportunity retry failed for ${requestId}:`, err);
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/mech/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAA0E,MAAM,MAAM,CAAC;AACvH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAWhD,OAAO,EAAkB,cAAc,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,uBAAuB,EACvB,2BAA2B,GAE5B,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACtF,OAAO,EACL,UAAU,EACV,SAAS,IAAI,gBAAgB,EAC7B,eAAe,IAAI,sBAAsB,EACzC,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,iCAAiC,EACjC,iBAAiB,EACjB,mCAAmC,EACnC,iCAAiC,EACjC,gBAAgB,EAChB,wBAAwB,EACxB,YAAY,EACZ,kBAAkB,GAEnB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAe,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EACL,iCAAiC,EACjC,6BAA6B,EAC7B,gCAAgC,GACjC,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAYpD,MAAM,gCAAgC,GAAG,qCAAqC,CAAC;AAC/E,MAAM,uCAAuC,GAAG,sCAAsC,CAAC;AACvF,MAAM,6CAA6C,GAAG,OAAQ,CAAC;AAC/D,MAAM,+BAA+B,GAAG,KAAM,CAAC;AAC/C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAA2B;IACvE,KAAK,EAAE,SAAW;IAClB,IAAI,EAAE,SAAW;CAClB,CAAC;AACF,MAAM,yBAAyB,GAAoB;IACjD,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,CAAC;IACZ,oBAAoB,EAAE,CAAC;IACvB,oBAAoB,EAAE,EAAE,GAAG,EAAE;CAC9B,CAAC;AAEF;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,KAAW;IACnC,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC9C,OAAO,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;IACxD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAW,EACX,UAAkB;IAElB,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC9C,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;IAClF,CAAC;IACD,MAAM,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,OAAO;YACL,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YACpC,eAAe,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;SAC3C,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,UAAU,IAAI,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;AACvE,CAAC;AAED,MAAM,OAAO,WAAW;IACb,IAAI,GAAG,MAAM,CAAC;IAEf,YAAY,CAAgB;IAC5B,YAAY,CAAgB;IAC5B,MAAM,CAAoB;IAC1B,OAAO,GAAG,KAAK,CAAC;IAChB,kBAAkB,GAAG,EAAE,CAAC;IACxB,mBAAmB,GAAG,EAAE,CAAC;IACzB,kBAAkB,GAAG,IAAI,GAAG,EAA+C,CAAC;IAC5E,aAAa,GAAG,IAAI,GAAG,EAA4B,CAAC;IACpD,YAAY,GAAG,IAAI,GAAG,EAAkC,CAAC;IACzD,yBAAyB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9C,uBAAuB,GAAG,IAAI,GAAG,EAIrC,CAAC;IACG,0BAA0B,GAAG,IAAI,GAAG,EAAqC,CAAC;IAClF,kEAAkE;IAClE,mDAAmD;IAC3C,cAAc,GAAG,IAAI,GAAG,EAAgB,CAAC;IACzC,KAAK,CAAS;IAEtB,YAAY,MAAyB,EAAE,KAAa;QAClD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;QACjE,MAAM,OAAO,GAAG,aAAa,CAC3B,IAAI,CAAC,MAAM,CAAC,MAAM,EAClB,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAC9B,KAAK,CACN,CAAC;QACF,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QAEzC,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAC5C,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,EAC9C;YACE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;gBAChC,OAAO,CAAC,KAAK,CACX,+BAA+B,OAAO,IAAI;oBAC1C,cAAc,CAAC,OAAO,EAAE;wBACtB,SAAS,EAAE,gBAAgB;wBAC3B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM;wBAC9D,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;qBAC3B,CAAC,CACH,CAAC;YACJ,CAAC;SACF,CACF,CAAC;QACF,IAAI,CAAC,kBAAkB,GAAG,WAAW,CAAC;QACtC,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC;QAEvC,6CAA6C;QAC7C,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,8BAA8B,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;YACvD,IAAI,SAAS,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;gBAC1C,IAAI,CAAC,kBAAkB,GAAG,SAAS,GAAG,EAAE,CAAC;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,YAAoB;QACpD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,qBAAqB,EAAE,IAAI,YAAY,CAAC;QACtE,IAAI,SAAS,GAAG,YAAY,EAAE,CAAC;YAC7B,OAAO,CAAC,KAAK,CACX,+DAA+D,SAAS,IAAI;gBAC5E,sDAAsD,CACvD,CAAC;YACF,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;QACvC,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,gCAAgC,CAAC,CAAC;QACrF,MAAM,eAAe,GAAG,eAAe,IAAI,IAAI;YAC7C,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;YACzB,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,eAAe,GAAG,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,kBAAkB,GAAG,eAAe,CAAC;QAC5C,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAC3D,IAAI,aAAa,IAAI,aAAa,IAAI,YAAY,EAAE,CAAC;YACnD,MAAM,eAAe,GAAG,aAAa,GAAG,EAAE,CAAC;YAC3C,IAAI,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC9C,IAAI,CAAC,kBAAkB,GAAG,eAAe,CAAC;YAC5C,CAAC;YACD,OAAO,CAAC,KAAK,CACX,gEAAgE,aAAa,IAAI;gBACjF,kDAAkD,CACnD,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,6BAA6B;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;QAC5C,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,qBAAqB,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/E,IAAI,CAAC,kBAAkB;YAAE,OAAO,SAAS,CAAC;QAC1C,IAAI,SAAS,EAAE,gBAAgB,KAAK,SAAS,EAAE,CAAC;YAC9C,MAAM,GAAG,GAAG,SAAS,CAAC,gBAAgB,CAAC;YACvC,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACnF,OAAO,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACxC,CAAC;QACD,OAAO,iCAAiC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChE,CAAC;IAEO,uBAAuB;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,qBAAqB,IAAI,EAAE,CAAC;QACpE,OAAO,IAAI,GAAG,CACZ,IAAI;aACD,MAAM,CAAC,OAAO,CAAC;aACf,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CACzD,CAAC;IACJ,CAAC;IAEO,uBAAuB;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,cAAc,IAAI,EAAE,CAAC;QAC5D,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9C,CAAC;IAEO,sBAAsB,CAAC,MAAc;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/C,OAAO,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,OAAe;QACpE,MAAM,IAAI,GAAU,EAAE,CAAC;QACvB,KAAK,IAAI,KAAK,GAAG,SAAS,EAAE,KAAK,IAAI,OAAO,EAAE,KAAK,IAAI,+BAA+B,GAAG,EAAE,EAAE,CAAC;YAC5F,MAAM,GAAG,GAAG,KAAK,GAAG,+BAA+B,GAAG,OAAO;gBAC3D,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,KAAK,GAAG,+BAA+B,CAAC;YAC5C,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;gBAC3C,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;gBAClC,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,GAAG;aACb,CAAC,CAAC,CAAC;QACN,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,8BAA8B;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,uCAAuC,CAAC,CAAC;QAChF,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,OAAO;YACnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;oBAAE,SAAS;gBACzD,MAAM,IAAI,GAAG,KAA2C,CAAC;gBACzD,IACE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;oBAC/B,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;oBAClC,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ;oBACjC,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EACrC,CAAC;oBACD,SAAS;gBACX,CAAC;gBACD,MAAM,QAAQ,GAA8B;oBAC1C,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,YAAY,EAAE,IAAI,CAAC,YAAY;oBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,eAAe,EAAE,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ;wBACvD,CAAC,CAAC,IAAI,CAAC,eAAsB;wBAC7B,CAAC,CAAC,SAAS;oBACb,WAAW,EAAE,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;iBACjF,CAAC;gBACF,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,qDAAqD,EAAE,GAAG,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAEO,iCAAiC;QACvC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,KAAK,CAAC,cAAc,CACvB,uCAAuC,EACvC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,CAAC,CAAC,CACrE,CAAC;IACJ,CAAC;IAEO,iCAAiC,CAAC,QAAmC;QAC3E,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAClE,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC3C,CAAC;IAEO,+BAA+B,CAAC,SAAiB;QACvD,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,SAAS,CAAC;YAAE,OAAO;QAC/D,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC3C,CAAC;IAEO,iCAAiC,CAAC,SAAiB;QACzD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAEO,6BAA6B,CAAC,SAAiB;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC1F,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,yBAAyB,CAAC;QACnE,MAAM,oBAAoB,GAAG,CAAC,KAAyB,EAAsB,EAAE;YAC7E,IAAI,KAAK,IAAI,IAAI;gBAAE,OAAO,SAAS,CAAC;YACpC,OAAO,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,CAAC,CAAC;QACF,MAAM,yBAAyB,GAAG,oBAAoB,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;QACzF,IAAI,yBAAyB,IAAI,IAAI;YAAE,OAAO,yBAAyB,CAAC;QAExE,MAAM,qBAAqB,GAAG,oBAAoB,CAChD,WAAW,CAAC,gBAAgB,IAAI,IAAI,EAAE,MAAM,EAAE,KAAK,CACpD,CAAC;QACF,IAAI,qBAAqB,IAAI,IAAI;YAAE,OAAO,SAAS,CAAC;QACpD,OAAO,qBAAqB,GAAG,WAAW,CAAC,oBAAoB,CAAC;IAClE,CAAC;IAEO,iCAAiC,CACvC,SAAiB,EACjB,4BAAoC,EACpC,qBAA6B;QAE7B,IAAI,4BAA4B,IAAI,qBAAqB;YAAE,OAAO,KAAK,CAAC;QAExE,OAAO,CAAC,KAAK,CACX,yCAAyC,SAAS,IAAI;YACtD,kCAAkC,IAAI,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CACzF,CAAC;QACF,IAAI,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAW;QACxB,MAAM,gBAAgB,GAAS;YAC7B,GAAG,KAAK;YACR,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,aAAa;YACjC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;SACnC,CAAC;QACF,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,MAAM,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;QACrF,uEAAuE;QACvE,mDAAmD;QACnD,MAAM,OAAO,GAAY,UAAU,CAAC;QACpC,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAChF,MAAM,kBAAkB,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC;QAC1G,MAAM,kBAAkB,GAAG,YAAY,UAAU,EAAE,CAAC;QAEpD,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACnG,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAC1G,sEAAsE;QACtE,qEAAqE;QACrE,qEAAqE;QACrE,qDAAqD;QACrD,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC;YACrC,MAAM,IAAI,cAAc,CACtB,oBAAoB,UAAU,CAAC,EAAE,gDAAgD;gBACjF,oEAAoE,CACrE,CAAC;QACJ,CAAC;QACD,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;QAE5D,MAAM,cAAc,GAAG,MAAM,UAAU,CACrC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,kBAAkB,EAClB,cAAc,EACd,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CAAC;QAEF,MAAM,YAAY,GAAqB;YACrC,MAAM,EAAE,cAAc,CAAC,MAAM;YAC7B,IAAI,EAAE;gBACJ,GAAG,gBAAgB;gBACnB,UAAU;gBACV,OAAO,EAAE,EAAE,GAAG,CAAC,gBAAgB,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC,6BAA6B,CAAC,EAAE,kBAAkB,EAAE;aACtG;YACD,OAAO,EAAE,kBAAkB;YAC3B,iBAAiB,EAAE,cAAc,CAAC,MAAM;YACxC,oBAAoB,EAAE,cAAc,CAAC,WAAW;SACjD,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAE5D,OAAO;YACL,MAAM,EAAE,cAAc,CAAC,MAAM;YAC7B,OAAO,EAAE,kBAAkB;YAC3B,MAAM,EAAE,cAAc,CAAC,MAAM;YAC7B,WAAW,EAAE,cAAc,CAAC,WAAW;SACxC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,KAAW;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACpE,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,OAAO;YAAE,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QACrD,IAAI,KAAK,CAAC,SAAS;YAAE,MAAM,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;QAC3D,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS;YAAE,MAAM,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC;QACrF,IAAI,KAAK,CAAC,oBAAoB;YAAE,MAAM,CAAC,sBAAsB,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC;QAE5F,iEAAiE;QACjE,qEAAqE;QACrE,iEAAiE;QACjE,wEAAwE;QACxE,qEAAqE;QACrE,qDAAqD;QACrD,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC;YAChC,MAAM,IAAI,cAAc,CACtB,oBAAoB,KAAK,CAAC,EAAE,iCAAiC;gBAC7D,mEAAmE,CACpE,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/D,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,uBAAuB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAEnF,MAAM,OAAO,GAAG;YACd,aAAa,EAAE,SAAS;YACxB,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,UAAU;YACV,UAAU;YACV,eAAe;YACf,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;YAChD,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,aAAa;YACjC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,UAAU,EAAE;YACjE,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YACtB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;YACpC,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,yBAAyB;YAC3D,OAAO,EAAE;gBACP,WAAW,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAChD,QAAQ,EAAE,OAAO,CAAC,OAAO;aAC1B;YACD,SAAS,EAAE,GAAG;YACd,GAAG,MAAM;SACA,CAAC;QACZ,OAAO,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC7D,CAAC;IAEO,qBAAqB,CAAC,KAAW;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACjD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,yBAAyB,CAAC;QACnE,MAAM,WAAW,GAAG,CAAC,KAAyB,EAAE,QAAgB,EAAU,EAAE;YAC1E,MAAM,GAAG,GAAG,KAAK,IAAI,QAAQ,CAAC;YAC9B,OAAO,MAAM,CAAC,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACrE,CAAC,CAAC;QACF,MAAM,gBAAgB,GAAG,WAAW,CAClC,WAAW,CAAC,kBAAkB,IAAI,KAAK,CAAC,MAAM,EAAE,OAAO,EACvD,UAAU,CACX,CAAC;QACF,MAAM,cAAc,GAAG,WAAW,CAChC,WAAW,CAAC,gBAAgB,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,EACnD,UAAU,GAAG,EAAE,GAAG,EAAE,CACrB,CAAC;QACF,MAAM,kBAAkB,GAAG,WAAW,CACpC,WAAW,CAAC,oBAAoB,EAChC,MAAM,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC,oBAAoB,CAC1D,CAAC;QAEF,OAAO;YACL,gBAAgB;YAChB,cAAc;YACd,kBAAkB;YAClB,oBAAoB,EAAE,WAAW,CAAC,oBAAoB;YACtD,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,oBAAoB,EAAE,WAAW,CAAC,oBAAoB;YACtD,UAAU,EAAE,CAAC,WAAW,CAAC,UAAU,IAAI,WAAW,CAAY;YAC9D,gBAAgB,EAAE;gBAChB,gBAAgB,EAAE,CAAC;gBACnB,aAAa,EAAE,CAAC;gBAChB,kBAAkB,EAAE,kBAAkB,GAAG,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC;gBACjF,uBAAuB,EAAE,CAAC;gBAC1B,uEAAuE;gBACvE,wDAAwD;gBACxD,kEAAkE;gBAClE,gEAAgE;gBAChE,sEAAsE;gBACtE,qEAAqE;gBACrE,qEAAqE;gBACrE,UAAU;gBACV,4BAA4B,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;aAC5D;SACF,CAAC;IACJ,CAAC;IAEO,mBAAmB,CAAC,MAO3B;QACC,OAAO;YACL,GAAG,MAAM,CAAC,IAAI;YACd,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,eAAe,MAAM,CAAC,YAAY,EAAE;YACzD,IAAI,EAAE,YAAY;YAClB,oBAAoB,EAAE,MAAM,CAAC,iBAAiB;YAC9C,SAAS,EAAE,MAAM,CAAC,iBAAiB;YACnC,aAAa,EAAE,MAAM,CAAC,YAAY;YAClC,OAAO,EAAE;gBACP,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;gBAC9B,iBAAiB,EAAE,MAAM,CAAC,UAAU;gBACpC,CAAC,6BAA6B,CAAC,EAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,6BAA6B,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,gCAAgC,CAAC,IAAI,MAAM,CAAC,OAAO;gBACnI,CAAC,iCAAiC,CAAC,EAAE,MAAM,CAAC,mBAAmB;aAChE;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,gCAAgC,CAAC,MAAc;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAC1C,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,MAAM,CACP,CAAC;QACF,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;QACvF,MAAM,OAAO,GAAG,YAAY,MAAM,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAClF,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAqB;YACrC,MAAM;YACN,IAAI;YACJ,OAAO;SACR,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7C,OAAO,YAAY,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,iCAAiC,CAAC,MAK/C;QACC,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC;YAClD,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/B,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QACzB,MAAM,OAAO,GAAG,YAAY,MAAM,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAClF,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAqB;YACrC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI;YACJ,OAAO;YACP,iBAAiB,EAAE,MAAM,CAAC,eAAe;YACzC,oBAAoB,EAAE,MAAM,CAAC,WAAW;SACzC,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACpD,OAAO,YAAY,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,CAAC,gCAAgC;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;QAC5C,MAAM,YAAY,GAA6B,SAAS,EAAE,YAAY,CAAC;QACvE,MAAM,qBAAqB,GAAG,SAAS,EAAE,qBAAqB,IAAI,EAAE,CAAC;QAErE,wEAAwE;QACxE,wEAAwE;QACxE,8DAA8D;QAC9D,IAAI,CAAC,YAAY,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEhE,IAAI,UAAU,CAAC;QACf,IAAI,CAAC;YACH,UAAU,GAAG,MAAM,YAAY,CAAC,kBAAkB,CAAC;gBACjD,qBAAqB;gBACrB,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;gBACxC,QAAQ,EAAE,SAAS,EAAE,QAAQ;gBAC7B,QAAQ,EAAE,SAAS,EAAE,QAAQ;aAC9B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CACX,8CAA8C,EAC9C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CACzC,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAEjE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,MAAM,CAAC;gBAAE,SAAS;YAC7D,IAAI,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC;gBAAE,SAAS;YAEnE,oEAAoE;YACpE,oEAAoE;YACpE,qEAAqE;YACrE,mEAAmE;YACnE,4DAA4D;YAC5D,iEAAiE;YACjE,+DAA+D;YAC/D,eAAe;YACf,IACE,mBAAmB,IAAI,IAAI;gBAC3B,SAAS,CAAC,cAAc,IAAI,IAAI;gBAChC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,mBAAmB,EACtD,CAAC;gBACD,SAAS;YACX,CAAC;YAED,uEAAuE;YACvE,uEAAuE;YACvE,sEAAsE;YACtE,sEAAsE;YACtE,+DAA+D;YAC/D,MAAM,SAAS,GAAG,MAAM,YAAY,CAClC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,SAAS,CAAC,MAAM,EAChB,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAChC,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;gBAClB,SAAS;YACX,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,IAAI,CAAC,iCAAiC,CAAC;oBACjD,MAAM,EAAE,SAAS,CAAC,MAAM;oBACxB,aAAa,EAAE,SAAS,CAAC,aAAa;oBACtC,eAAe,EAAE,SAAS,CAAC,WAAW;oBACtC,WAAW,EAAE,SAAS,CAAC,cAAc;iBACtC,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CACX,0CAA0C,SAAS,CAAC,MAAM,GAAG,EAC7D,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CACzC,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAAC,QAG5C;QACC,MAAM,YAAY,GAAG,MAAM,iCAAiC,CAC1D,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAClC,QAAQ,CAAC,SAAS,CACnB,CAAC;QACF,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,IAAI,IAAI;YAC1C,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC9B,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;QAC7C,MAAM,QAAQ,GACZ,IAAI,CAAC,MAAM,CAAC,iCAAiC;YAC7C,6CAA6C,CAAC;QAChD,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,MAAM,eAAe,GAAG,MAAM,mCAAmC,CAC/D,IAAI,CAAC,YAAY,EACjB,YAAY,EACZ,QAAQ,CAAC,SAAS,EAClB,SAAS,EACT,OAAO,CACR,CAAC;QACF,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,4CAA4C,QAAQ,CAAC,SAAS,YAAY,YAAY,GAAG;gBACzF,kBAAkB,SAAS,QAAQ,OAAO,EAAE,CAC7C,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;QAC7F,OAAO,YAAY,MAAM,EAAE,CAAC;IAC9B,CAAC;IAEO,KAAK,CAAC,iCAAiC,CAC7C,QAAmC;QAEnC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,OAAO,CAAC,GAAG,CACT,0CAA0C,QAAQ,CAAC,SAAS,aAAa,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,YAAY,2CAA2C,CAC7J,CAAC;YACF,IAAI,CAAC,+BAA+B,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACzD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjF,MAAM,SAAS,GAAG,MAAM,kBAAkB,CACxC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,YAAY,EACrB,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAChC,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CACT,0CAA0C,QAAQ,CAAC,SAAS,aAAa,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,YAAY,KAAK,SAAS,CAAC,MAAM,EAAE,CACzI,CAAC;YACF,IAAI,CAAC,+BAA+B,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACzD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC;QAChF,MAAM,aAAa,GAAG,MAAM,aAAa,CACvC,IAAI,CAAC,MAAM,CAAC,cAAc,EAC1B,mBAAmB,CACO,CAAC;QAC7B,MAAM,UAAU,GAAI,aAAa,CAAC,IAAe,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACnF,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAC9C,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,iBAAiB,EAAE,QAAQ,CAAC,SAAS;YACrC,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,UAAU;YACV,mBAAmB;YACnB,OAAO,EAAE,WAAW,CAAC,OAAO;SAC7B,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,cAAc,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;QACrG,MAAM,YAAY,GAAqB;YACrC,MAAM,EAAE,aAAa;YACrB,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,iBAAiB,EAAE,QAAQ,CAAC,eAAe;YAC3C,oBAAoB,EAAE,QAAQ,CAAC,WAAW;SAC3C,CAAC;QACF,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,aAAa,EAAE;YAC9C,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,IAAI,EAAE,cAAc;SACrB,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;QACpD,OAAO,YAAY,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,CAAC,+BAA+B;QAC5C,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC;YAChF,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,iCAAiC,CAAC,QAAQ,CAAC,CAAC;gBAC5E,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,YAAY,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,+BAA+B,CAAC,SAAS,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CACX,kDAAkD,SAAS,GAAG,EAC9D,GAAG,CACJ,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,CAAC,aAAa;QAClB,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,IAAI,KAAK,EAAE,MAAM,YAAY,IAAI,IAAI,CAAC,+BAA+B,EAAE,EAAE,CAAC;oBACxE,MAAM,YAAY,CAAC;gBACrB,CAAC;gBAED,IAAI,KAAK,EAAE,MAAM,YAAY,IAAI,IAAI,CAAC,gCAAgC,EAAE,EAAE,CAAC;oBACzE,MAAM,YAAY,CAAC;gBACrB,CAAC;gBAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;gBAC9D,IAAI,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;oBAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;oBAEvE,MAAM,kBAAkB,GAAG,iCAAiC,CAAC,IAAI,CAAC,CAAC;oBACnE,KAAK,MAAM,QAAQ,IAAI,kBAAkB,EAAE,CAAC;wBAC1C,IAAI,CAAC,iCAAiC,CAAC,QAAQ,CAAC,CAAC;oBACnD,CAAC;oBACD,IAAI,CAAC,kBAAkB,GAAG,YAAY,CAAC;oBACvC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gCAAgC,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACvF,CAAC;oBAED,MAAM,qBAAqB,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;oBAC7D,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;oBACjD,KAAK,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,IAAI,YAAY,EAAE,CAAC;wBACnG,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC;4BAAE,SAAS;wBACnD,IAAI,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC;4BAAE,SAAS;wBAC3F,IAAI,qBAAqB,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;4BAAE,SAAS;wBACzG,IAAI,CAAC;4BACH,MAAM,SAAS,GAAG,MAAM,YAAY,CAClC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,MAAM,EACN,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAChC,CAAC;4BACF,IAAI,CAAC,SAAS,CAAC,EAAE;gCAAE,SAAS;4BAC5B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,iCAAiC,CAAC;gCAChE,MAAM;gCACN,aAAa;gCACb,eAAe;gCACf,WAAW;6BACZ,CAAC,CAAC;4BACH,MAAM,YAAY,CAAC;wBACrB,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,MAAM,GAAG,EAAE,GAAG,CAAC,CAAC;wBAC/D,CAAC;oBACH,CAAC;oBACD,IAAI,KAAK,EAAE,MAAM,YAAY,IAAI,IAAI,CAAC,+BAA+B,EAAE,EAAE,CAAC;wBACxE,MAAM,YAAY,CAAC;oBACrB,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,cAAc,CAAC,GAAG,EAAE;oBACnE,SAAS,EAAE,iBAAiB;oBAC5B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM;oBAC9D,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;oBAC1B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;oBACnC,SAAS,EAAE,IAAI,CAAC,kBAAkB,GAAG,EAAE;iBACxC,CAAC,CAAC,CAAC;YACN,CAAC;YAED,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAc;QAC5B,MAAM,qBAAqB,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACvE,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACrF,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;YAC5F,MAAM,uBAAuB,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CACxC,qBAAqB,CAAC,MAAM,EAC5B,qBAAqB,CAAC,YAAY,EAClC,uBAAuB,CACxB,CAAC;YAEF,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC3E,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACvE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACpD,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,IAAI,CAAC,oBAAoB,CAAC;YAC1E,IAAI,iBAAiB,EAAE,CAAC;gBACtB,IAAI,CAAC,+BAA+B,CAAC,iBAAiB,CAAC,CAAC;YAC1D,CAAC;YAED,OAAO;gBACL,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,IAAI,EAAE,qBAAqB,CAAC,IAAI;gBAChC,OAAO,EAAE,aAAa;gBACtB,iBAAiB,EAAE,OAAO,CAAC,MAAM;gBACjC,oBAAoB,EAAE,OAAO,CAAC,WAAW;aAC1C,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,cAAc,CAAC,6BAA6B,MAAM,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,MAAM,EACN,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAC/B,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CAAC;QAEF,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,aAAa,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAErD,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,IAAI;YACJ,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,iBAAiB,EAAE,OAAO,CAAC,MAAM;YACjC,oBAAoB,EAAE,OAAO,CAAC,WAAW;SAC1C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAoB,EAAE,MAAkB;QACzD,MAAM,OAAO,GAAG,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QACrE,MAAM,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAE3C,6EAA6E;QAC7E,MAAM,wBAAwB,CAC5B,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAC/B,CAAC,SAAgB,CAAC,EAClB,CAAC,cAAc,CAAC,EAChB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,YAAoB,EAAE,uBAA4B;QAQtF,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAC1C,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,MAAM,EACN,YAAY,EACZ,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAC/B,uBAAuB,EACvB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,SAAoB,EAAE,cAAmB;QACpE,MAAM,aAAa,CACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,SAAgB,EAChB,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,EACjE,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,SAAoB,EAAE,aAAkB,EAAE,WAAwB;QAC5F,MAAM,aAAa,CACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,SAAgB,EAChB,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,EAC5E,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,SAAiB,EAAE,eAAuB;QAK/E,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC;QACpE,IAAI,IAAI,CAAC,MAAM,CAAC,0BAA0B,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,0BAA0B,KAAK,IAAI,EAAE,CAAC;YACvG,OAAO;gBACL,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,YAAY;aACnB,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC;YACrD,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;YAC1B,CAAC,CAAC,eAAe,CAAC;QACpB,MAAM,WAAW,GAAG,YAAY,cAAc,EAAE,CAAC;QACjD,MAAM,WAAW,GAAG,MAAM,2BAA2B,CACnD,IAAI,CAAC,MAAM,CAAC,cAAc,EAC1B,WAAW,CACZ,CAAC;QACF,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,WAAsC,CAAC;QACzD,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS,CAAC;QAChE,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CACb,mBAAmB,UAAU,gCAAgC,SAAS,CAAC,IAAI,EAAE,CAC9E,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,4DAA4D,SAAS,EAAE,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QACzD,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,UAAU,GAAG,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ;YAC/D,CAAC,CAAE,OAAmC,CAAC,SAAS,CAAC;YACjD,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO;YACL,YAAY,EAAE,UAAiB;YAC/B,IAAI;YACJ,WAAW,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;SAC/E,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,SAAiB,EACjB,eAAuB;QAEvB,IAAI,YAIH,CAAC;QACF,IAAI,CAAC;YACH,YAAY,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QACjF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CACX,wDAAwD,SAAS,6CAA6C,EAC9G,GAAG,CACJ,CAAC;YACF,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,aAAa,CACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,SAAgB,EAChB;gBACE,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,0BAA0B;gBAC/C,IAAI,EAAE,YAAY,CAAC,IAAI;gBACvB,YAAY,EAAE,YAAY,CAAC,YAAY;gBACvC,WAAW,EAAE,YAAY,CAAC,WAAW;aACtC,EACD,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAC7B,CAAC;YACF,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,IAAI,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACxC,OAAO,CAAC,KAAK,CAAC,wDAAwD,SAAS,EAAE,CAAC,CAAC;gBACnF,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,kCAAkC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrD,OAAO,iBAAiB,CAAC;YAC3B,CAAC;YACD,OAAO,CAAC,KAAK,CAAC,mCAAmC,SAAS,GAAG,EAAE,GAAG,CAAC,CAAC;YACpE,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,CAAC,kBAAkB;QACvB,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;gBAC9D,IAAI,YAAY,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;wBAC3C,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB;wBACxC,SAAS,EAAE,IAAI,CAAC,mBAAmB,GAAG,EAAE;wBACxC,OAAO,EAAE,YAAY;qBACtB,CAAC,CAAC;oBACH,IAAI,CAAC,mBAAmB,GAAG,YAAY,CAAC;oBAExC,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;oBACxC,MAAM,6BAA6B,GAAG,IAAI,GAAG,EAAkB,CAAC;oBAChE,IAAI,4BAAgD,CAAC;oBACrD,KAAK,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,OAAO,EAAE,CAAC;wBAC/E,6BAA6B;wBAC7B,mFAAmF;wBACnF,mFAAmF;wBACnF,kEAAkE;wBAClE,wEAAwE;wBACxE,MAAM,UAAU,GAAG,WAAW,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;wBACvF,MAAM,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBACnE,IAAI,CAAC,UAAU,IAAI,CAAC,mBAAmB;4BAAE,SAAS;wBAClD,IAAI,mBAAmB,EAAE,CAAC;4BACxB,MAAM,qBAAqB,GAAG,IAAI,CAAC,6BAA6B,CAAC,SAAS,CAAC,CAAC;4BAC5E,IAAI,qBAAqB,IAAI,IAAI,EAAE,CAAC;gCAClC,IAAI,wBAA4C,CAAC;gCACjD,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;oCACxB,wBAAwB,GAAG,6BAA6B,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oCAC1E,IAAI,wBAAwB,IAAI,IAAI,EAAE,CAAC;wCACrC,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;wCAC5E,wBAAwB,GAAG,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;wCAC/D,6BAA6B,CAAC,GAAG,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC;oCAC3E,CAAC;gCACH,CAAC;qCAAM,CAAC;oCACN,IAAI,4BAA4B,IAAI,IAAI,EAAE,CAAC;wCACzC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC;wCACzF,4BAA4B,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;oCACpE,CAAC;oCACD,wBAAwB,GAAG,4BAA4B,CAAC;gCAC1D,CAAC;gCACD,IACE,IAAI,CAAC,iCAAiC,CACpC,SAAS,EACT,wBAAwB,EACxB,qBAAqB,CACtB,EACD,CAAC;oCACD,SAAS;gCACX,CAAC;4BACH,CAAC;wBACH,CAAC;wBAED,qEAAqE;wBACrE,8DAA8D;wBAC9D,IAAI,mBAA0F,CAAC;wBAC/F,IAAI,UAAU,EAAE,CAAC;4BACf,mBAAmB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;4BACnF,IAAI,mBAAmB,KAAK,OAAO;gCAAE,SAAS;wBAChD,CAAC;wBAED,+DAA+D;wBAC/D,qEAAqE;wBACrE,IAAI,mBAAmB,IAAI,mBAAmB,KAAK,SAAS,IAAI,mBAAmB,KAAK,iBAAiB,EAAE,CAAC;4BAC1G,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;4BACxF,IAAI,kBAAkB,KAAK,OAAO;gCAAE,SAAS;wBAC/C,CAAC;wBAED,iCAAiC;wBACjC,IAAI,CAAC;4BACH,MAAM,cAAc,GAAG,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;4BACrG,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,YAAY,cAAc,EAAE,CAA4B,CAAC;4BAE/H,MAAM,iBAAiB,GAAe;gCACpC,IAAI,EAAG,aAAa,CAAC,IAAe,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;gCACrE,SAAS,EAAE,aAAa,CAAC,SAAiC;6BAC3D,CAAC;4BAEF,iDAAiD;4BACjD,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI;gCACjD,EAAE,EAAE,SAAS;gCACb,WAAW,EAAE,EAAE;6BAChB,CAAC;4BAEF,MAAM;gCACJ,SAAS;gCACT,IAAI;gCACJ,MAAM,EAAE,iBAAiB;gCACzB,mBAAmB,EAAE,WAAW;6BACjC,CAAC;4BAEF,0BAA0B;4BAC1B,IAAI,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC;wBACpD,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,OAAO,CAAC,KAAK,CAAC,mCAAmC,SAAS,GAAG,EAAE,GAAG,CAAC,CAAC;wBACtE,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,cAAc,CAAC,GAAG,EAAE;oBACxE,SAAS,EAAE,gBAAgB;oBAC3B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM;oBAC9D,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;oBAC1B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB;oBACzC,SAAS,EAAE,IAAI,CAAC,mBAAmB,GAAG,EAAE;iBACzC,CAAC,CAAC,CAAC;YACN,CAAC;YAED,0CAA0C;YAC1C,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,mBAAmB,GAAG,EAAE,EAAE,CAAC;gBAChD,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC7D,CAAC;YAED,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;CACF"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/mech/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * GET /api/codex/doctor
3
+ *
4
+ * Runs `codex --version` via spawnSync and inspects the auth configuration so
5
+ * the operator dashboard can show an install-required / sign-in-required panel
6
+ * before the operator saves a Codex harness selection.
7
+ *
8
+ * Response shape:
9
+ * { installed: boolean, authenticated: boolean,
10
+ * authStatus: 'ok' | 'expired' | 'not_configured',
11
+ * exitCode: number | null, stdout: string, stderr: string }
12
+ *
13
+ * `installed: false` means the binary was not found (ENOENT or equivalent).
14
+ * `exitCode !== 0` (with `installed: true`) means the binary exists but
15
+ * `codex --version` itself failed.
16
+ *
17
+ * `authStatus` (with `installed: true`, `exitCode === 0`) classifies the
18
+ * Codex credentials:
19
+ * - `'ok'` — usable credentials: an `OPENAI_API_KEY` (env or in
20
+ * `auth.json`), or a non-expired `codex login` OAuth
21
+ * session.
22
+ * - `'expired'` — an `auth.json` is present but its OAuth tokens have
23
+ * expired, or the file is malformed/unreadable. A
24
+ * logged-out operator with a leftover file lands here
25
+ * instead of false-`ok` (#366).
26
+ * - `'not_configured'` — no `OPENAI_API_KEY` and no `auth.json` at all.
27
+ * `authenticated` is kept as a convenience alias for `authStatus === 'ok'`.
28
+ *
29
+ * Codex (unlike Hermes) has no `codex doctor` subcommand, so install
30
+ * detection shells `codex --version`. Codex also exposes no auth-status
31
+ * subcommand, so liveness is derived by parsing + expiry-checking the
32
+ * `auth.json` it persists — existence alone is not enough: a stale OAuth
33
+ * session reads as logged-in to a naive existence check (#366).
34
+ *
35
+ * The probe logic is exported as `probeCodexDoctor` so the Codex variant of
36
+ * the `LearnerHarness` can reuse it from `isReady()` — same source of truth
37
+ * for the SPA precheck panel and the daemon's claim-readiness gate (#348,
38
+ * same-shape bug as #330; liveness tightening from #366).
39
+ */
40
+ import type { Hono } from 'hono';
41
+ /** Classification of Codex credentials. */
42
+ export type CodexAuthStatus = 'ok' | 'expired' | 'not_configured';
43
+ export interface CodexDoctorResponse {
44
+ installed: boolean;
45
+ /** Convenience alias — true iff `authStatus === 'ok'`. */
46
+ authenticated: boolean;
47
+ /** Live/expired/absent classification of Codex credentials. */
48
+ authStatus: CodexAuthStatus;
49
+ exitCode: number | null;
50
+ stdout: string;
51
+ stderr: string;
52
+ }
53
+ export interface CodexDoctorConfig {
54
+ codexPath?: string;
55
+ codexDoctorTimeoutMs?: number;
56
+ /** Inject env for testing (defaults to process.env). */
57
+ env?: NodeJS.ProcessEnv;
58
+ /**
59
+ * Override the auth-file read (for testing). Returns the raw `auth.json`
60
+ * contents, or `undefined` when no file exists. When supplied, the real
61
+ * filesystem is not touched.
62
+ */
63
+ readAuthFile?: () => string | undefined;
64
+ /** Override the clock for deterministic expiry tests (epoch ms). */
65
+ now?: number;
66
+ }
67
+ /**
68
+ * Synchronously runs `codex --version` and classifies install + auth state.
69
+ * Pure (no Hono dependency) so the harness layer can call it without pulling
70
+ * the API server in.
71
+ */
72
+ export declare function probeCodexDoctor(config?: CodexDoctorConfig): CodexDoctorResponse;
73
+ export declare function addCodexDoctorRoutes(app: Hono, config?: CodexDoctorConfig): void;
@@ -0,0 +1,158 @@
1
+ import { spawnSync } from 'node:child_process';
2
+ import { readFileSync } from 'node:fs';
3
+ import { homedir } from 'node:os';
4
+ import { join } from 'node:path';
5
+ /**
6
+ * Decodes a JWT's payload and returns its `exp` claim (epoch seconds), or
7
+ * `undefined` when the token is absent, malformed, or carries no `exp`.
8
+ * Defensive: never throws.
9
+ *
10
+ * Note: the JWT signature is intentionally NOT verified — this is not a
11
+ * security gap. The daemon only needs the `exp` claim for a liveness hint;
12
+ * Codex itself verifies signatures when the token is actually used.
13
+ */
14
+ function jwtExpiry(token) {
15
+ if (typeof token !== 'string' || token.length === 0)
16
+ return undefined;
17
+ const parts = token.split('.');
18
+ if (parts.length !== 3)
19
+ return undefined;
20
+ try {
21
+ const payloadJson = Buffer.from(parts[1], 'base64url').toString('utf8');
22
+ const payload = JSON.parse(payloadJson);
23
+ return typeof payload.exp === 'number' ? payload.exp : undefined;
24
+ }
25
+ catch {
26
+ return undefined;
27
+ }
28
+ }
29
+ /**
30
+ * Classifies the credentials inside a parsed `auth.json`.
31
+ *
32
+ * - A non-empty `OPENAI_API_KEY` in the file is API-key mode — there is no
33
+ * expiry, so presence is acceptable (`'ok'`).
34
+ * - Otherwise it is OAuth (`codex login`) mode: expiry-check the JWT `exp`
35
+ * of `id_token` (falling back to `access_token`). An expired token, or
36
+ * tokens we cannot expiry-check at all (no JWT / no `exp`), is treated as
37
+ * `'expired'` — the safe direction for a claim gate: a logged-out operator
38
+ * with a leftover file must not read as live (#366).
39
+ */
40
+ function classifyAuthFile(auth, nowMs) {
41
+ const fileApiKey = auth.OPENAI_API_KEY;
42
+ if (typeof fileApiKey === 'string' && fileApiKey.trim().length > 0) {
43
+ return 'ok';
44
+ }
45
+ const tokens = auth.tokens;
46
+ if (!tokens || typeof tokens !== 'object') {
47
+ // A file with neither an API key nor a tokens object carries no usable
48
+ // credential — treat as stale rather than live.
49
+ return 'expired';
50
+ }
51
+ const exp = jwtExpiry(tokens.id_token) ?? jwtExpiry(tokens.access_token);
52
+ if (exp === undefined) {
53
+ // Tokens present but not expiry-checkable — cannot prove liveness.
54
+ return 'expired';
55
+ }
56
+ return exp * 1000 > nowMs ? 'ok' : 'expired';
57
+ }
58
+ /**
59
+ * Reads `auth.json` (from `CODEX_HOME` or `~/.codex`) and returns its raw
60
+ * contents, or `undefined` when the file does not exist. A read error other
61
+ * than "not found" (e.g. EACCES) is reported as an empty string so the caller
62
+ * classifies it as `expired` rather than `not_configured`.
63
+ */
64
+ function readCodexAuthFile(config) {
65
+ if (config.readAuthFile)
66
+ return config.readAuthFile();
67
+ const env = config.env ?? process.env;
68
+ const codexHome = env['CODEX_HOME']?.trim();
69
+ const authPath = codexHome
70
+ ? join(codexHome, 'auth.json')
71
+ : join(homedir(), '.codex', 'auth.json');
72
+ try {
73
+ return readFileSync(authPath, 'utf8');
74
+ }
75
+ catch (err) {
76
+ const code = err?.code;
77
+ if (code === 'ENOENT')
78
+ return undefined;
79
+ // File exists but is unreadable — surface as a present-but-broken file so
80
+ // it classifies as `expired`, never `not_configured`.
81
+ return '';
82
+ }
83
+ }
84
+ /**
85
+ * Classifies Codex credential state. Codex authenticates either via the
86
+ * `OPENAI_API_KEY` env var (no expiry) or via a `codex login` session
87
+ * persisted to `auth.json` under `CODEX_HOME` (falling back to `~/.codex`).
88
+ *
89
+ * Liveness, not mere existence: a malformed file or an expired OAuth session
90
+ * classifies as `'expired'`, distinct from `'not_configured'` (no file and no
91
+ * env key). Never throws — a corrupt file degrades to `'expired'`.
92
+ */
93
+ function detectCodexAuthStatus(config) {
94
+ if (hasApiKey(config))
95
+ return 'ok';
96
+ const raw = readCodexAuthFile(config);
97
+ if (raw === undefined)
98
+ return 'not_configured';
99
+ let parsed;
100
+ try {
101
+ parsed = JSON.parse(raw);
102
+ }
103
+ catch {
104
+ // Malformed / truncated auth.json — a logged-out operator with a corrupt
105
+ // leftover file. Stale-class, never a false `ok` (#366).
106
+ return 'expired';
107
+ }
108
+ if (!parsed || typeof parsed !== 'object')
109
+ return 'expired';
110
+ const nowMs = config.now ?? Date.now();
111
+ return classifyAuthFile(parsed, nowMs);
112
+ }
113
+ function hasApiKey(config) {
114
+ const env = config.env ?? process.env;
115
+ return Boolean(env['OPENAI_API_KEY']?.trim());
116
+ }
117
+ /**
118
+ * Synchronously runs `codex --version` and classifies install + auth state.
119
+ * Pure (no Hono dependency) so the harness layer can call it without pulling
120
+ * the API server in.
121
+ */
122
+ export function probeCodexDoctor(config = {}) {
123
+ const codexBin = config.codexPath ?? 'codex';
124
+ const timeoutMs = config.codexDoctorTimeoutMs ?? 30_000;
125
+ const result = spawnSync(codexBin, ['--version'], {
126
+ timeout: timeoutMs,
127
+ encoding: 'utf8',
128
+ });
129
+ const errorCode = result.error?.code;
130
+ // installed=true means we found the binary on disk. ENOENT is the only
131
+ // definitive not-installed signal. Other errors (EACCES = wrong
132
+ // permissions; ETIMEDOUT = ran but didn't finish in time) indicate the
133
+ // binary exists but couldn't be exercised cleanly — surface those as
134
+ // config-issue, not missing.
135
+ const notFound = errorCode === 'ENOENT';
136
+ const installed = !notFound && (result.status !== null
137
+ || result.signal !== null
138
+ || (errorCode != null && errorCode !== 'ENOENT'));
139
+ // Auth is only meaningful once the binary is present and runnable.
140
+ const runnable = installed && result.status === 0;
141
+ const authStatus = runnable
142
+ ? detectCodexAuthStatus(config)
143
+ : 'not_configured';
144
+ return {
145
+ installed,
146
+ authenticated: authStatus === 'ok',
147
+ authStatus,
148
+ exitCode: result.status,
149
+ stdout: (result.stdout ?? '').slice(0, 4000),
150
+ stderr: (result.stderr ?? '').slice(0, 4000),
151
+ };
152
+ }
153
+ export function addCodexDoctorRoutes(app, config = {}) {
154
+ app.get('/api/codex/doctor', (c) => {
155
+ return c.json(probeCodexDoctor(config));
156
+ });
157
+ }
158
+ //# sourceMappingURL=codex-doctor-endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-doctor-endpoint.js","sourceRoot":"","sources":["../../src/api/codex-doctor-endpoint.ts"],"names":[],"mappings":"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"}
@@ -33,4 +33,34 @@ export interface HermesDoctorConfig {
33
33
  * server in.
34
34
  */
35
35
  export declare function probeHermesDoctor(config?: HermesDoctorConfig): HermesDoctorResponse;
36
+ /**
37
+ * Result of probing a single Hermes model provider's auth state.
38
+ */
39
+ export interface HermesAuthStatus {
40
+ /** Provider name probed, e.g. `openrouter`. */
41
+ provider: string;
42
+ /** True only when the provider is authenticated (logged in). */
43
+ authed: boolean;
44
+ /** Raw `hermes auth status <provider>` stdout (trimmed, truncated). */
45
+ raw: string;
46
+ }
47
+ /**
48
+ * Synchronously runs `hermes auth status <provider>` and classifies whether
49
+ * the provider is authenticated.
50
+ *
51
+ * CRITICAL: `hermes auth status` ALWAYS exits 0 — it reports state via
52
+ * stdout, never via exit code. A not-logged-in provider prints e.g.
53
+ * `openrouter: logged out`. So we cannot rely on `result.status`; we parse
54
+ * stdout instead:
55
+ * - stdout matches /logged out/i → not authed
56
+ * - stdout is empty → not authed (binary said nothing definitive)
57
+ * - ENOENT / spawn error → not authed (binary not on PATH)
58
+ * - otherwise → authed
59
+ *
60
+ * Pure (no Hono dependency) so the harness layer can call it without
61
+ * pulling the API server in. This is the third readiness gate for Hermes:
62
+ * `hermes doctor` exits 0 even when every provider is logged out (it treats
63
+ * missing providers as warnings), so the harness must probe auth directly.
64
+ */
65
+ export declare function probeHermesAuthStatus(provider: string, config?: HermesDoctorConfig): HermesAuthStatus;
36
66
  export declare function addHermesDoctorRoutes(app: Hono, config?: HermesDoctorConfig): void;
@@ -1,17 +1,26 @@
1
1
  import { spawnSync } from 'node:child_process';
2
2
  /**
3
- * Synchronously runs `hermes doctor` and classifies the result. Pure (no
4
- * Hono dependency) so the harness layer can call it without pulling the API
5
- * server in.
3
+ * Shared `hermes <args>` spawn scaffolding for both probes: resolves the binary
4
+ * and timeout from config, runs `spawnSync`, and extracts the spawn-error code.
5
+ * Each probe applies its own classification/parsing to the returned result.
6
6
  */
7
- export function probeHermesDoctor(config = {}) {
7
+ function runHermes(args, config) {
8
8
  const hermesBin = config.hermesPath ?? 'hermes';
9
9
  const timeoutMs = config.hermesDoctorTimeoutMs ?? 30_000;
10
- const result = spawnSync(hermesBin, ['doctor'], {
10
+ const result = spawnSync(hermesBin, args, {
11
11
  timeout: timeoutMs,
12
12
  encoding: 'utf8',
13
13
  });
14
14
  const errorCode = result.error?.code;
15
+ return { result, errorCode };
16
+ }
17
+ /**
18
+ * Synchronously runs `hermes doctor` and classifies the result. Pure (no
19
+ * Hono dependency) so the harness layer can call it without pulling the API
20
+ * server in.
21
+ */
22
+ export function probeHermesDoctor(config = {}) {
23
+ const { result, errorCode } = runHermes(['doctor'], config);
15
24
  // installed=true means we found the binary on disk. ENOENT is the only
16
25
  // definitive not-installed signal. Other errors (EACCES = wrong
17
26
  // permissions; ETIMEDOUT = ran but didn't finish in time) indicate the
@@ -28,6 +37,36 @@ export function probeHermesDoctor(config = {}) {
28
37
  stderr: (result.stderr ?? '').slice(0, 4000),
29
38
  };
30
39
  }
40
+ /**
41
+ * Synchronously runs `hermes auth status <provider>` and classifies whether
42
+ * the provider is authenticated.
43
+ *
44
+ * CRITICAL: `hermes auth status` ALWAYS exits 0 — it reports state via
45
+ * stdout, never via exit code. A not-logged-in provider prints e.g.
46
+ * `openrouter: logged out`. So we cannot rely on `result.status`; we parse
47
+ * stdout instead:
48
+ * - stdout matches /logged out/i → not authed
49
+ * - stdout is empty → not authed (binary said nothing definitive)
50
+ * - ENOENT / spawn error → not authed (binary not on PATH)
51
+ * - otherwise → authed
52
+ *
53
+ * Pure (no Hono dependency) so the harness layer can call it without
54
+ * pulling the API server in. This is the third readiness gate for Hermes:
55
+ * `hermes doctor` exits 0 even when every provider is logged out (it treats
56
+ * missing providers as warnings), so the harness must probe auth directly.
57
+ */
58
+ export function probeHermesAuthStatus(provider, config = {}) {
59
+ const { result, errorCode } = runHermes(['auth', 'status', provider], config);
60
+ const raw = (result.stdout ?? '').trim().slice(0, 4000);
61
+ // Binary not found, or any other spawn error, or no output → not authed.
62
+ if (errorCode != null || raw.length === 0) {
63
+ return { provider, authed: false, raw };
64
+ }
65
+ // `hermes auth status` always exits 0; state is in stdout. A "logged out"
66
+ // line means the provider is not authenticated.
67
+ const loggedOut = /logged out/i.test(raw);
68
+ return { provider, authed: !loggedOut, raw };
69
+ }
31
70
  export function addHermesDoctorRoutes(app, config = {}) {
32
71
  app.get('/api/hermes/doctor', (c) => {
33
72
  return c.json(probeHermesDoctor(config));
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-doctor-endpoint.js","sourceRoot":"","sources":["../../src/api/hermes-doctor-endpoint.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAc/C;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAA6B,EAAE;IAC/D,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,qBAAqB,IAAI,MAAM,CAAC;IAEzD,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE;QAC9C,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,MAAM;KACjB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAI,MAAM,CAAC,KAA2C,EAAE,IAAI,CAAC;IAC5E,uEAAuE;IACvE,gEAAgE;IAChE,uEAAuE;IACvE,qEAAqE;IACrE,6BAA6B;IAC7B,MAAM,QAAQ,GAAG,SAAS,KAAK,QAAQ,CAAC;IACxC,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,CAC7B,MAAM,CAAC,MAAM,KAAK,IAAI;WACnB,MAAM,CAAC,MAAM,KAAK,IAAI;WACtB,CAAC,SAAS,IAAI,IAAI,IAAI,SAAS,KAAK,QAAQ,CAAC,CACjD,CAAC;IACF,OAAO;QACL,SAAS;QACT,QAAQ,EAAE,MAAM,CAAC,MAAM;QACvB,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;QAC5C,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAS,EAAE,SAA6B,EAAE;IAC9E,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE,EAAE;QAClC,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"hermes-doctor-endpoint.js","sourceRoot":"","sources":["../../src/api/hermes-doctor-endpoint.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAc/C;;;;GAIG;AACH,SAAS,SAAS,CAChB,IAAc,EACd,MAA0B;IAE1B,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,qBAAqB,IAAI,MAAM,CAAC;IAEzD,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE;QACxC,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,MAAM;KACjB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAI,MAAM,CAAC,KAA2C,EAAE,IAAI,CAAC;IAC5E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAA6B,EAAE;IAC/D,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5D,uEAAuE;IACvE,gEAAgE;IAChE,uEAAuE;IACvE,qEAAqE;IACrE,6BAA6B;IAC7B,MAAM,QAAQ,GAAG,SAAS,KAAK,QAAQ,CAAC;IACxC,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,CAC7B,MAAM,CAAC,MAAM,KAAK,IAAI;WACnB,MAAM,CAAC,MAAM,KAAK,IAAI;WACtB,CAAC,SAAS,IAAI,IAAI,IAAI,SAAS,KAAK,QAAQ,CAAC,CACjD,CAAC;IACF,OAAO;QACL,SAAS;QACT,QAAQ,EAAE,MAAM,CAAC,MAAM;QACvB,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;QAC5C,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;KAC7C,CAAC;AACJ,CAAC;AAcD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,SAA6B,EAAE;IAE/B,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAExD,yEAAyE;IACzE,IAAI,SAAS,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IAC1C,CAAC;IACD,0EAA0E;IAC1E,gDAAgD;IAChD,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAS,EAAE,SAA6B,EAAE;IAC9E,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE,EAAE;QAClC,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC"}