Communications tab: show matched investors only (v0.1.0:81)
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.
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
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 () => {} },
|
||||
})
|
||||
Reference in New Issue
Block a user