ysk-server-core 1.1.15 → 1.1.17

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 (49) hide show
  1. package/dist/hosting/validators/adapters/avax.d.ts +3 -3
  2. package/dist/hosting/validators/adapters/avax.d.ts.map +1 -1
  3. package/dist/hosting/validators/adapters/avax.js +19 -5
  4. package/dist/hosting/validators/adapters/avax.js.map +1 -1
  5. package/dist/hosting/validators/adapters/eth-clients.js +3 -3
  6. package/dist/hosting/validators/adapters/eth-clients.js.map +1 -1
  7. package/dist/hosting/validators/adapters/eth.d.ts.map +1 -1
  8. package/dist/hosting/validators/adapters/eth.js +4 -3
  9. package/dist/hosting/validators/adapters/eth.js.map +1 -1
  10. package/dist/hosting/validators/adapters/near.d.ts.map +1 -1
  11. package/dist/hosting/validators/adapters/near.js +5 -1
  12. package/dist/hosting/validators/adapters/near.js.map +1 -1
  13. package/dist/hosting/validators/adapters/phase2.d.ts +25 -4
  14. package/dist/hosting/validators/adapters/phase2.d.ts.map +1 -1
  15. package/dist/hosting/validators/adapters/phase2.js +210 -17
  16. package/dist/hosting/validators/adapters/phase2.js.map +1 -1
  17. package/dist/hosting/validators/compose-runner.d.ts +13 -5
  18. package/dist/hosting/validators/compose-runner.d.ts.map +1 -1
  19. package/dist/hosting/validators/compose-runner.js +104 -17
  20. package/dist/hosting/validators/compose-runner.js.map +1 -1
  21. package/dist/hosting/validators/extras.d.ts.map +1 -1
  22. package/dist/hosting/validators/extras.js +5 -2
  23. package/dist/hosting/validators/extras.js.map +1 -1
  24. package/dist/hosting/validators/manager.d.ts +2 -0
  25. package/dist/hosting/validators/manager.d.ts.map +1 -1
  26. package/dist/hosting/validators/manager.js +109 -18
  27. package/dist/hosting/validators/manager.js.map +1 -1
  28. package/dist/hosting/validators/ports.d.ts +4 -1
  29. package/dist/hosting/validators/ports.d.ts.map +1 -1
  30. package/dist/hosting/validators/ports.js +26 -2
  31. package/dist/hosting/validators/ports.js.map +1 -1
  32. package/dist/hosting/validators/registry.d.ts +4 -0
  33. package/dist/hosting/validators/registry.d.ts.map +1 -1
  34. package/dist/hosting/validators/registry.js +9 -1
  35. package/dist/hosting/validators/registry.js.map +1 -1
  36. package/dist/hosting/validators/rpc-json.d.ts +8 -0
  37. package/dist/hosting/validators/rpc-json.d.ts.map +1 -0
  38. package/dist/hosting/validators/rpc-json.js +19 -0
  39. package/dist/hosting/validators/rpc-json.js.map +1 -0
  40. package/dist/hosting/validators/runtime-status.d.ts +5 -1
  41. package/dist/hosting/validators/runtime-status.d.ts.map +1 -1
  42. package/dist/hosting/validators/runtime-status.js +21 -3
  43. package/dist/hosting/validators/runtime-status.js.map +1 -1
  44. package/dist/hosting/validators/software-catalog.d.ts.map +1 -1
  45. package/dist/hosting/validators/software-catalog.js +3 -1
  46. package/dist/hosting/validators/software-catalog.js.map +1 -1
  47. package/dist/monitoring/notifications.js +1 -1
  48. package/dist/monitoring/notifications.js.map +1 -1
  49. package/package.json +2 -2
@@ -1,8 +1,8 @@
1
- /**
2
- * Avalanche adapter — avalanchego, state-sync on for minimal/pruned.
3
- */
4
1
  import type { ValidatorInstanceDto } from 'ysk-server-shared';
5
2
  import type { ValidatorHostPlan } from './base.js';
3
+ /** C-Chain JSON — `--state-sync-enabled` is not an avalanchego CLI flag. */
4
+ export declare function avaxCChainConfig(stateSync: boolean): string;
5
+ export declare function ensureAvaxChainConfig(dataPath: string, stateSync?: boolean): void;
6
6
  export declare function buildAvaxComposeYaml(spec: ValidatorInstanceDto): string;
7
7
  export declare function planAvaxInstall(spec: ValidatorInstanceDto): ValidatorHostPlan;
