@toon-protocol/townhouse 0.4.0 → 0.5.1

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.
@@ -22,10 +22,10 @@
22
22
  # Story 45.4 boots only connector + townhouse-api at apex install
23
23
  #
24
24
  # Digest placeholders (substituted at build time from dist/image-manifest.json):
25
- # @sha256:ebe31e013c8ab3f98894e699a08e2f7c551645b29def075d2b296c99ac3b3898 → @sha256:<hex>
26
- # @sha256:32655fec041885578829f5d576d52ef997ae787d12ead38cec8cfe41e54d9fab → @sha256:<hex>
27
- # @sha256:465d63fd85c61ffcc305687d1ffcba09a75a691581ee66f8d42e226fed718553 → @sha256:<hex>
28
- # @sha256:a440b4133c28ca85e47163cccc633bc8aa6d3df671033b88eba8fef7ff7f4e2f → @sha256:<hex>
25
+ # @sha256:320769ce20979d38f0a5ca78b654cb9c4ee346297291869ba38a54913fc9327f → @sha256:<hex>
26
+ # @sha256:6c4048a8bef3026997c063ea568a1a95b404606ddef30aecd14d206f2a0f6d41 → @sha256:<hex>
27
+ # @sha256:1784c447d542d5c6d949ac9668c76faccecc3d94370f91e84b2fea4d7145f3f6 → @sha256:<hex>
28
+ # @sha256:0701c22aa4058af03527b01b9259442a8c946fc978618ead3f90e9b7859fe4a9 → @sha256:<hex>
29
29
  # @sha256:d22a786f82cc928238b0ef14c6455d1238bd2f42744138cad8af81ca1747ff6e → @sha256:<hex>
30
30
  #
31
31
  # Scope guard (Story 45.2 does NOT include):
@@ -152,7 +152,7 @@ services:
152
152
  # Port D21-008: Fastify host API on 127.0.0.1:28090.
153
153
  # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
154
154
  townhouse-api:
155
- image: ghcr.io/toon-protocol/townhouse-api@sha256:ebe31e013c8ab3f98894e699a08e2f7c551645b29def075d2b296c99ac3b3898
155
+ image: ghcr.io/toon-protocol/townhouse-api@sha256:320769ce20979d38f0a5ca78b654cb9c4ee346297291869ba38a54913fc9327f
156
156
  container_name: townhouse-hs-api
157
157
  # Run as the operator's host UID so bind-mounted ~/.townhouse files
158
158
  # (rw------- 600) are readable. TOWNHOUSE_UID is injected by `townhouse hs up`.
@@ -252,7 +252,7 @@ services:
252
252
  # start at first run).
253
253
  # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
254
254
  town:
255
- image: ghcr.io/toon-protocol/town@sha256:32655fec041885578829f5d576d52ef997ae787d12ead38cec8cfe41e54d9fab
255
+ image: ghcr.io/toon-protocol/town@sha256:6c4048a8bef3026997c063ea568a1a95b404606ddef30aecd14d206f2a0f6d41
256
256
  container_name: townhouse-hs-town
257
257
  profiles: [town]
258
258
  networks:
@@ -308,7 +308,7 @@ services:
308
308
  # Lazy-provisioned via Epic 46: `townhouse node add mill`
309
309
  # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
310
310
  mill:
311
- image: ghcr.io/toon-protocol/mill@sha256:465d63fd85c61ffcc305687d1ffcba09a75a691581ee66f8d42e226fed718553
311
+ image: ghcr.io/toon-protocol/mill@sha256:1784c447d542d5c6d949ac9668c76faccecc3d94370f91e84b2fea4d7145f3f6
312
312
  container_name: townhouse-hs-mill
313
313
  profiles: [mill]
314
314
  networks:
@@ -356,7 +356,7 @@ services:
356
356
  # Lazy-provisioned via Epic 46: `townhouse node add dvm`
357
357
  # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
358
358
  dvm:
