diff --git a/docs/package.json b/docs/package.json index 4e13a4737..339126ea8 100644 --- a/docs/package.json +++ b/docs/package.json @@ -25,7 +25,7 @@ "@hugomrdias/docs": "^0.2.0", "@types/react": "catalog:", "@types/react-dom": "catalog:", - "astro": "^6.1.6", + "astro": "^6.4.2", "astro-mermaid": "^2.0.1", "expressive-code-twoslash": "^0.6.1", "mermaid": "^11.12.2", diff --git a/packages/synapse-core/src/devnet/schema.ts b/packages/synapse-core/src/devnet/schema.ts index 7c1e56610..3b64fbb21 100644 --- a/packages/synapse-core/src/devnet/schema.ts +++ b/packages/synapse-core/src/devnet/schema.ts @@ -17,6 +17,11 @@ const YugabyteInfo = z.object({ ysql_port: z.number().int().positive(), }) +const DatabaseInfo = z.object({ + postgres_port: z.number().int().positive(), + scylla_port: z.number().int().positive(), +}) + const CurioInfo = z.object({ provider_id: z.number().int().positive(), eth_addr: z.string().startsWith('0x'), @@ -26,7 +31,10 @@ const CurioInfo = z.object({ container_name: z.string().min(1), is_approved: z.boolean(), is_endorsed: z.boolean(), - yugabyte: YugabyteInfo, + // Transitional: older foc-devnet exports a `yugabyte` block, newer ones a + // `database` block (Postgres + Scylla). Accept either; the SDK reads neither. + yugabyte: YugabyteInfo.optional(), + database: DatabaseInfo.optional(), }) const ContractsInfo = z.object({ @@ -75,7 +83,8 @@ const DevnetInfoV1 = z.object({ }) export const VersionedDevnetInfo = z.object({ - version: z.literal(1), + // 1 = yugabyte-era exports, 2 = postgres+scylla-era (`database` block) + version: z.union([z.literal(1), z.literal(2)]), info: DevnetInfoV1, }) diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 2fee726cb..d51d75035 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -44,6 +44,9 @@ minimumReleaseAgeExclude: # Remove after 2026-06-08 when both age out. - viem@2.52.0 - ox@0.14.27 + # astro 6.4.2 fixes MDX/Starlight compatibility after 6.4.0. + # Remove after 2026-06-05 when it ages out. + - astro@6.4.2 trustPolicy: no-downgrade