feat(studio): app shell swap — mount EditorShell, retire the legacy engine#2213
Conversation
2b93f60 to
5c41357
Compare
08ca624 to
f07ff86
Compare
5c41357 to
6f9c592
Compare
miga-heygen
left a comment
There was a problem hiding this comment.
Reviewed as part of the 25-PR NLE overhaul stack. Full stack review on #2205 (the keystone). This is one of the critical swap PRs — reviewed with extra scrutiny. No blockers. — Miga
d5242de to
2e1046f
Compare
4a1b7a2 to
3e2c01f
Compare
2e1046f to
e267beb
Compare
3e2c01f to
5a92f6f
Compare
e267beb to
71f29f0
Compare
5a92f6f to
20115a6
Compare
miguel-heygen
left a comment
There was a problem hiding this comment.
Blocker confirmed against current head 71f29f0: the Bug-2 regression describe block (8 tests) is nested inside the callback of the authored-none it(...) in gsapSoftReload.test.ts. Vitest silently ignores describes registered during a test, so the suite reports 24 passing while these 8 regression tests never register. Move the block to top level (after the authored-opacity describe closes), then rerun the targeted suite and request re-review.
71f29f0 to
734f785
Compare
20115a6 to
4ba7711
Compare
4ba7711 to
9ea5097
Compare
734f785 to
31e53ca
Compare
9ea5097 to
0938959
Compare
a9924da to
6e37e12
Compare
|
De-nest landed at the new head: the Bug-2 regression describe (8 tests) is hoisted to top level — targeted suite now registers and passes 32/32 (was 24 with 8 silently unregistered). Root cause was a bad conflict resolution during the restack onto main (the block got sealed inside the authored-none |
miguel-heygen
left a comment
There was a problem hiding this comment.
Re-audit at current head 6e37e12: Bug-2 describe block is now top-level (line 460, outside authored-opacity test); targeted registration issue resolved. Required CI including all regression shards, preview, perf, and format is green. Approving.
miguel-heygen
left a comment
There was a problem hiding this comment.
Re-reviewed current head and verified the addressed feedback and required behavior. Approval is for this exact head; Graphite mergeability may still be pending.
…ngine What: the final swap (43 files): App mounts EditorShell; contexts, hotkeys, sidebar (AssetsTab→AssetCard, toolbar, audio row), useTimelineEditing and the store drop the legacy single-select API and trimmed callbacks; deletes the 7 files this orphans (StudioPreviewArea, NLELayout, useTimelineGroupEditing, timelineLayerDrag + suites, legacy hook test); .fallowrc.jsonc lands at final content, dropping every TEMP(studio-dnd) suppression — everything shipped unwired is now reachable. Why: last step of the NLE integration; after this the tree is byte-identical to the previously-green integration checkpoint. How: modified files to final content + gate-forced deletions + suppression cleanup. Tree parity with checkpoint 86dd2a32b verified. Test plan: tsc --noEmit in studio, studio-server, core; bun run --filter @hyperframes/studio build; bunx vitest run (full suite); fallow audit clean with zero remaining TEMP entries; tree-diff vs 86dd2a32b empty.
0938959 to
e73977c
Compare
6e37e12 to
c0f0540
Compare
005cab9
into
studio-dnd/pr21-timeline-glue-swap

What
the final swap (43 files): App mounts EditorShell; contexts, hotkeys, sidebar (AssetsTab→AssetCard, toolbar, audio row), useTimelineEditing and the store drop the legacy single-select API and trimmed callbacks; deletes the 7 files this orphans (StudioPreviewArea, NLELayout, useTimelineGroupEditing, timelineLayerDrag + suites, legacy hook test); .fallowrc.jsonc lands at final content, dropping every TEMP(studio-dnd) suppression — everything shipped unwired is now reachable.
Why
last step of the NLE integration; after this the tree is byte-identical to the previously-green integration checkpoint.
How
modified files to final content + gate-forced deletions + suppression cleanup. Tree parity with checkpoint 86dd2a32b verified.
Test plan
tsc --noEmit in studio, studio-server, core; bun run --filter @hyperframes/studio build; bunx vitest run (full suite); fallow audit clean with zero remaining TEMP entries; tree-diff vs 86dd2a32b empty.
Stack position 22/25 — studio NLE overhaul (CapCut-parity timeline + canvas). Graphite manages bases; merge from #2192 upward. Temporary
TEMP(studio-dnd)fallow entries (unwired-component windows) are all removed by #2213 (app-shell swap), whose tree is byte-identical to the fully-verified integration branch.