examples: add visko-orbis-distilled dev example (Phase 4) - #263
examples: add visko-orbis-distilled dev example (Phase 4)#263willemhelmet wants to merge 3 commits into
Conversation
Cloneable Next.js reference app for Visko Orbis · Distilled (v2.0.0), modelled on the helios typed example. T2V + I2V entry points, the hero per-chunk live prompt morphing surface, resolution picker driven from state.available_resolutions, seed, audio on/off + muted-by-default main_audio outlet, and an explicit generation_complete → start-again flow. The typed @reactor-models/visko-orbis-distilled@2.0.0 package is vendored under vendor/ (generated from the live PROD schema by @reactor-team/codegen, pre-npm-publication) and wired in via a pnpm link: override; package.json targets ^2.0.0 so dropping the override + pnpm up swaps to the published package with zero code changes. Honest-UX surfaces for measured runtime behaviour: the minutes-long waiting phase (SR compile + three warmup chunks), the zero-frame first chunk (SR priming, first picture ~2 chunks in), 832x480 generation with SparkVSR delivery tiers, apply-at-next-start session knobs that survive reset, and the no-audio-prompt guidance. Draft pending backend launch gates (schema/is_public/public_pricing) and a live e2e session stream. Final verification against the PUBLISHED package happens post-npm-publish on the pre-launch checklist.
The repo-root .gitignore ignores dist/ everywhere; re-include the vendored package's dist/ so a fresh clone of the example is runnable (it ships only built output, exactly like the future npm package).
✅ FIRST LIVE GENERATION — e2e PASSED on PRODRetried through one 429 (single-pod capacity), captured the pod on retry, and got a full working session end-to-end.
Flow verified end-to-end: Connect → (one 429 retry) → Connected → I2V Sky Citadel ( Screenshots (ready/setup, the FIRST generation of the Sky Citadel at 2k, and the post-morph running state) were captured to the local run dir during the agent e2e — they're not attachable via
|
|
Closing: wrong repo target. This work belongs in js-sdk-internal per pre-launch policy — will re-open there after cleanup. |
Phase 4 of
productize-model: js-sdk dev example forvisko-orbis-distilledA cloneable, production-shaped Next.js reference app for Visko Orbis · Distilled (release v2.0.0, wire
reactor/visko-orbis-distilled), built on the typed@reactor-models/visko-orbis-distilledpackage. Modelled on the helios typed example (the continuous-prompt-generation model — closest in shape to this one), NOT the hand-rolled helios/longlive-v2 pattern the runbook warns about.Draft — do not merge until the backend launch gates flip (schema-to-prod,
is_public,public_pricing, LD flag,_ENABLED_MODELS) and a full e2e session streams through the deployed surface. See the pre-launch checklist note at the bottom.What's in the example
EvolveScene).set_promptmid-run morphs the picture at the next chunk boundary (~1.8 s) — no restart, no cut. One-click "evolution" chips keep the same world and shift its mood, plus a free-form morph box.state.available_resolutions(SparkVSR tiers such as1080p / 2k / 4k) — never hard-coded.set_seed(reproducible runs),set_audio_enabled(compute toggle), all applying at the nextstartand survivingreset.main_audiois a real 48 kHz mono track — muted-by-default<audio>outlet + an on/off toggle. Deliberately NOset_audio_promptbox (measured worse than unset).generation_complete→ WAITING (no auto-restart); a "Start again / Reset" call-to-action.lib/prompts.ts— dense, cinematic, single-take prompts with per-scene evolutions written for continuity. Phase 2 mirrors these into the webapp sandbox presets.skill/SKILL.md—building-visko-orbis-distilled-frontends.Honest-UX surfaces for measured runtime behaviour
Encodes the REA-5695 hand-off reality so it doesn't read as "broken": the minutes-long startup (
waiting= SR compile + 3 warmup chunks, one session per pod), the zero-frame first chunk (SR priming → "Priming the stream…" overlay, first picture ~2 chunks in), 832×480 generation with SparkVSR delivery tiers, apply-at-next-start session knobs, and the non-16:9-image squash note on the I2V flow.Typed package: vendored pre-publication⚠️
@reactor-models/visko-orbis-distilled@2.0.0is not yet published to npm (Phase 1 codegen PR reactor-team/js-sdk-codegen#34 intentionally held for the 8/31 launch). To keep this example cloneable today, the package is vendored atexamples/visko-orbis-distilled/vendor/visko-orbis-distilled/(generated from the live PROD schema by@reactor-team/codegen,--react) and wired in via apnpmlink:override.package.jsondeclares"@reactor-models/visko-orbis-distilled": "^2.0.0"— so post-publish, drop thepnpm.overridesblock andpnpm up, zero code changes. The vendored dir ships only built output (dist/+package.json+README), exactly whatnpm iwill lay down. Seevendor/README.md.Verification status
pnpm build(next build) clean against the wired dependency.tsc --noEmitclean.api.reactor.inc) — running; timings (TTFF, s/chunk vs the measured 1.86 s/chunk) + a screenshot of the first generation will be posted in this thread.Pre-launch checklist: after npm publish, re-verify
pnpm buildagainst the published package (drop the override) and confirmcreate-reactor-app --model visko-orbis-distilledscaffolds it.🤖 Generated with Claude Code