Skip to content

0091 carries a reading that has moved, and 0269's repair does not reach a paste that has a note beside it #313

Description

@iderex

0091 states the licence line it places on #95 as a command with its output, and
the output no longer reproduces. 0269 decides what happens to a paste in that
state, and the repair it prescribes cannot be applied here without breaking a
sentence that was added beside the paste afterwards. Which of the two moves is
right is a rule question, and it is the reason this is an issue rather than a
change.

What is wrong

Read at the mainline as it stands:

git rev-parse origin/main
13defcfc4b8f660d946666c6a90dfe70f221ed6a
git show origin/main:docs/decisions/0091-what-the-first-release-contains.md | sed -n '73,81p'
The documentation an operator reads before installing. #95, with the data page
from #74 linked and summarised, and the licence named:

    gh api repos/Flowfin/core --jq '.license.spdx_id'
    AGPL-3.0

The licence the reading above names is the one that was superseded. What #95
names is the answer that stands, in
[0303](0303-the-licence-the-core-is-offered-under.md).

The same command against the reference a reader has:

gh api repos/Flowfin/core --jq '.license.spdx_id'
Apache-2.0

Neither the pasted answer nor the answer the note points at. The sentence beside
the paste is about which licence is superseded and says nothing about the
reading, so a reader who runs the command finds a third answer and cannot tell
from the record whether it or they are wrong.

When the listing moved is not measured. The note may have been written while the
paste still reproduced, so nothing here says the option 0269 prices and refuses
was taken knowingly.

What the tree already decides, and where it stops

git show origin/main:docs/decisions/0269-a-reading-a-record-pasted-that-has-moved.md | sed -n '13,16p'
Where a landed record pastes a command and the output that command produced, and
the output no longer reproduces, the output is deleted and the command is left
standing alone; nothing is pasted in its place, and this is a fourth edit that is
not a supersession.

Deleting AGPL-3.0 leaves the note pointing at a reading that names no licence,
so the note has to move with it, and that is an edit adding prose to a landed
record. 0001 withholds that permission and 0269 narrows it for the output alone:

git show origin/main:docs/decisions/0269-a-reading-a-record-pasted-that-has-moved.md | sed -n '7p'
Narrows: 0001, on the rule that a record is never edited in place, which does not reach a pasted output deleted so that only the command that produced it is left

So the two available moves are a deletion that breaks the sentence beside it and
a prose edit nothing authorises. 0269 anticipated the shape without anticipating
this collision - it prices a sentence beside a paste as an alternative it
refuses, and does not say what happens where one is already there:

git show origin/main:docs/decisions/0269-a-reading-a-record-pasted-that-has-moved.md | sed -n '136,139p'
A sentence beside the paste saying the output moves, which is what
`docs/gate-parity.md` does. It costs more than what it replaces: it is an edit
that adds prose to a landed record, so it needs the same permission this record is
about, and it leaves the wrong output standing as the first thing a reader meets.

This is a class rather than one paragraph. Every pasted reading in every record
goes stale when the world moves, 0269 says so of itself, and a note added beside
one is the shape that arrives whenever a record is re-read without being
superseded.

What this is not

It is not a defect in what the core is offered under. Cargo.toml, README.md
and NOTICE.md all state MIT OR Apache-2.0, and the two texts are at the root.
What the hosting provider's listing reports is a state on the provider rather
than a byte in this tree, which 0303 says and declines to decide; the reading
above is the measurement that record did not carry, and it belongs to #95 where
an operator meets it.

Done when

  • 0091 no longer carries an output that does not reproduce, by whichever of the
    two moves is decided, and the decision covers a note added beside a paste
    rather than only this paragraph.
  • Where the answer is that 0269 does not reach a paste carrying a note, that is
    recorded in docs/decisions/ as a record going further than 0269 rather than
    as an edit to it.
  • The comment on Write the documentation an operator reads before installing the first release #95 of today names the record that settles it.

Scope: docs/decisions

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

blocked-on-decisionWaits on an entry of #1 that is not answered yetdecisionAn architecture decision that must be written down with its reasonsdocumentationImprovements or additions to documentation

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions