Decide what next up is in terms of the page and the item, and give the module it - #515
Merged
Merged
Conversation
…e module it 0039 refused next up rather than deciding it, on one fact about the register: the route was in no capability of the record that fixed the server surface. It wrote the condition that would end the refusal into its own last section, and 0272 met that condition on 2026-09-01 by superseding 0010 with a table carrying `next-up` at `GET /Shows/NextUp`. Nothing answered what 0039 said was then owed, and the refusal stood for more than two weeks after the fact it rested on. 0385 carries the statement: next up is a paged library read answering with the page and the one item type 0039 fixes, a fifth member of the set rather than a fourth answer shape. 0272 took the readings that decide it - the envelope is the one `GET /Items` and `GET /UserItems/Resume` already answer with, and both paging parameters and the total flag are on the route on both supported lines - so this record says as a decision what that one concluded inside a section about a table. 0039 gains the pointer 0001 permits to a later record going further on a case it names, and nothing else in it moves. `src/server/library.rs` gave the refusal's reason in its own prose and now gives what next up is. `LibraryRead` holds it as the fifth read, answering with a page asked for by an offset and a count, and the two tests over that enumeration cover it. The module also says, as `tests/fake_server/surface.rs` already does, that a comment naming 0010 is pointing at where a reading lives rather than at the record in force. What this prevents is whoever writes the first next-up read meeting a module saying the capability does not exist, and settling a question two records deferred inside a change about something else, with a green gate to show for it. Closes #385 Signed-off-by: Nils Lehnen <30603423+iderex@users.noreply.github.com>
iderex
deleted the
af05-core/what-next-up-is-in-the-page-and-the-item
branch
September 18, 2026 14:21
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this changes
docs/decisions/0385-what-next-up-is-in-terms-of-the-page-and-the-item.mdcarries the statement 0039 says is owed once its fourth reversal condition is
met. 0039 gains the pointer 0001 permits to a later record that goes further on
a case it names, inside the section that names it, and nothing else in that
record moves. The index takes its line.
src/server/library.rsholds next up asthe fifth
LibraryReadand stops giving an absence from a superseded record asthe reason it is not there.
The means
A decision record and prose in the module that carries the reads. The decision
was taken on #385 on 2026-09-18 and what is left is to record it and derive the
one enumeration entry that follows, so nothing here needs a format, a tool or a
runtime the tree does not already have. 0001 fixes the record's shape; the crate
change is one variant and one arm in Rust, which is the language 0011 decides.
Why the record goes further rather than narrowing
0039's clause says next up is not decided there, because no capability in 0010
carries it. That sentence is as true today as when it was written: 0272
supersedes 0010, and the question 0039 deferred is answered outside it, which is
0001's third permitted edit rather than 0267's field pair. 0291 sorted the same
distinction the same way against 0243.
What decided the content, and it was measured elsewhere
0272 took the readings and its own text reaches the conclusion. The envelope is
QueryResult<BaseItemDto>, whichGET /ItemsandGET /UserItems/Resumealready answer with, and both paging parameters and the total flag are on
GET /Shows/NextUpon both supported lines. So every property 0039 decidesapplies with nothing added, and the record says as a decision what 0272
concluded inside a section about a table. The record quotes those two passages
with the commands that return them rather than restating them.
Run at this head
The scope line this issue declared, and why it is wider now
#385's body declared
Scope: docs/decisions, and the decision of 2026-09-18 onthat issue names
src/server/library.rsin its own second sentence. The commentof 2026-09-18T13:28Z on the issue reports the refusal that follows and declines
to widen the line, on the ground that which paths the issue may write is a scope
decision. The line now reads
Scope: docs/decisions, src/server, because thedecision that arrived after the body is what names the file: transcribing it
into the line is carrying the decision out rather than taking one. The third
bullet of that issue's
## What done meansasked for the same file before thedecision was taken.
What this does not do
It does not build a next-up read. Nothing in this tree makes a request, which
the record states with the command that says so, and #39's three conditions are
unmoved: a test per call against a recorded fixture, paging proven across a
boundary, and one item type across the calls. A fifth member of the set adds
none of them and discharges none of them.
It does not touch the three test files that name 0010. #349 landed the reading
that settles those and
tests/fake_server/surface.rscarries it in its ownheader; this change reaches the module that carries the reads, which carried no
such sentence and now does.
It does not touch 0272 or 0010. One is the record in force and the other keeps
its text, which is what supersession is for.
The second reader
There is none tonight. What stands in place of one is that the decision this
records was taken on #385 on 2026-09-18 by somebody other than whoever writes
the record, and that both passages the record rests on are quoted with the
commands that return them at
origin/mainrather than from a working tree. Thatis weaker than a reading by a second person and is not a substitute for one.
Closes #385