-
v4.1.0 Stable
released this
2026-09-03 04:22:53 +00:00 | 80 commits to main since this release4.1.0 - 2026-09-03 - Link-Taxonomie: Lint-Findings hart ab kb_version 4.0.0, outbound: an das Type-Spec gebunden, part-of/composition als Inversenpaar
Author: Torben Nehmer
Der Rest von Issue #40, nachdem die Korpus-Migration durch ist: die beiden aufgeschobenen
Lint-Findings werden hart, und die drei Befunde aus dem Abschlusskommentar des Migrationslaufs
werden aufgelöst.unlabelled_edgesundunauthorised_labelssind harte Fehler — aber ankb_version
gebunden, nicht an ein Datum. Der Weg, denlegacy_citation_markersgenommen hat, war ein
Umlegen in einer späteren Version: eine Instanz, die die Zitat-Migration noch schuldete, lebte
danach mit rotem Lint. Das Ledger kann die Frage inzwischen beantworten, also tut es das.
Unterhalbkb_version4.0.0 bleiben beide beratend — genau das Fenster, in dem
instructions/migrations/4.0.0-link-taxonomy.mdder Instanz sagt, sie solle den halb
konvertierten Korpus Einheit für Einheit publizieren; ein Check, der dabei fehlschlägt, würde
den Korpus verweigern, dessen Fortschritt er misst. Ab 4.0.0 ist eine kahle Titelangabe in
related:keine Seite mehr, die auf ihre Umstellung wartet, sondern eine Kante, deren Autor
nicht gesagt hat, was sie behauptet.hard_error_keys()liefert die jeweils geltende Menge,
HARD_ERROR_KEYSbleibt die vollständige.outbound:ist an das Type-Spec gebunden.kb/sources/undkb/comparisons/
autorisierten Label, die dort strukturell nicht schreibbar waren: keiner der beiden Type-Specs
führte einrelated:. Folgenlos war das nicht — die einzige Comparison-Seite des Korpus trug
- **compares-with:** [[amd-pstate]]als handgeschriebene Prosa, ohne Marker-Region, ohne
Frontmatter, fürlintunsichtbar. Also ein Identifier zurück im Fließtext, gut vier Stunden
nachdem 4.0.0 genau das beendet hatte. Eine leere Autorisierung liest sich als Lizenz.Aufgelöst nach dem, was die beiden Contracts jeweils selbst sagen:
comparisonbekommt ein
related:(diecompares-with-Kante gegen jedes Subjekt ist die eine Aussage, für die die
Seite existiert),kb/sources/verliert seinenoutbound:-Block ersatzlos (dessen Contract
sagt ausdrücklich, seine Verknüpfungen seien der mechanische Provenance-Pfad und keine
Autorenkanten). Neu prüftdocs verifydie Kombination: einoutbound:-Block auf einer
Collection, in die kein Typ mitrelated:schreibt, ist ein Befund und nennt beide Richtungen
der Reparatur.composition/part-ofist das dritte Inversenpaar, nebendepends-on/required-by
undruns-on/hosts. Aus der Messung, nicht vom Schreibtisch: der u3-Lauf hatte entschieden,
die Gegenseite einescompositionbekommesee-also, weilpart-ofein Spiegel wäre. Ist es
nicht — der Satz des Elternteils zählt seine Teile auf, der des Kindes benennt das Ganze, zu
dem es gehört, und ein Leser, der auf dem Kind landet, braucht den zweiten. Übrig blieben 16
see-also-Kanten für eine Beziehung, für die der Katalog ein Wort hat; sie sind aufpart-of
umgestellt. Ein Inversenpaar macht die Gegenkante weiterhin nicht zur Pflicht — Richtung
wird verfasst, nicht gespiegelt —, es legt nur fest, welches Label sie trägt, wenn jemand sie
schreibt.Stack- und Korpusänderung laufen hier in einem Zug, entgegen der sonstigen Trennung. Der
neuedocs verify-Check würde eine bestehende 4.0.x-Instanz beim bloßen Kopieren der neuen
Maschinerie fehlschlagen lassen, weil derenkb/sources/COLLECTION.mddenoutbound:-Block
noch trägt — nach instructions/dev/version-parts.md
Schritt 1 ein Grenzübertritt. Statt dafür eine5.0.0zu lösen, ist die Ursache mitbeseitigt:
die Collection-Contracts dieser Instanz sind angepasst, unddist exportleitet die
COLLECTION.md.templatedaraus ab, also liefert jede neue Distribution die korrigierte Form
aus. Für eine bereits bestehende 4.0.x-Instanz bleibt eine Handbewegung übrig, und sie wird
hier benannt statt versteckt: die zweioutbound:-Zeilen auskb/sources/COLLECTION.md
löschen. Das neuerelated:imcomparison-Type-Spec erreicht sie ohnehin nicht — die vier
Page-Type-Specs gehören seit 4.0.0 der Instanz und werden nur als.templateausgeliefert.Offen aus #40 bleibt nichts mehr; Befund 2 des Migrationslaufs (dem Katalog fehlt ein Register
für Urheberschaft) ist als eigenes Issue erfasst.Downloads