← JuicyLucy AdsCONTENT HISTORY

Update to JuicyLucy Ads

Snapshot Oct 24, 2026 · 13:24 UTC · version 0.33.2

Collection source: downloaded plugin package. These snapshots do not have a confirmed matching collection source. Differences in file lists alone do not establish changes to the package.

WHAT CHANGED

Instructions updated for seam-craft

Skill instructions — Now says: invocations (pointed at the installed launchers, never npm latest), the review-approval reference, the pointer to HyperFrames' own plugin rules, third-party...

Observed in instructions or declared skills. Runtime behavior has not been tested.

Save JuicyLucy Ads and check future changes in Following.

Up to 3 plugins free · no card required.

All fields and original values.

Skill instructions

Before

Sep 30, 2026 · 23:16 UTC

invocation, the review-approval reference

After

Oct 24, 2026 · 13:24 UTC

invocations (pointed at the installed launchers, never npm latest), the review-approval reference, the pointer to HyperFrames' own plugin rules, third-party install instructions, references to omitted provider integrations and usage tele...

Compare saved observations

Download comparison JSON

SKILL.md text changes

− removed · + added

--- before
+++ after
@@ -3,7 +3,7 @@
 description: Render-correctness doctrine for scene-to-scene seams in HyperFrames launch videos — the prerequisites that make transitions composite correctly on the master timeline. Load when assembling the master timeline / index.html, when a white flash appears at a cut or crossfade seam (especially on dark films), when reasoning about why a transition opacity dip shows through, or when verifying the render-side mechanics of how overlapping scene wrappers blend. Covers the opaque stage-ground (#root background) white-flash guard and how the injector overlaps wrappers, holds final frames, ping-pongs tracks, and stamps lint-clean template code onto the master timeline. Does NOT contain the per-transition catalog — see the transition registry for individual transition entries.
 ---
 
-> Modified by Juicy Lucy AI, UAB for JuicyLucy Ads: CLI invocation, the review-approval reference and/or frontmatter (description layout, upstream-only metadata) adjusted at build time. See the plugin root NOTICE for details.
+> Modified by Juicy Lucy AI, UAB for JuicyLucy Ads: CLI invocations (pointed at the installed launchers, never npm latest), the review-approval reference, the pointer to HyperFrames' own plugin rules, third-party install instructions, references to omitted provider integrations and usage telemetry, unpinned install and HeyGen video instructions, the environment a script passes to its local preview server and the pattern it reads Chrome's local address with, one line break and/or frontmatter (description layout, upstream-only metadata) adjusted at build time. See the plugin root NOTICE for details.
 
 
 # Seam Craft — render prerequisites for scene-to-scene transitions
Full technical diff · 1 changed fields

changed /skill_md_contents

BEFORE
"---\nname: seam-craft\ndescription: Render-correctness doctrine for scene-to-scene seams in HyperFrames launch videos — the prerequisites that make transitions composite correctly on the master timeline. Load when assembling the master timeline / index.html, when a white flash appears at a cut or crossfade seam (especially on dark films), when reasoning about why a transition opacity dip shows through, or when verifying the render-side mechanics of how overlapping scene wrappers blend. Covers the opaque stage-ground (#root background) white-flash guard and how the injector overlaps wrappers, holds final frames, ping-pongs tracks, and stamps lint-clean template code onto the master timeline. Does NOT contain the per-transition catalog — see the transition registry for individual transition entries.\n---\n\n> Modified by Juicy Lucy AI, UAB for JuicyLucy Ads: CLI invocation, the review-approval reference and/or frontmatter (description layout, upstream-only metadata) adjusted at build time. See the plugin root NOTICE for details.\n\n\n# Seam Craft — render prerequisites for scene-to-scene transitions\n\nThis is the **render-correctness doctrine** for PLV scene-to-scene seams: the\nprerequisites and master-timeline mechanics that make any transition composite\ncorrectly, independent of which specific transition is chosen. The per-transition\ncatalog (crossfade, push-slide, zoom-through, cut-the-curve, …) lives in the\ntransition registry — this page is the doctrine that sits underneath all of them.\n\nThe transitions this doctrine governs are **Tier-B-ready**: pure transform / opacity /\nfilter on the two scene **clip wrappers** (`#el-<sid>`), no injected overlay DOM, no\nper-scene cooperation. Overlay families (staggered blocks, blinds, light leak, grid\ndissolve, page burn) and shader transitions are deferred to later phases.\n\n## Stage ground prerequisite (white-flash guard)\n\nSeveral templates open a window where the two wrappers' summed opacity < 1 (the\ncut-the-curve mid-window cut, zoom-through's 0.15 floor, plain crossfade's\npower-curve dip). Whatever is BEHIND the wrappers shows through during that\nwindow. If the assembled `index.html` `#root` has no opaque background, the\nrenderer composites the dip over its default **white** page → a white flash at\nevery seam, glaring on dark films (observed on two Spotify runs before the fix).\n**The assembler must paint the stage:** `#root { background:\nvar(--canvas-deep, var(--canvas, #000)) }` — `assemble-index.mjs` now emits this;\nany other consumer of these templates owns the same guarantee.\n\n## How the injector applies a transition\n\nAt a `break` boundary between scene _i_ (`from`) and scene _i+1_ (`to`), the\ninjector:\n\n1. Extends `#el-<from>` wrapper `data-duration` by `duration_s` (holds its final\n   frame — verified: `core/src/runtime/init.ts:1393-1410` external-slot branch).\n2. Pulls `#el-<to>` wrapper `data-start` earlier by `duration_s` (creates the\n   overlap window).\n3. Reassigns **all** clip `data-track-index` as a 0/1 ping-pong so the two\n   overlapping wrappers never share a track (same-track overlap is illegal —\n   `core/src/lint/rules/composition.ts`). Higher track composites on top.\n4. Stamps the `gsap_template` into `window.__timelines[\"main\"]` at `T = overlap-start`.\n\nVerified by prototype render (2026-05-31): the master-timeline wrapper tween is\nseeked and rendered (no double-seek with the sub-comp's own paused timeline —\nthe runtime drives them independently), the extended wrapper holds scene _i_'s\nfinal frame, and the higher-track incoming wrapper composites over + blends with\nthe outgoing one.\n\n## Template placeholders\n\nThe injector substitutes these tokens in each `gsap_template` line:\n\n| Token                              | Meaning                                                                  |\n| ---------------------------------- | ------------------------------------------------------------------------ |\n| `__OLD__`                          | `\"#el-<from>\"` — outgoing clip wrapper selector (quoted)                 |\n| `__NEW__`                          | `\"#el-<to>\"` — incoming clip wrapper selector (quoted)                   |\n| `__T__`                            | overlap-start time in seconds (master clock)                             |\n| `__DUR__`                          | `duration_s` for this boundary                                           |\n| `__DX__`                           | horizontal travel for directional types: `-1920` (LEFT) / `1920` (RIGHT) |\n| `__DY__`                           | vertical travel: `-1080` (UP) / `1080` (DOWN)                            |\n| `__ORIGIN_OUT__` / `__ORIGIN_IN__` | transformOrigin pair for `squeeze`                                       |\n\n`filter` / `scaleX` / `transformOrigin` are lint-clean on the master timeline\n(verified: `core/src/lint/rules/gsap.ts` has no per-property whitelist and scopes\nits checks to `data-composition-id` ranges; the x/y/scale/rotation/opacity\nwhitelist is a _scene-worker_ prompt rule only — it does not bind index.html).\n"
AFTER
"---\nname: seam-craft\ndescription: Render-correctness doctrine for scene-to-scene seams in HyperFrames launch videos — the prerequisites that make transitions composite correctly on the master timeline. Load when assembling the master timeline / index.html, when a white flash appears at a cut or crossfade seam (especially on dark films), when reasoning about why a transition opacity dip shows through, or when verifying the render-side mechanics of how overlapping scene wrappers blend. Covers the opaque stage-ground (#root background) white-flash guard and how the injector overlaps wrappers, holds final frames, ping-pongs tracks, and stamps lint-clean template code onto the master timeline. Does NOT contain the per-transition catalog — see the transition registry for individual transition entries.\n---\n\n> Modified by Juicy Lucy AI, UAB for JuicyLucy Ads: CLI invocations (pointed at the installed launchers, never npm latest), the review-approval reference, the pointer to HyperFrames' own plugin rules, third-party install instructions, references to omitted provider integrations and usage telemetry, unpinned install and HeyGen video instructions, the environment a script passes to its local preview server and the pattern it reads Chrome's local address with, one line break and/or frontmatter (description layout, upstream-only metadata) adjusted at build time. See the plugin root NOTICE for details.\n\n\n# Seam Craft — render prerequisites for scene-to-scene transitions\n\nThis is the **render-correctness doctrine** for PLV scene-to-scene seams: the\nprerequisites and master-timeline mechanics that make any transition composite\ncorrectly, independent of which specific transition is chosen. The per-transition\ncatalog (crossfade, push-slide, zoom-through, cut-the-curve, …) lives in the\ntransition registry — this page is the doctrine that sits underneath all of them.\n\nThe transitions this doctrine governs are **Tier-B-ready**: pure transform / opacity /\nfilter on the two scene **clip wrappers** (`#el-<sid>`), no injected overlay DOM, no\nper-scene cooperation. Overlay families (staggered blocks, blinds, light leak, grid\ndissolve, page burn) and shader transitions are deferred to later phases.\n\n## Stage ground prerequisite (white-flash guard)\n\nSeveral templates open a window where the two wrappers' summed opacity < 1 (the\ncut-the-curve mid-window cut, zoom-through's 0.15 floor, plain crossfade's\npower-curve dip). Whatever is BEHIND the wrappers shows through during that\nwindow. If the assembled `index.html` `#root` has no opaque background, the\nrenderer composites the dip over its default **white** page → a white flash at\nevery seam, glaring on dark films (observed on two Spotify runs before the fix).\n**The assembler must paint the stage:** `#root { background:\nvar(--canvas-deep, var(--canvas, #000)) }` — `assemble-index.mjs` now emits this;\nany other consumer of these templates owns the same guarantee.\n\n## How the injector applies a transition\n\nAt a `break` boundary between scene _i_ (`from`) and scene _i+1_ (`to`), the\ninjector:\n\n1. Extends `#el-<from>` wrapper `data-duration` by `duration_s` (holds its final\n   frame — verified: `core/src/runtime/init.ts:1393-1410` external-slot branch).\n2. Pulls `#el-<to>` wrapper `data-start` earlier by `duration_s` (creates the\n   overlap window).\n3. Reassigns **all** clip `data-track-index` as a 0/1 ping-pong so the two\n   overlapping wrappers never share a track (same-track overlap is illegal —\n   `core/src/lint/rules/composition.ts`). Higher track composites on top.\n4. Stamps the `gsap_template` into `window.__timelines[\"main\"]` at `T = overlap-start`.\n\nVerified by prototype render (2026-05-31): the master-timeline wrapper tween is\nseeked and rendered (no double-seek with the sub-comp's own paused timeline —\nthe runtime drives them independently), the extended wrapper holds scene _i_'s\nfinal frame, and the higher-track incoming wrapper composites over + blends with\nthe outgoing one.\n\n## Template placeholders\n\nThe injector substitutes these tokens in each `gsap_template` line:\n\n| Token                              | Meaning                                                                  |\n| ---------------------------------- | ------------------------------------------------------------------------ |\n| `__OLD__`                          | `\"#el-<from>\"` — outgoing clip wrapper selector (quoted)                 |\n| `__NEW__`                          | `\"#el-<to>\"` — incoming clip wrapper selector (quoted)                   |\n| `__T__`                            | overlap-start time in seconds (master clock)                             |\n| `__DUR__`                          | `duration_s` for this boundary                                           |\n| `__DX__`                           | horizontal travel for directional types: `-1920` (LEFT) / `1920` (RIGHT) |\n| `__DY__`                           | vertical travel: `-1080` (UP) / `1080` (DOWN)                            |\n| `__ORIGIN_OUT__` / `__ORIGIN_IN__` | transformOrigin pair for `squeeze`                                       |\n\n`filter` / `scaleX` / `transformOrigin` are lint-clean on the master timeline\n(verified: `core/src/lint/rules/gsap.ts` has no per-property whitelist and scopes\nits checks to `data-composition-id` ranges; the x/y/scale/rotation/opacity\nwhitelist is a _scene-worker_ prompt rule only — it does not bind index.html).\n"
Full snapshot data
{
  "description": "Render-correctness doctrine for scene-to-scene seams in HyperFrames launch videos — the prerequisites that make transitions composite correctly on the master timeline. Load when assembling the master timeline / index.html, when a white flash appears at a cut or crossfade seam (especially on dark films), when reasoning about why a transition opacity dip shows through, or when verifying the render-side mechanics of how overlapping scene wrappers blend. Covers the opaque stage-ground (#root background) white-flash guard and how the injector overlaps wrappers, holds final frames, ping-pongs tracks, and stamps lint-clean template code onto the master timeline. Does NOT contain the per-transition catalog — see the transition registry for individual transition entries.",
  "included_files": [],
  "name": "seam-craft",
  "skill_md_contents": "---\nname: seam-craft\ndescription: Render-correctness doctrine for scene-to-scene seams in HyperFrames launch videos — the prerequisites that make transitions composite correctly on the master timeline. Load when assembling the master timeline / index.html, when a white flash appears at a cut or crossfade seam (especially on dark films), when reasoning about why a transition opacity dip shows through, or when verifying the render-side mechanics of how overlapping scene wrappers blend. Covers the opaque stage-ground (#root background) white-flash guard and how the injector overlaps wrappers, holds final frames, ping-pongs tracks, and stamps lint-clean template code onto the master timeline. Does NOT contain the per-transition catalog — see the transition registry for individual transition entries.\n---\n\n> Modified by Juicy Lucy AI, UAB for JuicyLucy Ads: CLI invocations (pointed at the installed launchers, never npm latest), the review-approval reference, the pointer to HyperFrames' own plugin rules, third-party install instructions, references to omitted provider integrations and usage telemetry, unpinned install and HeyGen video instructions, the environment a script passes to its local preview server and the pattern it reads Chrome's local address with, one line break and/or frontmatter (description layout, upstream-only metadata) adjusted at build time. See the plugin root NOTICE for details.\n\n\n# Seam Craft — render prerequisites for scene-to-scene transitions\n\nThis is the **render-correctness doctrine** for PLV scene-to-scene seams: the\nprerequisites and master-timeline mechanics that make any transition composite\ncorrectly, independent of which specific transition is chosen. The per-transition\ncatalog (crossfade, push-slide, zoom-through, cut-the-curve, …) lives in the\ntransition registry — this page is the doctrine that sits underneath all of them.\n\nThe transitions this doctrine governs are **Tier-B-ready**: pure transform / opacity /\nfilter on the two scene **clip wrappers** (`#el-<sid>`), no injected overlay DOM, no\nper-scene cooperation. Overlay families (staggered blocks, blinds, light leak, grid\ndissolve, page burn) and shader transitions are deferred to later phases.\n\n## Stage ground prerequisite (white-flash guard)\n\nSeveral templates open a window where the two wrappers' summed opacity < 1 (the\ncut-the-curve mid-window cut, zoom-through's 0.15 floor, plain crossfade's\npower-curve dip). Whatever is BEHIND the wrappers shows through during that\nwindow. If the assembled `index.html` `#root` has no opaque background, the\nrenderer composites the dip over its default **white** page → a white flash at\nevery seam, glaring on dark films (observed on two Spotify runs before the fix).\n**The assembler must paint the stage:** `#root { background:\nvar(--canvas-deep, var(--canvas, #000)) }` — `assemble-index.mjs` now emits this;\nany other consumer of these templates owns the same guarantee.\n\n## How the injector applies a transition\n\nAt a `break` boundary between scene _i_ (`from`) and scene _i+1_ (`to`), the\ninjector:\n\n1. Extends `#el-<from>` wrapper `data-duration` by `duration_s` (holds its final\n   frame — verified: `core/src/runtime/init.ts:1393-1410` external-slot branch).\n2. Pulls `#el-<to>` wrapper `data-start` earlier by `duration_s` (creates the\n   overlap window).\n3. Reassigns **all** clip `data-track-index` as a 0/1 ping-pong so the two\n   overlapping wrappers never share a track (same-track overlap is illegal —\n   `core/src/lint/rules/composition.ts`). Higher track composites on top.\n4. Stamps the `gsap_template` into `window.__timelines[\"main\"]` at `T = overlap-start`.\n\nVerified by prototype render (2026-05-31): the master-timeline wrapper tween is\nseeked and rendered (no double-seek with the sub-comp's own paused timeline —\nthe runtime drives them independently), the extended wrapper holds scene _i_'s\nfinal frame, and the higher-track incoming wrapper composites over + blends with\nthe outgoing one.\n\n## Template placeholders\n\nThe injector substitutes these tokens in each `gsap_template` line:\n\n| Token                              | Meaning                                                                  |\n| ---------------------------------- | ------------------------------------------------------------------------ |\n| `__OLD__`                          | `\"#el-<from>\"` — outgoing clip wrapper selector (quoted)                 |\n| `__NEW__`                          | `\"#el-<to>\"` — incoming clip wrapper selector (quoted)                   |\n| `__T__`                            | overlap-start time in seconds (master clock)                             |\n| `__DUR__`                          | `duration_s` for this boundary                                           |\n| `__DX__`                           | horizontal travel for directional types: `-1920` (LEFT) / `1920` (RIGHT) |\n| `__DY__`                           | vertical travel: `-1080` (UP) / `1080` (DOWN)                            |\n| `__ORIGIN_OUT__` / `__ORIGIN_IN__` | transformOrigin pair for `squeeze`                                       |\n\n`filter` / `scaleX` / `transformOrigin` are lint-clean on the master timeline\n(verified: `core/src/lint/rules/gsap.ts` has no per-property whitelist and scopes\nits checks to `data-composition-id` ranges; the x/y/scale/rotation/opacity\nwhitelist is a _scene-worker_ prompt rule only — it does not bind index.html).\n"
}

SHA-256 of public snapshot: 0162273ffec0c5b848b2a94f9a64770dcf7b20e83da835c34f92faca8a8de781