Keep recovery metadata after branch parent field

Restore the compact() source-order expectation used by the branch metadata contract test while keeping focused compression recovery markers in the compact payload.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Frank SongandPaperclip committed 2026-07-04 22:36:19 +08:00
1 parent 1e9d42c053
commit f25571342e
1 file changed
+4 -4
+4 -4
View File
@@ -1439,16 +1439,16 @@ class Session:
'last_prompt_tokens': self.last_prompt_tokens,
'compression_recovery': self.compression_recovery,
'recommended_recovery_action': self.recommended_recovery_action,
**({
'compression_recovery_source_session_id': self.compression_recovery_source_session_id,
'compression_recovery_action': self.compression_recovery_action,
} if (self.compression_recovery_source_session_id or self.compression_recovery_action) else {}),
'gateway_routing': self.gateway_routing,
'gateway_routing_history': self.gateway_routing_history,
'manual_title': self.manual_title,
# Only emit 'parent_session_id' when set (the /branch fork link, #1342).
# Sessions without a fork must not leak None — see test_session_lineage_metadata_api.
**({'parent_session_id': self.parent_session_id} if self.parent_session_id else {}),
**({
'compression_recovery_source_session_id': self.compression_recovery_source_session_id,
'compression_recovery_action': self.compression_recovery_action,
} if (self.compression_recovery_source_session_id or self.compression_recovery_action) else {}),
**({
'worktree_path': self.worktree_path,
'worktree_branch': self.worktree_branch,