Skip to content

quest: composable scenes replace canvases; mixes become audio scenes - #57

Merged
kixelated merged 1 commit into
mainfrom
quest-plan/composable-scenes
Nov 5, 2026
Merged

kixelated merged 1 commit into
mainfrom
quest-plan/composable-scenes

Conversation

@kixelated

@kixelated kixelated commented Nov 5, 2026 •

Copy link
Copy Markdown
Contributor

Replaces canvases with composable scenes, settled with the maintainer through /quest-plan on 2026-11-05. #54 is closed in favor of this plan.

Quests

Decisions

  • Model: ✅ published scenes + Program source; published scenes, no linking; keep canvases.
  • feat(studio)!: unlink canvases, record and grade each canvas, and preview only what is seen #54: ✅ close and salvage into the new quest; land, then rework.
  • Following cuts: ✅ scene source including program; program source only.
  • Program: ✅ program at <broadcast>, one switcher; every scene switchable.
  • Sizes: ✅ each scene has a size; only published scenes have one.
  • Audio: the maintainer asked whether an audio-only scene would be a mix. ✅ Mixes = audio scenes, independent of cuts; scenes carry their own audio; keep [mixes] separate.
  • UI: the maintainer asked about a graph, like pro tools. ✅ Scenes list + mixer, graph view later; graph panel in this epic; graph replaces mixer.
  • Structure: ✅ an m0 epic with 3 quests, in that order.

Review

  • Round 1 (Codex gpt-6.1-sol, medium) on 48d5aae: no findings.

🤖 Generated with Claude Code

(Written by Claude Opus 5.5)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated
kixelated marked this pull request as ready for review November 5, 2026 18:14
@pullfrog

pullfrog Bot commented Nov 5, 2026 •

Copy link
Copy Markdown

OpenCode Zen returned an error, so this run stopped. If it names your key, plan or balance, fix that with the provider or pick another model.

Free usage limit reached. Connect a provider or subscribe to OpenCode Go to keep going, or switch models.

Pick another model →

Pullfrog  | Rerun failed job ➔ | View workflow run | via Pullfrog | Using big-pickle (free)

@coderabbitai

coderabbitai Bot commented Nov 5, 2026

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 32 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 227f4f93-c198-4885-822b-91d9f208d315
Commits

Reviewing files that changed from the base of the PR and between 5709ef7 and 48d5aae.

Files selected for processing: 13

  • quest/m0/README.md
  • quest/m0/destinations.md
  • quest/m0/multi-canvas.md
  • quest/m0/scenes/README.md
  • quest/m0/scenes/audio.md
  • quest/m0/scenes/published.md
  • quest/m0/scenes/scene-source.md
  • quest/m0/vcam/README.md
  • quest/m0/vcam/linux.md
  • quest/m0/vcam/macos.md
  • quest/m0/vcam/windows.md
  • quest/m1/README.md
  • quest/m1/scene-graph.md
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@kixelated kixelated left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated review by review (OpenAI)

Reviewed commit 48d5aae. Composable scenes and an explicit Program source are a reasonable simplification, but two planning conflicts need decisions:

  1. [P2] Define cycle rejection when Program changes (quest/m0/scenes/scene-source.md:5–8). Program's graph edges change at a cut or transition, not only an edit. If B contains Program while A is live, cutting to B creates Program → B → Program without an edit. Reject dynamic cycles on Cut/Transition and load/undo, including both transition endpoints, or prohibit Program-dependent scenes from entering the switcher. Add this scenario to acceptance tests.
  2. [P2] Reconcile shared rendering with independent activation clocks (quest/m0/scenes/scene-source.md:20–21). During a transition A → B, both may contain keyframed child C: outgoing A needs its existing animation time while incoming B needs C restarted. One cached texture per scene per frame cannot satisfy both. Define a shared activation policy or cache by scene plus activation context, and test shared animated children across a transition.

Verification: GitHub-only static review of the plans and relevant compositor timing. These are specification conflicts, not runtime reproductions; I did not run tests.

@kixelated
kixelated merged commit c02cc02 into main Nov 5, 2026
3 of 4 checks passed
@kixelated
kixelated deleted the quest-plan/composable-scenes branch November 5, 2026 18:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant