4ba43f2b75
fix(qa): sonar auto loop rebuilds the bundle after fixer commits
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-06 13:31:12 +02:00
dda8ffa133
chore(build): rebuild static bundle after sonar JS fixes
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-06 05:12:42 +02:00
1d65a4df7c
fix(sonar): remove unused variables and commented-out code
...
Removes 43 small Sonar findings (unused locals, dead helpers, a misread comment); behaviour unchanged. CHANGELOG entry was already swept into 9f78a15 .
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-06 03:42:44 +02:00
60eb108360
fix(ui): surface silently swallowed save and fetch errors
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-06 00:44:31 +02:00
b7cfe056a3
fix(voices): rename archetype say helper to avoid global collision
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 18:38:44 +02:00
b33559884c
feat(voices): archetype gallery UI
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 18:23:14 +02:00
c0a5d54763
fix(voices): robust LibriVox search and expose export_provenance_default
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 18:07:22 +02:00
772c43d7f0
feat(voices): LibriVox and Wikimedia Commons voice sources
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 17:42:36 +02:00
91843e95e6
feat(voices): optional vocal isolation for URL imports
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 16:50:14 +02:00
e0daafd4e1
feat(voices): export and import voice bundles
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 16:42:28 +02:00
b36423457b
feat(design): auto-pick the best seed by scored candidates
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 16:37:58 +02:00
a0cd7b867f
feat(voices): show audio problems in the voice library
...
Single-voice health endpoint (GET /api/voices/{id}/health), problems stored in
meta on import, shown in the Try-out voice panel; architecture note and docs.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-04 16:35:10 +02:00
560b82b0ef
perf(ui): lazy-render big sections to stay within the DOM node budget
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-02 23:13:19 +02:00
b1c0197652
Release v1.53.2
Test and SonarQube / quality (push) Waiting to run
2026-09-24 07:44:16 +02:00
5852d7a2d5
feat(engines): searchable dropdown for the Active LLM and OCR model pickers
...
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-20 16:19:26 +02:00
30e01a5cec
Release v1.26.13: Fix drag-and-drop file opening in tab & improve magazine dropzone reliability
2026-09-10 14:31:16 +02:00
c815b7941a
feat: expand resource diagnostics
2026-09-04 10:42:08 +02:00
4b01a853fb
perf: bound browser library image cache
2026-09-04 10:28:07 +02:00
c43a11da68
perf: lazy-load section feature modules
2026-09-04 10:23:20 +02:00
0f1d93c9df
perf: bound rehearser audio cache
2026-09-04 10:11:44 +02:00
bf186387f9
perf: coalesce voice library fetches
2026-09-04 10:10:10 +02:00
55d0dd1012
refactor: add frontend namespace migration bridge
2026-09-04 10:07:46 +02:00
aa8a96c48f
feat: add safe retries for background jobs
2026-09-04 09:58:45 +02:00
6ca044ef64
feat: validate canonical image asset digests
2026-09-04 09:53:50 +02:00
90e74149d9
feat: add constrained-device resource diagnostics
2026-09-04 09:51:49 +02:00
690673625d
feat: persist background job result artifacts
2026-09-04 09:48:37 +02:00
b648bbdf0b
feat: add safe background job history panel
2026-09-04 09:44:31 +02:00
0fd39d4acb
test: cover profile completeness counting
2026-09-04 09:33:45 +02:00
a7a6bb1cdc
feat: add visual pair review workflow
2026-09-04 09:20:27 +02:00
fbb5fc52dd
fix: stabilize async library navigation
2026-09-04 08:58:01 +02:00
3456b5a3b0
feat: support character appearance forms
2026-09-04 08:51:33 +02:00
0b51a76c21
fix: flag inconsistent current image pairs
2026-09-04 08:39:01 +02:00
cb653d15d0
perf: reduce library pages on low memory devices
2026-09-04 08:35:18 +02:00
4ffe6e9012
feat: add consistent image job cancellation
2026-09-04 08:34:35 +02:00
47d6a5d247
fix: release local preview object URLs
2026-09-04 08:11:32 +02:00
98773a4e65
build: refresh frontend bundle
2026-09-04 08:05:54 +02:00
fe807d1682
Release v1.22.2
2026-09-03 16:12:02 +02:00
c9d063d0c7
Fix character profile view missing fields (Race, Age, Languages, Nationality, Class)
2026-08-23 12:18:08 +02:00
882e1ede55
Fix audiobook export modal bindings and position for SPA routing
2026-08-23 11:58:36 +02:00
ee17ed97d1
Fix audiobook export modal visibility and eliminate 4-10s TTS delay for narrator blocks
2026-08-23 11:45:20 +02:00
1d8e0ff2a6
feat: Audiobook Export Modal, UI sync fixes, and initialization stability (v1.22.0)
2026-08-23 10:15:46 +02:00
f7264a8c07
chore: release 1.21.0 - Consistent ComfyUI Character Renders and Audiobook Export
...
- Deterministic hash-based character portraits and reference sheets
- Implemented strict early Renaissance aesthetic controls and role-specific headwear rules
- Added audiobook batch export scripts and progress tooling
- Verified book profiles with a new 'confirmed' state tracking mechanism
- Updated Pillow dependency for robust image handling
- Configured .gitignore for audiobook and audio cache exports
2026-08-23 09:12:57 +02:00
2bcbbafbcf
Refresh production bundle for preview cleanup
2026-08-19 22:05:31 +02:00
b43034ee5d
Refresh production bundle for lazy artwork
2026-08-19 17:12:45 +02:00
2bb01de94a
Refresh production JavaScript bundle
2026-08-19 17:12:07 +02:00
b953ba1a83
Refactor table and audiobook helper modules
2026-08-19 16:39:17 +02:00
388fd601ab
Release v1.20.38
2026-08-19 16:36:26 +02:00
189ca51e47
Release v1.20.37
2026-08-19 16:04:30 +02:00
62274a17fc
Improve Studio casting and character voice design (v1.20.36)
2026-08-15 13:20:38 +02:00
35cb21ad70
Reject phantom speakers invented from German noun phrases (v1.20.35)
...
The caster emits fragments of noun phrases as characters — "in seinem Inneren"
-> Inneren, "die Hand" -> Hand, "mein Geliebter" -> Geliebten, "der Wind" ->
Wind. Each became a cast entry with its own voice while the real speaker's line
was lost to a phantom; measured against a hand-corrected book this was a large
part of why a fresh cast produced 73 speakers where the human had 62.
Such lines are now reset to Unknown — visibly unresolved and still recoverable
by the repair passes, rather than silently wrong. Applied to a real cast:
5 phantoms removed, 73 -> 68 speakers.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-12 16:52:27 +02:00