Repository navigation
fix(postgres): preserve uncertain transaction outcomes through cleanup - #137
Merged
Merged
Conversation
freeqaz-openai
marked this pull request as ready for review
September 12, 2026 00:39
freeqaz-openai
force-pushed
the
codex/work-8ac03db200ba1d850e6a5f56
branch
from
September 13, 2026 00:06
d07d6c4 to
f6b0c22
Compare
freeqaz-openai
force-pushed
the
codex/work-4f093aba450a3d088a059fa7
branch
from
September 13, 2026 00:06
9062ac9 to
4991689
Compare
This was referenced Sep 13, 2026
kevinslin
previously approved these changes
Sep 14, 2026
freeqaz-openai
force-pushed
the
codex/work-8ac03db200ba1d850e6a5f56
branch
from
September 14, 2026 07:49
f6b0c22 to
cb22ec7
Compare
freeqaz-openai
force-pushed
the
codex/work-4f093aba450a3d088a059fa7
branch
2 times, most recently
from
September 14, 2026 11:12
89146ba to
43a15c0
Compare
freeqaz-openai
changed the base branch from
codex/work-8ac03db200ba1d850e6a5f56
to
main
September 14, 2026 11:12
freeqaz-openai
dismissed
kevinslin’s stale review
September 14, 2026 11:12
The base branch was changed.
This was referenced Sep 14, 2026
freeqaz-openai
force-pushed
the
codex/work-4f093aba450a3d088a059fa7
branch
from
September 14, 2026 18:15
43a15c0 to
2e2084a
Compare
kevinlin-openai
previously approved these changes
Sep 14, 2026
Collaborator
Author
|
oi, should have used stacked PRs. Merged the other branch into this one. Gonna wait for CI and then merge this (if GitHub permissions let me; UI still says "blocked on code owner review") |
This was referenced Oct 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A PostgreSQL connection can fail after the server commits a resource mutation but before the client receives its acknowledgment. Reporting that failure as definite rollback can trigger unsafe Driver compensation. Cleanup errors can also hide the original transaction failure.
Update the existing PostgreSQL transaction owner to preserve the outcome through connection release:
COMMITacknowledgment; an acknowledgedROLLBACKremains a known failure.PostgresCommitOutcomeUnknownError, which the existing controller already uses to suppress unsafe compensation.This change is based directly on main and applies to the state owner already used by the production controller and worker. Extend the existing shared rollback contract to compare the original Error identity while retaining resource, audit, and queued-work absence checks. Register the focused outcome suites and document the readback requirement in the PostgreSQL testing guide.
Validation
Local PostgreSQL 16.15 evidence does not establish the PostgreSQL 18.6 CI result; the new main-based candidate needs its own required CI run.