Say what a server writes where the registrator said nothing does (#385) - #386
Merged
Merged
Conversation
Two comments thirty-one lines apart in PluginServiceRegistrator.cs disagreed about whether a server writes a pairing record, and both were in force. The one at the record store registration said nothing on a server writes a record because nothing joins an enrolment to the state machine, named issue #350 for the join, and concluded that the read above it answers an empty list on every server. The one at the state machine registration, thirty-one lines below, said the join exists and that the administrative plane calls it. The second is the true one. Enrolment.Open applies LocalEvent.WindowOpened through the state machine, AdministrativePlaneController.OpenEnrolmentWindow calls it, and the windows read answers with the record in PairingState.Offered that produces. The controller's own remark already carries that correction and says so at the read; only the registrator was left stating the absence. The false sentence is the one a reader meets first, it is stated as what is UNCHANGED, and it names an issue that is closed as completed as the reason for the absence. Following that number arrives at work finished and invites the reading that something else filled the gap. It is also a sentence that travels: it is the claim that kept the consumer contract in issue #43 recorded as waiting on an enrolment that could not run, and re-reading the file for that issue is how the disagreement was found. The paragraph is rewritten in the form the rest of the file already uses for a sentence that stopped being true: it says what the comment used to say, then what the tree does now. What replaces it names issue #19, which is open, for the one absence that is still real - no record reaches PairingState.Active, because nothing derives a long term key pair for the ceremony to compare. Nothing but comment text changes. Both targets build with warnings as errors, 0 warnings and 0 errors, and the suite is green on net10.0 with 1238 passed, 6 skipped and 0 failures; this machine carries no .NET 9 runtime and none was installed for this, so the net9.0 target was compiled and not executed here. Nothing was measured against a running Jellyfin server. Closes #385 Signed-off-by: Nils Lehnen <30603423+iderex@users.noreply.github.com>
The comment rewritten in the commit before this one is four lines longer than
what it replaced, so every line below it in PluginServiceRegistrator.cs moved
by four, and two of them are pasted in docs/logging.md as the reading that
shows which types take a logger. `Reproduce every pasted reading` refused the
head for it, naming docs/logging.md:200 and printing the two lines as removed
and their successors as added.
The two numbers are updated to what the command prints now, 220 to 224 and 239
to 243. The third line that block pastes is at 130, above the edit, and is
unchanged.
Found by the check rather than by reading, on the run of this pull request:
reading-check: 89 reading(s) judged at HEAD - 85 reproduced, 0 historical, 3 pointer(s), 1 bad.
A thing met while repairing it and not repaired here. docs/lifecycle.md pastes
two lines of the same file as 50 and 160 and the file answers 52 and 264:
git grep -n 'AddHostedService' -- Jellyfin.Plugin.ServerPairing/PluginServiceRegistrator.cs
Jellyfin.Plugin.ServerPairing/PluginServiceRegistrator.cs:52: serviceCollection.AddHostedService<ConfigurationAtStartup>();
Jellyfin.Plugin.ServerPairing/PluginServiceRegistrator.cs:264: serviceCollection.AddHostedService<StoreAtStartup>();
Both were already wrong before this branch, by two lines and by a hundred and
four, so neither is this change's doing and the check does not refuse either.
That block pastes its command without the `origin/master:` prefix the refused
one carries, which is the difference between the two, and what the check does
with a paste in that shape is not measured here. It is left as it stands rather
than corrected in a change about a comment.
This commit is documentation text and changes no behaviour.
Signed-off-by: Nils Lehnen <30603423+iderex@users.noreply.github.com>
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.
Two comments thirty-one lines apart in
PluginServiceRegistrator.csdisagreedabout whether a server writes a pairing record, and both were in force. This
makes the first one say what the tree does. Issue #385.
What was wrong
At
origin/master4f5cd668cacdb5f4a6637741728131e4e1ee90a5:Line 146 said nothing joins an enrolment to the state machine, named issue #350
for the join, and concluded that the read above it answers an empty list on
every server. Line 177 said the join exists and that the administrative plane
calls it.
Which of the two is true
The second. The join is in the tree and the route reaches it:
The controller's own remark already carries this correction where the read
happens. Only the registrator was left stating the absence.
Why it is worth a change rather than a note
The false sentence is the one a reader meets first, it is stated as what is
UNCHANGED, and it names a closed issue as the reason for an absence, so
following the number arrives at work finished and invites the reading that
something else filled the gap. It also travels: it is the claim under which the
consumer contract in #43 was recorded as waiting on an enrolment that cannot
run, and re-reading this file for that issue is how the disagreement was found.
What the replacement says
The form the rest of the file already uses for a sentence that stopped being
true - what the comment used to say, then what the tree does now. The one
absence that is still real is named with an open issue rather than a closed
one: no record reaches
PairingState.Active, because nothing derives a longterm key pair for the ceremony in #19 to compare.
A second commit the first one made necessary
The rewritten comment is four lines longer than what it replaced, so every line
below it in that file moved by four, and two of them are pasted in
docs/logging.mdas the reading that shows which types take a logger.Reproduce every pasted readingrefused the first head for it and named thesite:
The two numbers are carried, 220 to 224 and 239 to 243. That check is green on
the head this pull request now carries. It found the breakage rather than a
reader finding it, which is the whole reason it exists.
A thing met while repairing that and NOT repaired here.
docs/lifecycle.mdpastes two lines of the same file as 50 and 160, and the file answers 52 and
264:
Both were wrong before this branch existed, by two lines and by a hundred and
four, so neither is this change's doing. That block pastes its command without
the
origin/master:prefix the refused one carries, and what the check doeswith a paste in that shape is not measured here. It is left as it stands rather
than corrected in a change about a comment.
The means
Comment text in a C# file this tree already carries. The artefact is a sentence
inside an existing source file, so the means is forced by where the defect is;
it adds no language, no runtime and no dependency, and it is judged by the
suites and the gate that already run on this repository.
What was run
Both targets compiled. This machine carries no .NET 9 runtime and none was
installed for this, so the
net9.0target was compiled and not executed here;Build and teston this pull request is what says the other line passes. Thesix skips are the POSIX permission cases, which do not run on Windows.
Not claimed
Nothing here was measured against a running Jellyfin server. No enrolment
window has been opened on one, no record has been read back from one, and this
change alters no behaviour: the diff is a comment and two line numbers in a
document.
No check reads either sentence.
reading-check.ymlre-runs a pasted readingand neither of these was one, so a comment stating the opposite of the file it
sits in is refused by nothing here and none is proposed by this change.
This board has no second reader tonight. The commands above stand in place of
one rather than beside one.
Closes #385