Entity model: investors (grid) vs people (contacts); fix double-count (0.1.0:48)
Per Grant's clarification of the real data model: - Investor entities come from the fundraising grid, one per row, all labeled "investor" (drops the confusing lp/organization split). Grid is source of truth. - People come ONLY from the contacts table. The grid's contacts (fundraising_ contacts) are matched to a contact-person and recorded as member_of links to their investor, instead of creating duplicate person entities. This fixes the ~doubled people count (people now ≈ contacts, not contacts + grid contacts). - System Status cards: Investors / People (resolved) / Contacts in CRM / Grid contacts, so resolved-vs-source is visible at a glance. Verified on synthetic: people == contacts count (no double-count); multi-contact investors preserved via member_of. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
import { VersionInfo } from '@start9labs/start-sdk'
|
||||
|
||||
// Entity-model fix. Investor entities now come from the fundraising grid (one per
|
||||
// row, all labeled "investor"; the confusing organization/lp split is gone), and
|
||||
// PEOPLE come only from the contacts table. The grid's contacts are recorded as
|
||||
// membership links to their investor rather than as duplicate people, which fixes
|
||||
// the roughly-doubled people count. Rebuild the search index after upgrading.
|
||||
export const v_0_1_0_48 = VersionInfo.of({
|
||||
version: '0.1.0:48',
|
||||
releaseNotes: {
|
||||
en_US: [
|
||||
'Fixes the entity counts: investors now come from the fundraising grid and',
|
||||
'people come from the contacts table, with the grid\'s contacts treated as',
|
||||
'memberships instead of duplicate people. Run Rebuild search index after',
|
||||
'upgrading to refresh the numbers.',
|
||||
].join(' '),
|
||||
},
|
||||
migrations: { up: async () => {}, down: async () => {} },
|
||||
})
|
||||
Reference in New Issue
Block a user