A page returned for a changed page-token request: a continuation or a new search?
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Documentation
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- typescript
- Domain
- backend-api-design, security
Research direction
Start by reading spec §§8.2 and 8.2.2 alongside the suite behavior described in the issue. Decide whether a successful response to a changed page-token request is a continuation, a new search, or undefined, whether it must include a page object, and whether the error requirement should be strengthened. Done means the specification and suite expectations resolve these questions consistently.
Written by the indexing model from the issue text.
Description
When a request contains a token, all entities (e.g., subject, resource, action, context) and pagination parameters (e.g., limit) MUST be identical to the preceding request. PDPs SHOULD return an error when any entity or parameter has been changed. (spec §8.2)
Any Search API Response MAY include a page object, but if a response does not contain the entire result set, it MUST include this object. (spec §8.2.2)
§8.2 says what a PDP should do with a changed request, but not what a PDP that answers it anyway is answering: the next page of the original search, or the changed search from the start. Each reading leads to a different response: a continuation carries a page object, while a new search whose results fit in one page may leave it out.
Suite today. The suite sends the first page's token back with a changed limit, or a changed subject, resource or action. A 4xx passes; a 200 is a warning, and the page is still checked as a search response. Every check on that page is at its usual severity except one: a missing page object, which is a failure after a valid token, is a warning here. The suite does not compare such a page's results with the fixture.
Questions.
- Is a 200 to a changed page-token request a continuation of the original search, a new search, or undefined?
- Must it carry a
pageobject? - Could "SHOULD return an error" become a MUST, so that the question does not arise?
- Dominant language
- TypeScript
- Stars
- 171
- Forks
- 46
- Avg merge
- 3h 29m
- Merged PRs (30d)
- 38
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from openid/authzen
-
Certification Scenario §7.2.2, §7.3.2 and §7.4.2: identical results, or identical fixture results?Possibly taken @alexolivier claimed this 7 days ago. Openauthorization-api certification
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Search interop runner compares results as JSON strings, so member order decides PASS/FAILMay be free again A pull request for this issue was closed without being merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
openid/authzen#693 · 3 comments ·
Maintainers usually reply within 1 day
-
certification
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
openid/authzen#640 · 1 comment ·
Maintainers usually reply within 1 day
-
access-requests
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
openid/authzen#578 · 3 comments ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 55/100
Maintainers usually reply within 1 day
Similar issues
-
check:passed streams:add
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
S: triage
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Maintainers usually reply within 1 day
-
iot client
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Open-Locker/Open-Locker#365 ·
Maintainers usually reply within 1 day
-
bug enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 69/100
inmanta/web-console#7787 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
shoelace-style/webawesome#2979 ·
Maintainers usually reply within 1 day