Skip to content

Keep journal replay behind the shared InputPort contract - #192

Merged
Stephen Belanger (Qard) merged 4 commits into
mainfrom
pipeline/08-span-journal-ports
Oct 19, 2026
Merged

Stephen Belanger (Qard) merged 4 commits into
mainfrom
pipeline/08-span-journal-ports

Conversation

@Qard

@Qard Stephen Belanger (Qard) commented Oct 15, 2026 •

Copy link
Copy Markdown
Collaborator

Route processing consumes the existing InputPort and retains each delivery's original completion handle until checked sink delivery finishes. The journal adapter owns abandoned-input replay, persisted recovery waits, route binding, and head advancement. Source progress and flush barriers stay in session wiring, so the consumer has no journal or cursor API. This removes RouteInputPort and consumer-created prefix acknowledgements.

The consumer compares typed failure values without serializing persistence records; encoding stays with the source adapter. Bookkeeping follows main's mutex and panic-ban policies. Session wiring passes the existing observer key instead of serializing the route again. Inherited ledger completion recovery remains covered through the shared port.

Based on main at 601dcfd, including merged #188. Validation at 7a3f6ff: all 544 tests pass in the locked all-feature Rust suite without exclusions or environment overrides; five live-agent tests remain normally ignored. Coverage includes plain channels, journal replay forwarded through an ordinary channel, abandoned/cancelled receives, restart and plugin-edit recovery, deferred multi-batch acknowledgements, and ledger/head retry without resubmission. Strict all-target/all-feature Clippy, formatting, and diff checks pass. Fresh remote CI is pending.

Pipeline layer 8; base: main (includes #188).

Rebased at 618f178: all four commits retain identical patches (git range-diff); diff checks pass. Tests are left to fresh CI as requested.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-15T12:54:22.454969Z f27c539 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@Qard Stephen Belanger (Qard) changed the title Hide route journal behind input port Keep journal replay behind the shared InputPort contract Oct 15, 2026
@Qard
Stephen Belanger (Qard) force-pushed the pipeline/07-lifecycle-cleanup branch from 928e039 to 9bdc594 Compare October 16, 2026 16:24
@Qard
Stephen Belanger (Qard) force-pushed the pipeline/08-span-journal-ports branch from 9090075 to 7a3f6ff Compare October 16, 2026 16:51
@Qard
Stephen Belanger (Qard) force-pushed the pipeline/07-lifecycle-cleanup branch from 9bdc594 to d689455 Compare October 19, 2026 19:07
Base automatically changed from pipeline/07-lifecycle-cleanup to main October 19, 2026 19:15
@Qard
Stephen Belanger (Qard) force-pushed the pipeline/08-span-journal-ports branch from 7a3f6ff to 618f178 Compare October 19, 2026 19:15
@Qard
Stephen Belanger (Qard) merged commit 4520392 into main Oct 19, 2026
22 checks passed
@Qard
Stephen Belanger (Qard) deleted the pipeline/08-span-journal-ports branch October 19, 2026 19:25
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