Review follow-ups: PR #628 — fix: identify and clear bulk lister review warnings #876
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Non-blocking findings from the auto code review of PR #628 (fix: identify and clear bulk lister review warnings) — captured for batch cleanup rather than blocking the PR.
Commit
45920fa· https://github.com/Gambit-Inc/gambit/pull/628SHOULD-FIX:
frontend/app/hq/lister/bulk/page.js:870— The new inline "Confirm card & finish" button in the list view callsupdateRow(row.id, confirmReview(row)), which only setsreviewedSelectionand does not setchecked: true. Compare to the identically-labeled button in the one-by-one reviewer (page.js:732,onClick={() => acceptAndNext(row, {})}), whereacceptAndNextsetschecked: trueas part of confirming. Result: clicking "Confirm card & finish" on an unchecked, ambiguous row in the list view flips its badge to "Confirmed" and removes it from the "Needs attention" filter (needsReviewbecomes false), but the card is still not incheckedRowsand won't be sent to the Lister batch. The only remaining signal is the generic "N unselected cards won't be sent" banner at the confirm step — a user who trusts the "Confirmed" badge can walk away believing this card is queued when it isn't.frontend/app/hq/lister/bulk/page.js:582-586—acceptAndNext(row, {})now early-returns via thecanSelectCardguard (page.js:535) before doing anything else. Previously, pressing Enter on ano_match/errorrow still advanced to the next card (setIndexran unconditionally); now Enter is a no-op on those rows, silently stalling keyboard-only navigation through the one-by-one reviewer (arrow keys still work, but this is a regression for a workflow this feature explicitly optimizes for keyboard speed).NITS:
frontend/app/hq/lister/bulk/page.js:1971(card?.name || "Unmatched card"in theselectedAttentionRowslist) — dead fallback: every row here comes fromcheckedRows, which already requirescanSelectCard(row)(i.e.,selectedCard(row)truthy), socardcan never be null/undefined at this point.Filed from a Claude Code session