Skip to content

fix(labels): bind async commits to their board - #3302

Open
Chris0Jeky wants to merge 12 commits into
mainfrom
codex/3301-label-board-ownership
Open

Chris0Jeky wants to merge 12 commits into
mainfrom
codex/3301-label-board-ownership

Conversation

@Chris0Jeky

@Chris0Jeky Chris0Jeky commented Sep 20, 2026

Copy link
Copy Markdown
Owner

Summary

Hardens the selected-board label collection against late responses, same-board refreshes, overlapping writes, and session changes:

  • stale reads cannot overwrite a newer read or confirmed mutation;
  • board-visit generations distinguish A→B→A and logout/login even when the board id repeats;
  • same-board detail refreshes may receive a successful in-flight write into their newly installed label array;
  • successful writes from an older visit trigger a bounded authoritative reconciliation only when that same board is currently reopened;
  • same-label update/delete requests are serialized because the API has no revision precondition;
  • queued writes recheck the initiating visit before transport starts, so pre-logout intent cannot run under a later session;
  • the first, unqueued write starts transport synchronously in the initiating call stack;
  • create deduplicates by stable id.

Tests

Focused deferred-promise coverage includes late fetch/create/update/delete after navigation, overlapping reads, stale reads after mutations, same-board refresh before write settlement, A→B→A reconciliation, reverse-settling same-label writes, and cancellation of queued work after session replacement.

Verification

Exact head: ba2eba81e08aa4a221dd26920f86404580242baa

  • Smart CI Self-Test run 35531548034: success.
  • CI Extended run 35531548246: success.
  • Required CI run 35531548208: success across frontend lint/typecheck/build/full tests on Ubuntu and Windows, backend unit/API integration on Ubuntu and Windows, architecture, migrations, containers, dependency/SAST/secret scans, docs governance, worktree contracts and E2E smoke.
  • Both Codex findings are addressed with dedicated regressions, replied to, and resolved.
  • Fresh exact-head diff review completed; no DTO, route, migration, control-plane or canonical-document changes.

Closes #3301

@Chris0Jeky
Chris0Jeky marked this pull request as ready for review September 20, 2026 15:13
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 20, 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-20T21:54:12.501043Z ba2eba8 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

  • 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
Chris0Jeky marked this pull request as ready for review September 20, 2026 18:31

@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: 58fa07b027

ℹ️ 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 frontend/taskdeck-web/src/store/board/labelStore.ts Outdated
Comment thread frontend/taskdeck-web/src/store/board/labelStore.ts Outdated
@Chris0Jeky
Chris0Jeky marked this pull request as draft September 20, 2026 18:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Pending

Development

Successfully merging this pull request may close these issues.

Label operations can commit into a board selected after navigation

1 participant