Skip to content

refactor(db): extract reminder delivery store - #6787

Draft
TheSentinel454 wants to merge 1 commit into
codex/issue-12-allowlist-storefrom
codex/issue-13-reminder-store
Draft

refactor(db): extract reminder delivery store#6787
TheSentinel454 wants to merge 1 commit into
codex/issue-12-allowlist-storefrom
codex/issue-13-reminder-store

Conversation

@TheSentinel454

@TheSentinel454 TheSentinel454 commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Current reconstructed head

Exact base: codex/issue-12-allowlist-store at 7ae63f6be2f3f1265b976f37756f3ca0caaffa59
Exact head: codex/issue-13-reminder-store at 9ca2f893f7c23d972cb90c163672b2e5bbbf5e1b

This current head removes crates/buzz-db/tests/store_ownership.rs; no replacement path-sensitive ownership test is introduced. Apart from removing that complete test-file diff, the production patch is byte-for-byte identical to the previously reviewed slice. This remains part of tracker #2 and the #17/#19 acceptance work.

Independent exact-head review from a separate clean Blox workstation found no issues. Current-head evidence passed formatting, strict buzz-db clippy, 111 non-PostgreSQL library tests with 200 PostgreSQL tests ignored, the observability source test, relay consumer compilation, exact ownership/unique-span review checks, and 4 reminder PostgreSQL tests on native PostgreSQL where applicable.

Why

Complete the reminder-delivery slice of tracker #2 and domain issue #13 while keeping event insertion/materialization separate from reminder scheduling. This child stacks on the authentication-allowlist extraction in #6784.

What

  • Add a dedicated reminder.rs owner for DueReminder, due-reminder querying, atomic claim/claim-with-stamp/release SQL, Db methods, focused PostgreSQL tests, and datastore spans
  • Preserve the existing Db signatures and buzz_db::event::{DueReminder, query_due_reminders, claim_due_reminder, claim_due_reminder_with_stamp, release_due_reminder} paths with compatibility re-exports
  • Add the canonical crate-root DueReminder export
  • Preserve event-table storage, latest-per-address ordering, archived-community exclusion, claim stamp semantics, and cross-community isolation
  • Keep extract_not_before and its four parser tests in event.rs, beside general event insertion materialization

Stack

Non-goals

  • No SQL, schema, ordering, retry, timeout, transaction, or client-visible behavior changes
  • No movement of event insertion or not_before materialization out of event.rs
  • No reminder scheduler/relay behavior change
  • No store traits, domain-handle redesign, broad PgExecutor migration, raw pool accessor, new crate, or directory-wide reorganization
  • No changes to, retargeting of, or merge action on parent PRs or PR Add database pressure observability #6700

Risk Assessment

Low. This is a direct ownership move. SQL and bind order are unchanged, public Db and prior event module paths remain compatible, and the moved PostgreSQL tests cover latest-due tenant identity, cross-pod claim exclusion, matching-stamp release, and cross-community isolation.

Blox Verification

Author workstation: buzz-tornquist-issue-2-store-stack (2046520), exact head 52b7bb6cba2a0d09877cc8a1b3a561eb537256da.

  • cargo fmt --all --check — passed
  • cargo clippy -p buzz-db -p buzz-relay --all-targets -- -D warnings — passed
  • Native PostgreSQL: DATABASE_URL=postgres://buzz:…@localhost:5432/buzz cargo test -p buzz-db reminder::tests:: -- --ignored --test-threads=1 — 4 passed
  • cargo test -p buzz-relay --lib -- --test-threads=1 — 909 passed, 48 ignored
  • git diff --check and commit-time formatting, sadscan, attribution, and sign-off hooks — passed

Independent exact-head review: buzz-tornquist-pr-6787-review (2049679) checked detached head 52b7bb6cba2a0d09877cc8a1b3a561eb537256da over exact merge-base f30633fc37d9b44860db5644418e066a917dc113. No critical, important, or minor findings.

Generated with Codex

Superseded pre-comment restack verification

PR #6700 merged before publication completed. This layer was restacked onto current main through the exact parent named above; the final cumulative tip is 2ddcc8a. Cumulative author gates passed: formatting and diff checks; buzz-db and buzz-relay all-target clippy with -D warnings; DB lib 111 passed / 200 ignored; ownership 22/22; observability 1/1; the full isolated PostgreSQL domain matrix; and relay lib 910 passed / 49 ignored.

  • Workstation: buzz-tornquist-pr-6787-final-review (2057624), fresh shallow checkout
  • Base: b7347e78843d7b63e3cb383da7cbf5ffc956d4f0
  • Head: 35f3b66eae412d4aeea1500c9022681966b14a5f
  • Findings: none

Reviewed DueReminder, event-table reminder query/claim/release SQL, Db wrappers, tests, and spans moving to reminder.rs. Existing event-module function paths and crate-root type paths are re-exported. Claim stamps, cross-community isolation, concurrency semantics, and release predicates remain unchanged. General event insertion and extract_not_before remain event-owned, avoiding a reversed dependency.

Verification: format and diff checks passed; buzz-db --all-targets clippy passed with -D warnings; DB lib tests passed (111 passed, 200 PostgreSQL tests ignored); ownership (5/5) and observability (1/1) guards passed; all 4 reminder PostgreSQL lifecycle/isolation tests passed on native PostgreSQL 17 with migrations 1-32 successful; relay lib test target compiled successfully. Final worktree was detached at the exact head and clean.

Complete evidence archive SHA-256: 10e79e8829dc5f0a6adc2dbb6cae565ecbe947d0b328e02073d00173a5fb33c7.

Comment-addressed restack

Review follow-up on #6777 removed only the low-value replaceable ownership source test. This PR was restacked onto its rewritten parent; its production patch is unchanged.

  • Exact base: fa88a642a7aa10ce74f8cea692653e50b427f89e
  • Exact head: 888627a3d41b72c904d1546fe62492f01bdfdd3e
  • Final cumulative tip: 6fa2f104d42c6ba85bdf62e7ccb74ceaf4a84f67
  • Per-layer patch-ID and tree audits confirm this PR’s production diff is unchanged from its pre-comment head.
  • Cumulative Blox gate: formatting and diff checks; strict buzz-db/buzz-relay Clippy; DB lib 111 passed / 200 ignored; ownership 21/21; observability 1/1; every moved PostgreSQL test; relay lib 910 passed / 49 ignored.
  • Independent re-review at this exact head: no findings; fresh exact-parent/head Blox review passed fmt/diff, strict Clippy, DB lib 111 passed / 200 ignored, current ownership/observability guards, 4 reminder PostgreSQL tests, and relay compilation.

@TheSentinel454
TheSentinel454 force-pushed the codex/issue-13-reminder-store branch from 52b7bb6 to 35f3b66 Compare August 25, 2026 20:06
@TheSentinel454
TheSentinel454 force-pushed the codex/issue-13-reminder-store branch from 35f3b66 to 888627a Compare August 25, 2026 20:59
@TheSentinel454 TheSentinel454 changed the title db: extract reminder delivery store refactor(db): extract reminder delivery store Aug 26, 2026
@TheSentinel454
TheSentinel454 force-pushed the codex/issue-13-reminder-store branch from 888627a to 1da846c Compare August 26, 2026 14:33
Signed-off-by: OpenAI Codex <codex@openai.com>
@TheSentinel454
TheSentinel454 force-pushed the codex/issue-13-reminder-store branch from 1da846c to 9ca2f89 Compare August 26, 2026 15:53
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