@mengine/medeo-client 1.3.1-alpha.1 → 1.3.1-alpha.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -74,18 +74,17 @@ plan. A speech-overlap shift is explicit placement on the real visual Clips;
74
74
  an uncovered time interval does not require an invented empty-media entity.
75
75
 
76
76
  Generated Voice links to a pre-existing PhoneticScript through `phonetic-script-render`.
77
- Caption and PhoneticScript each compose a real AudioScript through exactly one
78
- `caption-composition` or `phonetic-script-composition` relation. AudioScript owns
79
- `segments[].text`; the variants never persist a text copy. Read complete content
77
+ Caption and PhoneticScript each compose a real AudioScript by directly holding `baseEntityIds`, an array that may compose multiple entities. AudioScript owns
78
+ `segments[].text`; assembly never automatically persists a copy on the variants. Read complete content
80
79
  with `assembleCaptionContent` or `assemblePhoneticScriptContent`. Broken composition
81
- fails explicitly. Recorded Audio/Video/Voice can be the ASR source via
80
+ fails explicitly. Same-name fields from different bases are rejected even for equal values and even if the variant declares that field. After base fields are unambiguous, explicit own fields may override them without mutating the bases. Recorded Audio/Video/Voice can be the ASR source via
82
81
  `audio-script-source`, without creating a synthesis variant.
83
82
 
84
- `insertCaptionClip` requires `audioScriptEntityId` and `selections`. Each selection
83
+ `insertCaptionClip` requires `baseEntityIds` and `selections`. Each selection
85
84
  names a source `segmentId` and optionally a half-open Unicode code-point
86
85
  `textRange: {start, end}`. This permits display re-segmentation without rewriting
87
86
  the original script. `upsertVoiceoverTake` requires the real
88
- `phoneticScriptEntityId` used for synthesis; its captions select the same script.
87
+ `phoneticScriptEntityId` used for synthesis; its captions supply their own `baseEntityIds` and select the same script.
89
88
  External speech identity and storage key stay on Voice.
90
89
 
91
90
  AudioScript has no intrinsic Sequence and cannot enter a Clip. `audio-script-marker`
@@ -107,3 +106,9 @@ It rejects `video-document/entity-projection-v1` documents. Production entity
107
106
  tools and editor adapters must not fall back to it or raw `/updates` on failure.
108
107
  For an entity projection, `meta.version` is the committed entity revision; the
109
108
  Loro version vector remains the transport-sync cursor.
109
+
110
+ ### Transparent variant fields in the DSL sandbox
111
+
112
+ `entities.get/list` return complete assembled fields. Consumers do not query base IDs or merge source payloads. `entities.update` patches supplied fields, preserves omitted fields, and routes inherited fields to their declaring entity. Explicit own-field declarations use `entities.declareFields`; these override unambiguous base fields without changing the base. Persisted entity rows and command payloads contain owned fields only. Base collisions are validated before own overrides.
113
+
114
+ `prepareCaptionContent` accepts caption authoring intent and handles source composition, visible text selection, and preservation of existing intrinsic timing inside the SDK.