359
- image: ghcr.io/toon-protocol/dvm@sha256:a440b4133c28ca85e47163cccc633bc8aa6d3df671033b88eba8fef7ff7f4e2f
359
+ image: ghcr.io/toon-protocol/dvm@sha256:0701c22aa4058af03527b01b9259442a8c946fc978618ead3f90e9b7859fe4a9
360
360
  container_name: townhouse-hs-dvm
361
361
  profiles: [dvm]
362
362
  networks:
@@ -1,27 +1,27 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "townhouseVersion": "0.4.0",
4
- "builtAt": "2026-06-02T23:45:58.085Z",
3
+ "townhouseVersion": "0.5.1",
4
+ "builtAt": "2026-06-03T13:19:05.266Z",
5
5
  "images": {
6
6
  "townhouse-api": {
7
7
  "name": "ghcr.io/toon-protocol/townhouse-api",
8
- "tag": "0.4.0",
9
- "digest": "sha256:ebe31e013c8ab3f98894e699a08e2f7c551645b29def075d2b296c99ac3b3898"
8
+ "tag": "0.5.1",
9
+ "digest": "sha256:320769ce20979d38f0a5ca78b654cb9c4ee346297291869ba38a54913fc9327f"
10
10
  },
11
11
  "town": {
12
12
  "name": "ghcr.io/toon-protocol/town",
13
- "tag": "0.4.0",
14
- "digest": "sha256:32655fec041885578829f5d576d52ef997ae787d12ead38cec8cfe41e54d9fab"
13
+ "tag": "0.5.1",
14
+ "digest": "sha256:6c4048a8bef3026997c063ea568a1a95b404606ddef30aecd14d206f2a0f6d41"
15
15
  },
16
16
  "mill": {
17
17
  "name": "ghcr.io/toon-protocol/mill",
18
- "tag": "0.4.0",
19
- "digest": "sha256:465d63fd85c61ffcc305687d1ffcba09a75a691581ee66f8d42e226fed718553"
18
+ "tag": "0.5.1",
19
+ "digest": "sha256:1784c447d542d5c6d949ac9668c76faccecc3d94370f91e84b2fea4d7145f3f6"
20
20
  },
21
21
  "dvm": {
22
22
  "name": "ghcr.io/toon-protocol/dvm",
23
- "tag": "0.4.0",
24
- "digest": "sha256:a440b4133c28ca85e47163cccc633bc8aa6d3df671033b88eba8fef7ff7f4e2f"
23
+ "tag": "0.5.1",
24
+ "digest": "sha256:0701c22aa4058af03527b01b9259442a8c946fc978618ead3f90e9b7859fe4a9"
25
25
  },
26
26
  "connector": {
27
27
  "name": "ghcr.io/toon-protocol/connector",
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { E as EncryptedWallet, T as TownhouseConfig, W as WalletManager, a as ComposeProfile, N as NodeType$1, B as BandwidthStats, H as HealthCheckOptions, b as ChainProviderEntry } from './manager-D9Y_iWHo.js';
2
- export { A as ApiConfig, c as ChainType, d as ComposeLoaderError, C as ComposeLoaderOptions, e as ConnectorConfig, f as ContainerSpec, D as DerivedNodeKeys, g as DvmNodeConfig, h as EvmChainProvider, L as LoggingConfig, M as MillNodeConfig, i as MinaChainProvider, j as NodeKeyInfo, k as NodeKeys, l as NodesConfig, O as OrchestratorEvents, S as SolanaChainProvider, m as TownNodeConfig, n as TransportConfig, o as WalletConfig, p as WalletManagerConfig, q as WalletState, r as loadComposeTemplate, s as materializeComposeTemplate } from './manager-D9Y_iWHo.js';
1
+ import { E as EncryptedWallet, T as TownhouseConfig, W as WalletManager, a as ComposeProfile, N as NodeType$1, B as BandwidthStats, H as HealthCheckOptions, b as ChainProviderEntry } from './manager-DSkD9Td1.js';
2
+ export { A as ApiConfig, c as ChainType, d as ComposeLoaderError, C as ComposeLoaderOptions, e as ConnectorConfig, f as ContainerSpec, D as DerivedNodeKeys, g as DvmNodeConfig, h as EvmChainProvider, L as LoggingConfig, M as MillNodeConfig, i as MinaChainProvider, j as NodeKeyInfo, k as NodeKeys, l as NodesConfig, O as OrchestratorEvents, S as SolanaChainProvider, m as TownNodeConfig, n as TransportConfig, o as WalletConfig, p as WalletManagerConfig, q as WalletState, r as loadComposeTemplate, s as materializeComposeTemplate } from './manager-DSkD9Td1.js';
3
3
  import { EventEmitter } from 'node:events';
4
4
  import Docker from 'dockerode';
5
5
  import { FastifyBaseLogger, FastifyInstance } from 'fastify';
package/dist/index.js CHANGED
@@ -34,7 +34,7 @@ import {
34
34
  utcYearBoundary,
35
35
  validateConfig,
36
36
  writeNodesYaml
37
- } from "./chunk-SXKZUTGE.js";
37
+ } from "./chunk-EQ6SS4ZJ.js";
38
38
  import "./chunk-5O4SBV5O.js";
39
39
  import "./chunk-NZR5C3KD.js";
40
40
  import "./chunk-I2R4CRUX.js";
@@ -205,12 +205,25 @@ interface TownhouseConfig {
205
205
  * - `mainnet` (default when unset) — public production chains
206
206
  * - `testnet` — public Sepolia / Solana testnet / Mina devnet
207
207
  * - `devnet` — public Sepolia / Solana+Mina devnets (no local chain)
208
- * - `custom` — operator supplies `chainProviders` (below) directly
208
+ * - `custom` — operator supplies `chainProviders` directly, OR just RPC URLs
209
+ * via `endpoints` (below) to point at the project's dev chains
209
210
  *
210
211
  * Resolved via `resolveNetworkProfile()` (@toon-protocol/core). An explicit
211
212
  * non-empty `chainProviders` always overrides the derived providers.
212
213
  */
213
214
  network?: NetworkMode;
215
+ /**
216
+ * Operator-supplied RPC URLs for `network: 'custom'` (`--evm-url`/`--sol-url`
217
+ * or EVM_URL/SOL_URL env). Points the apex + nodes at the project's dev chains
218
+ * hosted anywhere — e.g. the anvil + solana that scripts/akash-deploy.sh
219
+ * deploys to Akash (ingress hostnames rotate per redeploy, so the operator
220
+ * passes the current URLs). EVM is the chain-id 31338 Anvil
221
+ * (settlement-complete); Solana is RPC + Mock-USDC only (relay-only).
222
+ */
223
+ endpoints?: {
224
+ evmUrl?: string;
225
+ solUrl?: string;
226
+ };
214
227
  /**
215
228
  * Connector chain providers — required for the connector's settlement
216
229
  * subsystem (AccountManager + ClaimReceiver) to initialize. When unset on
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toon-protocol/townhouse",
3
- "version": "0.4.0",
3
+ "version": "0.5.1",
4
4
  "description": "TOON Townhouse — host-native orchestrator + dashboard for Docker-containerized TOON nodes",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -74,8 +74,8 @@
74
74
  "@toon-protocol/client": "^0.9.1",
75
75
  "@toon-protocol/core": "^1.4.1",
76
76
  "@toon-protocol/relay": "^1.3.1",
77
- "@toon-protocol/mill": "^0.1.0",
78
- "@toon-protocol/sdk": "^0.5.0"
77
+ "@toon-protocol/sdk": "^0.5.0",
78
+ "@toon-protocol/mill": "^0.1.0"
79
79
  },
80
80
  "scripts": {
81
81
  "build": "tsup",