From 56b70ac54cd4501a0785c926b02e25c119622f25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Guti=C3=A9rrez?= <35082514+alezmad@users.noreply.github.com> Date: Sat, 4 Apr 2026 21:48:57 +0100 Subject: [PATCH] =?UTF-8?q?fix(broker):=20default=20port=207899=20?= =?UTF-8?q?=E2=86=92=207900=20to=20avoid=20collision=20with=20claude-inter?= =?UTF-8?q?com=20dev?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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) --- apps/broker/README.md | 2 +- apps/broker/src/env.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/broker/README.md b/apps/broker/README.md index c68a124..1161705 100644 --- a/apps/broker/README.md +++ b/apps/broker/README.md @@ -23,7 +23,7 @@ pnpm --filter=@claudemesh/broker start # production | 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) | | `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 | diff --git a/apps/broker/src/env.ts b/apps/broker/src/env.ts index cd4c0d3..0440533 100644 --- a/apps/broker/src/env.ts +++ b/apps/broker/src/env.ts @@ -9,7 +9,7 @@ import { z } from "zod"; * without a .env file. */ 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"), STATUS_TTL_SECONDS: z.coerce.number().int().positive().default(60), HOOK_FRESH_WINDOW_SECONDS: z.coerce.number().int().positive().default(30),