HERMES-GIELIE/api
nesquena-hermes ef26d19549
fix: batch v0.50.228 — renderer, model race, tool card, empty session, .env (#1179)
Merged as v0.50.228. 2644 tests passing. Browser QA 21/21 (desktop 1440×900 + mobile iPhone 14). All 5 fix invariants verified live in browser.

**Fix verifications:**
- #1172 (`renderMd` pre-stash): `rawPreStash` present in function, `<pre>` blocks pass through without content rewrite ✅
- #1174 (model race guard): `syncTopbar()` contains `liveStillPending` guard ✅
- #1175 (tool card): `.tool-card-result pre` max-height=360px, `.tool-card.open .tool-card-detail` overflow=auto, cap=600px ✅  
- #1176 (empty session guard): double-click New Conversation on empty session → stays on same session, composer focused ✅
- #1178 (`.env` atomic write): `tempfile.mkstemp + os.replace` in `providers.py`, 9/9 env tests pass ✅

Thanks @bsgdigital (#1150) and @bergeouss (#1178)!
2026-04-27 15:28:19 -07:00
..
__init__.py
agent_sessions.py fix: batch triage — 12 contributor PRs (v0.50.227) (#1168) 2026-04-27 13:34:59 -07:00
auth.py fix(auth): persist sessions across restarts via STATE_DIR/.sessions.json (#962) 2026-04-24 11:21:41 -07:00
background.py feat(commands): /background, /btw slash commands + undo button + reasoning chip 2026-04-24 01:24:51 +00:00
clarify.py feat: harden clarify dialog flow and refresh recovery 2026-04-15 13:10:50 +08:00
commands.py feat: slash command parity + skill autocomplete — v0.50.91 (PR #711) 2026-04-19 05:37:44 +00:00
config.py fix: batch triage — 12 contributor PRs (v0.50.227) (#1168) 2026-04-27 13:34:59 -07:00
gateway_watcher.py v0.50.207: batch of 10 PRs — TPS stat, SSE guard, session polish, cron UX, folder create, model errors, session speed, title gen (#1031) 2026-04-25 13:07:35 -07:00
helpers.py v0.50.223: model picker, idle retry, drag-drop, CSP, clipboard copy (#1127) 2026-04-26 15:29:02 -07:00
metering.py v0.50.207: batch of 10 PRs — TPS stat, SSE guard, session polish, cron UX, folder create, model errors, session speed, title gen (#1031) 2026-04-25 13:07:35 -07:00
models.py fix: batch triage — 12 contributor PRs (v0.50.227) (#1168) 2026-04-27 13:34:59 -07:00
onboarding.py fix: batch v0.50.228 — renderer, model race, tool card, empty session, .env (#1179) 2026-04-27 15:28:19 -07:00
profiles.py fix(profiles): complete profile isolation via cookie + thread-local (#805) 2026-04-21 17:04:11 +00:00
providers.py fix: batch v0.50.228 — renderer, model race, tool card, empty session, .env (#1179) 2026-04-27 15:28:19 -07:00
routes.py fix: batch triage — 12 contributor PRs (v0.50.227) (#1168) 2026-04-27 13:34:59 -07:00
session_ops.py fix: batch triage — 12 contributor PRs (v0.50.227) (#1168) 2026-04-27 13:34:59 -07:00
startup.py fix(security): gate auto-install behind HERMES_WEBUI_AUTO_INSTALL=1 — v0.50.156 2026-04-22 20:49:28 +00:00
state_sync.py
streaming.py fix: batch triage — 12 contributor PRs (v0.50.227) (#1168) 2026-04-27 13:34:59 -07:00
updates.py fix: update banner — conflict recovery path + server self-restart after update (#816) 2026-04-21 17:10:41 -07:00
upload.py
workspace.py fix: batch triage — 12 contributor PRs (v0.50.227) (#1168) 2026-04-27 13:34:59 -07:00