Commit Graph

5 Commits

Author SHA1 Message Date
Claude Worker claude2 10af7b28b2 chore: ignore .worktrees/ 2026-06-10 13:49:10 +02:00
Claude Worker claude2 7fe0bd2af6 chore: drop sdkconfig.old from tracking
CI / platformio (pull_request) Failing after 4m11s
idf.py set-target regenerates these backups on every target switch;
they slipped into the previous commit. Ignore them like sdkconfig.
2026-06-10 10:51:31 +02:00
L'électron rare 2a596b9fcb feat(idf): POST /game/scenario hot-load
game_endpoint gains a /game/scenario handler that accepts a Runtime 3
IR JSON (<=64 KiB), validates schema_version + non-empty steps array,
rotates the existing scenario to .bak, writes to LittleFS at
/littlefs/scenario.json on partition 'storage', and reboots after
the HTTP response flushes so the engine picks up the new IR.

ota_server bumps max_uri_handlers 8 -> 16 to fit the extra handlers
(/game/scenario plus headroom).

sdkconfig.qemu disables PSRAM + esp-sr so the firmware boots inside
qemu-system-xtensa without crashing on the unemulated octal PSRAM.
QEMU_HOWTO.md documents the workflow and the WiFi/Ethernet gap that
still blocks full HTTP smoke under emulation.
2026-05-24 10:46:29 +02:00
L'électron rare 96a4f19a87 feat: NPC engine + BOX-3 voice
- npc_engine: state machine, mood, triggers
- tts_client: Piper TTS HTTP + SD fallback
- qr_scanner: HMAC-SHA256, debounce
- box3_voice: WebSocket voice client
- zacus_story_gen_ai: AI story generator

Impact: Sprint 2-3 firmware deliverables.
2026-04-02 09:20:43 +02:00
Isaac db7083845b Initial commit: Freenove ESP32-S3 UI + story engine from le-mystere-professeur-zacus
- Sources: ui_freenove_allinone/ (LovyanGFX + LVGL rendering)
- Libraries: story engine, hardware managers, audio codec drivers
- PlatformIO: freenove_esp32s3_full_with_ui environment
- Status: Ready for optimization work

Date: 2026-03-01
2026-03-01 20:08:00 +01:00