Skip to content

fix: ignore stale ticket detail responses in Tickets page - #71

Draft
sonnymay wants to merge 1 commit into
mainfrom
claude/vibrant-meitner-1ub8ug
Draft

sonnymay wants to merge 1 commit into
mainfrom
claude/vibrant-meitner-1ub8ug

Conversation

@sonnymay

Copy link
Copy Markdown
Owner

Summary

Tickets.loadDetail let every in-flight request write state. Clicking ticket A and then ticket B while A's notes/history request was slow (Render cold start can take a long time) allowed A's response to land last and show A's notes and history under B, or clear B's loading state early. A request counter ref now ensures only the latest loadDetail call updates notes, history, detailError and detailLoading.

Distinct from #56 (which only touches the useApiResource hook in api.js; Tickets.jsx doesn't use it). #44 and #61 edit labels and button attributes in the same file, so a trivial merge conflict is possible but they don't overlap this logic.

Testing

  • npx eslint src/pages/Tickets.jsx clean.
  • vite build succeeds.

Generated by Claude Code

Clicking one ticket and then another while the first request was slow let
the older notes/history response overwrite the newly selected ticket's
detail view, or clear its loading state early. A request counter ref now
lets only the latest loadDetail call update state.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0171zWziw9ByH85SW4Y3yUZM
@vercel

vercel Bot commented Nov 10, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
supportops Ready Ready Preview Nov 10, 2026 3:02pm UTC

This branch was successfully deployed

1 active deployment
Preview — 16729b2f Deployed Nov 10, 2026 by vercel[bot]
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.

1 participant