Commit graph

8 commits

Author SHA1 Message Date
Paperclip FoundingEngineer
b9e5262b85 feat(web): Add monitoring dashboard with Prometheus metrics visualization (BARAAA-98)
Implemented Phase 2 of AgentHub dashboard (BARAAA-53):

- Dashboard page with 8 real-time metric panels:
  * Agents connected (WebSocket gauge)
  * Active rooms, total messages
  * System uptime, HTTP requests, memory usage
  * WebSocket latency (p50/p99)
- Auto-refresh every 5s from /metrics Prometheus endpoint
- Prometheus text format parser
- Dashboard set as default view in navigation

Infrastructure:
- Multi-stage Dockerfile for web app (nginx runtime)
- Added web service to compose.coolify.yml
- Domain: dashboard.barodine.net
- Health checks, SSL via Traefik/Let's Encrypt

Documentation:
- Updated web/README.md with deployment instructions
- Added BARAAA-98-VERIFICATION.md

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-03 00:36:14 +00:00
Paperclip FoundingEngineer
2044e85f54 chore(deploy): Remove temporary postgres port exposure
Some checks are pending
CI / lint + typecheck + tests (push) Waiting to run
CI / docker build + push (push) Blocked by required conditions
Port 15432:5432 was added for diagnosis during BARAAA-64. Now that DB
connection is working (POSTGRES_HOST=10.0.9.4) and migrations are
applied, removing the temporary port exposure.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-05-02 22:14:22 +00:00
Paperclip FoundingEngineer
ac002580b1 fix(deploy): correct entrypoint paths and domain for v2 deployment
Some checks are pending
CI / lint + typecheck + tests (push) Waiting to run
CI / docker build + push (push) Blocked by required conditions
- Fix entrypoint.sh to use dist/src/server.js (matches TypeScript rootDir structure)
- Update compose.coolify.yml domain to agenthub-v2.barodine.net (matches BARAAA-65 spec)
- Update CORS default origin to match new domain

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-05-02 12:08:02 +00:00
Paperclip FoundingEngineer
c84de0f4f4 fix(agenthub): Compile migrations and expose postgres port for diagnosis
Some checks are pending
CI / lint + typecheck + tests (push) Waiting to run
CI / docker build + push (push) Blocked by required conditions
Fixes BARAAA-64 DB migration and auth issues:

- Update tsconfig.build.json to compile scripts/migrate.ts (was excluded)
- Create entrypoint.sh to run migrations before server start
- Update Dockerfile to build migrate.ts and use migration entrypoint
- Expose postgres port 15432 temporarily for password diagnosis

This ensures tables are created before app starts and allows connecting
to postgres from host to diagnose 28P01 auth errors.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-02 10:41:21 +00:00
7ece5367a4 fix(compose): rename postgres volume to force fresh init with current password
Some checks are pending
CI / lint + typecheck + tests (push) Waiting to run
CI / docker build + push (push) Blocked by required conditions
The existing postgres_data volume was initialized with a stale/mismatched password.
Renaming to postgres_data_v2 forces postgres to reinitialize with the current
POSTGRES_PASSWORD env var, resolving the 28P01 auth failure.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-02 10:33:33 +00:00
1ed91f715b fix(compose): add traefik.docker.network=coolify label for correct container routing
Some checks are pending
CI / lint + typecheck + tests (push) Waiting to run
CI / docker build + push (push) Blocked by required conditions
When a container is on multiple networks, Traefik needs explicit instruction
on which network to use for proxying. Without this label, Traefik may pick
the wrong IP (from the compose default network) and fail to route traffic.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-02 10:24:57 +00:00
df9f359c83 fix(compose): connect app to coolify network so Traefik can route traffic
Some checks are pending
CI / lint + typecheck + tests (push) Waiting to run
CI / docker build + push (push) Blocked by required conditions
Coolify's Traefik is on the 'coolify' Docker network. Docker Compose projects
create their own default network, so Traefik can't reach the app container.
Fix: declare coolify as an external network and attach the app service to it.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-02 10:17:41 +00:00
Paperclip FoundingEngineer
bdd5d92ba7 Initial AgentHub codebase for Coolify deployment
Complete implementation ready for Coolify:
- Node.js 22 + Fastify + socket.io backend
- PostgreSQL 16 + Redis 7 services
- Docker Compose configuration
- Deployment scripts and documentation

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-01 21:25:57 +00:00