d793f7b9fb
Two review findings on the salvage stack: - _write_turns' _quietly consolidation keyed failure on a None result, implicitly assuming add_memory never legitimately returns None. A None- returning stub (the most common mock idiom) would mark every successful write failed and re-append the batch forever. Module-level _FAILED sentinel: only a raised exception re-queues. - _pending_turns had no bound: a persistently failing service accumulated one entry per turn for the process lifetime (gateway runs never re-initialize), and every retry re-sent the whole accumulated payload — O(n^2) upload bytes, and a size-rejected batch could never shrink. Cap the buffer (50 turns / 256 KiB, drop oldest, warn once per trim).