Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion skills-manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
"files": 11
},
"hyperframes-core": {
"hash": "b632d12d11eb54e8",
"hash": "d51c4ad2843b06ac",
"files": 11
},
"hyperframes-creative": {
Expand Down
1 change: 1 addition & 0 deletions skills/hyperframes-core/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ Surfaced here; full rationale in the linked reference. Do not violate:
- Adding a clip: set its `data-start`/`data-duration` intentionally against the clips around it. `data-track-index` is a Studio display lane, not a timing constraint, so it does not need to be free.
- A clip that ends past the root `data-duration` is cut off: extend the root `data-duration` to the clip's end in the same edit (`lint` warns `clip_ends_past_root_duration`).
- `data-hidden` on any composition element hides it in BOTH preview and render, overriding its time window; it is non-destructive/reversible and toggled by Studio's timeline eye icon.
- Keep `data-hf-id` and every `data-derived-*` / `data-media-source` attribute when you edit an element: `data-hf-id` is its identity in the app, and `data-derived-src` is the picture it was made from. To put an original back, set `src` to `data-derived-src` and remove `data-derived-src`, `data-derived-edit` and `data-media-source`.
- Adding a sub-composition: verify its internal `data-composition-id` before wiring the host.

## Validation
Expand Down
1 change: 1 addition & 0 deletions skills/hyperframes-core/references/data-attributes.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ See `sub-compositions.md` for the full wiring pattern.
- **Blast radius — it silences more than the overflow audit.** The attribute is inherited down the subtree (the perception probe walks ancestors), so it also suppresses the rendered-perception checks `text-clipping`, `content-cramped-container`, and `foreground-over-panel` for every descendant. Putting it on a persistent panel that also hosts real foreground content disables collision checks on that content for the panel's whole lifetime. Prefer the narrowest opt-out: scope it to the smallest decorative wrapper, or use per-element `data-layout-bleed="true"` for one intentional primary-text crop. The two canvas/edge checks `primary-offscreen` and `foreground-over-panel` deliberately run **even under** allow-overflow, so it cannot hide a wordmark sliced by the frame or text bleeding onto a panel edge.
- `data-layout-ignore` — exclude this element from layout audits entirely.
- `data-layout-allow-caption-zone` — opt out of `--caption-zone` / `caption_zone_collision` for intentional lower-third copy (applies to the element and every descendant via `closest`; does **not** suppress overflow, overlap, occlusion, or other layout audits — pair those attrs if needed).
- `data-derived-from` / `data-derived-src` / `data-derived-edit` + `data-media-source="desktop.cutout" | "desktop.inpaint"`: lineage the desktop app writes on a cutout layer or a cleaned picture. `data-derived-from` is the source element's `#id`, `data-derived-src` the original file, `data-derived-edit` what was removed, in words. Preserve them; the runtime never reads them. `data-texture="<source>:<id>"` on a `.cutout-texture` overlay names its texture in the app's library.

## Legacy / Removed Attributes

Expand Down
Loading