Skip to content

Preserve reminder drafts and clarify grounded analysis recovery - #2895

Merged
Chris0Jeky merged 9 commits into
mainfrom
codex/2808-final-recovery
Sep 10, 2026
Merged

Preserve reminder drafts and clarify grounded analysis recovery#2895
Chris0Jeky merged 9 commits into
mainfrom
codex/2808-final-recovery

Conversation

@Chris0Jeky

Copy link
Copy Markdown
Owner

Reminder-hour edits were lost when toggling reminders or receiving a confirmed validation rejection. Preserve those drafts for correction and explicit saving, while account changes and uncertain writes still require reconciliation. Grounded analysis now reports competing inserts/revision writes accurately, preserves the winning evidence, and sends exactly the previewed excerpt to the model.

Closes #2893. Closes #2894. Refs #2808.

Validation:

  • Full frontend: 6,436 passed, three existing skips; typecheck, production build and scoped ESLint pass.
  • Full backend: 9,315 passed, 34 existing skips. After the final excerpt correction, 17 observation API and 19 application tests pass; the full solution was not repeated after that narrow correction.
  • Three real-API Chromium journeys pass; after the final validation fix both reminder journeys pass again, including actual HTTP 400 correction, both enable directions, explicit save, account/revision recovery, four experiences, Grove/Grove Night and mobile accessibility.
  • The draft and SQLite competing-write regressions failed before their repairs. One independent bounded review plus its final scoped validation/base pass are CLEAN. Documentation links, GitHub governance and diff checks pass.

This branch includes the merged #2892 receipt without a runtime tree change. The database/browser fixtures and speech/model transports are synthetic. Physical microphone acceptance, live-provider usefulness and production deployment remain separate. Full evidence and limits are in docs/product/WORKSPACE_OVERHAUL_VALIDATION.md; owner decisions remain in OUTSTANDING_TASKS.md. No automatic model retry or board apply is introduced.

@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:12:27.177791Z ba6dcf5 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 review evidence: one fresh-context bounded Luna review of the complete recovery diff and one final narrow pass over the confirmed-400 handling and unchanged-tree main integration both returned CLEAN. The review covered draft/account generations, uncertain-save behavior, SQLite competing insert/update outcomes, winning evidence, one-time usage settlement, the exact previewed model text, and no automatic resend. No HIGH/CRITICAL defect remains from that review. Final local checks are recorded in the PR body and validation ledger; hosted exact-head checks remain the merge gate.

@Chris0Jeky

Copy link
Copy Markdown
Owner Author

Integration cleanup receipt: verified branch747e9c4e8 is contained in main; archived20copiedresources, all overhaulartifacts/backups and testresults under evidence/worktree-archive/integration with SHA256manifest. Reverified20sourcefilehashes before deleting only the duplicate integration/filesAndResources/taskdeck-overhaul directory. Normal git worktree remove deleted the checkout but reported permission denied on its administrative directory. Live git worktree list no longer contained integration; dry-run prune identified only its missing-gitdir metadata. Ran ordinary git worktree prune to finish metadata cleanup. No forced removal, primary resource deletion, branch deletion or data loss. Primary sourcepack remains untouched.
Ordinary prune also reports permission denied for the remaining administrative directory. No further deletion attempted. The actual checkout is gone, artifacts are preserved and the stale empty administrative entry is a nonblocking local cleanup residual.

@Chris0Jeky

Copy link
Copy Markdown
Owner Author

Hosted review reconciliation: the automatic Codex review summary reports Completed for f39cc6c, and the current review/inline-comment endpoints contain no findings. This is an informational completion notice; no fix commit is needed. The independent bounded review evidence remains in comment5616052325. Required CI is still running its Windows API integration test step; no merge is attempted before that gate completes.

@Chris0Jeky

Copy link
Copy Markdown
Owner Author

New-base revalidation: required run34458797270 passed in full at f39cc6c, but PR2869 landed main2f0ec0324 before merge. Merge commit d25edf2 integrates that base without changes under backend/, frontend/ or .github/workflows. Only five auxiliary continuation admission/ledger files were added. The 343 continuation tests,684-file documentation-link check, governance and diff checks pass. A bounded fresh-context review of this base delta is CLEAN and confirms the prior recovery review remains valid. No product logic changed and the previous full local/hosted evidence remains applicable to the product; the repository-required exact-head workflow is rerunning before merge.

@Chris0Jeky

Copy link
Copy Markdown
Owner Author

