Check whether the outcome improved
Define filter expectations
For every supported field, state operators, empty behavior, encoding, timezone, repeated-key rule, and expected result scope. Include an explicit unsupported case. Describe whether a no-match response is different from an omitted filter so a fallback cannot broaden results silently.
Exercise the serializer
Run the fixture set through the real encoder and compare final query, parsed request, status, and identifiers. Confirm reserved characters survive, dates use the intended boundary, repeated keys retain meaning, and empty values do not become an unfiltered request.
Cover navigation and retry
Apply filters through a page transition, refresh, and safe retry. Verify URL or request state remains consistent and results do not expand after an error. Check a nearby caller that shares the encoder, then retain the exact query and response evidence.
What to carry forward
Accept when each supported filter produces the expected request and identifiers, unsupported combinations fail visibly, and navigation preserves intent. Keep coverage open for undocumented parser behavior. Record fixtures, client revision, timezone assumptions, and any server-side limits.
Technical background: RFC Editor reference.
Keep the decision with the work.
Use a Work Item in Aglet to record the problem, the evidence you have, and the next decision. Add an owner and priority, then keep updates in the discussion so the next person can follow the reasoning.
Create an account See the product workflow