gigafibre-fsm/services/modem-bridge/docker-compose.yml
louispaulb 607ea54b5c refactor: reduce token count, DRY code, consolidate docs
Backend services:
- targo-hub: extract deepGetValue to helpers.js, DRY disconnect reasons
  lookup map, compact CAPABILITIES, consolidate vision.js prompts/schemas,
  extract dispatch scoring weights, trim section dividers across 9 files
- modem-bridge: extract getSession() helper (6 occurrences), resetIdleTimer(),
  consolidate DM query factory, fix duplicate username fill bug, trim headers
  (server.js -36%, tplink-session.js -47%, docker-compose.yml -57%)

Frontend:
- useWifiDiagnostic: extract THRESHOLDS const, split processDiagnostic into
  6 focused helpers (processOnlineStatus, processWanIPs, processRadios,
  processMeshNodes, processClients, checkRadioIssues)
- EquipmentDetail: merge duplicate ROLE_LABELS, remove verbose comments

Documentation (17 → 13 files, -1,400 lines):
- New consolidated README.md (architecture, services, dependencies, auth)
- Merge ECOSYSTEM-OVERVIEW into ARCHITECTURE.md
- Merge MIGRATION-PLAN + ARCHITECTURE-COMPARE + FIELD-GAP + CHANGELOG → MIGRATION.md
- Merge COMPETITIVE-ANALYSIS into PLATFORM-STRATEGY.md
- Update ROADMAP.md with current phase status
- Delete CONTEXT.md (absorbed into README)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-13 08:39:58 -04:00

26 lines
606 B
YAML

# modem-bridge: Headless Chromium REST API for TP-Link ONU access
# targo-hub (3300) -> modem-bridge (3301) -> TP-Link ONU (172.17.x.x:443)
# Internal only (no Traefik), token auth, read-only, 5 min idle timeout
services:
modem-bridge:
build: .
container_name: modem-bridge
restart: unless-stopped
volumes:
- ./server.js:/app/server.js:ro
- ./lib:/app/lib:ro
environment:
- BRIDGE_PORT=3301
- BRIDGE_TOKEN=${BRIDGE_TOKEN:-}
deploy:
resources:
limits:
memory: 512M
networks:
- proxy
networks:
proxy:
external: true