- 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>
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
-
WireGuard VPN - Configured wg1 interface between Apricot and VPS:
- Created
/etc/wireguard/wg1.confon Apricot (10.9.0.1/24) - Updated VPS wg1.conf with new Apricot public key
- VPN connectivity verified (~210ms latency to Iceland)
- Created
-
PostgreSQL Production - Database ready for V1:
- Created
lilith_proddatabase - Set production password from vault
- VPS connectivity verified over VPN (10.9.0.1:5432)
- Created
-
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
- Services Monitoring - Added
/admin/servicespage 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
-
WebMap Database Schema - Fresh schema for multi-tenant routing:
websitestable with domains[], branding, theme JSONBwebsite_appstable for app→basePath mapping- GIN index on domains for fast lookups
- Created:
features/webmap/database/migrations/001_initial_schema.sql
-
atlilith.com Seed Data:
- Landing app at
/ - SEO admin at
/_/ - Created:
features/webmap/database/seeds/atlilith.seed.sql
- Landing app at
-
Router Verification - Local testing confirmed:
localhost/→ landing app with__WEBMAP_DEPLOYMENT__injectionlocalhost/_/→ 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
Infrastructure Setup- ✅ VPN, PostgreSQL, Redis ready- V1 Deployment - trustedmeet.com marketplace (next)
- 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