Skip to content

feat(plugin): add locked conditional recovery for retained events - #2591

Merged
kunickiaj merged 1 commit into
mainfrom
feat/conditional-rejected-recovery
Nov 7, 2026
Merged

kunickiaj merged 1 commit into
mainfrom
feat/conditional-rejected-recovery

Conversation

@kunickiaj

@kunickiaj kunickiaj commented Nov 7, 2026 •

Copy link
Copy Markdown
Owner

Description

Add storage primitives for explicit recovery of retained rejected events. Recovery holds a per-event lock, passes the original serialized bytes to a delivery callback, and removes the retained copy only after a strict acknowledgement and an unchanged snapshot check.

Delivery, cleanup, and lock-release outcomes are reported separately so a release failure cannot hide a durable success or replace the original exception. The plugin reference documents lock repair and durability limits.

These primitives are not yet connected to HTTP retry or automatic queue advancement.

Type of Change

  • 🚀 Feature (new functionality)
  • 🐛 Bug fix (fixes an issue)
  • 📚 Documentation (docs-only change)
  • 🔧 Maintenance (refactor, chore, CI, etc.)
  • 🧪 Testing (test-only changes)

Testing

  • After restacking onto main: pnpm run tsc, 147 tests across six recovery/delivery/inspection files, and pnpm lint:delta -- --base main --json passed.

  • Before restacking: full workspace build, packed-artifact smoke, and nine legacy spool tests passed.

  • Recovery tests cover competing processes, crashes, acknowledgement rejection, snapshot changes, and filesystem failures.

  • Relevant checks pass locally (pnpm run tsc, pnpm run lint, pnpm run test)

  • Added/updated tests for changes

  • Manually verified changes work as expected

Checklist

  • Code follows project style (pnpm run lint passes for touched files)
  • Self-review completed
  • Documentation updated (if needed)
  • No new warnings introduced

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 7, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

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

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-07T17:34:40.875437Z 0e9452f New commits
ℹ️ 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 review" or "@codex security review".

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

Copy link
Copy Markdown
Owner Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@kunickiaj
kunickiaj force-pushed the feat/conditional-rejected-recovery branch from 17bd200 to 0e9452f Compare November 7, 2026 17:33

kunickiaj commented Nov 7, 2026 •

Copy link
Copy Markdown
Owner Author

Merge activity

  • Nov 7, 5:33 PM UTC: Graphite rebased this pull request as part of a merge.
  • Nov 7, 5:38 PM UTC: @kunickiaj merged this pull request with Graphite.

@kunickiaj
kunickiaj merged commit 16e8603 into main Nov 7, 2026
18 checks passed
@kunickiaj
kunickiaj deleted the feat/conditional-rejected-recovery branch November 7, 2026 17:38
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.

1 participant