8
8
  export declare function parseAvaxHealth(body: unknown): {
@@ -1 +1 @@
1
- {"version":3,"file":"avax.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/avax.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAInD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CA0BvE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAS7E;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAKnE;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC;IACT,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC,CAmBD;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAAC;AAYF,qFAAqF;AACrF,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CA6B9B;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAExB"}
1
+ {"version":3,"file":"avax.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/avax.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAKnD,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAE3D;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,UAAO,GAAG,IAAI,CAI9E;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAyBvE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAS7E;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAKnE;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC;IACT,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC,CAmBD;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAAC;AAYF,qFAAqF;AACrF,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CA6B9B;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAExB"}
@@ -1,25 +1,39 @@
1
+ /**
2
+ * Avalanche adapter — avalanchego, state-sync on for minimal/pruned.
3
+ */
4
+ import { mkdirSync, writeFileSync } from 'node:fs';
5
+ import { join } from 'node:path';
1
6
  import { v1ValidatorClients } from '../registry.js';
2
7
  import { composeBind } from '../compose-runner.js';
8
+ import { readRpcJson } from '../rpc-json.js';
9
+ /** C-Chain JSON — `--state-sync-enabled` is not an avalanchego CLI flag. */
10
+ export function avaxCChainConfig(stateSync) {
11
+ return `${JSON.stringify({ 'state-sync-enabled': stateSync }, null, 2)}\n`;
12
+ }
13
+ export function ensureAvaxChainConfig(dataPath, stateSync = true) {
14
+ const dir = join(String(dataPath ?? '').replace(/\/+$/, ''), 'configs', 'chains', 'C');
15
+ mkdirSync(dir, { recursive: true });
16
+ writeFileSync(join(dir, 'config.json'), avaxCChainConfig(stateSync), 'utf8');
17
+ }
3
18
  export function buildAvaxComposeYaml(spec) {
4
19
  const node = spec.clients.node ?? v1ValidatorClients('avax')[0];
5
20
  const img = `${node?.image ?? 'avaplatform/avalanchego'}:${node?.tag ?? 'v1.13.5'}`;
6
21
  const rpc = spec.ports.rpc ?? 9650;
7
22
  const p2p = spec.ports.p2p ?? 9651;
8
23
  const netId = spec.network === 'mainnet' ? 'mainnet' : 'fuji';
9
- const stateSync = spec.profile === 'validator-ready' ? 'true' : 'true';
10
24
  return `# ysk-server validators avax — generated
11
25
  services:
12
26
  node:
13
27
  image: ${img}
14
28
  restart: unless-stopped
29
+ entrypoint: ["/avalanchego/build/avalanchego"]
15
30
  command:
16
- - avalanchego
17
31
  - --network-id=${netId}
18
32
  - --http-host=0.0.0.0
19
33
  - --http-port=9650
20
34
  - --staking-port=9651
21
35
  - --db-dir=/data
22
- - --state-sync-enabled=${stateSync}
36
+ - --chain-config-dir=/data/configs/chains
23
37
  ports:
24
38
  - "127.0.0.1:${rpc}:9650"
25
39
  - "0.0.0.0:${p2p}:9651"
@@ -47,7 +61,7 @@ export async function probeAvaxStatus(spec, fetchFn = fetch) {
47
61
  const url = `http://127.0.0.1:${spec.ports.rpc ?? 9650}/ext/health`;
48
62
  try {
49
63
  const res = await fetchFn(url);
50
- const healthy = parseAvaxHealth(await res.json()).healthy;
64
+ const healthy = parseAvaxHealth(await readRpcJson(res)).healthy;
51
65
  return {
52
66
  syncProgress: healthy ? 1 : null,
53
67
  peers: null,
@@ -86,7 +100,7 @@ export async function probeAvaxStakingIdentity(spec, fetchFn = fetch) {
86
100
  params: {},
87
101
  }),
88
102
  });
89
- const body = (await res.json());
103
+ const body = (await readRpcJson(res));
90
104
  const pop = body.result?.nodePOP;
91
105
  return {
92
106
  nodeId: asTrimmed(body.result?.nodeID ?? body.result?.nodeId),
@@ -1 +1 @@
1
- {"version":3,"file":"avax.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/avax.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,UAAU,oBAAoB,CAAC,IAA0B;IAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,GAAG,GAAG,GAAG,IAAI,EAAE,KAAK,IAAI,yBAAyB,IAAI,IAAI,EAAE,GAAG,IAAI,SAAS,EAAE,CAAC;IACpF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;IACnC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,KAAK,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IACvE,OAAO;;;aAGI,GAAG;;;;uBAIO,KAAK;;;;;+BAKG,SAAS;;qBAEnB,GAAG;mBACL,GAAG;;UAEZ,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAA0B;IACxD,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC3C,OAAO;QACL,KAAK,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,oBAAoB,CAAC;QAC7D,WAAW,EAAE,oBAAoB,CAAC,IAAI,CAAC;QACvC,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,eAAe,CAAC,IAAa;IAC3C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QAC1D,OAAO,EAAE,OAAO,EAAE,OAAO,CAAE,IAA6B,CAAC,OAAO,CAAC,EAAE,CAAC;IACtE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAA0B,EAC1B,UAAwB,KAAK;IAO7B,MAAM,GAAG,GAAG,oBAAoB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,aAAa,CAAC;IACpE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC;QAC1D,OAAO;YACL,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAChC,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,aAAa;YACtB,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW;SACxC,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;AAQD,MAAM,iBAAiB,GAAwB;IAC7C,MAAM,EAAE,IAAI;IACZ,YAAY,EAAE,IAAI;IAClB,oBAAoB,EAAE,IAAI;CAC3B,CAAC;AAEF,SAAS,SAAS,CAAC,CAAU;IAC3B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,IAA0B,EAC1B,UAAwB,KAAK;IAE7B,MAAM,GAAG,GAAG,oBAAoB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,WAAW,CAAC;IAClE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE;YAC7B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,OAAO,EAAE,KAAK;gBACd,EAAE,EAAE,CAAC;gBACL,MAAM,EAAE,gBAAgB;gBACxB,MAAM,EAAE,EAAE;aACX,CAAC;SACH,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAM7B,CAAC;QACF,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;QACjC,OAAO;YACL,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;YAC7D,YAAY,EAAE,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC;YACvC,oBAAoB,EAAE,SAAS,CAAC,GAAG,EAAE,iBAAiB,CAAC;SACxD,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,iBAAiB,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAA0B,EAC1B,UAAwB,KAAK;IAE7B,OAAO,CAAC,MAAM,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"avax.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/avax.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { composeBind } from '../compose-runner.js';
2
2
  export const ETH_CHECKPOINT = {
3
- hoodi: 'https://checkpoint-sync.hoodi.ethpandaops.io',
3
+ hoodi: 'https://hoodi.beaconstate.info',
4
4
  sepolia: 'https://checkpoint-sync.sepolia.ethpandaops.io',
5
5
  mainnet: 'https://beaconstate.info',
6
6
  };
@@ -45,7 +45,7 @@ export function buildElService(spec, jwt) {
45
45
  - --http.port
46
46
  - "8545"
47
47
  - --http.api
48
- - eth,net,web3,engine
48
+ - eth,net,web3
49
49
  - --authrpc.addr
50
50
  - 0.0.0.0
51
51
  - --authrpc.port
@@ -105,7 +105,7 @@ ${netFlag.join('\n')}
105
105
  - --http.port
106
106
  - "8545"
107
107
  - --http.api
108
- - eth,net,web3,engine
108
+ - eth,net,web3
109
109
  - --authrpc.addr
110
110
  - 0.0.0.0
111
111
  - --authrpc.port
@@ -1 +1 @@
1
- {"version":3,"file":"eth-clients.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/eth-clients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eth-clients.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/eth-clients.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"eth.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/eth.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAItF,wBAAgB,UAAU,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAE7D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAa5F;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAM9D;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAStE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAgB5E;AAED,eAAO,MAAM,UAAU,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,aAAa,CAAC,GAAG;IAClE,MAAM,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAAC;CAO5C,CAAC;AAEF,wBAAsB,cAAc,CAClC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC,CAAC,CAqCxF"}
1
+ {"version":3,"file":"eth.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/eth.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAKtF,wBAAgB,UAAU,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAE7D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAa5F;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAM9D;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAStE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAgB5E;AAED,eAAO,MAAM,UAAU,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,aAAa,CAAC,GAAG;IAClE,MAAM,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAAC;CAO5C,CAAC;AAEF,wBAAsB,cAAc,CAClC,IAAI,EAAE,oBAAoB,EAC1B,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC,CAAC,CAqCxF"}
@@ -1,5 +1,6 @@
1
1
  import { v1ValidatorClients } from '../registry.js';
2
2
  import { buildClService, buildElService, jwtHost } from './eth-clients.js';
3
+ import { readRpcJson } from '../rpc-json.js';
3
4
  export function ethJwtPath(spec) {
4
5
  return jwtHost(spec);
5
6
  }
@@ -80,9 +81,9 @@ export async function probeEthStatus(spec, fetchFn = fetch) {
80
81
  body: JSON.stringify({ jsonrpc: '2.0', id: 3, method: 'web3_clientVersion', params: [] }),
81
82
  }),
82
83
  ]);
83
- const sync = parseEthSyncing(await syncRes.json());
84
- const peers = parseEthPeerCount(await peerRes.json());
85
- const verBody = (await verRes.json());
84
+ const sync = parseEthSyncing(await readRpcJson(syncRes));
85
+ const peers = parseEthPeerCount(await readRpcJson(peerRes));
86
+ const verBody = (await readRpcJson(verRes));
86
87
  return {
87
88
  syncProgress: sync.syncing ? sync.progress : 1,
88
89
  peers,
@@ -1 +1 @@
1
- {"version":3,"file":"eth.js","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/eth.ts"],"names":[],"mappings":"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"}
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;AAIxE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAyBvE;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;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,5 +1,6 @@
1
1
  import { v1ValidatorClients } from '../registry.js';
2
2
  import { composeBind } from '../compose-runner.js';
3
+ import { readRpcJson } from '../rpc-json.js';
3
4
  export function buildNearComposeYaml(spec) {
4
5
  const node = spec.clients.node ?? v1ValidatorClients('near')[0];
5
6
  const img = `${node?.image ?? 'nearprotocol/nearcore'}:${node?.tag ?? '2.5.0'}`;
@@ -11,6 +12,9 @@ services:
11
12
  node:
12
13
  image: ${img}
13
14
  restart: unless-stopped
15
+ mem_limit: 4g
16
+ memswap_limit: 4g
17
+ pids_limit: 4096
14
18
  entrypoint: ["/bin/sh", "-c"]
15
19
  command:
16
20
  - |
@@ -57,7 +61,7 @@ export async function probeNearStatus(spec, fetchFn = fetch) {
57
61
  const url = `http://127.0.0.1:${spec.ports.rpc ?? 3030}/status`;
58
62
  try {
59
63
  const res = await fetchFn(url);
60
- const parsed = parseNearStatus(await res.json());
64
+ const parsed = parseNearStatus(await readRpcJson(res));
61
65
  return { ...parsed, lastError: null };
62
66
  }
63
67
  catch (e) {
@@ -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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"}
@@ -1,19 +1,35 @@
1
- /**
2
- * Phase 2 chain adapters: Bitcoin, Cosmos Hub, Sui, Aptos, Polkadot, Solana.
3
- * RPC bound to localhost on the host. No keys written.
4
- */
5
1
  import type { ValidatorInstanceDto } from 'ysk-server-shared';
6
2
  import type { ValidatorHostPlan, ValidatorNodeStatus } from './base.js';
7
3
  type Probe = Pick<ValidatorNodeStatus, 'syncProgress' | 'peers' | 'version' | 'lastError'>;
8
4
  export declare function buildBtcComposeYaml(spec: ValidatorInstanceDto): string;
9
5
  export declare function planBtcInstall(spec: ValidatorInstanceDto): ValidatorHostPlan;
10
6
  export declare function parseBtcInfo(body: unknown): Probe;
7
+ export declare function cosmosChainId(network: string): string;
8
+ /** Official Cosmos Hub testnet is ICS `provider` (theta-testnet-001 is killed). */
9
+ export declare function cosmosGenesisUrl(network: string): string;
10
+ export declare function cosmosSeeds(network: string): string;
11
+ export declare function ensureCosmosGenesisFile(dataPath: string, network: string, fetchFn?: typeof fetch): Promise<{
12
+ ok: boolean;
13
+ notes: string[];
14
+ }>;
11
15
  export declare function buildCosmosComposeYaml(spec: ValidatorInstanceDto): string;
12
16
  export declare function planCosmosInstall(spec: ValidatorInstanceDto): ValidatorHostPlan;
13
17
  export declare function parseCosmosStatus(body: unknown): Probe;
18
+ export declare function suiGenesisUrl(network: string): string;
19
+ export declare function suiFullnodeYaml(network: string): string;
20
+ export declare function ensureSuiFullnodeFiles(dataPath: string, network: string, fetchFn?: typeof fetch): Promise<{
21
+ ok: boolean;
22
+ notes: string[];
23
+ }>;
14
24
  export declare function buildSuiComposeYaml(spec: ValidatorInstanceDto): string;
15
25
  export declare function planSuiInstall(spec: ValidatorInstanceDto): ValidatorHostPlan;
16
26
  export declare function parseSuiHealth(body: unknown): Probe;
27
+ export declare function aptosFullnodeYaml(): string;
28
+ export declare function aptosNetworkFileUrl(network: string, file: 'genesis.blob' | 'waypoint.txt'): string;
29
+ export declare function ensureAptosFullnodeFiles(dataPath: string, network: string, fetchFn?: typeof fetch): Promise<{
30
+ ok: boolean;
31
+ notes: string[];
32
+ }>;
17
33
  export declare function buildAptosComposeYaml(spec: ValidatorInstanceDto): string;
18
34
  export declare function planAptosInstall(spec: ValidatorInstanceDto): ValidatorHostPlan;
19
35
  export declare function parseAptosLedger(body: unknown): Probe;
@@ -23,6 +39,11 @@ export declare function parseDotSync(body: unknown): Probe;
23
39
  export declare function buildSolComposeYaml(spec: ValidatorInstanceDto): string;
24
40
  export declare function planSolInstall(spec: ValidatorInstanceDto): ValidatorHostPlan;
25
41
  export declare function parseSolHealth(body: unknown): Probe;
42
+ export declare function btcCookiePaths(dataPath: string, network: string): string[];
43
+ export declare function parseBtcCookieFile(raw: string): {
44
+ user: string;
45
+ pass: string;
46
+ } | null;
26
47
  export declare function probeBtcStatus(spec: ValidatorInstanceDto, fetchFn?: typeof fetch): Promise<Probe>;
27
48
  export declare function probeCosmosStatus(spec: ValidatorInstanceDto, fetchFn?: typeof fetch): Promise<Probe>;
28
49
  export declare function probeSuiStatus(spec: ValidatorInstanceDto, fetchFn?: typeof fetch): Promise<Probe>;
@@ -1 +1 @@
1
- {"version":3,"file":"phase2.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/phase2.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;AAIxE,KAAK,KAAK,GAAG,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC,CAAC;AAsB3F,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAsBtE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAE5E;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAUjD;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CA2BzE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAE/E;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAYtD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAgBtE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAE5E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAKnD;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAkBxE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAE9E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAQrD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAsBtE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAE5E;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAYjD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CA2BtE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAO5E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAInD;AAeD,wBAAsB,cAAc,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,GAAE,OAAO,KAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAM9G;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,GAAE,OAAO,KAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAOjH;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,GAAE,OAAO,KAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAM9G;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,GAAE,OAAO,KAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAOhH;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,GAAE,OAAO,KAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAM9G;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,GAAE,OAAO,KAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAM9G"}
1
+ {"version":3,"file":"phase2.d.ts","sourceRoot":"","sources":["../../../../src/hosting/validators/adapters/phase2.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,12 @@
1
- import { v1ValidatorClients } from '../registry.js';
1
+ /**
2
+ * Phase 2 chain adapters: Bitcoin, Cosmos Hub, Sui, Aptos, Polkadot, Solana.
3
+ * RPC bound to localhost on the host. No keys written.
4
+ */
5
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
6
+ import { join } from 'node:path';
7
+ import { SUI_NODE_IMAGE, suiNodeTag, v1ValidatorClients } from '../registry.js';
2
8
  import { composeBind } from '../compose-runner.js';
9
+ import { readRpcJson } from '../rpc-json.js';
3
10
  function img(spec, fallback, tag) {
4
11
  const n = spec.clients.node ?? v1ValidatorClients(spec.chain)[0];
5
12
  return `${n?.image ?? fallback}:${n?.tag ?? tag}`;
@@ -52,11 +59,49 @@ export function parseBtcInfo(body) {
52
59
  lastError: null,
53
60
  };
54
61
  }
62
+ export function cosmosChainId(network) {
63
+ return network === 'mainnet' ? 'cosmoshub-4' : 'provider';
64
+ }
65
+ /** Official Cosmos Hub testnet is ICS `provider` (theta-testnet-001 is killed). */
66
+ export function cosmosGenesisUrl(network) {
67
+ if (network === 'mainnet') {
68
+ return 'https://raw.githubusercontent.com/cosmos/mainnet/master/genesis.json';
69
+ }
70
+ return 'https://raw.githubusercontent.com/cosmos/testnets/master/provider/provider-genesis.json';
71
+ }
72
+ export function cosmosSeeds(network) {
73
+ if (network === 'mainnet') {
74
+ return 'ade4d8bc8cbe014af6ebdf3cb7b1e9ad36f412c0@seeds.polkachu.com:14956';
75
+ }
76
+ return '08ec17e86dac67b9da70deb20177655495a55407@provider-seed-01.hub-testnet.polypore.xyz:26656,4ea6e56300a2f37b90e58de5ee27d1c9065cf871@provider-seed-02.hub-testnet.polypore.xyz:26656';
77
+ }
78
+ export async function ensureCosmosGenesisFile(dataPath, network, fetchFn = fetch) {
79
+ const dir = String(dataPath ?? '').replace(/\/+$/, '');
80
+ mkdirSync(dir, { recursive: true });
81
+ const dest = join(dir, 'official-genesis.json');
82
+ if (existsSync(dest))
83
+ return { ok: true, notes: [] };
84
+ const url = cosmosGenesisUrl(network);
85
+ try {
86
+ const res = await fetchFn(url);
87
+ if (!res.ok)
88
+ return { ok: false, notes: [`cosmos genesis http ${res.status} ${url}`] };
89
+ const buf = Buffer.from(await res.arrayBuffer());
90
+ if (buf.length < 64)
91
+ return { ok: false, notes: ['cosmos genesis too small'] };
92
+ writeFileSync(dest, buf);
93
+ return { ok: true, notes: [] };
94
+ }
95
+ catch (e) {
96
+ return { ok: false, notes: [e instanceof Error ? e.message : 'cosmos genesis fetch failed'] };
97
+ }
98
+ }
55
99
  export function buildCosmosComposeYaml(spec) {
56
100
  const rpc = spec.ports.rpc ?? 26657;
57
101
  const p2p = spec.ports.p2p ?? 26656;
58
- const chainId = spec.network === 'mainnet' ? 'cosmoshub-4' : 'provider';
59
- return `# ysk-server validators cosmos — generated (state-sync later)
102
+ const chainId = cosmosChainId(spec.network);
103
+ const seeds = cosmosSeeds(spec.network);
104
+ return `# ysk-server validators cosmos — generated (official genesis)
60
105
  services:
61
106
  node:
62
107
  image: ${img(spec, 'ghcr.io/cosmos/gaia', 'v23.3.0')}
@@ -69,10 +114,19 @@ services:
69
114
  echo "data dir not writable: /data" >&2
70
115
  exit 1
71
116
  fi
72
- if [ ! -f /data/config/genesis.json ]; then
117
+ if [ ! -f /data/official-genesis.json ]; then
118
+ echo "official genesis missing: /data/official-genesis.json" >&2
119
+ exit 1
120
+ fi
121
+ if [ ! -f /data/config/config.toml ]; then
73
122
  gaiad init ysk --home /data --chain-id ${chainId}
74
123
  fi
75
- gaiad start --home /data --rpc.laddr tcp://0.0.0.0:26657 --p2p.laddr tcp://0.0.0.0:26656
124
+ cp /data/official-genesis.json /data/config/genesis.json
125
+ if [ -f /data/config/config.toml ]; then
126
+ sed -i -e '/minimum-gas-prices =/ s^= .*^= "0.005uatom"^' /data/config/app.toml || true
127
+ sed -i -e '/seeds =/ s^= .*^= "${seeds}"^' /data/config/config.toml || true
128
+ fi
129
+ 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
76
130
  ports:
77
131
  - "127.0.0.1:${rpc}:26657"
78
132
  - "0.0.0.0:${p2p}:26656"
@@ -96,15 +150,58 @@ export function parseCosmosStatus(body) {
96
150
  lastError: null,
97
151
  };
98
152
  }
153
+ export function suiGenesisUrl(network) {
154
+ const net = network === 'mainnet' ? 'mainnet' : 'testnet';
155
+ return `https://github.com/MystenLabs/sui-genesis/raw/main/${net}/genesis.blob`;
156
+ }
157
+ export function suiFullnodeYaml(network) {
158
+ const net = network === 'mainnet' ? 'mainnet' : 'testnet';
159
+ return `# ysk-server generated Sui ${net} fullnode
160
+ db-path: /data/suidb
161
+ network-address: /ip4/0.0.0.0/tcp/8080/http
162
+ metrics-address: 0.0.0.0:9184
163
+ json-rpc-address: 0.0.0.0:9000
164
+ enable-index-processing: false
165
+ genesis:
166
+ genesis-file-location: /data/genesis.blob
167
+ `;
168
+ }
169
+ export async function ensureSuiFullnodeFiles(dataPath, network, fetchFn = fetch) {
170
+ const dir = String(dataPath ?? '').replace(/\/+$/, '');
171
+ mkdirSync(dir, { recursive: true });
172
+ writeFileSync(join(dir, 'fullnode.yaml'), suiFullnodeYaml(network), 'utf8');
173
+ const genesisPath = join(dir, 'genesis.blob');
174
+ if (existsSync(genesisPath))
175
+ return { ok: true, notes: [] };
176
+ const url = suiGenesisUrl(network);
177
+ try {
178
+ const res = await fetchFn(url);
179
+ if (!res.ok)
180
+ return { ok: false, notes: [`sui genesis http ${res.status} ${url}`] };
181
+ const buf = Buffer.from(await res.arrayBuffer());
182
+ if (buf.length < 8)
183
+ return { ok: false, notes: ['sui genesis blob too small'] };
184
+ writeFileSync(genesisPath, buf);
185
+ return { ok: true, notes: [] };
186
+ }
187
+ catch (e) {
188
+ return { ok: false, notes: [e instanceof Error ? e.message : 'sui genesis fetch failed'] };
189
+ }
190
+ }
99
191
  export function buildSuiComposeYaml(spec) {
100
192
  const rpc = spec.ports.rpc ?? 9002;
101
193
  const net = spec.network === 'mainnet' ? 'mainnet' : 'testnet';
194
+ const tag = suiNodeTag(spec.network);
195
+ const image = spec.clients.node?.image || SUI_NODE_IMAGE;
102
196
  return `# ysk-server validators sui — generated
103
197
  services:
104
198
  node:
105
- image: ${img(spec, 'mysten/sui-node', 'mainnet-v1.44.2')}
199
+ image: ${image}:${tag}
106
200
  restart: unless-stopped
107
- command: ["sui-node", "--config-path", "/data/fullnode.yaml"]
201
+ command:
202
+ - sui-node
203
+ - --config-path
204
+ - /data/fullnode.yaml
108
205
  environment:
109
206
  SUI_NETWORK: ${net}
110
207
  ports:
@@ -122,8 +219,53 @@ export function parseSuiHealth(body) {
122
219
  }
123
220
  return { syncProgress: null, peers: null, version: null, lastError: 'unhealthy' };
124
221
  }
222
+ export function aptosFullnodeYaml() {
223
+ return `# ysk-server generated Aptos public fullnode
224
+ base:
225
+ role: "full_node"
226
+ data_dir: "/data"
227
+ waypoint:
228
+ from_file: "/data/waypoint.txt"
229
+ execution:
230
+ genesis_file_location: "/data/genesis.blob"
231
+ full_node_networks:
232
+ - discovery_method: "onchain"
233
+ listen_address: "/ip4/0.0.0.0/tcp/6180"
234
+ api:
235
+ enabled: true
236
+ address: 0.0.0.0:8080
237
+ `;
238
+ }
239
+ export function aptosNetworkFileUrl(network, file) {
240
+ const net = network === 'mainnet' ? 'mainnet' : 'testnet';
241
+ return `https://github.com/aptos-labs/aptos-networks/raw/main/${net}/${file}`;
242
+ }
243
+ export async function ensureAptosFullnodeFiles(dataPath, network, fetchFn = fetch) {
244
+ const dir = String(dataPath ?? '').replace(/\/+$/, '');
245
+ mkdirSync(dir, { recursive: true });
246
+ writeFileSync(join(dir, 'fullnode.yaml'), aptosFullnodeYaml(), 'utf8');
247
+ const notes = [];
248
+ for (const file of ['genesis.blob', 'waypoint.txt']) {
249
+ const dest = join(dir, file);
250
+ if (existsSync(dest))
251
+ continue;
252
+ const url = aptosNetworkFileUrl(network, file);
253
+ try {
254
+ const res = await fetchFn(url);
255
+ if (!res.ok) {
256
+ notes.push(`aptos ${file} http ${res.status}`);
257
+ continue;
258
+ }
259
+ writeFileSync(dest, Buffer.from(await res.arrayBuffer()));
260
+ }
261
+ catch (e) {
262
+ notes.push(e instanceof Error ? e.message : `aptos ${file} fetch failed`);
263
+ }
264
+ }
265
+ return { ok: notes.length === 0, notes };
266
+ }
125
267
  export function buildAptosComposeYaml(spec) {
126
- const rpc = spec.ports.rpc ?? 8080;
268
+ const rpc = spec.ports.rpc ?? 18080;
127
269
  const p2p = spec.ports.p2p ?? 6180;
128
270
  const net = spec.network === 'mainnet' ? 'mainnet' : 'testnet';
129
271
  return `# ysk-server validators aptos — generated
@@ -131,9 +273,16 @@ services:
131
273
  node:
132
274
  image: ${img(spec, 'aptoslabs/validator', 'aptos-node-v1.27.2')}
133
275
  restart: unless-stopped
134
- command: ["aptos-node", "-f", "/data/fullnode.yaml"]
276
+ command:
277
+ - aptos-node
278
+ - -f
279
+ - /data/fullnode.yaml
135
280
  environment:
136
281
  APTOS_NETWORK: ${net}
282
+ ulimits:
283
+ nofile:
284
+ soft: 65536
285
+ hard: 65536
137
286
  ports:
138
287
  - "127.0.0.1:${rpc}:8080"
139
288
  - "0.0.0.0:${p2p}:6180"
@@ -235,26 +384,70 @@ export function parseSolHealth(body) {
235
384
  return { syncProgress: 1, peers: null, version: 'agave', lastError: null };
236
385
  return { syncProgress: null, peers: null, version: null, lastError: 'unhealthy' };
237
386
  }
238
- async function postRpc(url, method, fetchFn) {
387
+ export function btcCookiePaths(dataPath, network) {
388
+ const p = String(dataPath ?? '').replace(/\/+$/, '');
389
+ if (network === 'mainnet')
390
+ return [join(p, '.cookie')];
391
+ return [join(p, 'testnet3', '.cookie'), join(p, 'signet', '.cookie'), join(p, '.cookie')];
392
+ }
393
+ export function parseBtcCookieFile(raw) {
394
+ const line = String(raw ?? '')
395
+ .trim()
396
+ .split('\n')
397
+ .map((l) => l.trim())
398
+ .find(Boolean);
399
+ if (!line)
400
+ return null;
401
+ const i = line.indexOf(':');
402
+ if (i <= 0)
403
+ return null;
404
+ const user = line.slice(0, i);
405
+ const pass = line.slice(i + 1);
406
+ if (!user || !pass)
407
+ return null;
408
+ return { user, pass };
409
+ }
410
+ function readBtcCookie(dataPath, network) {
411
+ for (const f of btcCookiePaths(dataPath, network)) {
412
+ try {
413
+ if (!existsSync(f))
414
+ continue;
415
+ const parsed = parseBtcCookieFile(readFileSync(f, 'utf8'));
416
+ if (parsed)
417
+ return parsed;
418
+ }
419
+ catch {
420
+ /* unreadable cookie is RPC-not-ready, not a crash */
421
+ }
422
+ }
423
+ return null;
424
+ }
425
+ async function postRpc(url, method, fetchFn, auth) {
426
+ const headers = { 'content-type': 'application/json' };
427
+ if (auth) {
428
+ headers.authorization = `Basic ${Buffer.from(`${auth.user}:${auth.pass}`).toString('base64')}`;
429
+ }
239
430
  const res = await fetchFn(url, {
240
431
  method: 'POST',
241
- headers: { 'content-type': 'application/json' },
432
+ headers,
242
433
  body: JSON.stringify({ jsonrpc: '2.0', id: 1, method, params: [] }),
243
434
  });
244
- return res.json();
435
+ return readRpcJson(res);
245
436
  }
246
437
  export async function probeBtcStatus(spec, fetchFn = fetch) {
247
438
  try {
248
- return parseBtcInfo(await postRpc(`http://127.0.0.1:${spec.ports.rpc ?? 8332}`, 'getblockchaininfo', fetchFn));
439
+ const cookie = readBtcCookie(spec.dataPath, spec.network);
440
+ return parseBtcInfo(await postRpc(`http://127.0.0.1:${spec.ports.rpc ?? 8332}`, 'getblockchaininfo', fetchFn, cookie ?? undefined));
249
441
  }
250
442
  catch (e) {
251
- return { syncProgress: null, peers: null, version: null, lastError: e instanceof Error ? e.message : 'rpc' };
443
+ const msg = e instanceof Error ? e.message : 'rpc unreachable';
444
+ return { syncProgress: null, peers: null, version: null, lastError: msg };
252
445
  }
253
446
  }
254
447
  export async function probeCosmosStatus(spec, fetchFn = fetch) {
255
448
  try {
256
449
  const res = await fetchFn(`http://127.0.0.1:${spec.ports.rpc ?? 26657}/status`);
257
- return parseCosmosStatus(await res.json());
450
+ return parseCosmosStatus(await readRpcJson(res));
258
451
  }
259
452
  catch (e) {
260
453
  return { syncProgress: null, peers: null, version: null, lastError: e instanceof Error ? e.message : 'rpc' };
@@ -270,8 +463,8 @@ export async function probeSuiStatus(spec, fetchFn = fetch) {
270
463
  }
271
464
  export async function probeAptosStatus(spec, fetchFn = fetch) {
272
465
  try {
273
- const res = await fetchFn(`http://127.0.0.1:${spec.ports.rpc ?? 8080}/v1`);
274
- return parseAptosLedger(await res.json());
466
+ const res = await fetchFn(`http://127.0.0.1:${spec.ports.rpc ?? 18080}/v1`);
467
+ return parseAptosLedger(await readRpcJson(res));
275
468
  }
276
469
  catch (e) {
277
470
  return { syncProgress: null, peers: null, version: null, lastError: e instanceof Error ? e.message : 'rpc' };