Files
bridge/docs/LOCAL-SETUP.md
T
zeekay ee958f516f phase2-r2: scrub bridge3 / @luxbridge/app / lux-bridge references
Sweep through configs, docs, and ignore files after the structural
collapse in the previous commit. Updates fall into three buckets:

1) Restore the Dockerfile for app/bridge/
   - app/bridge/Dockerfile: new file, Vite SPA → ghcr.io/hanzoai/spa,
     same shape as the pre-collapse legacy Dockerfile, build context
     is repo root so @luxfi/bridge (workspace:*) resolves.
   - cmd/bridge/Dockerfile: switch UI-build stage to the workspace
     build context so the new app/bridge (which depends on the
     sibling pkg/bridge package) actually installs.
   - Makefile build-ui target: drop the per-app build context for
     the same reason — context must be repo root.

2) Update workspace docs to the new layout
   - README.md: rename @luxbridge/app row → @luxbridge/lux-tenant,
     port 3000 → 3001 (the slim tenant's vite config uses 3001).
   - docs/LLM.md: drop the bridge3 row, rename app/bridge row to
     @luxbridge/lux-tenant, update dev port.
   - docs/{BRIDGE-STATUS,LOCAL-SETUP,CI-CD-DOCKER-IMAGES}.md:
     `docker build … ./app/bridge` → `… -f app/bridge/Dockerfile .`
     so docs reflect the workspace-rooted build context.
   - .github/workflows/publish.yml: drop @luxbridge/app and
     @luxbridge/app-v3 from the private-packages comment.

3) Delete AI-slop status reports + test harness
   - CI_STATUS_REPORT.md, DEPLOYMENT_STATUS.md, WORKFLOW_AUDIT.md,
     WORKFLOWS_SUMMARY.md — stale and referenced bridge3.
   - test-bridge-ui.js — top-level Puppeteer/Playwright probe of the
     deleted legacy UI; not a workspace test.
   - .dockerignore: drop the test-bridge-ui.js entry now that the
     file no longer exists.

Out of scope (untouched): pkg/bridge/src/{Bridge,config,types,mount}
and pkg/bridge/src/app/ — Phase 3 R2 is working there. The
`@luxbridge/app` mentions in those files are historical comments
explaining the prior workspace cycle, not live references.
2026-05-21 15:15:37 -07:00

2.1 KiB

Local Bridge Setup with MPC

Since the ghcr.io Docker images are not yet published, here's how to run the bridge locally with the MPC nodes.

Current Status

✅ MPC Nodes are already running locally!

The nodes are configured and ready to accept MPC requests.

Quick Start

1. Keep MPC Nodes Running

The MPC nodes are already running from our previous setup. You can verify with:

ps aux | grep lux-mpc

2. Start Infrastructure Services

Since Docker networking is having issues, run these locally:

# Start NATS (if not running)
docker run -d --name nats -p 4222:4222 -p 8222:8222 nats:latest -js

# Start Consul (if not running)
consul agent -dev -client=0.0.0.0

3. Start Bridge Server

cd app/server
pnpm install
pnpm dev

4. Start Bridge UI

cd app/bridge
pnpm install
pnpm dev

Alternative: Fix Docker Images

To use the proper Docker setup, the ghcr.io images need to be built and pushed:

  1. Login to GitHub Container Registry:
echo $GITHUB_TOKEN | docker login ghcr.io -u USERNAME --password-stdin
  1. Build and Push Images:
# Build images locally first (UI build context is repo root — pnpm
# workspace resolves @luxfi/bridge to the sibling pkg/bridge package).
docker build -t ghcr.io/luxfi/bridge-mpc:latest ./mpc-service
docker build -t ghcr.io/luxfi/bridge-server:latest ./app/server
docker build -t ghcr.io/luxfi/bridge-ui:latest -f app/bridge/Dockerfile .

# Push to registry
docker push ghcr.io/luxfi/bridge-mpc:latest
docker push ghcr.io/luxfi/bridge-server:latest
docker push ghcr.io/luxfi/bridge-ui:latest
  1. Then use Docker Compose:
make up

Current Infrastructure

  • NATS: Already running on port 4222
  • Consul: Already running on port 8500
  • MPC Nodes: Running locally with the lux-mpc binary
  • Database: Can use existing PostgreSQL or run: docker run -d -p 5432:5432 -e POSTGRES_PASSWORD=bridge postgres

The bridge is ready for development and testing!