Second base revalidation: required run34462673996 passed completely at d25edf2. Beforemerge, unrelated PR2871 landed main2d50256be. Merge dc83330 adds seven portable CI tooling/docs/test files without touching application code or workflow definitions. All350continuation tests pass; bounded new-base review is CLEAN and confirms the existing product review remains valid. Documentation links686/0broken, governance and diff checks pass. Final head eb955d4 also records the two successful full hosted runs in the product delivery notes; no product logic changed. The current exact-head required gate remains the final merge condition.

@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: eb955d4ae2

ℹ️ 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".

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

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

if (attention.busy || !attention.settings) return
savingEnablement = true
try { await attention.save(enabled) }
finally { savingEnablement = false }

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Prevent stale saves from clearing a newer draft guard

If account A's enable save remains pending, the session changes, and account B loads settings and starts another enable save, account A's eventual finally clears the component-wide savingEnablement flag while B's request is still active. When B's response updates attention.settings, the synchronous watcher then rehydrates the form from persisted settings and discards B's unsaved reminder-hours draft. Scope the guard with a request token or counter so an older completion cannot clear a newer request's protection.

Useful? React with 👍 / 👎.

@Chris0Jeky

Copy link
Copy Markdown
Owner Author

Triage of3978276081: confirmed MEDIUM/P2 component-guard race. The store still rejects stale account receipts, but an old finally can clear a newer enable-save guard and discard unsaved hours fields. No saved-state or private-account authority loss is identified. Tracked separately in #2896 for a bounded request-ownership fix and regression; this is nonblocking for the current qualified delivery under the repository's review rule. No fix commit is added to2895.

@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.

@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: ba6dcf5266

ℹ️ 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".

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

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

Comment thread docs/STATUS.md
Last Updated: 2026-09-10

Optional reminder hours (#2808, pending delivery): explicit weekday and time windows in an IANA zone, including overnight and daylight-saving behavior. Server checks precede question lookup and budget admission; preference edits preserve the shared UTC allowance, old-client toggles retain the window, and exports include it without a new migration. The slice passed 9,270 backend and 6,421 frontend tests, with 34/three existing skips respectively. After parent integration, 56 API tests, 56 component tests, typecheck/build and five Chromium journeys pass, including a reproduced and fixed account-erasure race. Firefox and mobile Grove/Grove Night evidence are recorded in the validation ledger. Exact-head hosted qualification remains pending. [Policy](product/WORKSPACE_ATTENTION.md).
Final overhaul recovery follow-up (#2893/#2894, [PR #2895](https://github.com/Chris0Jeky/Taskdeck/pull/2895)): retain an unsaved hours draft across enable-only saves and confirmed validation rejections, distinguish competing question writes from source changes, and send the model exactly the previewed excerpt. Final frontend passes 6,436 tests with three existing skips; full backend passes 9,315 with 34 existing skips, followed by 17 API and 19 application tests for the final payload correction. Build/typecheck, scoped lint, browser recovery and bounded independent review pass. Required hosted runs 34458797270 and 34462673996 passed at reviewed heads f39cc6cf3 and d25edf2a5, including both operating-system suites and browser smoke. The PR records subsequent base qualification and the final merge receipt. The source and draft regressions were reproduced before repair; the validation ledger records their scope.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Do not claim a merge receipt before it exists

This marks PR #2895 as having a final merge receipt, but the changed validation ledger still says hosted exact-head qualification remains the merge gate (WORKSPACE_OVERHAUL_VALIDATION.md lines 28–29), and unlike the completed PRs below, no merge SHA or date is recorded. Since STATUS.md is the shipped-reality source of truth, keep this entry pending until the merge occurs or replace the claim with the actual receipt afterward.

AGENTS.md reference: AGENTS.md:L15-L18

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

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

Classified MEDIUM/P2 wording ambiguity, non-blocking. This paragraph records two completed hosted runs and directs readers to this PR for subsequent base qualification and the final receipt; it does not supply or verify a merge SHA. For clarity: #2895 is OPEN and unmerged, current head ba6dcf5, required run 34469579196 is still in progress. No final merge receipt exists yet. The actual merge SHA and exact-head success will be posted here only after the gate passes and the merge succeeds. Declining another documentation-only head push/CI restart for this phrasing; the delivery tracker remains explicitly pending.

@Chris0Jeky
Chris0Jeky merged commit b344a5a into main Sep 10, 2026
36 checks passed
@Chris0Jeky
Chris0Jeky deleted the codex/2808-final-recovery branch September 10, 2026 11:34
@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

#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.

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.

Distinguish concurrent observation saves from changed sources Preserve unsaved reminder hours through toggles and validation errors

1 participant