fix(broker): default port 7899 → 7900 to avoid collision with claude-intercom dev

Port 7899 is used by claude-intercom's broker on dev machines (it's
the convention for that tool). claudemesh is a distinct product and
should have its own default port. 7900 is unreserved and unconflicted.

Prod deploys override via BROKER_PORT env var, so this only affects
local dev ergonomics.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Alejandro Gutiérrez
2026-04-04 21:48:57 +01:00
parent beeaa3b3c6
commit 56b70ac54c
2 changed files with 2 additions and 2 deletions

View File

@@ -23,7 +23,7 @@ pnpm --filter=@claudemesh/broker start # production
| Var | Default | Purpose | | Var | Default | Purpose |
| ---------------------------- | ------- | --------------------------------------------------- | | ---------------------------- | ------- | --------------------------------------------------- |
| `BROKER_PORT` | `7899` | Single port for HTTP routes + WebSocket upgrade | | `BROKER_PORT` | `7900` | Single port for HTTP routes + WebSocket upgrade |
| `DATABASE_URL` | — | Postgres connection string (shared with apps/web) | | `DATABASE_URL` | — | Postgres connection string (shared with apps/web) |
| `STATUS_TTL_SECONDS` | `60` | Flip stuck-"working" peers to idle after this TTL | | `STATUS_TTL_SECONDS` | `60` | Flip stuck-"working" peers to idle after this TTL |
| `HOOK_FRESH_WINDOW_SECONDS` | `30` | How long a hook signal beats JSONL inference | | `HOOK_FRESH_WINDOW_SECONDS` | `30` | How long a hook signal beats JSONL inference |

View File

@@ -9,7 +9,7 @@ import { z } from "zod";
* without a .env file. * without a .env file.
*/ */
const envSchema = z.object({ const envSchema = z.object({
BROKER_PORT: z.coerce.number().int().positive().default(7899), BROKER_PORT: z.coerce.number().int().positive().default(7900),
DATABASE_URL: z.string().min(1, "DATABASE_URL is required"), DATABASE_URL: z.string().min(1, "DATABASE_URL is required"),
STATUS_TTL_SECONDS: z.coerce.number().int().positive().default(60), STATUS_TTL_SECONDS: z.coerce.number().int().positive().default(60),
HOOK_FRESH_WINDOW_SECONDS: z.coerce.number().int().positive().default(30), HOOK_FRESH_WINDOW_SECONDS: z.coerce.number().int().positive().default(30),