express + react · Easy · response projection
A browser and API disagree at the stable cross-layer ordering boundary. A results table can be sorted by score or name. Equal values currently jump between renders and the live-region summary describes the requested direction rather than the order actually applied.
Task
Repair the shared browser-to-service contract. Return a stable ordered ID list and one concise announcement for the applied sort.