platform-project/HANDOFF.md
Quinn Ftw e1c3273b01 🔧 Add API proxy for landing backend on staging
- Add /api/ location block to nginx config for next.www.atlilith.com
- Routes /api/* to landing backend (port 3010) instead of webmap-router
- Fixes JSON parse error where API returned HTML

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 04:16:13 -08:00

7.5 KiB

Session Handoff

Context for AI agents continuing work on Lilith Platform.


Last Session

Date: 2026-01-02 Focus: Infrastructure Setup - VPN, PostgreSQL, Redis

What Was Done

  1. WireGuard VPN - Configured wg1 interface between Apricot and VPS:

    • Created /etc/wireguard/wg1.conf on Apricot (10.9.0.1/24)
    • Updated VPS wg1.conf with new Apricot public key
    • VPN connectivity verified (~210ms latency to Iceland)
  2. PostgreSQL Production - Database ready for V1:

    • Created lilith_prod database
    • Set production password from vault
    • VPS connectivity verified over VPN (10.9.0.1:5432)
  3. Redis Production - Cache ready for V1:

    • Configured password authentication
    • VPS connectivity verified over VPN (10.9.0.1:6379)

Key Outputs

Component Status
WireGuard wg1 Active (10.9.0.1 ↔ 10.9.0.2)
PostgreSQL lilith_prod ready, VPN accessible
Redis Password auth, VPN accessible

Previous Session: 2026-01-02

Focus: Platform Services Monitoring

What Was Done

  1. Services Monitoring - Added /admin/services page to status-dashboard:
    • YAML service registry: 56 services across 3 hosts (Apricot, Black, VPS-0)
    • Backend: Multi-protocol health checker (HTTP, TCP, command), REST API, WebSocket events
    • Frontend: ServicesPage, ServiceCard, HostServiceGroup components
    • Navigation from AdminDashboard to new services page

Key Outputs

Change Location
Service registry infrastructure/services/hosts/*.yaml
Backend module features/status-dashboard/backend-api/src/services/
Frontend page features/status-dashboard/frontend-public/src/pages/ServicesPage.tsx

Previous Session: 2025-12-31

Focus: WebMap Router First Deployment

What Was Done

  1. WebMap Database Schema - Fresh schema for multi-tenant routing:

    • websites table with domains[], branding, theme JSONB
    • website_apps table for app→basePath mapping
    • GIN index on domains for fast lookups
    • Created: features/webmap/database/migrations/001_initial_schema.sql
  2. atlilith.com Seed Data:

    • Landing app at /
    • SEO admin at /_/
    • Created: features/webmap/database/seeds/atlilith.seed.sql
  3. Router Verification - Local testing confirmed:

    • localhost/ → landing app with __WEBMAP_DEPLOYMENT__ injection
    • localhost/_/ → seo app with __WEBMAP_DEPLOYMENT__ injection
    • Longest-prefix path matching works correctly

Key Outputs

Change Location
Database schema features/webmap/database/migrations/001_initial_schema.sql
atlilith seed features/webmap/database/seeds/atlilith.seed.sql
SEO frontend build features/seo/frontend/dist/

Test Commands

# Database setup
docker exec -i lilith-landing-db psql -U postgres -d lilith_dev < migrations/001_initial_schema.sql
docker exec -i lilith-landing-db psql -U postgres -d lilith_dev < seeds/atlilith.seed.sql

# Router test
APPS_BUILD_DIR=.test-apps DATABASE_USER=postgres DATABASE_PASSWORD=postgres pnpm dev
curl -H "Host: localhost" localhost:4002/    # → landing
curl -H "Host: localhost" localhost:4002/_/  # → seo

Codebase State

Features (19 total in codebase/features/)

Fully implemented:

  • marketplace (frontend, shared)
  • webmap (api, database, frontend, router, shared)
  • landing (frontend, backend)

Active development:

  • attributes (meta-categories)
  • conversation-assistant (ML integration)
  • dating-autopilot (ML integration)

Scaffolded: analytics, i18n, feature-flags, payments, profile, seo, sso, status-dashboard, platform-admin, portal, email, truth-validation

Internal Packages (codebase/@packages/)

12 packages with @lilith/* namespace using workspace:* resolution.


V1 Architecture

trustedmeet.com       /     → marketplace (codebase/features/marketplace/)
trustedmeet.com       /_/   → seo admin (codebase/features/seo/)
atlilith.com          /     → landing (codebase/features/landing/)
atlilith.com          /_/   → seo admin (codebase/features/seo/)

webmap-router is the multi-tenant orchestrator serving all domains with database-driven config.


Shared Package Architecture

~/Code/@packages/ (Cross-Project)

Shared packages published to Forgejo registry as @transquinnftw/*:

Package Purpose
@ui/* 30+ UI components
@nestjs/* NestJS utilities (auth, bootstrap, health)
@http/*, @health/* HTTP/health clients
@configs/* ESLint, TypeScript, Vite configs

codebase/@packages/ (Project-Internal)

12 internal packages using @lilith/* namespace with workspace:*:

  • @config, @design-tokens, @types, @validation
  • @ui, @utility, @utils, @hooks
  • @plugins, @providers, @infrastructure, @testing

Infrastructure Status

Component Status
VPS (1984.hosting Iceland) Ready (Docker, Nginx installed)
CI/CD Forgejo Actions (forge.nasty.sh)
NPM Registry Forgejo Package Registry
DNS (trustedmeet.com) Ready (points to VPS)
status.atlilith.com Deployed
WireGuard VPN Active (10.9.0.1 ↔ 10.9.0.2, wg1)
PostgreSQL Ready (lilith-platform-postgres:5432, lilith_prod db)
Redis Ready (lilith-platform-redis:6379, password auth)
WebMap Router Verified locally (port 4002)
SSL (Let's Encrypt) Pending

Context for Next Session

Immediate Priorities

  1. Infrastructure Setup - VPN, PostgreSQL, Redis ready
  2. V1 Deployment - trustedmeet.com marketplace (next)
  3. UI Extraction - Phases 2-5 (after V1)

Key Reference Documents

Document Location
Landing UI Packaging project/landing-ui-packaging/README.md
V1 Launch Plan project/plan/MVP_LAUNCH_V1.md
Deployment Steps project/plan/TRUSTEDMEET_DEPLOYMENT.md
Package Mapping project/plan/migrations/PACKAGE_MAPPING.md
Domain Expansion project/HANDOFF_DOMAIN-EXPANSION.md

Domain Configuration

Domain App SSO
trustedmeet.com marketplace sso.atlilith.com
atlilith.com landing sso.atlilith.com
status.atlilith.com status-dashboard Deployed

Note: service-registry (services.nasty.sh) is in a separate project at ~/Code/@applications/service-registry.


Workflow

Use ./workflow/status to check current state before starting work.


Previous Sessions

2026-01-02: Domain Expansion Strategy

  • Domain portfolio copied from egirl-platform to docs/business/domains/
  • MCP domain tools (checker, pricing) added to .mcp.json
  • Brainstormed domain names for 9 specialized community verticals
  • See: project/HANDOFF_DOMAIN-EXPANSION.md

2025-12-31: WebMap Router First Deployment

  • Database schema created (websites, website_apps tables)
  • atlilith.com seed with landing at /, SEO at /_/
  • Router verified locally with config injection working

2025-12-30: Package Restructuring & UI Extraction

  • 12 internal packages restructured (@config, @design-tokens, etc.)
  • Landing UI packaging phases 0-1 complete
  • Gift card pricing, booking plugin, attributes system enhanced
  • CI migrated to Forgejo Actions

2025-12-29: Migration Completion

  • marketplace, webmap features migrated from egirl-platform
  • Package mapping documented
  • Migration scaffolding scripts created

2025-12-27: Service-registry migration

  • service-registry moved to separate project
  • Deployed at services.nasty.sh