Files
openclaw/docs/cli
Harjoth Khara 2358566c29 fix(doctor): session SQLite restore installs an empty session index over the valid archive (#117221)
* fix(doctor): restore the pre-migration session index when runs share a store

Restore picked the winning archive by manifest iteration order, newest first.
When a legacy writer recreated an empty sessions.json between migrations, the
newest run had archived that empty file, so restore installed it and then
refused the only archive holding real sessions as a conflict.

Resolve one winning archive per destination before writing anything, preferring
the earliest run whose archive is still restorable. Losing archives are never
deleted and stay visible as conflicts.

Closes #116163

* fix(doctor): fail closed on ambiguous session restores

* test(doctor): key restore conflicts by archive

* fix(doctor): narrow restored archive lookup

* fix(doctor): stream restore archive hashing

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-08-01 15:32:31 +08:00
..