## Summary
- Regression from PR #1492. After the refactor, `useFeaturedObjects`
auto-fetch effect was racing the `EngineContext` editor instance: on
AssetModal's first mount `editor` is `null`, the effect synchronously
flipped `firstFetch.current` to `IN_PROGRESS` and then called
`fetchFeaturedObjects()` which immediately bailed at `if (!editor)
return`. When the editor became available the effect re-fired (editor is
in the `useCallback` deps), but the `IN_PROGRESS` guard then blocked it
— so **the network request never fired** for any featured category.
- Visible only on Sets and Creatures tabs because
Characters/Objects/Memes are merged with local demo arrays in
`assetTabs` and looked populated despite the same fetch breakage.
- Fix: gate the auto-fetch effect on `editor` (early-return when null,
add `editor` to deps) so `IN_PROGRESS` isn't burned on the no-op call.
## Test plan
- [ ] Open `/edit-3d` in artcraft-webapp with DevTools Network panel +
"Disable cache" on.
- [ ] Open the AssetModal — confirm exactly 5 GETs to
`/v1/media_files/list_featured` (one each for `character`, `object`,
`location`, `creature`, `image_plane`).
- [ ] Switch to Sets and Creatures tabs — items render.
- [ ] Drag a Set into the 3D scene — loads via `addObject` (LOCATION
maps to `AssetType.OBJECT` in `responseMapping`).
- [ ] Tauri smoke: open the 3D page in the desktop app, AssetModal
Sets/Creatures tabs populate.
- [ ] `nx typecheck @storyteller/ui-pagescene` (no new errors).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
When the stored `commonAspectRatio` (e.g. `SquareHd`) isn't in the
newly-selected model's `aspectRatios`, `PopoverMenu` toggle mode found
no selected item and collapsed the trigger to icon-only.
Reset to `model.defaultAspectRatio` from inside `AspectRatioPicker` so
the fix applies to all three callers (image/edit/3D). Drops the
duplicate workaround from `PromptBox3D`.
- added make video button to the create image page gallery card action
button row and the lightbox modal
- clicking it will redirect to the create video page and insert the
image as a reference automatically
- Lightbox now shows full media metadata: Aspect Ratio, Resolution,
Size, Duration, Audio, and Created (with timestamp).
- Added Author header at the top so the close button no longer overlaps
the Prompt copy button.
- Extracted aspect ratio / resolution / duration formatters into
`@storyteller/common` so the website and desktop app share them.