Skip to content

fix(studio): no lanzar la GPU desde la pestaña Mixer - #292

Open
cursor[bot] wants to merge 3 commits into
developmentfrom
cursor/critical-bug-management-1b83
Open

fix(studio): no lanzar la GPU desde la pestaña Mixer#292
cursor[bot] wants to merge 3 commits into
developmentfrom
cursor/critical-bug-management-1b83

Conversation

@cursor

@cursor cursor Bot commented Sep 9, 2026

Copy link
Copy Markdown

Resumen ejecutivo

Qué cambia

Audio → Mixer oculta Generate y rechaza las llamadas a generación antes de crear un trabajo. Mixer conserva sus acciones propias de mezclar audio.

Para qué sirve

Evita que los ajustes conservados de Speech/Music/SFX se envíen desde Mixer al endpoint de generación. El hallazgo de Cursor era real; su CI fallaba porque el test nuevo importa el store y esa dependencia no estaba registrada.

Impacto para el usuario

Cambiar al mezclador no permite lanzar accidentalmente el modelo anterior. Voz, Música y SFX conservan sus comandos tipados.

Riesgo

  • Bajo

Estado

  • Listo para revisión
  • CI obligatoria del HEAD actualizado aprobada

Summary

Keep the original Mixer guard and refresh the branch on current development. Register only the new studioSubmissionFailure.test.tsuseStore.ts behavioral dependency in the architecture wire inventory. The existing architecture assertion remains unchanged.

Overview

The Sidebar hides Generate in Mixer. startGeneration rejects Mixer before scheduling or adding a job. Studio submission rejects missing/unknown/non-generative Audio submodes instead of falling through to legacy model generation. Speech/Music/SFX and image use their existing typed gateways; video keeps its current native path.

Detailed changes

Backend

No runtime changes. The inventory adds one verified behavioral test dependency, not a regenerated baseline or a new exemption.

UI and Wizard

Keep the translated EN/ES refusal, early store guard, submission fallback guard and hidden Mixer Generate button. Mix & Save remains handled by Mixer controls.

Data, provenance and compatibility

No model, command schema, sidecar or persistence changes. The guards operate at the Studio UI/store submission boundary; this does not introduce a new server-side Mixer API.

Files and ownership

  • Sidebar, Studio submission and useStore.startGeneration.
  • EN/ES Studio translation catalogs.
  • studioSubmissionFailure.test.ts and one architecture inventory entry.

