AmoleoFamily

Process & Registry

Media edition processing and catalogue ownership

This document defines the shared responsibility boundary between Amoleo FrameSync, Amoleo Editions, Plex, and Amoleo Registry.

It is the family-wide source of truth for where media files, edition knowledge, processing state and identity belong.

Core model

Amoleo Editions ⇄ FrameSync ⇄ Plex
         │
         └── Registry-backed Title / Edition identity

FrameSync is the processing workbench between the durable catalogue and the user's actual media library. It is not itself a permanent system of record.

Ownership matrix

System Owns Does not own
Amoleo FrameSync Ripping/acquisition, media inspection, frame matching, synchronization calculation, track review, mux/re-encode/hybrid processing, canonical Plex filename construction, active-job metadata handling A permanent edition catalogue, a permanent media library, Registry identity
Amoleo Editions Durable shared edition specifications, cut/release facts, technical metadata, presentation/mastering facts, provenance/review state, verified synchronization relationships User-specific Plex file paths/storage state, media-processing implementation
Plex The user's actual playable video files/library, library locations, Plex item/edition identity, Plex-facing metadata such as Labels The shared catalogue of every known Edition or cross-edition synchronization knowledge
Amoleo Registry Shared Title/Edition identity and relationships identifying what the entities are Rich edition technical specifications, Plex file ownership/location, FrameSync processing state

A useful test is:

If FrameSync disappears, no durable catalogue or media-library truth should disappear with it.

Durable edition knowledge belongs in Editions. Actual owned media and Plex-facing library state belong in Plex.

FrameSync ↔ Editions

The integration is bidirectional.

Editions to FrameSync

FrameSync may retrieve catalogue knowledge to support an active job, including:

Downloaded data can pre-populate and validate a job, but live media observations may still reveal differences. Conflicts must be reviewable rather than silently forcing one side to win.

FrameSync to Editions

FrameSync may publish reviewed/verified observations and calculations, including:

Editions owns the durable record. FrameSync owns the calculation/inspection mechanism.

FrameSync ↔ Plex

FrameSync may use Plex as both an input and an output boundary.

Plex to FrameSync

FrameSync may:

FrameSync to Plex

FrameSync may:

Plex server-local paths are not assumed to be writable from the FrameSync machine; explicit path mapping may be required.

Plex Labels describe the owned media item. Editions may contain the corresponding catalogue fact independently because Editions is the shared catalogue, not merely a mirror of one user's Plex library.

FrameSync persistence rule

The target architecture is that FrameSync stores no permanent domain catalogue.

FrameSync may use:

  1. Transient processing state — in-memory or temporary local job state, working files, caches, probes, review choices and intermediate outputs. This is disposable.
  2. Temporary Editions-compatible staging data — only while Amoleo Editions does not yet exist, for durable catalogue facts that will eventually be migrated into Editions.

The staging store is a transition mechanism, not a third source of truth.

It must:

Existing FrameSync project/manifest persistence is therefore legacy implementation state to classify and migrate, not a permanent architectural commitment.

Failure and conflict rules

Related implementation work

Generated from docs/media-edition-ownership.md. Edit there and re-run npm run build in docs-site-src/ — never hand-edit a page.