Skip to content

Preserve reminder drafts across overlapping account saves - #2897

Merged
Chris0Jeky merged 4 commits into
mainfrom
codex/2808-reminder-save-ownership
Sep 10, 2026
Merged

Preserve reminder drafts across overlapping account saves#2897
Chris0Jeky merged 4 commits into
mainfrom
codex/2808-reminder-save-ownership

Conversation

@Chris0Jeky

Copy link
Copy Markdown
Owner

An enable-save request from a previous account could finish after a newer account started another save. Its finally cleared the shared draft-protection flag, allowing the newer response to overwrite unsaved reminder hours. Give each save a unique guard identity so only its own completion can release that protection.

Closes #2896. Refs #2808.

This is a small follow-up stacked on #2895. Merge #2895 first, preserve its branch until this PR is retargeted, then qualify the resulting base before merge.

Validation:

  • Both old-request resolution and rejection reproduced the draft loss before the fix; all22reminder component cases now pass. The regressions use the real store/account generations and verify the retained draft saves explicitly against the newer revision.
  • Full frontend:6,438passed,3existing skips across416files. Typecheck, production build, scopedESLint,686-file documentation link check, governance and diff checks pass.
  • Backend and workflow definitions are unchanged. Existing account resets and uncertain-save recovery remain active.

This follows the nonblocking review finding3978276081 without adding another fix cycle to2895. Product evidence and limits are in docs/product/WORKSPACE_OVERHAUL_VALIDATION.md. Physical-device/live-provider acceptance and existing owner decisions in OUTSTANDING_TASKS.md remain separate.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 10, 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-09-10T11:11:16.584458Z 0115119 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.

@Chris0Jeky

Copy link
Copy Markdown
Owner Author

Independent bounded Luna review of the two runtime/test files is CLEAN: unique request identity prevents stale completion from releasing a newer guard, account/store generation checks remain active, and both old-save resolve/reject regressions preserve B's fields and explicitly save against revision11. The reviewer independently passed22targeted tests, scopedESLint,typecheck and diffchecks; root's fullfrontend6438/3skip and productionbuild are also green.

Nonblocking test note: the reverse B-before-A settlement order is not separately parameterized. Declined additional coverage here because the same identity comparison handles it and the reported acceptance sequence is directly exercised; no defect was identified. No new browser run is claimed for this tiny component change; the component tests exercise the actual shared store, and hosted browser qualification remains part of the required gate.

@Chris0Jeky

Copy link
Copy Markdown
Owner Author

Current base qualification: both pending overhaul PRs now include main f667ae1 (#2878). This preserves the full Linux and Windows API suites while allowing Linux E2E to run alongside Windows qualification. All 354 continuation and required-E2E dependency tests pass. Independent bounded review is CLEAN: both platforms retain their prerequisites and full commands; Windows remains unconditional and required; no application files or recovery behavior changed. Documentation links (686 files), governance and diff checks pass.

Parent #2895 is at ba6dcf5; child #2897 is at 0115119. The workflow and CI-tooling content is identical between them. The child's previously reviewed request-identity fix is unchanged from its passing 6,438-test frontend qualification. The older CI runs were superseded by these pushes, not classified as product failures. Merge #2895 first and preserve its branch until #2897 is safely retargeted.

@Chris0Jeky

Copy link
Copy Markdown
Owner Author

#2895 merged as b344a5a at 2026-09-10T11:34:50Z after all checks passed, including required run 34469579196 at reviewed head ba6dcf5. Issues #2893 and #2894 closed as completed.

The merged tree is exactly 3adb0dab44c55fedfae6a3a555c7f978c3b58f7d, identical to the reviewed/tested parent head. #2897 is now retargeted to main; its actual merge base remains ba6dcf5, so its reviewed five-file diff, combined runtime tree and CI inputs are unchanged. Closing references now resolve to #2896 only. No merge-receipt-only commit or redundant application test run is needed; its exact-head required gate remains mandatory and pending Windows API completion.

@Chris0Jeky

Copy link
Copy Markdown
Owner Author

The retargeted #2897 required product run 34469618802 succeeded (18 jobs), but Smart CI run 34472048605 failed because GitHub retained merge ref 2a6da97 with old parent ba6dcf5 even after base moved to main b344a5a. The resolver rejected that parent three times with base mismatch (not the live base branch tip), producing planner-error. This is an observed control-plane/merge-ref mismatch, not a product-test failure or assumed flake.

Bounded recovery: merge the already-tested parent receipt into the child, producing b57f7fa. Its tree is exactly d6b2b2ea1753ef71c031aeeab4bff6b01be334ae, identical to the fully tested prior head; backend/frontend/workflow/tooling diffs are empty. The existing independent review still covers the unchanged runtime and actual base. New required run 34472353566 is in progress; no gate is bypassed and no Smart CI code was modified.

@Chris0Jeky
Chris0Jeky merged commit beace64 into main Sep 10, 2026
36 checks passed
@Chris0Jeky
Chris0Jeky deleted the codex/2808-reminder-save-ownership branch September 10, 2026 12:04
@github-project-automation github-project-automation Bot moved this from Review to Done in Taskdeck Execution Sep 10, 2026
@Chris0Jeky

Copy link
Copy Markdown
Owner Author

Overhaul implementation delivery receipt — 2026-09-10

The source-backed #2808 implementation is delivered on main beace64. All 20 original resources still match the manifest by path, byte length and SHA-256. The three chats and supplied handoffs are reconciled in the product feature ledger.

Final deliveries:

The final recovery preserves unsaved reminder hours through toggles, confirmed validation errors and overlapping account saves; reports concurrent observation writes accurately; and sends exactly the previewed model excerpt. All switchable experiences, Grove themes, thinking/dependencies, Studio continuity, explicit Companion context/board previews, private originals/audio/transcription, grounded questions, optional attention/time zones and portable personal comparisons have their source-backed delivery and proving evidence.

Local qualification: 6,438 frontend passes with three existing skips; 22 targeted reminder component cases. Full backend 9,315 passes with34existing skips, followed by17API+19application tests for the final payload correction. Build/typecheck, lint, docs/governance and bounded independent reviews pass. Real-API browser recovery and earlier all-experience/selected mobile/Firefox evidence are recorded in docs/product/WORKSPACE_OVERHAUL_VALIDATION.md. Suite totals include existing tests, not only newly added tests.

A retarget-induced Smart CI merge-reference mismatch was diagnosed and recovered without runtime changes or weakening a gate; evidence is on #2897 and #2562. The replacement exact-head required run passed before merge.

Separate future release work: #2898 and eleven v0.4 QA issues now prepare feature expectations, outcome matrices, device/UX/provider/hosted sessions and a result ledger. PR #2910 carries seven documentation files, including the current capabilities/stubs/deferred-work guide and44initialNOTRUNcases. Its own hosted qualification remains separate from this completed overhaul implementation delivery. Creating that programme does not claim its future sessions have run.

Not verified by synthetic integration proof: physical microphone/device acceptance, live-provider usefulness, subjective best layout/non-intrusion, release acceptance or production deployment. Manual comparisons are descriptive, not randomized/statistical A/B tests. Broader semantic recall, generic processor hosting #2258 and historical representation migration #2260 remain their separately scoped roadmap work.

Use Experience for Classic/Studio/Companion/Unified, Presentation for detail and Appearance for Grove/Grove Night. The walkthrough is C:/Taskdeck-overhaul/evidence/TRY-THE-OVERHAUL.md. The tested checkout remains C:/Taskdeck-overhaul/source-context; QA docs are in C:/Taskdeck-overhaul/qa-contracts.

Primary checkout is still clean at fc7cea0 and its working database is untouched. Completed worktree artifacts remain in C:/Taskdeck-overhaul/evidence/worktree-archive with hash manifests. The stale integration administrative-directory cleanup refusal is recorded; no preserved content was discarded.

Existing human actions remain in OUTSTANDING_TASKS.md: RT-1/2/3, CL-1 (budget/alert/retention already supplied), BEN-1/DIST-1 and existing dogfooding, device, provider, signing/private-CI and subjective acceptance decisions. No human decision is inferred from these test receipts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Keep reminder draft protection owned by the active save

1 participant