Spaces:
Runtime error
Runtime error
Commit History
-
fix: single-slot servers, no prompt cache — fit the 16GB Space cgroup
GVillegasPMDeploy 2 hit RUNTIME_ERROR: brain server never became healthy. llama-server defaults (4 slots + 8GB prompt cache PER server) are hostile inside the cpu-basic cgroup. We serialize turns anyway (concurrency_id), so --parallel 1 --cache-ram 0 and brain ctx 8192->4096 (history is trimmed to 12 messages; 4096 is ample). Live-smoke-verified locally.1defd8b -
docs: status — Milestone D merged and deployed
GVillegasPMf1c5cd5 -
fix: pin @gradio/client CDN import to major v2
GVillegasPMc410851 -
feat: ship the storybook UI to the Space
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>94322f0 -
fix: resilient frontend boot — visible error when client CDN/connect fails
GVillegasPM +1: Claude Fable 5- Move Client import into boot IIFE as dynamic import - Add explicit error handling for CDN/connection failures - Return early to prevent downstream errors - Add aria-label to type-input for accessibility Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>e3a6e0a -
feat: hand-made storybook frontend over the gr.Server API
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>e1530a9 -
fix: bound text/file input sizes, keep transcript in error path
GVillegasPMb91c3de -
feat: gr.Server backend with summon/talk/talk_text endpoints
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>f716867 -
docs: amend D plan — textContent rendering, no innerHTML with model text
GVillegasPMad4167a -
feat: turn payload assembly for the storybook frontend
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>01add28 -
feat: TTL session store for gr.Server orchestrators
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>55cb754 -
feat: stdlib WAV helpers for browser audio in / TTS audio out
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>81b4e27 -
spike: verify mixed dict+FileData returns through gr.Server
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>90b35f5 -
docs: Milestone D implementation plan (gr.Server storybook UI)
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>3f82336 -
Merge branch 'milestone-b'
GVillegasPMe5174c6 -
Merge remote-tracking branch 'space/main'
GVillegasPM# Conflicts: # README.md4701201 -
initial commit
Verified signature97170e5 -
spike: gr.Server custom-frontend feasibility for Off-Brand badge
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>a7773c2 -
docs: record B gate status and HF namespace decision
GVillegasPM33d4a99 -
fix: harden dataset gates against run-ons and unsafe inflections
GVillegasPM +1: Claude Fable 5- Add word-count check (>40 words per segment) to catch punctuation-free run-ons - Expand UNSAFE regex to catch inflections: dying, kills/killed/killing, bloody, guns, knives, murders, scream in terror - Ensure plain "screams" remains allowed for cartoon contexts - Add regression tests for run-on detection and inflection coverage Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>3c6e518 -
feat: dataset validation gated by the runtime protocol parser
GVillegasPMd003f3d -
feat: scenario briefs and teacher prompts for persona dataset
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>d9e1dfc -
docs: Milestone B implementation plan (Modal dataset gen + LoRA + eval + swap)
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>4dfb661
-
docs: update status — Milestone A merged
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>5c7827a -
fix: single-source model specs from config, guard None content, bound startup wait
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>4ecd229 -
feat: dockerized Space deployment with llama-server bootstrap
GVillegasPMdocker build verified locally (linux/amd64, 349MB). llama.cpp release assets are tar.gz with bundled .so libs -> /opt/llama on PATH + LD_LIBRARY_PATH instead of a symlink. .dockerignore keeps venv/models/git out of the image.a377287 -
fix: serialize summon and talk events to prevent state races
GVillegasPM4a9b99b -
feat: Gradio Blocks floor UI with summon and push-to-talk
GVillegasPMLive-verified end-to-end: summon (webcam image -> eyes -> brain names toy, assigns voice, cast card) and talk (speech -> Moonshine -> brain -> Kokoro multi-voice audio). Degradation rung returns an in-fiction napping message when the brain is unreachable.04a76f4 -
feat: llama-server launch script and live smoke test
GVillegasPMReality fixes found during live verification: - No official Qwen/Qwen3.5-4B-GGUF repo exists -> unsloth/Qwen3.5-4B-GGUF - Both models' chat templates default to thinking mode, which consumed the entire token budget in reasoning_content -> --reasoning off on both servers - Brain repo ships an unused vision projector -> --no-mmproj1226e10 -
fix: latest fate roll replaces prior roll markers in scene
GVillegasPM +1: Claude Fable 5When [fateroll] is emitted multiple times in a session, the scene description would accumulate contradictory fate roll results (e.g. "... (fate roll: 11/20) (fate roll: 5/20)"). Now strip any existing "(fate roll: N/20)" marker before appending the new one, so only the most recent roll is visible in the scene. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>e754d31 -
feat: orchestrator with turn handling, summoning, and fate rolls
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>2361eee -
fix: truncate clips to 60s before moonshine's 64s assert
GVillegasPM2e1b2cb -
feat: brain and ears thin clients
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>3715afc -
fix: atomic model downloads so partial files never poison the cache
GVillegasPM +1: Claude Fable 5Use temp files in the same directory and os.replace() for atomic rename, preventing partial downloads from being cached and blocking concurrent initialization. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>2378b88 -
feat: Kokoro mouth wrapper with segment concatenation
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>db96dd8 -
fix: normalize non-list toys values from vision model output
GVillegasPM +1: Claude Fable 5Handle edge cases where the LLM returns non-list toys values: strings are wrapped in a list, and non-iterable types (int, dict, etc.) fall back to []. Prevents character iteration on strings and TypeError on non-iterables. - parse_scene_json: add type normalization after toys extraction - test_non_list_toys_are_normalized: add tests for string, int, and dict edge cases Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>c15c885 -
feat: eyes client with robust scene-JSON parsing
GVillegasPM55d2789 -
feat: JSONL session trace logger
GVillegasPM +1: Claude Fable 5Implement TraceLogger for recording session events (utterances, replies, scenes) as JSONL records. Each record includes timestamp, event type, and payload. Session IDs are auto-generated (12-char hex) if not provided. This feeds the 'Sharing is Caring' hackathon badge dataset. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>fa417e2 -
fix: control type cannot be overwritten by hallucinated attrs
GVillegasPM +1: Claude Fable 5When an LLM hallucinated a type= attribute in control tags, it would silently overwrite the whitelisted control type (e.g. cast:add, beat:advance) downstream. Fixed by reordering dict merge to ensure the actual control type always takes precedence over any user-supplied attributes. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>f5b208c -
feat: reply protocol parser for voice segments and control tags
GVillegasPM4703065 -
docs: amend plan — drop fastrtc (gradio<6 pin), use kokoro/moonshine ONNX directly
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>dd602d1 -
test: strengthen story tests and add public API type annotations
GVillegasPM +1: Claude Fable 5- Add type annotations to StoryState.cast, add_cast_member, and apply_controls - Import Sequence and Iterable from collections.abc - Strengthen voice pool wrapping test with deterministic assertions (A,B,C,D) - Add three behavioral tests: duplicate cast deduplication, unknown control type, and case-insensitive voice_for Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>7026bc0 -
feat: story state with cast, beats, and control application
GVillegasPM +1: Claude Fable 5- Add CastMember and StoryState immutable dataclasses - Implement voice pool assignment with deduplication - Beat progression (hook → rising → showdown → ending) - Scene description tracking - Control tag parsing for cast, beat, and fateroll events Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>adefcc2 -
chore: scaffold imagine_buddy package and config
GVillegasPM +1: Claude Fable 5Resolves dependency conflicts by using kokoro-onnx==0.4.7 (latest available) and useful-moonshine-onnx. Initializes package structure with empty __init__.py files, pytest configuration, and shared configuration for Eyes/Brain models. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>3112d1a -
docs: Milestone A implementation plan (TDD task breakdown)
GVillegasPM +1: Claude Fable 5Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>f69f853 -
docs: idea bucket, research digest, and Imagine Buddy design spec
GVillegasPM +1: Claude Fable 5Brainstorm output for the Build Small Hackathon: 23-idea winning slate, verified model/platform research, and the approved design spec for Imagine Buddy (architecture B: pipeline of tiny specialists). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>011c24f