Files
ten31-database/start9/0.4/startos/versions/v0.1.0.106.ts
T
Keysat 05f15b9197 Retire contacts.contact_type; derive Contacts status from the grid (v0.1.0:106)
The Investors/Prospects distinction is now derived live from the canonical
grid (contact_grid_signals -> committed/pipeline_stage), not the mechanically
set contact_type column:

- Desktop Contacts: drop the Investors/Prospects tabs + TYPE badge; show a
  derived Status (existing-LP badge + pipeline stage chip).
- Dashboard: repoint Total LPs / Prospects onto fundraising_investors entities
  (committed>0 vs $0, graveyard + blank-row placeholder excluded); fix a
  total_contacts soft-delete leak.
- Stop reading/writing contact_type across the create/update/import/sync paths.
  The column is left inert in place; a physical drop is deferred to a later
  signed-off table-rebuild migration (SQLite no-drop-column; contacts is
  FK-referenced) -- same retire-then-drop path lp_profiles took.
2026-06-20 22:09:02 -05:00

16 lines
980 B
TypeScript

import { VersionInfo } from '@start9labs/start-sdk'
// v0.1.0:106 — Retire contacts.contact_type (logical). The Investors/Prospects distinction is now
// derived live from the canonical grid (contact_grid_signals → committed/pipeline_stage): the desktop
// Contacts tabs + TYPE badge are replaced by a derived Status (existing-LP + pipeline stage), and the
// dashboard "Total LPs"/"Prospects" counts are repointed onto fundraising_investors entities. The
// column is left physically in place but inert (no reader/writer); a physical DROP is deferred to a
// later signed-off table-rebuild migration. No schema change in this release.
export const v_0_1_0_106 = VersionInfo.of({
version: '0.1.0:106',
releaseNotes: {
en_US: 'Retire the legacy contact type: Contacts now shows grid-derived status (existing LP + pipeline stage) and the dashboard LP/prospect counts come from the fundraising grid.',
},
migrations: { up: async () => {}, down: async () => {} },
})