Skip to content

Derive where each manifest sits in its band, and stop saying nothing is released - #361

Merged
iderex merged 1 commit into
masterfrom
docs/the-band-argument-said-nothing-had-been-released
Sep 5, 2026
Merged

iderex merged 1 commit into
masterfrom
docs/the-band-argument-said-nothing-had-been-released

Conversation

@iderex

@iderex iderex commented Sep 5, 2026

Copy link
Copy Markdown
Collaborator

Refs #9

What was wrong

The band argument rested in three places on nothing having been released, and
two releases have been cut on the 10.11 line since:

gh release list --repo Flowfin/jellyfin-plugin-metadata-sync \
  --json tagName,createdAt --jq '.[] | "\(.tagName)\t\(.createdAt)"'
0.1.1.0-stable  2026-09-04T11:15:42Z
0.1.0.0-stable  2026-09-03T10:24:30Z

It also restated both manifest versions as literals in prose, and one of them
had moved:

git show origin/master:docs/supported-servers.md | sed -n '41,42p'
The two manifests sit at different distances from their bands. `build.yaml`
carries `0.1.0.0`, below its band, because the first release on the 10.11 line

git show origin/master:build.yaml | grep '^version:'
version: "0.1.1.0"

git log -1 --format='%h %ad %s' --date=short origin/master -- build.yaml
fb2c460 2026-09-03 Carry 0.1.1.0, the release that binds the floor it promises (#122)

So the document has carried the wrong number since 3 September, in the paragraph
that exists to say which package a server on either line is offered.

The third site is the one worth naming, because it is a guard's own stated
reason for permitting a state:

git show origin/master:Jellyfin.Plugin.MetadataSync.Tests/SupportedServersTests.cs | sed -n '215,218p'
/// Below its own is allowed and is the state the 10.11 line is in, because
/// nothing has been released and its first release is the major its band
/// names. At or below a lower line's is never allowed, and that is the half
/// that protects an operator: it is what keeps the newer line's package

Somebody deciding whether a version below its band is allowed was given a fact
the tracker contradicts. build-jf12.yaml's band comment carried the same
premise.

What holds it now

The version numbers are deleted from the prose rather than corrected, which is
the repair this tree already takes for a count, and the question they answered
becomes a fourth column of the band table that is derived rather than typed.
EveryBandSaysWhereItsManifestsVersionActuallySits reads each manifest's
version and refuses a cell that describes it wrongly, in a closed set of three;
EveryBandsDistanceIsOneOfTheThreeThisFileCanDerive holds the set closed,
because a phrase outside it describes nothing this file derives and would meet
the first leg only by accident of which of the three it was compared against.

The band table is four cells wide where the table above it is five, so the two
readers still tell the tables apart by width, which that reader's own remarks
name as the bound.

What stays negative, and it is new rather than removed

The release sentence names both releases with the command that reads them and
says that nothing in this tree re-derives it. The suite runs with no network, so
a release cut after that line was written leaves it stale and no leg here
notices. What a run does judge is the band column, which is a fact of the
manifests rather than of the tracker.

Proved by breaking it, restored between each

VSTEST_CONNECTION_TIMEOUT=300 DOTNET_CLI_UI_LANGUAGE=en dotnet test Jellyfin.Plugin.MetadataSync.sln --nologo

the manifest version raised into its band          -> 1 red, 1695 green
the other manifest's version raised off the foot   -> 1 red, 1695 green
the cell reworded to a phrase nothing derives      -> 2 red, 1694 green
the two cells swapped between the rows             -> 1 red, 1695 green
the column removed from the table                  -> 7 red, 1689 green
restored                                           -> Failed: 0, Passed: 1696

per target, over both server lines. The first is the real artefact rather than a
fixture: it is the move that actually happened, build.yaml going from 0.1.0.0
to 0.1.1.0, and it is the one nothing reddened for.

The last is the failing-open direction. With the column gone the band reader
finds no four-cell row at all, and an empty table agrees with everything; it
reds instead, on the legs that already asked the band table to be found.

What this does not move

No condition of #9 changes. The first condition's interface half still has no
call, the second is met on the build, the release route still publishes one of
the two packages, and the fourth is met and is where the notes on that issue
leave it. This is a repair to what the page says about the two manifests.

Reading

No second reader looked at this. The commands above are the evidence in place of
one.

…is released (#9)

The band argument rested in three places on nothing having been released,
and two releases have been cut on the 10.11 line since. It also restated
both manifest versions as literals in prose, and one of them had moved:
`docs/supported-servers.md` said `build.yaml` carried 0.1.0.0 while that
file has carried 0.1.1.0 since the second release, and no leg read the
sentence.

The version numbers are deleted from the prose rather than corrected, for
the reason a count is, and the question they answered becomes a fourth
column of the band table that is derived: `SupportedServersTests` reads
each manifest's version and refuses a cell that describes it wrongly, in a
closed set of three. A second leg holds the set closed, because a phrase
outside it describes nothing this file derives.

The release sentence names both releases with the command that reads them
and says plainly that nothing here re-derives it: the suite has no
network, so a release cut later leaves that line stale and no leg notices.
That disclosure is new rather than removed.

`build-jf12.yaml`'s band comment and the remarks on
`EveryManifestsVersionSitsInsideItsBand` carried the same false premise.
The second is the one worth naming: it is a guard's own stated reason for
permitting a state, and a reader deciding whether a version below its band
is allowed was given a fact the tracker contradicts.

Found by re-reading the page against the tree after the second release,
rather than by anything in this repository reporting it.

Signed-off-by: Nils Lehnen <30603423+iderex@users.noreply.github.com>
@iderex iderex added the documentation Improvements or additions to documentation label Sep 5, 2026
@iderex iderex self-assigned this Sep 5, 2026
@iderex
iderex merged commit bafb726 into master Sep 5, 2026
14 of 15 checks passed
@iderex
iderex deleted the docs/the-band-argument-said-nothing-had-been-released branch September 5, 2026 07:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant