Skip to content

v0.7

Choose a tag to compare

@github-actions github-actions released this 29 Apr 17:37
· 841 commits to main since this release
v0.7: gameplay enrichment + long-session sustainability

Phase A (parallel ×3):
- Quest journal page (/play/:id/journal) — active vs resolved tabs
- BGM + SFX (5 styles × 30s loops, dice/state-up/state-down sfx) generated
  via ffmpeg; replace any /public/{bgm,sfx}/*.mp3 with your own
- 4 character SVG portraits hand-coded (riku/yuki/aya/sanchuan)
- Mute toggle (🔊/🔇) in top-right
- GM model warmup on session open (eliminates first-turn cold-load)

Phase B (sequential, all touch db schema):
- B0: NPC 攻略详情 — multi-axis affinity (好感/信任/羁绊/恋慕/敌意…),
  purpose, archetype, pin (永不掉出 context), <recall name='X'/> tag
  (one-shot dossier re-injection), clickable detail dialog, /play/:id/npcs
  roster page with search
- A4: character portrait upload (POST /characters/{id}/portrait, 5MB cap,
  png/jpg/webp/svg/gif), CharacterAvatar component, GameView header avatar
- B2: character XP + level — <character_xp delta='N'/> tag, POST /levelup
  with stat choice (HP/stamina +5, others +1), XP bar in header,
  auto-popup LevelUpDialog when threshold crossed
- B5: recursive summary compression — when summary > ~3000 chars, second
  LLM call produces refined summary + <event importance='N'>...</event>
  blocks; importance≥2 events persisted to new Timeline table

Schema: NPC adds purpose/archetype/affinity_json/pinned;
Session adds recall_pending_json; Character adds portrait_path/xp/level;
new Timeline table. Lightweight ALTER TABLE migration helper in db/base.py
auto-upgrades v0.6 databases on first launch.

96 backend tests passing.