HERMES-GIELIE/api
nesquena-hermes 1d9b2ed730 fix: deduplicate legacy messages in merge_session_messages_append_only (#3393, @thanhtoantnt)
Adds _session_message_dedup_key (full-precision timestamp) so true duplicates
(same role + content + EXACT timestamp) fold, while legitimately-repeated
identical turns with sub-second-distinct timestamps survive — avoiding the
#3268 data-loss class. Wired into both the no-sidecar path and the merge loop's
seen_dedup_keys guard. Closes #3346.

Co-authored-by: thanhtoantnt <thanhtoantnt@users.noreply.github.com>
2026-06-02 19:20:23 +00:00
..
__init__.py
agent_health.py
agent_sessions.py
auth.py
background.py
clarify.py
commands.py
compression_anchor.py
config.py fix: generalized reasoning capability heuristics for custom providers (#3377) 2026-06-02 17:11:32 +00:00
dashboard_probe.py
extensions.py
gateway_chat.py fix: keep gateway context visible in chat transcripts (#3300, @AJV20) 2026-06-02 18:28:41 +00:00
gateway_watcher.py
goals.py
helpers.py fix(todos): hydrate cold-load state from session snapshot 2026-06-02 17:33:49 +00:00
kanban_bridge.py
metering.py
models.py fix: deduplicate legacy messages in merge_session_messages_append_only (#3393, @thanhtoantnt) 2026-06-02 19:20:23 +00:00
oauth.py
onboarding.py
passkeys.py
paths.py
plugins.py fix(#2622): plugin card UX — legible Open button, single badge, visible toggle + reject protocol-relative tab.path 2026-06-02 03:58:02 +00:00
profiles.py
providers.py
request_diagnostics.py
rollback.py v0.50.255: Opus follow-ups (4 fixes) + CHANGELOG 2026-05-01 17:19:53 +00:00
routes.py fix(todos): hydrate cold-load state from session snapshot 2026-06-02 17:33:49 +00:00
run_journal.py fix: filter interrupted recovery control text from visible transcript (#3321) 2026-06-01 20:07:16 +00:00
runner_client.py
runtime_adapter.py Stage 398: PR #2696 — feat(runtime): add runner-local adapter selection (RuntimeAdapter slice 4c, feature-flagged) 2026-05-21 17:43:54 +00:00
session_discoverability.py
session_events.py
session_lifecycle.py
session_ops.py
session_recovery.py
skill_usage.py
startup.py
state_sync.py fix: use Optional[T] for default None parameters in state_sync.py 2026-06-01 17:20:17 +00:00
streaming.py fix(stream): preserve repeated identical visible turns in gateway backfill (Codex MUST-FIX on #3300) 2026-06-02 18:43:25 +00:00
system_health.py
terminal.py
todo_state.py fix(todos): hydrate cold-load state from session snapshot 2026-06-02 17:33:49 +00:00
turn_journal.py
updates.py fix(updates): re-exec correctly in both source and frozen builds 2026-06-02 17:33:49 +00:00
upload.py refine(hotfix): Opus SHOULD-FIX — drop redundant equality clause + tighten symlink test 2026-06-02 02:28:44 +00:00
usage.py fix: display canonical cache hit percentage 2026-05-19 02:27:12 -06:00
workspace.py
workspace_git.py fix(workspace): tighten git subprocess trust boundary 2026-05-20 11:02:45 +00:00
worktrees.py