ysk-server-core 1.1.18 → 1.1.20

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 (73) hide show
  1. package/dist/hosting/validators/ada-producer.d.ts +25 -0
  2. package/dist/hosting/validators/ada-producer.d.ts.map +1 -0
  3. package/dist/hosting/validators/ada-producer.js +163 -0
  4. package/dist/hosting/validators/ada-producer.js.map +1 -0
  5. package/dist/hosting/validators/adapters/ada.d.ts +2 -1
  6. package/dist/hosting/validators/adapters/ada.d.ts.map +1 -1
  7. package/dist/hosting/validators/adapters/ada.js +30 -9
  8. package/dist/hosting/validators/adapters/ada.js.map +1 -1
  9. package/dist/hosting/validators/adapters/avax.d.ts +2 -0
  10. package/dist/hosting/validators/adapters/avax.d.ts.map +1 -1
  11. package/dist/hosting/validators/adapters/avax.js +28 -10
  12. package/dist/hosting/validators/adapters/avax.js.map +1 -1
  13. package/dist/hosting/validators/adapters/eth-clients.d.ts +2 -0
  14. package/dist/hosting/validators/adapters/eth-clients.d.ts.map +1 -1
  15. package/dist/hosting/validators/adapters/eth-clients.js +45 -14
  16. package/dist/hosting/validators/adapters/eth-clients.js.map +1 -1
  17. package/dist/hosting/validators/adapters/eth.d.ts.map +1 -1
  18. package/dist/hosting/validators/adapters/eth.js +5 -2
  19. package/dist/hosting/validators/adapters/eth.js.map +1 -1
  20. package/dist/hosting/validators/adapters/near.d.ts.map +1 -1
  21. package/dist/hosting/validators/adapters/near.js +11 -2
  22. package/dist/hosting/validators/adapters/near.js.map +1 -1
  23. package/dist/hosting/validators/adapters/p2p-public-ip.d.ts +6 -0
  24. package/dist/hosting/validators/adapters/p2p-public-ip.d.ts.map +1 -0
  25. package/dist/hosting/validators/adapters/p2p-public-ip.js +11 -0
  26. package/dist/hosting/validators/adapters/p2p-public-ip.js.map +1 -0
  27. package/dist/hosting/validators/adapters/phase2.d.ts.map +1 -1
  28. package/dist/hosting/validators/adapters/phase2.js +75 -22
  29. package/dist/hosting/validators/adapters/phase2.js.map +1 -1
  30. package/dist/hosting/validators/compose-runner.d.ts +8 -0
  31. package/dist/hosting/validators/compose-runner.d.ts.map +1 -1
  32. package/dist/hosting/validators/compose-runner.js +74 -2
  33. package/dist/hosting/validators/compose-runner.js.map +1 -1
  34. package/dist/hosting/validators/disk.d.ts +2 -0
  35. package/dist/hosting/validators/disk.d.ts.map +1 -1
  36. package/dist/hosting/validators/disk.js +23 -0
  37. package/dist/hosting/validators/disk.js.map +1 -1
  38. package/dist/hosting/validators/extras.d.ts +58 -2
  39. package/dist/hosting/validators/extras.d.ts.map +1 -1
  40. package/dist/hosting/validators/extras.js +361 -6
  41. package/dist/hosting/validators/extras.js.map +1 -1
  42. package/dist/hosting/validators/index.d.ts +1 -0
  43. package/dist/hosting/validators/index.d.ts.map +1 -1
  44. package/dist/hosting/validators/index.js +1 -0
  45. package/dist/hosting/validators/index.js.map +1 -1
  46. package/dist/hosting/validators/manager.d.ts +10 -0
  47. package/dist/hosting/validators/manager.d.ts.map +1 -1
  48. package/dist/hosting/validators/manager.js +134 -5
  49. package/dist/hosting/validators/manager.js.map +1 -1
  50. package/dist/hosting/validators/ports.js +4 -4
  51. package/dist/hosting/validators/ports.js.map +1 -1
  52. package/dist/hosting/validators/registry.d.ts +7 -1
  53. package/dist/hosting/validators/registry.d.ts.map +1 -1
  54. package/dist/hosting/validators/registry.js +14 -3
  55. package/dist/hosting/validators/registry.js.map +1 -1
  56. package/dist/hosting/validators/releases.d.ts +66 -0
  57. package/dist/hosting/validators/releases.d.ts.map +1 -1
  58. package/dist/hosting/validators/releases.js +262 -21
  59. package/dist/hosting/validators/releases.js.map +1 -1
  60. package/dist/hosting/validators/runtime-status.d.ts.map +1 -1
  61. package/dist/hosting/validators/runtime-status.js +8 -3
  62. package/dist/hosting/validators/runtime-status.js.map +1 -1
  63. package/dist/hosting/validators/software-catalog.d.ts +10 -1
  64. package/dist/hosting/validators/software-catalog.d.ts.map +1 -1
  65. package/dist/hosting/validators/software-catalog.js +84 -3
  66. package/dist/hosting/validators/software-catalog.js.map +1 -1
  67. package/dist/hosting/validators/store.js +3 -0
  68. package/dist/hosting/validators/store.js.map +1 -1
  69. package/dist/hosting/validators/upgrade.d.ts +18 -0
  70. package/dist/hosting/validators/upgrade.d.ts.map +1 -1
  71. package/dist/hosting/validators/upgrade.js +25 -4
  72. package/dist/hosting/validators/upgrade.js.map +1 -1
  73. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  import { v1ValidatorClients } from '../registry.js';
