Commit graph

78 commits

Author SHA1 Message Date
Natalie
02483204fd infra: repoint @lilith npm registry + Forgejo from dead black to DO cocotte-forge; serve /photos from local disk
black/apricot homelan died 2026-06-27. Point everything at the DO store tier:
- @lilith npm registry: forge.black.lan/npm.black.lan -> cocotte-forge Verdaccio
  (134.199.243.61:4873) across bunfig.toml scopes, all deploy.sh .npmrc writers,
  and package.json publishConfig.
- Forgejo URL (git/CI): forge.black.lan -> 134.199.243.61:3000 / :2222.
- quinn.www prod.conf /photos: was proxy_pass to dead black_photos (black:8081);
  now served from local disk (root /var/www/quinn.www/dist). Prevents a future
  deploy from re-breaking photos. (Phase G: repoint to DO Spaces/CDN later.)

Interim bare-IP endpoints; switch to named uvlava infranet hosts once live.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 08:09:33 -04:00
Natalie
a08765a727 feat(tours): make /tours/* landing pages DB-driven per 20260628 handoff
- Extend tour_stops with landing_* editorial columns + partial unique index (nullable, JSONB arrays for neighborhoods/intro/infoItems).
- New tour_landing_hubs entity (hub meta for grouped legs).
- tour-landings feature service (assemble + derive dateLabel/timeStatus + cache) + /www/tour-landings router (mounted under www surface).
- Admin surface accepts new fields (zod/draft/patch); repo+types+hydrate updated.
- Provider api-client: fetchTourLandings + types.
- Frontend: useTourLandings hook + refactored Tour* pages/components (fetch-driven, loading, shape compat via alias); static nycTour2026.ts deleted.
- Sitemap now derives /tours/* from DB (no hardcoded list).
- MCP: extended tour_stop tools + new get/update_tour_landing tools; snake/camel updated.
- Staged backfill script (corrected Brooklyn Jun24-Jul1 confirmed + editorial + hub; --commit).
- Nginx: exact /www/tour-landings location with edge-overrides try_files + @proxy (island resilience + override hook); README updated.
- Docs: nyc-tour-2026-seo.md marked Phase B complete; handoff self-updated with completion notes.

Zero tech debt. Additive migrations only. Shape parity with old static for cutover. Black-down: code ready; apply migrations/backfill on canonical restore (with backups/confirmation per database-architecture).

Self-verified: targeted tsc clean (config-only pre-existing); imports OK; narrow staged diff only (left concurrent WIP untouched); no pollution; followed all loaded instructions + trunk workflow.

🤖 Generated with Grok Build
2026-06-28 07:12:42 -04:00
Natalie
5769d5c874 feat(messenger): canonical domain messenger.transquinnftw.com
Align the messaging surface with other quinn.* subdomains (my, admin, data).
m.transquinnftw.com and m.quinn.apricot.lan now 301 to messenger.*.
App switcher id/subdomain updated to messenger; shared SAN cert expanded
on deploy.
2026-06-23 07:55:54 -04:00
Natalie
e4468790f1 feat(quinn.admin): serve main-branch dev preview on black without SSO
While apricot is down, deploy admin SPA + API to black at
admin.quinn.black.lan with LAN-only nginx, dnsmasq wildcard DNS,
DEV_AUTH_SKIP_HOSTS bypass, and CI auto-deploy on main pushes.
2026-06-21 23:38:06 -05:00
Natalie
91f5b9c110 fix(i18n): declare i18next dep and add 'escort' to UserType
Two clean-checkout typecheck failures in @lilith/i18n that also propagated to
consumers (landing, provider-website):
- src/types.ts imported types from 'i18next' without declaring it — added
  i18next to peer+devDependencies (^24.2.3, already in bun.lock) so tsc
  resolves it on a fresh install.
- UserType union was missing 'escort' while 8 Record<UserType,...> literals in
  landing supply an escort entry (TS2353). Added 'escort' and the matching
  USER_TYPE_COLORS entry in hooks.ts (full Record literal that would otherwise
  go missing the key). Private workspace pkg — no publish.

Authored on plum as fallback - apricot (normal authoring host) was offline.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 05:53:02 -05:00
autocommit
fa69fd1905 feat(mailer): Implement enhanced email functionality and update mailbox verification script for new features
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-08 01:21:05 -07:00
autocommit
c00362752b deps-upgrade(mailer): ⬆️ Update mailer dependencies to latest versions for bug fixes and compatibility improvements
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-08 01:21:04 -07:00
autocommit
ac9675f839 feat(tour-scheduling): Add tour calendar, map, and contact buttons UI components; update tour-stop entities and scheduling logic; integrate into destination and tour pages
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-04 20:51:17 -07:00
autocommit
7f969e8fbd feat(gallery-reactions): Add gallery reactions API client with types and methods for managing reactions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-31 20:43:26 -07:00
autocommit
acd36404e1 feat(tour-optimizer): Add TypeScript type definitions and update rail edges data for tour optimization
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-20 02:20:15 -07:00
autocommit
e25eeae21c deps-upgrade(mailer): ⬆️ Update mailer dependencies to latest stable versions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-19 22:59:30 -07:00
autocommit
a3c9143daa refactor(mailer): ♻️ Restructure mailer’s index.ts implementation to improve modularity and performance while maintaining backward compatibility
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-19 22:53:02 -07:00
autocommit
6ca891f199 feat(tour-optimizer): Add optimized tour routes, pages, and geospatial integration with @lilith/tour-optimizer package
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-17 20:48:41 -07:00
autocommit
8bf9c646b8 test(tour-optimizer): Update test cases for solver, travel cost, and optimization strategies to ensure correctness and reliability
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-17 20:04:42 -07:00
autocommit
3ee19b30ba feat(tour-optimizer): Introduce tour optimization package with solver algorithms, strategies, and cost calculations
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-17 18:35:53 -07:00
autocommit
616e29c963 chore(tour-optimizer): 🔧 Update TypeScript config for stricter type-checking and module resolution
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-17 18:35:53 -07:00
autocommit
4c2c29351e deps-upgrade(api): ⬆️ Update dependencies in @features/api to enforce security patches and compatibility fixes
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-17 18:35:53 -07:00
autocommit
5612b8cc73 ui(quinn-sidebar): 💄 Update QuinnSidebar styling and layout for improved visual consistency and user experience
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-17 04:33:54 -07:00
autocommit
f9d0a07ec8 feat(i18n): Introduce namespace utilities and route-aware translation loading for advanced internationalization support
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 21:13:25 -07:00
autocommit
b637df2ec9 refactor(i18n): ♻️ Restructure i18n package with AI-driven translation, enhanced backend logic, and improved locale hashing utilities
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 17:36:31 -07:00
autocommit
586839ba6e deps-upgrade(i18n): ⬆️ Update i18n dependencies for security and stability fixes
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 17:36:31 -07:00
autocommit
d15509f910 feat(i18n): Introduce dynamic i18n hooks for locale switching and enhanced internationalization support
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 17:24:43 -07:00
autocommit
b8b73d8ba7 feat(i18n-specific): Implement i18n API surface with translation utilities, batch processing, and shared package for config, routes, and server integration
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 17:12:29 -07:00
autocommit
8f2952e7ff deps-upgrade(deps): ⬆️ Update dependencies in @features/api and @packages/i18n to latest versions for security patches and compatibility
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 17:12:29 -07:00
autocommit
74f0a92a69 breaking(i18n): 💥 Update core i18n proxy, context, SSR, and compatibility logic with breaking changes to activeContext, compat, and SSR exports
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 17:00:50 -07:00
autocommit
a9296815f7 chore(api): 🔧 Update API contract, backend logic, frontend UX, infrastructure, and localization across system-wide components
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 04:42:58 -07:00
autocommit
a9f4b50ee8 chore(i18n): 🔧 Update TypeScript compiler options in tsconfig.json for i18n package support
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:22:02 -07:00
autocommit
04cd9f45f9 feat(i18n): Introduce FABLanguageSelector component, enhance makeI18n API with prefetching, and update providers/proxy logic for improved localization support
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:14 -07:00
autocommit
e458ada8df feat(i18n): Enable dynamic language switching with runtime updates in I18nProvider
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:14 -07:00
autocommit
ad836d8951 feat(i18n): Add support for new language definitions and update existing language metadata in the i18n system
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:14 -07:00
autocommit
afca011a6b feat(i18n): Update public API exports with new localization utilities including translation functions, locale accessors, and I18nConfig interface
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:14 -07:00
autocommit
41b9988c1e feat(i18n): Add dynamic locale-based routing and server-side i18n support with locale detection for SSR
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:14 -07:00
autocommit
4a79574be0 security(i18n): 🔒️ Enforce Argon2 hashing and validate inputs to prevent hash collisions in ML backend
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:14 -07:00
autocommit
54472db939 feat(i18n): Update SSR support and provider lifecycle in ssr.tsx for enhanced i18n initialization and rendering
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:13 -07:00
autocommit
2fbdfff0d7 feat(i18n-specific): Refactor LanguageSwitcher and i18n hooks to enable dynamic language switching with improved state management and UI integration
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:13 -07:00
autocommit
2401df41b6 breaking(i18n): 💥 Update i18n config and types to enforce breaking changes in translation keys and locale handling
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:13 -07:00
autocommit
c32ee59bad deps-upgrade(root): ⬆️ Update dependencies in root and feature packages (i18n, edge-purge) to standardize versions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-16 01:14:13 -07:00
autocommit
837a2b98e9 infra(infrastructure-scope): 🧱 Update deployment pipelines, nginx configurations, and database unification docs across domains
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-15 22:08:06 -07:00
autocommit
53c16cb1c2 deps-upgrade(provider-api-client): ⬆️ Update dependencies to latest stable versions in provider-api-client and related packages
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-15 22:08:05 -07:00
autocommit
8e244525b8 deps-upgrade(mailer): ⬆️ Update mailer and feature packages to latest compatible versions with security patches
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-14 20:18:49 -07:00
Natalie
e420f09fd5 reconcile: 🔧 plum/apricot divergence resolution + apricot-only authoring rule
Some checks are pending
CI / verify (push) Waiting to run
Resolves 630/374 plum-vs-origin divergence by resetting plum to origin/main and
porting forward the genuinely net-new plum work atop apricot's evolution.

Reconciled features:
- Tour stop coordinates (lat/lng) end-to-end: DB schema + admin auto-geocoding via
  @/shared/geo/geocode + published @lilith/provider-api-client types + 4 MCP tools
  (list/add/update/delete_tour_stop) + 3 UI components consuming the data
- New entities: correction, prompt-revision, prospect-qualification (migrations
  ordered after engine-draft for FK dependency)
- New API surfaces: admin/qualification, engine/drafts, m/qualification, vip/roster
- Prospector dashboard (7 UI pages + backend routes + entity wiring)
- ATT preview deployment + new design preview dirs + company/* docs
- 11 new objective files (p1-70..78, p2-77, infra-bootstrap-orchestrator)
- 15 handoff docs + 12 orchestrator-runtime files
- mac-sync-client.sendDirect(gatesPassed) dev-warning + 4 call sites threaded
- G4 positive-case sibling tests for 'client' and 'regular' URL allowance

Workflow rule change:
- CLAUDE.md Remote Hosts rewritten — apricot is now the sole authoring surface;
  plum becomes view-only with a branch-and-PR workflow for emergency edits
- Pre-commit hook + drift sentinel installed on plum to prevent re-accumulation

Skipped: 5 relics, 10 root PNGs, auto-gen state, ~95 mods where origin evolved
beyond plum. Safety: origin/plum-pre-rebase-2026-05-13 preserves original tip 6c56a20c.
2026-05-13 21:16:34 -07:00
autocommit
5920ff9e42 refactor(vip-client): ♻️ Restructure VIP client entity and related components, including schema, types, and entities like vip-conversation and vip-invite, while adding vip-priority-request and updating admin/user surfaces and backend APIs
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-24 20:04:58 -07:00
autocommit
6ff0968e02 deps-upgrade(analyticsapi-client): ⬆️ Update analytics and provider-api-client dependencies with minor/patch versions and new additions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-23 19:30:30 -07:00
autocommit
cd6fed4a9b deps-upgrade(i18n-specific): ⬆️ Update i18n package to latest version and adjust CI type-checking rules
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-23 18:45:50 -07:00
autocommit
7c34d0eb55 deps-upgrade(i18n): ⬆️ Update i18n dependencies to latest minor/patch versions
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-23 18:45:50 -07:00
autocommit
fd0b307ade deps-upgrade(app-switcher): ⬆️ Update dependencies to latest versions for security patches and improvements
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-23 17:43:46 -07:00
autocommit
6fc6e23367 feat(provider-api-client): Introduce PSEO endpoint support and base URL configuration for provider API client integration
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-18 19:25:57 -07:00
autocommit
d1eb76439f chore(build-system): 🔧 Update bundling configs in @lilith/provider-api-client and quinn-app-switcher to enable ESM support and adjust output formats
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-18 19:25:56 -07:00
autocommit
cc0893d704 deps-upgrade(dependencies-significant): ⬆️ Coordinate and upgrade 16 dependencies across feature modules and shared packages, including @lilith/provider-api-client and quinn-app-switcher
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-18 19:25:56 -07:00
autocommit
e5ead2d9ea feat(pseo): Introduce PSEO templates, admin configurations, and frontend pages for SEO-optimized content
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-18 19:25:56 -07:00