Your build starts here
Replace bracketed details with your own goal, context, and checks. Keep the first build small enough to inspect.
Repair [search, image processing, or analysis view] where a previous background job can finish after a newer request. Identify the input snapshot, job ID, result owner, and UI state for each attempt. Use cancellation where the actual API supports it, and keep a separate rule for rejecting obsolete results even when work cannot be canceled immediately.
Define loading, intentional cancellation, failure, and successful-empty output separately. Release job-owned resources when appropriate and do not let an old completion replace a newer draft or selection. State what happens when the component closes while work is pending.
Verify a slow first job followed by a fast second job, cancellation before completion, cancellation after completion, an error from an obsolete job, and leaving the view. Record which result was accepted and why. Report resource cleanup and any operation that remains uncancelable.Make this prompt yours
An abort signal affects supported operations; it is not a universal cancellation mechanism for arbitrary CPU work or workers.
You might also hear
- stale result
- cancel worker
- AbortController
- race condition
- job identity
- latest request
The docs behind it
These references explain the underlying concepts and APIs. The prompt templates and project plans are original examples to adapt to your own setup.
Research sources reviewed .
Editorial review · October 28, 2026
Supported: Original obsolete-job template. AbortController affects supported async operations, not arbitrary worker CPU work; identity-based rejection and cleanup remain requested implementation policy.