Skip to content

Consolidate durable subscription lifecycle and retention - #188

Merged
Stephen Belanger (Qard) merged 5 commits into
mainfrom
pipeline/07-lifecycle-cleanup
Oct 19, 2026
Merged

Stephen Belanger (Qard) merged 5 commits into
mainfrom
pipeline/07-lifecycle-cleanup

Conversation

@Qard

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

Copy link
Copy Markdown
Collaborator

Durable heads restore subscriptions even when their canonical route is absent from captured envelopes. Routing-only startup does not synthesize native controls. Retirement releases route observers; credential refresh updates the existing lease cache, and backend/organization bindings prevent redirecting an acknowledged head after restart.

Retention collects only expired, inactive partitions whose source is caught up and whose registered and captured routes have no unresolved obligations. Retained inputs protect referenced transcript mirrors and correlation state. Ledger loading and correlation-write failures retain work instead of bypassing persistence. Source shutdown closes shared SQLite connections after serialized task shutdown so cancelled blocking reads cannot retain Windows file handles.

Preserves #187's append-only ledger completion recovery and all-span journaled provenance. Lifecycle bookkeeping follows main's non-poisoning mutex policy; missing auth providers and route-encoding failures use explicit handling under the production panic bans. Updated ledger fixtures handle fallible initialization without weakening inherited completion tests.

Stacked on #187 (5aee065). The checked-delivery SDK remains pinned in #174. InputPort and submission-stage isolation remain in later layers.

Validation at 9bdc594: all 541 tests pass in the locked all-feature Rust suite without exclusions or environment overrides; five live-agent tests remain normally ignored. Coverage includes retention obligations and referenced files, schema migration, backend pinning, dormant subscription recovery, credential refresh, cancelled-read storage closure, checked-delivery rejection, provenance, and ledger/head completion recovery. Strict all-target/all-feature Clippy, formatting, and diff checks pass. Fresh remote CI is pending.

Pipeline layer 7 of 9; base: #187.

@Qard
Stephen Belanger (Qard) force-pushed the pipeline/07-lifecycle-cleanup branch from fe50517 to 41ba2bb Compare October 14, 2026 02:27
@Qard
Stephen Belanger (Qard) force-pushed the pipeline/06-recovery-transitions branch from 066c394 to c1fc4d9 Compare October 14, 2026 02:27
@Qard
Stephen Belanger (Qard) force-pushed the pipeline/07-lifecycle-cleanup branch from 21b30df to 6b5fe9e Compare October 14, 2026 05:15
@Qard
Stephen Belanger (Qard) marked this pull request as ready for review October 14, 2026 05:59
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 14, 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-14T06:05:33.395407Z 6b5fe9e Draft marked ready
ℹ️ 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.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6b5fe9ea0b

ℹ️ About Codex in GitHub

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

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "Codex (@codex) review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "Codex (@codex) address that feedback".

Comment thread bt-daemon/src/server/auth.rs
Comment thread bt-daemon/src/server/recovery.rs
Comment thread bt-daemon/src/server/maintenance.rs Outdated
@Qard
Stephen Belanger (Qard) force-pushed the pipeline/06-recovery-transitions branch from 5aee065 to 8b9e7a8 Compare October 19, 2026 18:49
Base automatically changed from pipeline/06-recovery-transitions to main October 19, 2026 19:07
@Qard
Stephen Belanger (Qard) force-pushed the pipeline/07-lifecycle-cleanup branch from 9bdc594 to d689455 Compare October 19, 2026 19:07
@Qard
Stephen Belanger (Qard) merged commit 601dcfd into main Oct 19, 2026
22 checks passed
@Qard
Stephen Belanger (Qard) deleted the pipeline/07-lifecycle-cleanup branch October 19, 2026 19:15
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