mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-09-10 02:25:56 +00:00
9e1b8bfa1a
Third increment of the resource-payload-static-metadata gap, the snapshot-side statics. Measurement first: the mock estate ships only 5 distinct non-default policy postures across 723 resources and 56 distinct templated AI-safe summary strings across the same rows (~150KB of inline duplication per snapshot), and every canonical alias list carries the row's own wire id verbatim. Non-default policies and AI-safe summaries now dedupe through the same content-addressed catalog contract as capabilities: state-level policyCatalog and aiSafeSummaryCatalog hold the distinct blobs, resources carry policyRef / aiSafeSummaryRef, and ingestion expands refs back to the inline shape (default posture synthesis unchanged for ref-less rows). The broadcast conversion returns one catalogs struct so the next deduped field is a loop entry, and catalog changes ride the same delta frame as the refs that need them. Alias lists stop shipping the row's own wire id — every identity consumer unions resource.id beside the alias spread — while the primary id stays so aliases remain the complete live vocabulary a host is reachable by, per the established slimming invariant. Verified against a 1857-resource estate: zero inline policies or summaries on the wire (743 refs resolving into 1KB + 7KB catalogs), zero alias lists carrying the wire id, catalog-expanded postures and summaries reaching the store byte-equivalently, and the estate rendering clean on desktop and the 36-row phone window. Remaining gap scope: canonicalIdentity alias/superseded history is genuine per-resource identity data (~600KB per snapshot) with no safe derivation shortcut, and the proxmox-facet/platformData mirror duplication (~200KB) is deliberate canonical-merge fabric; both stay recorded under resource-payload-static-metadata for a future owner.