instructions verify gleicht "wikitool commands used" gegen den Skill-Body ab
#83
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Herkunft
Offene Frage aus #78, dort mit ja beantwortet und hierher ausgelagert. #78 fand die Drift per Wegwerf-Skript ueber alle fuenf
SKILL.md:cite addfehlte in zwei Listen,types describeundxref addin je einer,publishin zweien; umgekehrt standenrm,log status,lint --markdownundlint --jsonin Listen, ohne dass ein Schritt sie begruendet. Behoben in4.8.0-beta.11— von Hand, und damit genau so lange richtig, bis der naechste Schritt sich aendert.Befund
Der Abgleich ist rein mechanisch: Kommandovorkommen im Body gegen den Abschnitt "wikitool commands used", in beide Richtungen. Er ist zugleich die Art Drift, die beim Lesen niemand bemerkt — die Liste steht am Dateiende, der Schritt in der Mitte, und keine der beiden Stellen zeigt auf die andere.
tools/wikitool instructions verifyprueft heute Frontmatter, Referenzen, diedev/-Grenze und Byte-Gleichheit der publizierten Kopien; dieser Abgleich waere die naechste Regel derselben Art.Was ihn nicht trivial macht
Drei Ausnahmeklassen, die ein Pruefer alle kennen muss, sonst meldet er dieselben Stellen bei jedem Lauf:
publish-cycle.md.publish,log append,index rebuildundsources rebuild-indexstehen in mehreren Listen, ohne dass ein Schritt sie aufruft — der Schritt sagt "Close out. publish-cycle.md". Das ist Absicht.xref removeinwiki-managegehoert zum Unlinking-Fall, den der Skill als Ganzes anpage-lifecycle.mdabgibt. Seit4.8.0-beta.11steht das als Satz unter der Liste.wiki-linttraegt seit4.8.0-beta.11einen Absatz**Deliberately absent:**mitrmundlog statussamt Grund. Ohne diesen Marker traegt sie jemand aus Vollstaendigkeit wieder ein — mit ihm meldet ein naiver Parser sie als "gelistet, aber unbenutzt".Klasse 3 ist die einzige, die schon einen maschinenlesbaren Anker hat. Fuer 1 und 2 ist zu entscheiden, ob eine Allowlist im Code reicht (kurz, aber eine zweite Stelle, die mitgepflegt werden will) oder ob der Body die Delegation selbst markieren soll.
Zu entscheiden
instructions_cmd.py, oder eine Markierung im Body?## Stepsund## Decision points, oder den ganzen Body ausser dem Listenabschnitt? (Derwiki-lint-Trigger nenntlog status, ohne es zu rufen — je nach Antwort ist das ein Treffer oder nicht.)lint --markdown) als eigener Eintrag oder alslint?Akzeptanzkriterien
tools/wikitool instructions verifymeldet je Skill, welches Kommando ein Schritt oder Decision Point aufruft, ohne in der Liste zu stehen, und umgekehrt.4.8.0-beta.11laeuft ohne Findung durch — das ist der Regressionstest.tools/chemenu/tests/test_instructions_cmd.py, inklusive je eines Falls pro Ausnahmeklasse.tools/CONTRACT.mdbeschreibt die neue Findung;instructions/CONTRACT.mdsagt, dass die Liste vollstaendig sein muss.Betroffene Dateien
tools/chemenu/commands/instructions_cmd.py,tools/chemenu/tests/test_instructions_cmd.py,tools/CONTRACT.md,instructions/CONTRACT.md.torben referenced this issue2026-09-11 09:33:50 +00:00