2
- import { buildClService, buildElService, jwtHost } from './eth-clients.js';
2
+ import { buildClService, buildElService, ETH_CHECKPOINT_FALLBACKS, jwtHost } from './eth-clients.js';
3
3
  import { readRpcJson } from '../rpc-json.js';
4
4
  export function ethJwtPath(spec) {
5
5
  return jwtHost(spec);
@@ -29,8 +29,11 @@ export function parseEthPeerCount(body) {
29
29
  }
30
30
  export function buildEthComposeYaml(spec) {
31
31
  const jwt = '/jwt/jwt.hex';
32
+ const net = spec.network === 'mainnet' || spec.network === 'sepolia' ? spec.network : 'hoodi';
33
+ const fallbacks = ETH_CHECKPOINT_FALLBACKS[net] ?? [];
32
34
  return `# ysk-server validators eth — generated
33
35
  # EL=${spec.clients.el?.id ?? 'reth'} CL=${spec.clients.cl?.id ?? 'lighthouse'}
36
+ # checkpoint fallbacks: ${fallbacks.slice(1).join(' ')}
34
37
  # RPC localhost only. No staking keys.
35
38
  services:
36
39
  ${buildElService(spec, jwt)}
@@ -88,7 +91,7 @@ export async function probeEthStatus(spec, fetchFn = fetch) {
88
91
  syncProgress: sync.syncing ? sync.progress : 1,
89
92
  peers,
90
93
  version: typeof verBody.result === 'string' ? verBody.result : null,
91
- lastError: null,
94
+ lastError: peers === 0 ? '0 peers' : null,
92
95
  };
93
96
  }
94
97
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"eth.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/eth.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,UAAU,UAAU,CAAC,IAA0B;IACnD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAa;IAC3C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACzD,MAAM,CAAC,GAAI,IAA4B,CAAC,MAAM,CAAC;QAC/C,IAAI,CAAC,KAAK,KAAK;YAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACxD,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAqD,CAAC;YAChE,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/D,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YAC9D,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC;YAC9F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAa;IAC7C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACzD,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAE,IAA4B,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5E,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAA0B;IAC5D,MAAM,GAAG,GAAG,cAAc,CAAC;IAC3B,OAAO;OACF,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,MAAM,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,YAAY;;;EAG5E,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC;EACzB,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC;CAC1B,CAAC;AACF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAA0B;IACvD,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO;QACL,KAAK,EAAE;YACL,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,YAAY,EAAE;YAC7E,oBAAoB;YACpB,iBAAiB;SAClB;QACD,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;QACjD,MAAM,EAAE,SAAS,EAAE,yBAAyB;QAC5C,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC;QACzB,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAEnB;IACF,EAAE,EAAE,KAAK;IACT,WAAW,EAAE,cAAc;IAC3B,MAAM,CAAC,IAAI;QACT,OAAO,oBAAoB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;IACtD,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,IAA0B,EAC1B,UAAwB,KAAK;IAE7B,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACnD,OAAO,CAAC,GAAG,EAAE;gBACX,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;aACnF,CAAC;YACF,OAAO,CAAC,GAAG,EAAE;gBACX,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;aACrF,CAAC;YACF,OAAO,CAAC,GAAG,EAAE;gBACX,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;aAC1F,CAAC;SACH,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,CAAC,MAAM,WAAW,CAAC,MAAM,CAAC,CAAwB,CAAC;QACnE,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC9C,KAAK;YACL,OAAO,EAAE,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YACnE,SAAS,EAAE,IAAI;SAChB,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB;SAC9D,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"eth.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/eth.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"near.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/near.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAKxE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CA4BvE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAS7E;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG;IAC9C,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAqBA;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC,CAAC,CAcxF"}
1
+ {"version":3,"file":"near.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/near.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAMxE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAoCvE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAS7E;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG;IAC9C,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAqBA;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC,CAAC,CAcxF"}
@@ -1,6 +1,7 @@
1
1
  import { v1ValidatorClients } from '../registry.js';
2
2
  import { composeBind } from '../compose-runner.js';
3
3
  import { readRpcJson } from '../rpc-json.js';
4
+ import { RESOLVE_PUBLIC_IP_SH } from './p2p-public-ip.js';
4
5
  export function buildNearComposeYaml(spec) {
5
6
  const node = spec.clients.node ?? v1ValidatorClients('near')[0];
6
7
  const img = `${node?.image ?? 'nearprotocol/nearcore'}:${node?.tag ?? '2.5.0'}`;
@@ -12,8 +13,8 @@ services:
12
13
  node:
13
14
  image: ${img}
14
15
  restart: unless-stopped
15
- mem_limit: 8g
16
- memswap_limit: 8g
16
+ mem_limit: 12g
17
+ memswap_limit: 12g
17
18
  pids_limit: 4096
18
19
  entrypoint: ["/bin/sh", "-c"]
19
20
  command:
@@ -22,6 +23,14 @@ services:
22
23
  if [ ! -f /data/config.json ]; then
23
24
  neard --home /data init --chain-id ${chainId} --download-genesis --download-config
24
25
  fi
26
+ ${RESOLVE_PUBLIC_IP_SH.split('\n').join('\n ')}
27
+ if [ -n "$PUB" ] && [ -f /data/config.json ]; then
28
+ if grep -q '"public_addr"' /data/config.json; then
29
+ sed -i "s/\\"public_addr\\": \\"[^\\"]*\\"/\\"public_addr\\": \\"$PUB:24567\\"/" /data/config.json || true
30
+ else
31
+ sed -i "s/\\"addr\\": \\"0.0.0.0:24567\\"/\\"addr\\": \\"0.0.0.0:24567\\",\\n \\"public_addr\\": \\"$PUB:24567\\"/" /data/config.json || true
32
+ fi
33
+ fi
25
34
  neard --home /data run
26
35
  ports:
27
36
  - "127.0.0.1:${rpc}:3030"
@@ -1 +1 @@
1
- {"version":3,"file":"near.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/near.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"near.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/near.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Resolve host public IPv4 at container start. Fail-open: empty PUB is OK.
3
+ * Only ifconfig.me / ident.me — no custom STUN service.
4
+ */
5
+ export declare const RESOLVE_PUBLIC_IP_SH = "PUB=\"\"\nPUB=$(wget -qO- --timeout=5 https://ifconfig.me 2>/dev/null || true)\nif [ -z \"$PUB\" ]; then PUB=$(curl -fsS --max-time 5 https://ifconfig.me 2>/dev/null || true); fi\nif [ -z \"$PUB\" ]; then PUB=$(wget -qO- --timeout=5 https://ident.me 2>/dev/null || true); fi\nif [ -z \"$PUB\" ]; then PUB=$(curl -fsS --max-time 5 https://ident.me 2>/dev/null || true); fi\n";
6
+ //# sourceMappingURL=p2p-public-ip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"p2p-public-ip.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/p2p-public-ip.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,oBAAoB,0XAKhC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Resolve host public IPv4 at container start. Fail-open: empty PUB is OK.
3
+ * Only ifconfig.me / ident.me — no custom STUN service.
4
+ */
5
+ export const RESOLVE_PUBLIC_IP_SH = `PUB=""
6
+ PUB=$(wget -qO- --timeout=5 https://ifconfig.me 2>/dev/null || true)
7
+ if [ -z "$PUB" ]; then PUB=$(curl -fsS --max-time 5 https://ifconfig.me 2>/dev/null || true); fi
8
+ if [ -z "$PUB" ]; then PUB=$(wget -qO- --timeout=5 https://ident.me 2>/dev/null || true); fi
9
+ if [ -z "$PUB" ]; then PUB=$(curl -fsS --max-time 5 https://ident.me 2>/dev/null || true); fi
10
+ `;
11
+ //# sourceMappingURL=p2p-public-ip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"p2p-public-ip.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/p2p-public-ip.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;CAKnC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"phase2.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/phase2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phase2.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/phase2.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ import { join } from 'node:path';
7
7
  import { SUI_NODE_IMAGE, suiNodeTag, v1ValidatorClients } from '../registry.js';
8
8
  import { composeBind } from '../compose-runner.js';
9
9
  import { readRpcJson } from '../rpc-json.js';
10
+ import { RESOLVE_PUBLIC_IP_SH } from './p2p-public-ip.js';
10
11
  function img(spec, fallback, tag) {
11
12
  const n = spec.clients.node ?? v1ValidatorClients(spec.chain)[0];
12
13
  return `${n?.image ?? fallback}:${n?.tag ?? tag}`;
@@ -181,13 +182,31 @@ services:
181
182
  . /data/statesync.env
182
183
  set +a
183
184
  if [ -n "$TRUST_HEIGHT" ] && [ -n "$TRUST_HASH" ] && [ -n "$RPC_SERVERS" ]; then
184
- sed -i -e '/enable =/ s/= .*/= true/' /data/config/config.toml || true
185
- sed -i -e '/trust_period =/ s/= .*/= "8h0m0s"/' /data/config/config.toml || true
186
- sed -i -e "/trust_height =/ s/= .*/= $TRUST_HEIGHT/" /data/config/config.toml || true
187
- sed -i -e "/trust_hash =/ s/= .*/= \\"$TRUST_HASH\\"/" /data/config/config.toml || true
188
- sed -i -e "/rpc_servers =/ s^= .*^= \\"$RPC_SERVERS\\"^" /data/config/config.toml || true
185
+ gaiad config set config statesync.enable true --home /data 2>/dev/null || true
186
+ gaiad config set config statesync.trust_height "$TRUST_HEIGHT" --home /data 2>/dev/null || true
187
+ gaiad config set config statesync.trust_hash "$TRUST_HASH" --home /data 2>/dev/null || true
188
+ gaiad config set config statesync.trust_period "8h0m0s" --home /data 2>/dev/null || true
189
+ gaiad config set config statesync.rpc_servers "$RPC_SERVERS" --home /data 2>/dev/null || true
190
+ sed -i -e '/^\\[statesync\\]/,/^\\[/{
191
+ s/^enable = .*/enable = true/
192
+ s/^trust_period = .*/trust_period = "8h0m0s"/
193
+ s/^trust_height = .*/trust_height = '"$TRUST_HEIGHT"'/
194
+ s/^trust_hash = .*/trust_hash = "'"$TRUST_HASH"'"/
195
+ s/^rpc_servers = .*/rpc_servers = "'"$RPC_SERVERS"'"/
196
+ }' /data/config/config.toml || true
189
197
  fi
190
198
  fi
199
+ if [ "${chainId}" = "provider" ]; then
200
+ if ! awk '/^\\[statesync\\]/{p=1;next} /^\\[/{p=0} p && /^enable = true/{ok=1} END{exit ok?0:1}' /data/config/config.toml; then
201
+ echo "cosmos state-sync not enabled in [statesync]; refusing InitChain" >&2
202
+ exit 1
203
+ fi
204
+ fi
205
+ ${RESOLVE_PUBLIC_IP_SH.split('\n').join('\n ')}
206
+ if [ -n "$PUB" ]; then
207
+ gaiad config set config p2p.external_address "tcp://$PUB:26656" --home /data 2>/dev/null || true
208
+ sed -i -e '/^\\[p2p\\]/,/^\\[/{s|^external_address = .*|external_address = "tcp://'"$PUB"':26656"|}' /data/config/config.toml || true
209
+ fi
191
210
  gaiad start --home /data --rpc.laddr tcp://0.0.0.0:26657 --p2p.laddr tcp://0.0.0.0:26656 --p2p.seeds="${seeds}" --minimum-gas-prices=0.005uatom
192
211
  ports:
193
212
  - "127.0.0.1:${rpc}:26657"
@@ -216,8 +235,41 @@ export function suiGenesisUrl(network) {
216
235
  const net = network === 'mainnet' ? 'mainnet' : 'testnet';
217
236
  return `https://github.com/MystenLabs/sui-genesis/raw/main/${net}/genesis.blob`;
218
237
  }
238
+ const SUI_TESTNET_SEEDS = `
239
+ p2p-config:
240
+ listen-address: "0.0.0.0:8084"
241
+ seed-peers:
242
+ - address: /dns/yto-tnt-ssfn-01.testnet.sui.io/udp/8084
243
+ peer-id: 2ed53564d5581ded9b6773970ac2f1c84d39f9edf01308ff5a1ffe09b1add7b3
244
+ - address: /dns/yto-tnt-ssfn-00.testnet.sui.io/udp/8084
245
+ peer-id: 6563732e5ab33b4ae09c73a98fd37499b71b8f03c27b5cc51acc26934974aff2
246
+ - address: /dns/nrt-tnt-ssfn-00.testnet.sui.io/udp/8084
247
+ peer-id: 23a1f7cd901b6277cbedaa986b3fc183f171d800cabba863d48f698f518967e1
248
+ - address: /dns/ewr-tnt-ssfn-00.testnet.sui.io/udp/8084
249
+ peer-id: df8a8d128051c249e224f95fcc463f518a0ebed8986bbdcc11ed751181fecd38
250
+ - address: /dns/lax-tnt-ssfn-00.testnet.sui.io/udp/8084
251
+ peer-id: f9a72a0a6c17eed09c27898eab389add704777c03e135846da2428f516a0c11d
252
+ - address: /dns/lhr-tnt-ssfn-00.testnet.sui.io/udp/8084
253
+ peer-id: 9393d6056bb9c9d8475a3cf3525c747257f17c6a698a7062cbbd1875bc6ef71e
254
+ - address: /dns/mel-tnt-ssfn-00.testnet.sui.io/udp/8084
255
+ peer-id: c88742f46e66a11cb8c84aca488065661401ef66f726cb9afeb8a5786d83456e
256
+ `;
257
+ const SUI_MAINNET_SEEDS = `
258
+ p2p-config:
259
+ listen-address: "0.0.0.0:8084"
260
+ seed-peers:
261
+ - address: /dns/mel-00.mainnet.sui.io/udp/8084
262
+ peer-id: d32b55bdf1737ec415df8c88b3bf91e194b59ee3127e3f38ea46fd88ba2e7849
263
+ - address: /dns/ewr-00.mainnet.sui.io/udp/8084
264
+ peer-id: c7bf6cb93ca8fdda655c47ebb85ace28e6931464564332bf63e27e90199c50ee
265
+ - address: /dns/ewr-01.mainnet.sui.io/udp/8084
266
+ peer-id: 3227f8a05f0faa1a197c075d31135a366a1c6f3d4872cb8af66c14dea3e0eb66
267
+ - address: /dns/lhr-00.mainnet.sui.io/udp/8084
268
+ peer-id: c619a5e0f8f36eac45118c1f8bda28f0f508e2839042781f1d4a9818043f732c
269
+ `;
219
270
  export function suiFullnodeYaml(network) {
220
271
  const net = network === 'mainnet' ? 'mainnet' : 'testnet';
272
+ const p2p = net === 'mainnet' ? SUI_MAINNET_SEEDS : SUI_TESTNET_SEEDS;
221
273
  return `# ysk-server generated Sui ${net} fullnode
222
274
  db-path: /data/suidb
223
275
  network-address: /ip4/0.0.0.0/tcp/8080/http
@@ -226,7 +278,7 @@ json-rpc-address: 0.0.0.0:9000
226
278
  enable-index-processing: false
227
279
  genesis:
228
280
  genesis-file-location: /data/genesis.blob
229
- `;
281
+ ${p2p}`;
230
282
  }
231
283
  export async function ensureSuiFullnodeFiles(dataPath, network, fetchFn = fetch) {
232
284
  const dir = String(dataPath ?? '').replace(/\/+$/, '');
@@ -252,6 +304,7 @@ export async function ensureSuiFullnodeFiles(dataPath, network, fetchFn = fetch)
252
304
  }
253
305
  export function buildSuiComposeYaml(spec) {
254
306
  const rpc = spec.ports.rpc ?? 9002;
307
+ const p2p = spec.ports.p2p ?? 8084;
255
308
  const net = spec.network === 'mainnet' ? 'mainnet' : 'testnet';
256
309
  const tag = suiNodeTag(spec.network);
257
310
  const image = spec.clients.node?.image || SUI_NODE_IMAGE;
@@ -268,6 +321,7 @@ services:
268
321
  SUI_NETWORK: ${net}
269
322
  ports:
270
323
  - "127.0.0.1:${rpc}:9000"
324
+ - "0.0.0.0:${p2p}:8084/udp"
271
325
  volumes:
272
326
  - ${composeBind(spec.dataPath, '/data')}
273
327
  `;
@@ -291,7 +345,8 @@ base:
291
345
  execution:
292
346
  genesis_file_location: "/data/genesis.blob"
293
347
  full_node_networks:
294
- - discovery_method: "onchain"
348
+ - network_id: "public"
349
+ discovery_method: "onchain"
295
350
  listen_address: "/ip4/0.0.0.0/tcp/6180"
296
351
  api:
297
352
  enabled: true
@@ -406,35 +461,33 @@ export function parseDotSync(body) {
406
461
  }
407
462
  export function buildSolComposeYaml(spec) {
408
463
  const rpc = spec.ports.rpc ?? 8899;
464
+ const gossip = spec.ports.p2p ?? 8000;
465
+ const gossipEnd = gossip + 20;
409
466
  const net = spec.network === 'mainnet' ? 'mainnet-beta' : 'testnet';
410
467
  return `# ysk-server validators sol — HEAVY (needs high IOPS / large disk)
411
468
  services:
412
469
  node:
413
- image: ${img(spec, 'solanalabs/solana', 'v2.1.11')}
470
+ image: ${img(spec, 'anzaxyz/agave', 'v2.1.11')}
414
471
  restart: unless-stopped
472
+ entrypoint: ["/bin/sh", "-c"]
415
473
  command:
416
- - solana-validator
417
- - --ledger
418
- - /data
419
- - --rpc-port
420
- - "8899"
421
- - --dynamic-port-range
422
- - 8000-8020
423
- - --entrypoint
424
- - entrypoint.${net}.solana.com:8001
425
- - --expected-genesis-hash
426
- - auto
427
- - --no-voting
428
- - --limit-ledger-size
474
+ - |
475
+ set -e
476
+ if [ ! -f /data/identity.json ]; then
477
+ agave-keygen new --no-bip39-passphrase -o /data/identity.json
478
+ fi
479
+ exec agave-validator --identity /data/identity.json --ledger /data --rpc-port 8899 --dynamic-port-range 8000-8020 --entrypoint entrypoint.${net}.solana.com:8001 --no-voting --limit-ledger-size
429
480
  ports:
430
481
  - "127.0.0.1:${rpc}:8899"
482
+ - "0.0.0.0:${gossip}-${gossipEnd}:8000-8020/tcp"
483
+ - "0.0.0.0:${gossip}-${gossipEnd}:8000-8020/udp"
431
484
  volumes:
432
485
  - ${composeBind(spec.dataPath, '/data')}
433
486
  `;
434
487
  }
435
488
  export function planSolInstall(spec) {
436
489
  return plan(spec, buildSolComposeYaml(spec), [
437
- 'solana-validator',
490
+ 'agave-validator',
438
491
  'HEAVY: mainnet needs ~2 TiB and high IOPS',
439
492
  'rpc localhost only',
440
493
  'no voting identity',
@@ -1 +1 @@
1
- {"version":3,"file":"phase2.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/phase2.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAI7C,SAAS,GAAG,CAAC,IAA0B,EAAE,QAAgB,EAAE,GAAW;IACpE,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,OAAO,GAAG,CAAC,EAAE,KAAK,IAAI,QAAQ,IAAI,CAAC,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,IAAI,CACX,IAA0B,EAC1B,IAAY,EACZ,KAAe;IAEf,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,OAAO;QACL,KAAK;QACL,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;QACjD,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAA0B;IAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACvF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO;;;aAGI,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC;;;;;iBAK/B,KAAK;;+BAES,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE;;qBAE/C,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;mBAC/B,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;UAEtC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAA0B;IACvD,OAAO,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,CAAC,CAAC;AAC1F,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,MAAM,CAAC,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAE,IAA4C,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7H,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IACxF,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;IAC5C,OAAO;QACL,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QAC9D,KAAK,EAAE,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;QAC/D,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QACzC,SAAS,EAAE,IAAI;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC;AAC5D,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,sEAAsE,CAAC;IAChF,CAAC;IACD,OAAO,yFAAyF,CAAC;AACnG,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,mEAAmE,CAAC;IAC7E,CAAC;IACD,OAAO,mLAAmL,CAAC;AAC7L,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACrC,OAAO;QACL,iEAAiE;QACjE,iEAAiE;KAClE,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,QAAgB,EAChB,OAAe,EACf,UAAwB,KAAK;IAE7B,MAAM,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACjD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;IACrB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,0BAA0B,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAC/F,MAAM,MAAM,GAAG,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,CAErC,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,IAAI,EAAE,CAAC;YAC9C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,kCAAkC,CAAC,EAAE,CAAC;QACpE,CAAC;QACD,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC;QAClC,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,GAAG,iBAAiB,WAAW,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,UAAU,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,gCAAgC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QACvG,MAAM,OAAO,GAAG,CAAC,MAAM,UAAU,CAAC,IAAI,EAAE,CAAkD,CAAC;QAC3F,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACjE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,gCAAgC,CAAC,EAAE,CAAC;QACrG,aAAa,CACX,IAAI,EACJ,CAAC,gBAAgB,WAAW,EAAE,EAAE,cAAc,IAAI,EAAE,EAAE,eAAe,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACtG,CAAC;QACF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACjC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,gCAAgC,CAAC,EAAE,CAAC;IACnG,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAgB,EAChB,OAAe,EACf,UAAwB,KAAK;IAE7B,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1E,MAAM,IAAI,GAAG,MAAM,yBAAyB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACzE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;AACjF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAAgB,EAChB,OAAe,EACf,UAAwB,KAAK;IAE7B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;IAChD,IAAI,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACrD,MAAM,GAAG,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,uBAAuB,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC;QACvF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACjD,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,0BAA0B,CAAC,EAAE,CAAC;QAC/E,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACzB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACjC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,EAAE,CAAC;IAChG,CAAC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAA0B;IAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC;IACpC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxC,OAAO;;;aAGI,GAAG,CAAC,IAAI,EAAE,qBAAqB,EAAE,aAAa,CAAC;;;;;;;;;;;;;;gBAc5C,OAAO;;;;;mDAK4B,OAAO;;;;;2CAKf,KAAK;;;;;;;;;;;;;;gHAcgE,KAAK;;qBAEhG,GAAG;mBACL,GAAG;;UAEZ,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAA0B;IAC1D,OAAO,IAAI,CAAC,IAAI,EAAE,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,EAAE,6BAA6B,CAAC,CAAC,CAAC;AAClH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAa;IAC7C,MAAM,MAAM,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAE,IAA4B,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAClH,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;IACrF,CAAC;IACD,MAAM,CAAC,GAAG,MAA+G,CAAC;IAC1H,OAAO;QACL,YAAY,EAAE,CAAC,CAAC,SAAS,EAAE,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;QACtG,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,OAAO,IAAI,IAAI;QACrC,SAAS,EAAE,IAAI;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,MAAM,GAAG,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,OAAO,sDAAsD,GAAG,eAAe,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,MAAM,GAAG,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,OAAO,8BAA8B,GAAG;;;;;;;;CAQzC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAAgB,EAChB,OAAe,EACf,UAAwB,KAAK;IAE7B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5E,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAC9C,IAAI,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC5D,MAAM,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,oBAAoB,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC;QACpF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACjD,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,4BAA4B,CAAC,EAAE,CAAC;QAChF,aAAa,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACjC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAAE,CAAC;IAC7F,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAA0B;IAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,cAAc,CAAC;IACzD,OAAO;;;aAGI,KAAK,IAAI,GAAG;;;;;;;qBAOJ,GAAG;;qBAEH,GAAG;;UAEd,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAA0B;IACvD,OAAO,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAa;IAC1C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACzD,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAChF,CAAC;IACD,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO;;;;;;;;;;;;;;CAcR,CAAC;AACF,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,IAAqC;IACxF,MAAM,GAAG,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,OAAO,yDAAyD,GAAG,IAAI,IAAI,EAAE,CAAC;AAChF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,QAAgB,EAChB,OAAe,EACf,UAAwB,KAAK;IAE7B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,EAAE,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC;IACvE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,CAAC,cAAc,EAAE,cAAc,CAAU,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAC/B,MAAM,GAAG,GAAG,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,SAAS,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC/C,SAAS;YACX,CAAC;YACD,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,eAAe,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAA0B;IAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,OAAO;;;aAGI,GAAG,CAAC,IAAI,EAAE,qBAAqB,EAAE,oBAAoB,CAAC;;;;;;;uBAO5C,GAAG;;;;;;qBAML,GAAG;mBACL,GAAG;;UAEZ,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAA0B;IACzD,OAAO,IAAI,CAAC,IAAI,EAAE,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAa;IAC5C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAsD,CAAC;QACjE,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,IAAI,CAAC,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;YACnD,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACxH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAA0B;IAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC;IACpC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,OAAO;;;aAGI,GAAG,CAAC,IAAI,EAAE,iBAAiB,EAAE,SAAS,CAAC;;;;kBAIlC,KAAK;;;;;;qBAMF,GAAG;mBACL,GAAG;;UAEZ,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAA0B;IACvD,OAAO,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,MAAM,CAAC,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAE,IAA4C,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7H,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IACxF,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC;IACrC,OAAO;QACL,YAAY,EAAE,CAAC,OAAO,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/G,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;QACnD,OAAO,EAAE,UAAU;QACnB,SAAS,EAAE,IAAI;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAA0B;IAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IACpE,OAAO;;;aAGI,GAAG,CAAC,IAAI,EAAE,mBAAmB,EAAE,SAAS,CAAC;;;;;;;;;;;qBAWjC,GAAG;;;;;;qBAMH,GAAG;;UAEd,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAA0B;IACvD,OAAO,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC,EAAE;QAC3C,kBAAkB;QAClB,2CAA2C;QAC3C,oBAAoB;QACpB,oBAAoB;KACrB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAa;IAC1C,MAAM,CAAC,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAE,IAA4B,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7G,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC3F,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,QAAgB,EAAE,OAAe;IAC9D,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACrD,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;IACvD,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;SAC3B,IAAI,EAAE;SACN,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,IAAI,CAAC,OAAO,CAAC,CAAC;IACjB,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,aAAa,CAAC,QAAgB,EAAE,OAAe;IACtD,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBAAE,SAAS;YAC7B,MAAM,MAAM,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;YAC3D,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,qDAAqD;QACvD,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,OAAO,CACpB,GAAW,EACX,MAAc,EACd,OAAqB,EACrB,IAAqC;IAErC,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;IAC/E,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,aAAa,GAAG,SAAS,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;IACjG,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE;QAC7B,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;KACpE,CAAC,CAAC;IACH,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAA0B,EAAE,UAAwB,KAAK;IAC5F,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1D,OAAO,YAAY,CACjB,MAAM,OAAO,CACX,oBAAoB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,EAAE,EAC5C,mBAAmB,EACnB,OAAO,EACP,MAAM,IAAI,SAAS,CACpB,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC;QAC/D,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;IAC5E,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAA0B,EAAE,UAAwB,KAAK;IAC/F,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC;QAChF,OAAO,iBAAiB,CAAC,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/G,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAA0B,EAAE,UAAwB,KAAK;IAC5F,IAAI,CAAC;QACH,OAAO,cAAc,CAAC,MAAM,OAAO,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,uCAAuC,EAAE,OAAO,CAAC,CAAC,CAAC;IACvI,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/G,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAA0B,EAAE,UAAwB,KAAK;IAC9F,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC;QAC5E,OAAO,gBAAgB,CAAC,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/G,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAA0B,EAAE,UAAwB,KAAK;IAC5F,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,MAAM,OAAO,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC;IAChH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/G,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAA0B,EAAE,UAAwB,KAAK;IAC5F,IAAI,CAAC;QACH,OAAO,cAAc,CAAC,MAAM,OAAO,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3G,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/G,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"phase2.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/phase2.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ import type { HostExecutor } from '../../host/executor.js';
2
2
  import type { ValidatorInstanceDto } from 'ysk-server-shared';
3
3
  import { type OpsLogFn } from '../ops-log.js';
4
4
  export declare function composeProjectName(id: string): string;
5
+ /** Match `yskval-{id}-{service}-{n}` (and the 48-char compose project cap). */
6
+ export declare function validatorIdFromContainerName(name: string, ids: readonly string[]): string | null;
5
7
  export declare function composeFilePath(instanceDirPath: string): string;
6
8
  /** Bind-mounts are created as root; many images run as nonroot. */
7
9
  export declare function prepareValidatorDataDir(dataPath: string): void;
@@ -20,6 +22,10 @@ export declare function writeComposeFile(path: string, yaml: string, instanceId?
20
22
  memory?: string;
21
23
  cpus?: string;
22
24
  }): string;
25
+ /** Host IANA zone for container TZ. Fail closed to UTC if unreadable. */
26
+ export declare function hostTimezoneName(): string;
27
+ /** Inject TZ (and /etc/localtime when present) so chain logs follow the host clock. */
28
+ export declare function applyComposeTimezone(yaml: string, tz?: string): string;
23
29
  /** Placeholder compose until a chain adapter supplies a real template. */
24
30
  export declare function stubComposeYaml(inst: ValidatorInstanceDto): string;
25
31
  export declare function applyComposeLimits(yaml: string, limits?: {
@@ -39,6 +45,8 @@ export declare function composePull(input: {
39
45
  stdout: string;
40
46
  stderr: string;
41
47
  }>;
48
+ /** Longer watches for chains that panic after compose up -d looks healthy. */
49
+ export declare function composeStayWaits(chain: string): number[];
42
50
  export declare function composeUp(input: {
43
51
  host: HostExecutor;
44
52
  file: string;
@@ -1 +1 @@
1
- {"version":3,"file":"compose-runner.d.ts","sourceRoot":"","sources":["../../../src/hosting/validators/compose-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose-runner.d.ts","sourceRoot":"","sources":["../../../src/hosting/validators/compose-runner.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,29 @@
2
2
  * Docker Compose runner for validator instances.
3
3
  * Host mutations go through HostExecutor (honesty / allowlist).
4
4
  */
5
- import { chmodSync, mkdirSync, writeFileSync } from 'node:fs';
5
+ import { chmodSync, existsSync, mkdirSync, readFileSync, readlinkSync, writeFileSync } from 'node:fs';
6
6
  import { dirname } from 'node:path';
7
7
  import { runOpts } from '../ops-log.js';
8
8
  import { parseJsonLines, reconcileDockerState } from '../docker/parse.js';
9
9
  export function composeProjectName(id) {
10
10
  return `yskval-${id}`.toLowerCase().replace(/[^a-z0-9-]+/g, '-').slice(0, 48);
11
11
  }
12
+ /** Match `yskval-{id}-{service}-{n}` (and the 48-char compose project cap). */
13
+ export function validatorIdFromContainerName(name, ids) {
14
+ const n = String(name ?? '').replace(/^\//, '').toLowerCase();
15
+ if (!n.startsWith('yskval-'))
16
+ return null;
17
+ let best = null;
18
+ let bestLen = -1;
19
+ for (const id of ids) {
20
+ const p = composeProjectName(id);
21
+ if (p.length > bestLen && (n === p || n.startsWith(`${p}-`))) {
22
+ best = id;
23
+ bestLen = p.length;
24
+ }
25
+ }
26
+ return best;
27
+ }
12
28
  export function composeFilePath(instanceDirPath) {
13
29
  return `${instanceDirPath.replace(/\/+$/, '')}/compose.yml`;
14
30
  }
@@ -46,11 +62,51 @@ export async function probeDockerCompose(host) {
46
62
  export function writeComposeFile(path, yaml, instanceId, limits) {
47
63
  mkdirSync(dirname(path), { recursive: true });
48
64
  const limited = applyComposeLimits(yaml, limits);
49
- const stamped = instanceId ? stampYskComposeLabels(limited, instanceId) : limited;
65
+ const zoned = applyComposeTimezone(limited);
66
+ const stamped = instanceId ? stampYskComposeLabels(zoned, instanceId) : zoned;
50
67
  const body = stamped.endsWith('\n') ? stamped : `${stamped}\n`;
51
68
  writeFileSync(path, body, 'utf8');
52
69
  return path;
53
70
  }
71
+ /** Host IANA zone for container TZ. Fail closed to UTC if unreadable. */
72
+ export function hostTimezoneName() {
73
+ try {
74
+ const tz = readFileSync('/etc/timezone', 'utf8').trim();
75
+ if (tz && tz.length < 64 && /^[A-Za-z0-9/_+-]+$/.test(tz))
76
+ return tz;
77
+ }
78
+ catch {
79
+ /* no /etc/timezone */
80
+ }
81
+ const env = String(process.env.TZ ?? '').trim();
82
+ if (env && env.length < 64 && /^[A-Za-z0-9/_+-]+$/.test(env))
83
+ return env;
84
+ try {
85
+ const link = readlinkSync('/etc/localtime');
86
+ const m = String(link).match(/\/zoneinfo\/(.+)$/);
87
+ if (m?.[1] && m[1].length < 64 && /^[A-Za-z0-9/_+-]+$/.test(m[1]))
88
+ return m[1];
89
+ }
90
+ catch {
91
+ /* no localtime symlink */
92
+ }
93
+ return 'UTC';
94
+ }
95
+ /** Inject TZ (and /etc/localtime when present) so chain logs follow the host clock. */
96
+ export function applyComposeTimezone(yaml, tz = hostTimezoneName()) {
97
+ const zone = tz && tz.length < 64 && /^[A-Za-z0-9/_+-]+$/.test(tz) ? tz : 'UTC';
98
+ let out = String(yaml ?? '');
99
+ if (!/\n[ \t]+environment:/m.test(out)) {
100
+ out = out.replace(/^([ \t]+restart:\s+unless-stopped)\s*$/gm, `$1\n environment:\n TZ: ${zone}`);
101
+ }
102
+ else if (!/\bTZ:\s*/m.test(out)) {
103
+ out = out.replace(/^([ \t]+environment:)\s*$/gm, `$1\n TZ: ${zone}`);
104
+ }
105
+ if (existsSync('/etc/localtime') && !out.includes('/etc/localtime:')) {
106
+ out = out.replace(/^([ \t]+volumes:)\s*$/gm, `$1\n - "/etc/localtime:/etc/localtime:ro"`);
107
+ }
108
+ return out;
109
+ }
54
110
  /** Placeholder compose until a chain adapter supplies a real template. */
55
111
  export function stubComposeYaml(inst) {
56
112
  const images = Object.values(inst.clients);
@@ -93,6 +149,15 @@ export function applyComposeLimits(yaml, limits) {
93
149
  extra.push(` memswap_limit: ${limits.memory}`);
94
150
  extra.push(` pids_limit: 4096`);
95
151
  }
152
+ if (!/\n[ \t]+deploy:\s*\n/.test(out)) {
153
+ extra.push(` deploy:`);
154
+ extra.push(` resources:`);
155
+ extra.push(` limits:`);
156
+ extra.push(` memory: ${limits.memory}`);
157
+ }
158
+ else {
159
+ out = out.replace(/(\n[ \t]+memory:\s*)\S+/g, `$1${limits.memory}`);
160
+ }
96
161
  }
97
162
  if (limits.cpus && /^\d+(\.\d+)?$/.test(limits.cpus))
98
163
  extra.push(` cpus: ${JSON.stringify(limits.cpus)}`);
@@ -116,6 +181,13 @@ export async function composePull(input) {
116
181
  stderr: r.stderr,
117
182
  };
118
183
  }
184
+ /** Longer watches for chains that panic after compose up -d looks healthy. */
185
+ export function composeStayWaits(chain) {
186
+ if (chain === 'cosmos' || chain === 'eth' || chain === 'near') {
187
+ return [3_000, 5_000, 8_000, 12_000, 15_000];
188
+ }
189
+ return [2_000, 3_000, 5_000];
190
+ }
119
191
  export async function composeUp(input) {
120
192
  const argv = ['docker', 'compose', '-f', input.file, '-p', input.project, 'up', '-d'];
121
193
  const r = await input.host.runCommand(argv, {