Validation

  • Base: bde8a3b6d01c2ccbdd71a45f83cf8f474713c8dd (development, includes test(studio): proteger referencias Music con voces Speech guardadas #283/fix(wizard): consultas de cancelar/reintentar sin perder textos literales #291).
  • Head: 0abf34f42810d99a907698340f6cd2d24f4bf750.
  • Original CI failure reproduced from run 34411257359: the only unregistered dependency is the new test importing the public Zustand facade.
  • All 5 architecture contract tests PASS after the targeted inventory addition.
  • Full local UI: 1,450 tests PASS. Clean-repo guard, i18n, ESLint, TypeScript, production build and bundle budget PASS; code-health ratchet against exact development base PASS. Current-head remote CI passed.
  • Live browser PASS on this HEAD: Speech → Mixer → Speech, Generate hides/reappears and Mixer controls remain visible. A direct store call rejects without generation POSTs or new jobs. No browser exceptions. No actual mixing or inference performed; screenshots retained locally.
  • No model inference or external LLM calls; refusal tests assert zero POSTs and zero jobs.

CI and review

  • Updated-head CI SUCCESS: run 34414977354. 3,022 Python passed / 9 skipped; 1,450 UI passed; 26 Chromium E2E and 5 Windows Speech export E2E passed. CI required and both Cursor automations SUCCESS. Formal Independent QA and Cursor Bugbot NEUTRAL are not approvals.
  • Technical review performed here. No independent Luna review in this pass (prior worker quota exhausted).
  • No remote merge or release.

Notes and limitations

Mixer refusal is distinct from audio mixing. Missing/unknown Audio submodes fail closed during preparation; this does not change Mixer mixing/render quality or promise new media validation.

El enrutado de comandos compartidos solo admite speech/music/sfx. Mixer
caía al submitGeneration legado con el model_type y el prompt del tab
anterior, así que Generate arrancaba una generación de Voz/Música/SFX.

Co-authored-by: ignaciodelcano+dcl <ignaciodelcano+dcl@gmail.com>
@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown

PR Review — Loreframe Studio

Risk: low
Scope: 7 file(s); +85/-22; React UI

Automated review from scripts/analyze_pr.py. This is a heuristic pass (no LLM) so humans still own the merge decision.

Findings

  • low — UI changed — rebuild before merge
    Run cd ui && npm run build (CI already does this). Pinokio Update rebuilds for end users; keep ui/dist untracked.

Changed files

  • modified: tests/fixtures/architecture_wire_inventory.json, ui/src/components/Sidebar/Sidebar.tsx, ui/src/features/studio/studioSubmission.ts, ui/src/i18n/locales/en/studio.json, ui/src/i18n/locales/es/studio.json, ui/src/stores/useStore.ts, ui/tests/studioSubmissionFailure.test.ts

CONTRIBUTING checklist

  • python scripts/verify_clean_repo.py
  • python -m compileall -q app/services app/launch.py scripts
  • cd ui && npm run build if the UI changed
  • No weights, CivitAI sidecars, or generated guides
  • Stays local-first (no required accounts / telemetry)

Posted by the repo PR review workflow. Re-runs on each push to the PR.

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown

Code health

Quality score: 58.7/100

Higher is better. The score is a trend dashboard; the independent ratchet below remains the CI gate.

Component Weight Current Change
Cyclomatic health 45% 56.2 +0.0
File concentration 25% 66.4 +0.0
Oversized-file debt 20% 42.4 +0.0
Modularity 10% 83.0 +0.0

Change vs PR base: +0.0 points.

Metric Value
Production LOC 282,878
Production files 856
Test LOC 111,893
Functions measured 18,647
Functions complexity ≥ 15 865
Maximum complexity 674
Policy code-health-policy-v1
HEAD e7612bc3ee9c83d87d70a836ae29d4a876433f4b
Base bde8a3b6d01c2ccbdd71a45f83cf8f474713c8dd
UI measurement complete

Markdown, JSON catalogs and tests are out of this table. Only app/ runtime + ui/src TS/JS count.

Most complex functions

Complexity Where
674 app/wgp.py:7221 generate_video
381 ui/src/stores/useStore.ts:4122 Async method 'startGeneration'
355 app/_launch_runtime.py:23653 _run_generation
308 app/wgp.py:12363 generate_video_tab
264 ui/src/stores/useStore.ts:8670 Async method 'loadSettingsFromOutput'
262 ui/src/components/Sidebar/SceneAnimatorPanel.tsx:496 Function 'SceneAnimatorPanel'
258 app/services/director/planners/short_film.py:3433 ShortFilmPlanner._plan_story_driven
248 app/services/director_pipeline.py:13607 _run_video_generation
245 app/services/director_pipeline.py:7712 _run_pipeline
233 ui/src/features/agent/agentActions.ts:1152 Function 'parseAction'
226 app/services/director_pipeline.py:6541 update_comic_preview
225 ui/src/features/agent/agentActions.ts:2948 Async function 'executeAgentActions'

Trend vs baseline

Metric Δ
Production LOC +11
Test LOC +44
Functions ≥ 15 +0
Maximum complexity +0

Warnings

  • production LOC increased by +11
  • complexity hotspot ui/src/stores/useStore.ts rose 379 -> 381
  • complexity hotspot ui/src/components/Sidebar/Sidebar.tsx rose 98 -> 100
  • hotspot ui/src/stores/useStore.ts increased by +3 lines

Ratchet passed.

@IAnMove
IAnMove marked this pull request as ready for review September 9, 2026 23:01
@cursor

cursor Bot commented Sep 9, 2026

Copy link
Copy Markdown
Author

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_120a77d2-fe6e-4e8c-a785-253e64849593)

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.

2 participants