Part of the partner-wide-first epic (#2135). Deliberately deferred — do last, after the rest of the epic (per Todd, 2026-07-02).
discovery_profiles (apps/api/src/db/schema/discovery.ts:74) is NOT a dual-ownership candidate: profiles are inherently site-specific (site_id NOT NULL; subnets, exclude IPs describe one physical network). What IS shareable partner-wide is the scan credential/settings material MSPs reuse across all client sites — snmp_communities, snmp_credentials, and potentially default method/port-range/schedule settings.
Shape when we get to it: a partner-owned scan-credentials/template object referenced by site-owned profiles — i.e. the template/binding pattern from the backup design (#2132), with the binding at the site level. Follow that design's accepted pattern rather than inventing a new one; also note snmp_credentials is secret material, so the secretCrypto.ts encrypted-column pattern applies to wherever it ends up.
Not blocking anything; no implementation before #2132's pattern is accepted and the epic's core phases are done.
Part of the partner-wide-first epic (#2135). Deliberately deferred — do last, after the rest of the epic (per Todd, 2026-07-02).
discovery_profiles(apps/api/src/db/schema/discovery.ts:74) is NOT a dual-ownership candidate: profiles are inherently site-specific (site_id NOT NULL; subnets, exclude IPs describe one physical network). What IS shareable partner-wide is the scan credential/settings material MSPs reuse across all client sites —snmp_communities,snmp_credentials, and potentially default method/port-range/schedule settings.Shape when we get to it: a partner-owned scan-credentials/template object referenced by site-owned profiles — i.e. the template/binding pattern from the backup design (#2132), with the binding at the site level. Follow that design's accepted pattern rather than inventing a new one; also note
snmp_credentialsis secret material, so thesecretCrypto.tsencrypted-column pattern applies to wherever it ends up.Not blocking anything; no implementation before #2132's pattern is accepted and the epic's core phases are done.