2026-05-12 15:07:41 -07:00
|
|
|
import { aboutMigrations } from '@/entities/about';
|
|
|
|
|
import { activityMenuMigrations } from '@/entities/activity-menu';
|
2026-04-18 22:02:25 -07:00
|
|
|
import { cityVisitMigrations } from '@/entities/city-visit';
|
|
|
|
|
import { clientMigrations } from '@/entities/client';
|
2026-04-27 04:59:46 -07:00
|
|
|
import { clientPiiExtractionMigrations } from '@/entities/client-pii-extraction';
|
2026-04-18 22:02:25 -07:00
|
|
|
import { contactSubmissionMigrations } from '@/entities/contact-submission';
|
|
|
|
|
import { contentPostMigrations } from '@/entities/content-post';
|
2026-05-12 15:07:41 -07:00
|
|
|
import { etiquetteMigrations } from '@/entities/etiquette';
|
|
|
|
|
import { heroStripMigrations } from '@/entities/hero-strip';
|
2026-04-18 22:02:25 -07:00
|
|
|
import { journalEntryMigrations } from '@/entities/journal-entry';
|
2026-05-12 15:07:41 -07:00
|
|
|
import { linkValueMigrations } from '@/entities/link-value';
|
|
|
|
|
import { policyMigrations } from '@/entities/policy';
|
|
|
|
|
import { positioningTagMigrations } from '@/entities/positioning-tag';
|
reconcile: 🔧 plum/apricot divergence resolution + apricot-only authoring rule
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
|
|
|
import { prospectQualificationMigrations } from '@/entities/prospect-qualification';
|
2026-04-18 22:02:25 -07:00
|
|
|
import { tourStopMigrations } from '@/entities/tour-stop';
|
|
|
|
|
import { touringSubscriptionMigrations } from '@/entities/touring-subscription';
|
|
|
|
|
import { openDb, runMigrations } from '@/shared/db';
|
|
|
|
|
import { logger } from '@/shared/logger';
|
|
|
|
|
|
2026-04-20 04:03:28 -07:00
|
|
|
const dbUrl = process.env['QUINN_DB_URL'] ?? 'postgres://quinn:quinn@localhost:25435/quinn';
|
2026-04-18 22:02:25 -07:00
|
|
|
|
2026-05-12 15:57:20 -07:00
|
|
|
async function main(): Promise<void> {
|
|
|
|
|
const db = openDb(dbUrl);
|
|
|
|
|
try {
|
|
|
|
|
await runMigrations(db, [
|
|
|
|
|
...clientMigrations,
|
|
|
|
|
...clientPiiExtractionMigrations,
|
|
|
|
|
...journalEntryMigrations,
|
|
|
|
|
...contentPostMigrations,
|
|
|
|
|
...contactSubmissionMigrations,
|
reconcile: 🔧 plum/apricot divergence resolution + apricot-only authoring rule
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
|
|
|
...prospectQualificationMigrations,
|
2026-05-12 15:57:20 -07:00
|
|
|
...touringSubscriptionMigrations,
|
|
|
|
|
...tourStopMigrations,
|
|
|
|
|
...cityVisitMigrations,
|
|
|
|
|
...aboutMigrations,
|
|
|
|
|
...activityMenuMigrations,
|
|
|
|
|
...etiquetteMigrations,
|
|
|
|
|
...heroStripMigrations,
|
|
|
|
|
...linkValueMigrations,
|
|
|
|
|
...policyMigrations,
|
|
|
|
|
...positioningTagMigrations,
|
|
|
|
|
]);
|
|
|
|
|
logger.info('Migrations complete.');
|
|
|
|
|
} finally {
|
|
|
|
|
await db.end();
|
|
|
|
|
}
|
|
|
|
|
}
|
2026-04-18 22:02:25 -07:00
|
|
|
|
2026-05-12 15:57:20 -07:00
|
|
|
main().catch((err: unknown) => {
|
|
|
|
|
logger.error('Migrate failed', { err: String(err) });
|
|
|
|
|
process.exit(1);
|
|
|
|
|
});
|