Status: Canonical product should
Related: Upload interception · Bulk library · Contract
Recording per-attachment Cimo outcomes and surfacing them: metadata queue, Media Library sidebar info, Edit Media metabox, stats aggregates, and free admin notices that depend on savings.
After browser conversion and before synthetic upload:
- JS
saveMetadataPOSTs tocimo/v1/metadata(caps as implemented) - PHP queues by filename in a transient
add_attachmentmatches (including WP-1/-2uniquifiers) and writesmetadata['cimo']- Attachment JS prepare exposes
cimofor UI - Regenerating attachment metadata must preserve existing
cimowhen WordPress rewrites sizes
Allowed metadata keys are server-allowlisted. Unauthorized REST should fail quietly for callers that expect best-effort save.
- Sidebar (
sidebar-info.js) shows savings / format / bulk state for the selected attachment - Edit Media metabox (
class-meta-box.php) shows the same intelligence server-side - Just-uploaded state may use upload notice cache before meta round-trip
- Stealth (Premium) may suppress render via
cimo.mediaManager.sidebarInfo.doRenderandcimo/metabox/do_render
Cimo_Stats owns aggregate bytes saved, counts, incremental library scan cursor, and helpers for upload vs bulk optimize/restore updates.
Settings UI and notices consume formatted stats and additional-savings estimates (Premium upsell math).
Rating / library premium notices may gate on savings thresholds (e.g. ≥ 5 MB) and dismiss/snooze behaviour.
Free activation notice, rating notice, and Media Library premium upsell notice live here as product behaviour. Premium license notices are owned by the licensing PRD.
- Not performing conversion
- Not bulk filesystem backup/restore (premium bulk)
- Upload optimize path queues metadata before re-dispatch
-
cimometa survives WP attachment metadata regeneration - Stats update helpers stay consistent with upload and bulk events
- Stealth filters can hide sidebar/metabox without disabling optimization