6563a7811e
The email-activity panel surfaced every captured message, including cold/ unknown-sender email with no investor association. Gate query_email_activity on EXISTS(email_investor_links) so the panel shows only email tied to a known investor/contact. Capture is unchanged — unmatched email is still stored (metadata-only) and will appear automatically if its sender is later added as an investor; this is a read-side filter only. Graveyard investors are unaffected (their email has a link), so they remain visible/searchable as an audit surface, hidden only from the filter picker.
19 lines
935 B
TypeScript
19 lines
935 B
TypeScript
import { VersionInfo } from '@start9labs/start-sdk'
|
|
|
|
// Communications tab is matched-only. Code-only, no schema change (migrations are no-ops):
|
|
// * query_email_activity now gates on EXISTS(email_investor_links), so the admin
|
|
// email-activity panel surfaces ONLY email that links to a known investor/contact.
|
|
// Unmatched cold/unknown-sender email is still captured (metadata-only) but never shown.
|
|
// * Graveyard investors are unaffected (their email has a link) — still hidden from the
|
|
// picker but visible/searchable as an audit surface.
|
|
export const v_0_1_0_81 = VersionInfo.of({
|
|
version: '0.1.0:81',
|
|
releaseNotes: {
|
|
en_US: [
|
|
'The Communications tab now shows only email matched to a known investor or contact.',
|
|
'Unmatched cold/unknown-sender email is captured but no longer surfaced. No data changes.',
|
|
].join(' '),
|
|
},
|
|
migrations: { up: async () => {}, down: async () => {} },
|
|
})
|