Skip to content

codex: preserve the stable base when freezing recovery - #92

Merged
ttaylorr-oai merged 1 commit into
metafrom
tb/codex/recovery-stable-base
Sep 8, 2026
Merged

codex: preserve the stable base when freezing recovery#92
ttaylorr-oai merged 1 commit into
metafrom
tb/codex/recovery-stable-base

Conversation

@ttaylorr-oai

Copy link
Copy Markdown
Collaborator

After resolving an unstable conflict, publish-topics rebuilds the unchanged stable candidate with new merge timestamps. The recovered preview still descends from the original commit, so freezing fails with “completed unstable recovery belongs to a different stable candidate.”

Reuse the original base after checking its ancestry, tree, and expected topic integrations against the rebuilt candidate. Complete output verification and the exact preview-base check still run before freezing.

Validation: advance the test clock between recovery and freezing. The regression fails on the current controller and passes with this change, retaining the exact stable base and leaving remote refs unchanged. The full controller suite was not rerun for this change.

After resolving an unstable conflict, publish-topics assembles the stable
candidate again. Its merge timestamps change even when its tree and topic
integrations do not. The recovered preview still descends from the old
candidate, so the exact-base check rejects the completed recovery.

Keep that original base after checking its ancestry, tree, and expected
topic integrations against the rebuilt candidate. The existing output
verification still checks the complete recovered graph before freezing it.

Advance the test clock between recovery and publication, and verify that
the frozen candidate retains the recovered graph's exact stable base.

Signed-off-by: Taylor Blau <ttaylorr@openai.com>
@ttaylorr-oai
ttaylorr-oai force-pushed the tb/codex/recovery-stable-base branch from 37ff424 to be1c3ac Compare September 8, 2026 01:35
@ttaylorr-oai
ttaylorr-oai merged commit db983e7 into meta Sep 8, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants