tts-voice-creator-clone-and.../static/sections
mARTin-B78 c91aaabe3a
Some checks are pending
Test and SonarQube / quality (push) Waiting to run
fix(mobile): retry failed script loads; fix 8 phone-width layout bugs
Two reports from the same mobile session tied together: a voice-library
crash ("fmtDbfs is not defined") and a save button reporting "No audio
ready" despite a file being correctly loaded and trimmed. Root cause
was the same in both -- the module loader fetched each JS file once
with no retry, so a single dropped request on a flaky connection left
that module's functions/variables undefined while every other module
kept executing anyway, producing confusing symptoms nowhere near the
real cause.

loader.js: _load() now retries up to 3 times with backoff before
rejecting. If a module still can't load after that, the app says so
plainly via a toast (or a plain DOM banner if even utils.js failed to
load) instead of silently revealing a partially-broken page. Wired into
both the core-module fallback path and ensureFeatureModules' lazy path.

Loading every section of the app at a 375px viewport and checking for
elements running past the viewport edge (all now 0) found eight real,
independent layout bugs, each with a distinct root cause:

- .section-head's mobile wrap rule targeted .section-header, a class
  nothing in the app uses -- dead since it was written. Every section's
  icon/title/action row (e.g. "+ New voice") ran off-screen unreachable.
- The synth-mode toggle and Clone-a-Voice source tabs' icon-only mobile
  rules matched a <span> wrapper the markup didn't have. Added it, plus
  aria-labels so hiding the text doesn't erase the accessible name.
- voice-design.css loads after style.css and re-declares
  .design-sample-grid unscoped -- style.css's mobile override always
  lost the cascade regardless of viewport. Moved the override to the
  file that actually wins.
- Three separate minmax(380-440px,1fr) engine-card grids couldn't fit
  one column under ~460px. Collapsed to 1fr with min-width:0 on the
  items -- the column fix alone wasn't enough, since a grid item's
  content-based min-width is still a floor even inside a 1fr track.
- The routing test row (450px+ minimum) and the conversation input bar
  (a single non-wrapping flex row for text field + mic + gate + three
  toggles) now wrap under 767px.
- Try It Out's EQ sliders shrank to fit beside their toggle instead of
  ever wrapping below it, overflowing their own squeezed container.
  Forced onto their own full-width line.

Verified with a Playwright sweep of all 16 sections (0 overflowing
elements, 0 console errors) plus the existing 225-test suite and the
frontend syntax gate.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-13 17:09:24 +02:00
..
s-caststudio.html Release v1.22.2 2026-09-03 16:12:02 +02:00
s-characters.html Release v1.9.0 — Character Library + richer character sheets 2026-06-26 21:22:40 +02:00
s-clone.html fix(mobile): retry failed script loads; fix 8 phone-width layout bugs 2026-09-13 17:09:24 +02:00
s-connect.html Add Script Rehearser; clean Connect Apps; About changelog; rework Try It Out 2026-05-31 20:09:59 +02:00
s-conversation.html Fix Fish-Speech emotion tags, wire book context into portraits, add emotion controls app-wide (v1.20.5) 2026-08-11 18:02:41 +02:00
s-design.html Release v1.22.2 2026-09-03 16:12:02 +02:00
s-library.html Release v1.14.19 2026-07-09 14:11:40 +02:00
s-llms.html feat: complete magazine P1 (images, play-all, karaoke, driving mode, sidebar exclusion) + OCR engines page + second OCR engine 2026-09-06 23:39:34 +02:00
s-magazine.html fix(magazine): finish and harden the live ingest preview 2026-09-12 15:24:16 +02:00
s-performance.html feat: add constrained-device resource diagnostics 2026-09-04 09:51:49 +02:00
s-reader.html Release v1.22.2 2026-09-03 16:12:02 +02:00
s-rehearser.html Release v1.22.2 2026-09-03 16:12:02 +02:00
s-routing.html Release v1.22.2 2026-09-03 16:12:02 +02:00
s-settings.html Fix voice stability, audio effects, and character/voice pipeline bugs 2026-07-29 15:33:24 +02:00
s-studio.html Release v1.6.0: a11y (WCAG AA), i18n (DE), PWA, perf, tests, Cast UX 2026-06-03 14:23:35 +02:00
s-tryout.html Fix Fish-Speech 0-voices bug, add inline emotion-tag reference to Try It Out (v1.20.8) 2026-08-12 00:08:36 +02:00
s-voices.html Release v1.22.2 2026-09-03 16:12:02 +02:00