feat(kb): Issue Label Scheme auf Vierachsen-Schema und Body-als-Wahrheit nachgezogen (#41)

Files changed:
- kb/concepts/INDEX.md
- kb/concepts/Issue Label Scheme.md
- kb/entities/projects/Chemenu.md
- kb/entities/tools/Gitea MCP Server.md
- kb/index.md
- kb/log.md
- kb/provenance.md
- kb/sources/INDEX.md
- kb/sources/Source - Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02.md
- raw/notes/Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02.md
This commit is contained in:
2026-09-02 23:20:39 +02:00
parent c8c238523a
commit 23e34a940c
10 changed files with 346 additions and 51 deletions
+1 -1
View File
@@ -41,7 +41,7 @@
| [[Hybrid Search]] | architecture | Multimodale Suche, die BM25-Schlüsselwortabgleich, Vektor-Embeddings und Graph Traversal verbindet, um Wissensabruf im Wiki skalierbar zu machen. | 2026-08-29 |
| [[Implementation Spectrum]] | architecture | Modularer Einführungspfad für die Funktionen von LLM Wiki v2, vom minimal tragfähigen Wiki bis zur vollen Umsetzung mit Automatisierung und Governance. | 2026-08-29 |
| [[Index Scaling]] | workflow | Skalierungsregeln für Indexseiten: Tabellenabschnitte ab 50 Einträgen teilen, ab 200 Seiten _meta/topic-map.md anlegen | 2026-08-29 |
| [[Issue Label Scheme]] | decision | Zweiachsiges Pflicht-Labelschema fuer das Gitea-Board: prio/1..3 und size/XS..L, bewusst keine dritte Achse; die Regel liegt in instructions/dev/, weil sie keine ausgelieferte Instanz erreichen darf | 2026-08-31 |
| [[Issue Label Scheme]] | decision | Pflicht-Labelschema fuer das Gitea-Board: seit 2026-09-02 vier Achsen (area/kind/prio/size) plus zwei optionale status/-Flags, dazu der Issue-Body als aktuelle Wahrheit; die Regel liegt in instructions/dev/, weil sie keine ausgelieferte Instanz erreichen darf | 2026-09-02 |
| [[Iteration and Cost Limits]] | workflow | Im Code durchgesetzte Obergrenze von 60 wikitool-Aufrufen je Session, Loop-Breaker bei 3 identischen Wiederholungen, Slot-Erstattung, ein gemessenes Kalibrierungsband, und Retrieval sowie der MCP-Leseserver bleiben ausgenommen | 2026-09-02 |
| [[KB Migration]] | workflow | Migration des KB-Inhalts entlang einer geordneten Versionskette; abgegrenzt gegen offene Instanz-Aktionen, die in den doctor-Check gehoeren statt in die Kette | 2026-08-31 |
| [[KB Stack Versioning]] | decision | Semantische Versionierung des Wiki-Stacks: VERSION beschreibt die Maschinerie, Kompatibilitaet (Drop-in-Ersatz) und Inhaltsmigration sind seit 2.5.0 getrennte, unabhaengig geprueft Fragen | 2026-09-02 |
+113 -42
View File
@@ -3,17 +3,17 @@ type: types/concept.md
concept_type: decision
tags: [issues, gitea, triage, labels, backlog]
created: 2026-08-31
modified: 2026-08-31
modified: 2026-09-02
related:
- operates-on: Chemenu
- mechanism: Gitea MCP Server
- see-also: KB Stack Versioning
- see-also: Detect-Repair Asymmetry
sources: [Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31]
sources: [Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31, Source - Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02]
confidence: 0.70
confidence_base: 0.70
confidence_base: 0.85
provenance: sourced
summary: 'Zweiachsiges Pflicht-Labelschema fuer das Gitea-Board: prio/1..3 und size/XS..L, bewusst keine dritte Achse; die Regel liegt in instructions/dev/, weil sie keine ausgelieferte Instanz erreichen darf'
summary: 'Pflicht-Labelschema fuer das Gitea-Board: seit 2026-09-02 vier Achsen (area/kind/prio/size) plus zwei optionale status/-Flags, dazu der Issue-Body als aktuelle Wahrheit; die Regel liegt in instructions/dev/, weil sie keine ausgelieferte Instanz erreichen darf'
---
# Issue Label Scheme
@@ -22,36 +22,78 @@ summary: 'Zweiachsiges Pflicht-Labelschema fuer das Gitea-Board: prio/1..3 und s
## Definition
Issue Label Scheme ist die Entscheidung, offene Arbeit an diesem Stack ausschließlich als
Gitea-Issues zu führen und jedes Issue mit genau zwei Pflicht-Labels zu versehen: einer
Priorität `prio/1..3` und einer Größe `size/XS..L`. Eine dritte Achse gibt es bewusst nicht.
Getroffen wurde die Entscheidung am 2026-08-31, gemeinsam mit der Löschung von `TODO.md`[^s-conversation-issue-triage-labels-and-todo-retirement-session-2026-08-31].
Gitea-Issues zu führen und jedes offene Issue mit vier Pflicht-Labels zu versehen: einem
Bereich `area/`, einer Art `kind/`, einer Priorität `prio/` und einer Größe `size/`. Dazu
kommen zwei optionale `status/`-Flags. Getroffen wurde die Entscheidung in dieser Form am
2026-09-02[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02]; sie ersetzt das
zweiachsige Schema vom 2026-08-31 (siehe [Historie](#historie)).
| Priorität | Bedeutung |
| `area/` | Bedeutung |
|---|---|
| `prio/1` | Blockiert oder beschädigt laufende Arbeit. Als Nächstes. |
| `prio/2` | Sammelt Zinsen. Eingeplant. |
| `prio/3` | Lohnend, wartet auf einen benannten Auslöser. |
| `area/kb` | `kb/`-Schema, Contract, Confidence, Lint - die Wissensbasis als System. |
| `area/distribution` | Auslieferung, Upgrade und Versionierung einer Instanz. |
| `area/corpus` | Inhalt und Umfang von `kb/` in dieser Instanz, samt Demo-/Testbett-Frage. |
| `area/workflow` | Git, Merge, Branching, Publish, PRs. |
| `area/process` | Der Entwicklungsprozess selbst, nicht der Stack als Artefakt. |
| Größe | Bedeutung |
| `kind/` | Bedeutung |
|---|---|
| `kind/decision` | Wartet auf eine Betreiberentscheidung. |
| `kind/build` | Spezifiziert, wartet nur noch auf Umsetzungszeit. |
| `kind/defect` | Befund: Doku und Realität, oder zwei Dokus, widersprechen sich. |
| `prio/` | Bedeutung |
|---|---|
| `prio/blocking` | Blockiert oder beschädigt laufende Arbeit. Als Nächstes. |
| `prio/planned` | Sammelt Zinsen. Eingeplant. |
| `prio/waiting` | Lohnend, wartet auf einen benannten Auslöser. |
| `size/` | Bedeutung |
|---|---|
| `size/XS` | Minuten. Oft nur eine Entscheidung oder eine Beobachtung. |
| `size/S` | Eine Sitzung, ein Publish, ein klarer Schnitt. |
| `size/M` | Mehrere Dateien; eine Contract- oder Instruction-Änderung; eigener Testaufwand. |
| `size/L` | Mehrere Sitzungen, oder offene Entwurfsfragen vor dem ersten Commit. |
Die sieben Labels wurden angelegt und auf alle zehn zu dem Zeitpunkt offenen Issues
angewandt[^s-conversation-issue-triage-labels-and-todo-retirement-session-2026-08-31].
| `status/` (optional) | Bedeutung |
|---|---|
| `status/blocked` | Wartet auf ein anderes, noch offenes Issue - unabhängig vom `prio`-Wert nicht eigenständig bearbeitbar. |
| `status/unconfirmed` | Gemeldeter Verdacht, noch nicht gegen tatsächliches Verhalten geprüft; `size` und `prio` sind solange vorläufig. |
Sechzehn Labels stehen in Gitea; `prio/1`, `prio/2`, `prio/3` und `size/XS` existieren nicht
mehr[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02].
## Kernpunkte
- **Beide Achsen sind Pflicht, weil eine Priorität ohne Kosten eine halbe Entscheidung ist.**
Größe ist Aufwand und nicht Wichtigkeit, deshalb ist `prio/1 size/XS` das Beste, was auf
einem Board stehen kann, und `prio/3 size/L` etwas, worüber gesprochen wird, bevor jemand
anfängt.
- **`prio/3` ist kein Friedhof.** Der Auslöser muss im Issue benannt sein, sonst ist das Label
ein höfliches Nein[^s-conversation-issue-triage-labels-and-todo-retirement-session-2026-08-31].
- **Keine dritte Achse.** Art, Bereich oder Status wurden verworfen als der Punkt, ab dem eine
Taxonomie eigene Pflege braucht. Das Board hat einen einzigen Betreuer.
- **Vier Achsen sind Pflicht, weil ihre Pflege maschinell läuft.** Der ursprüngliche Einwand
gegen eine dritte Achse war der Aufwand für einen einzelnen menschlichen Betreuer. Da
Body-Rewrites und Labelpflege über eine LLM-Sitzung laufen und ein Mensch in der Regel nur
Metadaten anfasst, trägt dieser Einwand
nicht mehr[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02].
- **Der Issue-Body ist die aktuelle Wahrheit, nicht der Ursprungstext.** Die Umsetzung eines
Issues zieht sich über mehrere, zeitlich getrennte Sitzungen, und der Body ist das einzige,
was sie verbindet: eine Sitzung muss allein aus ihm rekonstruieren können, was entschieden
und was offen ist. Er wird deshalb umgeschrieben statt
ergänzt[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02].
- **Ein Kommentar ist ein Changelog, keine Kopie.** Ein Volltext-Snapshot des alten Bodys pro
Revision zwingt einen Menschen zum Diffen zweier Fließtexte und ist damit keine lesbare
Historie, sondern nur eine weitere
Kopie[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02].
- **`area/` folgt der Systemgrenze, nicht dem Codeort.** Die Werte folgen der Stufenteilung aus
`AGENTS.md`. Ein `area/tools` gibt es bewusst nicht - Tooling wird nach der Domäne
einsortiert, die es
bedient[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02].
- **`kind/` darf sich im Lauf eines Issues ändern.** Der Wechsel von `decision` zu `build`,
sobald entschieden ist, ist erwünschtes Session-Memory-Verhalten und kein
Makel[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02].
- **Eine Priorität ohne Kosten ist eine halbe Entscheidung.** Größe ist Aufwand und nicht
Wichtigkeit, deshalb ist `prio/blocking size/S` das Beste, was auf einem Board stehen kann,
und `prio/waiting size/L` etwas, worüber gesprochen wird, bevor jemand anfängt.
- **`prio/waiting` ist kein Friedhof.** Der Auslöser muss im Issue benannt sein, sonst ist das
Label ein höfliches Nein[^s-conversation-issue-triage-labels-and-todo-retirement-session-2026-08-31].
- **Kein unbelegter Verdacht bleibt offen liegen.** Die Triage eines `status/unconfirmed`
endet entweder mit entferntem Flag und verbindlichen `size`/`prio`-Werten oder mit einem
geschlossenen Issue samt Begründung - die Prozessentsprechung zu Invariante 3 des
Stacks[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02].
- **Priorisiert wird nach Schaden, nicht nach Aufwand.** Das Kriterium der ersten Triage
lautete: was blockiert oder beschädigt laufende Arbeit. Ein Werkzeugfehler, der seinen
Benutzer gegen eine Invariante des Stacks drückt, rangiert deshalb vor einer fehlenden
@@ -63,6 +105,28 @@ angewandt[^s-conversation-issue-triage-labels-and-todo-retirement-session-2026-0
Linkliste auf Issues; der zweite, die Recherche-Notiz, ging vollständig nach #15. Danach gab
es nichts mehr in der Datei, was nicht auf Gitea stand.
## Historie
Das ursprüngliche Schema vom 2026-08-31 hatte ~~genau zwei Pflicht-Labels, `prio/1..3` und
`size/XS..L`, und verzichtete ausdrücklich auf eine dritte Achse: Art, Bereich oder Status
wurden verworfen als der Punkt, ab dem eine Taxonomie eigene Pflege braucht, und das Board
habe einen einzigen Betreuer.~~ Sieben Labels wurden angelegt und auf alle zehn zu dem
Zeitpunkt offenen Issues
angewandt[^s-conversation-issue-triage-labels-and-todo-retirement-session-2026-08-31].
Was sich am 2026-09-02 geändert hat:
| Achse | Vorher | Jetzt |
|---|---|---|
| `prio/` | `1`, `2`, `3` | `blocking`, `planned`, `waiting` - reine Umbenennung, Bedeutung unverändert |
| `size/` | `XS`, `S`, `M`, `L` | `S`, `M`, `L` - `XS` entfällt, die übrigen unverändert |
| `area/` | - | fünf Werte, neu |
| `kind/` | - | drei Werte, neu |
| `status/` | - | zwei optionale Flags, neu |
Der Verzicht auf die dritte Achse fiel damit weg, nicht weil die Begründung falsch war,
sondern weil ihre Voraussetzung entfallen ist: gepflegt wird das Board nicht mehr von Hand.
## Wo die Regel liegt
Die Platzierung war die tragende Entscheidung, nicht das Schema selbst. `README.md` und
@@ -80,42 +144,42 @@ Instanz ändert sich nichts. Das CI-Versions-Gate verlangte den Bump trotzdem, w
auf `instructions/` passt und `instructions/dev/` darunter liegt[^s-conversation-issue-triage-labels-and-todo-retirement-session-2026-08-31]. Siehe
[[KB Stack Versioning]].
Für die Erweiterung auf vier Achsen galt dieselbe Rechnung noch einmal: sie ging als `4.0.1`
und damit ebenfalls als PATCH
hinaus[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02].
## Beispiele
- [[Chemenu]] - das Repository, dessen Board nach dem Schema geführt wird; sieben Labels
wurden angelegt und auf alle zehn offenen Issues angewandt
- [[Gitea MCP Server]] - der Weg, auf dem Issues und Labels gelesen und geschrieben werden, da
das Origin-Repository privat ist
- [[Chemenu]] - das Repository, dessen Board nach dem Schema geführt wird; sechzehn Labels
stehen dort, verteilt auf vier Pflicht- und eine optionale Familie
- [[Gitea MCP Server]] - der Weg, auf dem Issues und Labels gelesen und geschrieben werden
- [[Detect-Repair Asymmetry]] - Issue #14 ist der Fall, den dieses Concept beschreibt, und
trägt `prio/2 size/S`
trug in der ersten Triage `prio/2 size/S`, nach der Umbenennung also `prio/planned size/S`
## Wann zu verwenden
- Auf einem Board mit einem einzigen Betreuer, das eine erkennbare Reihenfolge braucht, aber
keinen Prozess.
- Auf einem Board mit einem einzigen menschlichen Betreuer, dessen Labelpflege maschinell
läuft. Erst das macht mehr als zwei Achsen bezahlbar.
- Sobald offene Arbeit sonst in Prosa-Dateien wandert, die niemand als Board liest und die
gegen den Tracker driften.
- Sobald die Bearbeitung eines Issues sich über mehrere, zeitlich getrennte Sitzungen zieht -
dann trägt die Body-als-Wahrheit-Konvention den Kontext, den sonst ein Mensch jedes Mal neu
erzählen müsste.
## Wann NICHT zu verwenden
- Nicht auf einem Board mit mehreren Teams, wo Zuständigkeit und Bereich echte Information
tragen. Dann ist die dritte Achse keine Taxonomie-Pflege, sondern Routing.
- Nicht dort, wo Labels von Hand gepflegt werden. Dann ist die ursprüngliche Zweiachsigkeit
die tragfähigere Wahl, und die Begründung von 2026-08-31 gilt unverändert.
- Nicht als Ersatz für die Abnahmekriterien im Issue-Text. Die Labels ordnen ein Issue ein; ob
es fertig ist, sagen sie nicht.
- Nicht mit umgeschriebenen Bodys dort, wo mehrere Menschen denselben Thread lesen und den
Verlauf brauchen. Die Konvention tauscht Historie gegen Aktualität und setzt voraus, dass
der Changelog-Kommentar als Historie genügt.
- Nicht in einer ausgelieferten Instanz. Das Schema beschreibt das Entwicklungs-Repository und
hat außerhalb davon keinen Gegenstand.
## Beziehungen
## Siehe auch
- [[Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31]]
## Fußnoten
[^s-conversation-issue-triage-labels-and-todo-retirement-session-2026-08-31]: [[Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31]]
<!-- wikitool:links -->
## Beziehungen
- **operates-on:** [[Chemenu]]
@@ -123,3 +187,10 @@ auf `instructions/` passt und `instructions/dev/` darunter liegt[^s-conversation
- **see-also:** [[KB Stack Versioning]]
- **see-also:** [[Detect-Repair Asymmetry]]
<!-- /wikitool:links -->
<!-- wikitool:footnotes -->
## Fußnoten
[^s-gitea-issue-41-issue-management-and-label-scheme-2026-09-02]: [[Source - Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02]]
[^s-conversation-issue-triage-labels-and-todo-retirement-session-2026-08-31]: [[Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31]]
<!-- /wikitool:footnotes -->
+1 -1
View File
@@ -14,7 +14,7 @@ related:
- implements: MCP-Leseserver
- uses: wikitool
- composition: AGENTS.md
sources: [Source - Copilot Skill Restructure Instructions, Source - Conversation - AGENTS.md Skill Restructuring Session 2026-08-04, Source - Conversation - Versioning CI-CD and Content Migration Session 2026-08-30, Source - Conversation - Comma Bug Budget Refund and Lint Report Path Session 2026-08-31, Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31, Source - Conversation - Write-Once Frontmatter Fields and touch --set Session 2026-08-31, Source - Conversation - Gate Counting and Measured Calibration Session 2026-08-31, Source - Conversation - Two Round-Trip Defects Found by an Ingest Session 2026-08-31, Source - Conversation - Hardening the Test Suite Against Silent Environment Dependencies Session 2026-08-31, 'Source - Public Release, Corpus Purge and History Squash Session 2026-09-01', Source - Publish-Remote Gate and Issue Triage Session 2026-09-01, Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01, Source - MCP Read Server Implementation Session 2026-09-02, Source - Version Part Nomenclature and Breaking Change Gate Session 2026-09-02]
sources: [Source - Copilot Skill Restructure Instructions, Source - Conversation - AGENTS.md Skill Restructuring Session 2026-08-04, Source - Conversation - Versioning CI-CD and Content Migration Session 2026-08-30, Source - Conversation - Comma Bug Budget Refund and Lint Report Path Session 2026-08-31, Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31, Source - Conversation - Write-Once Frontmatter Fields and touch --set Session 2026-08-31, Source - Conversation - Gate Counting and Measured Calibration Session 2026-08-31, Source - Conversation - Two Round-Trip Defects Found by an Ingest Session 2026-08-31, Source - Conversation - Hardening the Test Suite Against Silent Environment Dependencies Session 2026-08-31, 'Source - Public Release, Corpus Purge and History Squash Session 2026-09-01', Source - Publish-Remote Gate and Issue Triage Session 2026-09-01, Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01, Source - MCP Read Server Implementation Session 2026-09-02, Source - Version Part Nomenclature and Breaking Change Gate Session 2026-09-02, Source - Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02]
confidence: 0.90
confidence_base: 0.90
provenance: mixed
+1 -1
View File
@@ -8,7 +8,7 @@ related:
- implements: Issue Label Scheme
- uses: Gitea
- uses: Gitea Actions
sources: [Source - Conversation - Versioning CI-CD and Content Migration Session 2026-08-30, Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31]
sources: [Source - Conversation - Versioning CI-CD and Content Migration Session 2026-08-30, Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31, Source - Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02]
confidence: 0.70
confidence_base: 0.70
provenance: sourced
+3 -3
View File
@@ -13,11 +13,11 @@ The page tables live in a generated `INDEX.md` inside each collection, linked be
## Statistics
- **Total Pages:** 180
- **Total Pages:** 181
- **Comparisons:** 1
- **Concepts:** 80
- **Entities:** 72
- **Sources:** 27
- **Sources:** 28
- **Last Updated:** 2026-09-02
---
@@ -29,7 +29,7 @@ The page tables live in a generated `INDEX.md` inside each collection, linked be
| `comparisons/` | 1 | [comparisons/INDEX.md](comparisons/INDEX.md) |
| `concepts/` | 80 | [concepts/INDEX.md](concepts/INDEX.md) |
| `entities/` | 72 | [entities/INDEX.md](entities/INDEX.md) |
| `sources/` | 27 | [sources/INDEX.md](sources/INDEX.md) |
| `sources/` | 28 | [sources/INDEX.md](sources/INDEX.md) |
### entities/
+6
View File
@@ -121,3 +121,9 @@ Einheit u3 der Link-Taxonomie-Migration: alle 80 Seiten unter kb/concepts/ von P
Abschluss der Korpus-Migration auf die Link-Taxonomie (Gitea #40, Abschnitte 2 und 3). Zuvor uebersehene Restmenge nachgeholt: 37 unlabelled edges in kb/entities/technologies und kb/entities/tools, die u1 nach dem damaligen 'protect, don't remove'-Muster bewusst unbelegt gelassen hatte - mit der u3-Erkenntnis, dass xref add nur die Quellseite anfasst, waren sie gefahrlos nachlabelbar (Wine-/Arch-/Agent-CLI-Cliquen ueberwiegend see-also, dazu echte Kanten: AUR part-of Arch Linux, Arch Linux uses GPG, Obsidian hosts Dataview/Marp, Obsidian required-by Obsidian Web Clipper, Wine required-by Proton, gdeploy uses Go). Erst damit erfuellt der Korpus das Abschlusskriterium des Migrationsdokuments (Schritt 6: unlabelled_edges und unauthorised_labels muessen 0 sein) - vorher waere migrate done eine unbelegte Behauptung gewesen. Endstand: lint meldet 0 unlabelled_edges, 0 unauthorised_labels, 0 malformed_edges, 0 unbalanced_markers, 0 broken_links, 0 dangling_frontmatter_refs, 0 schema_validation_errors; lint --fail-on-error und docs verify beide exit 0. migrate done 4.0.0 --pages 153 gesetzt, kb_version steht auf 4.0.0. VERSION stand bereits auf 4.0.0 (Bump erfolgte mit dem Mechanismus in u0, Commit 177c7e9), ein zweiter Bump entfaellt daher, und CHANGES.md dokumentiert 4.0.0 bereits vollstaendig. Workshop work/link-taxonomy-migration/ nach work/CONTRACT.md geschlossen und geloescht; die dauerhafte Ausgabe ist der gelabelte Korpus selbst. Eine Notiz aus glossary.md hat sich beim Abschluss als Rueckschritt erwiesen: die dort als Erkenntnis notierte Asymmetrie zwischen xref add (einseitig) und xref remove (bidirektional) steht seit jeher woertlich in tools/CONTRACT.md Zeilen 43-44 - sie war nachzulesen, nicht zu entdecken. Offen und an #40 gemeldet: im Katalog fehlt ein Label fuer Urheberschaft (Person erstellt Entity oder Concept); alle solchen Kanten stehen jetzt auf see-also.
---
## [2026-09-02] update | Issue Label Scheme - Vierachsen-Schema und Body-als-Wahrheit
Gitea-Issue #41 als raw/notes/Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02.md aufgenommen und als Source-Seite erfasst. kb/concepts/Issue Label Scheme.md auf den Stand vom 2026-09-02 gebracht: vier Pflicht-Achsen (area/kind/prio/size), zwei optionale status/-Flags, Body-als-Wahrheit-Konvention. Das abgeloeste Zweiachsen-Schema steht als Abschnitt Historie mit Diff-Tabelle in der Seite, nicht geloescht. confidence_base 0.70 -> 0.85 (zweite unabhaengige Quelle, Bestaetigung juenger als 30 Tage).
---
+12 -2
View File
@@ -8,8 +8,8 @@ inline `[^cite-id]` footnote).
## Coverage Summary
- **Total raw files:** 26
- **Covered:** 26
- **Total raw files:** 28
- **Covered:** 28
- **Uncovered:** 0
---
@@ -106,6 +106,11 @@ inline `[^cite-id]` footnote).
- Covered by: [[Source - Conversation - Two Round-Trip Defects Found by an Ingest Session 2026-08-31]]
- Cited by: [[Chemenu]], [[Command Round-Trip Integrity]], [[Denylist over Allowlist]], [[Detect-Repair Asymmetry]], [[Gitea]], [[Green Suite Blind Spot]], [[Write-Once Frontmatter Fields]], [[wikitool]]
### `raw/notes/Conversation Transcript - Version Part Nomenclature and Breaking Change Gate Session 2026-09-02.md`
- Covered by: [[Source - Version Part Nomenclature and Breaking Change Gate Session 2026-09-02]]
- Cited by: [[Chemenu]], [[KB Stack Versioning]], [[wikitool]]
### `raw/notes/Conversation Transcript - Versioning, CI-CD and Content Migration Session 2026-08-30.md`
- Covered by: [[Source - Conversation - Versioning CI-CD and Content Migration Session 2026-08-30]]
@@ -121,6 +126,11 @@ inline `[^cite-id]` footnote).
- Covered by: [[Source - Docker Cheatsheet]]
- Cited by: [[Docker]]
### `raw/notes/Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02.md`
- Covered by: [[Source - Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02]]
- Cited by: [[Chemenu]], [[Gitea MCP Server]], [[Issue Label Scheme]]
### `raw/notes/Wine.md`
- Covered by: [[Source - Wine]]
+2 -1
View File
@@ -2,7 +2,7 @@
# kb/sources/ - Index
27 page(s). Regenerated by `wikitool index rebuild`.
28 page(s). Regenerated by `wikitool index rebuild`.
## All
@@ -23,6 +23,7 @@
| [[Source - Conversation - Write-Once Frontmatter Fields and touch --set Session 2026-08-31]] | notes | Sitzung, die write-once-Frontmatterfelder reparierbar macht: touch bekommt --set/--add/--remove ueber eine Denylist statt einer Allowlist, ein idempotentes --remove und einen bewusst engen Scope (Stack 1.4.0, Gitea-Issue #14) | 2026-08-31 |
| [[Source - Copilot Skill Restructure Instructions]] | notes | Anweisungssatz zur Aufteilung der monolithischen AGENTS.md in einzelne plattformübergreifende Agent-Skills | 2026-08-03 |
| [[Source - Docker Cheatsheet]] | notes | Praktisches Bash-Skript zur Fehlersuche bei Docker-Volumes und Overlay2, um den Container zu einem Verzeichnis im Dateisystem zu ermitteln. | 2026-07-31 |
| [[Source - Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02]] | notes | Threadkopie zu Gitea-Issue #41: vier Pflicht-Label-Achsen statt zwei, zwei optionale status/-Flags, und der Issue-Body als aktuelle Wahrheit statt als Ursprungstext | 2026-09-02 |
| [[Source - LLM Improvements Codex Analysis]] | notes | Codex-Analyse, die AGENTS.md und wikitool mit awesome-llm-wiki und Farzas Gist vergleicht und 7 aussichtsreiche Verbesserungen sowie zu vermeidende Anti-Muster benennt. Hinweis: eine Sonnet-Analyse zum Vergleich ist vorgesehen. | 2026-08-03 |
| [[Source - LLM Improvements Production Agent Gaps 2026]] | notes | Externe Kritik (dzone, 2026) am Fehlen harter Iterations- und Kostengrenzen sowie eines Loop-Breakers; umgesetzt als Iteration Budget Gate in wikitool. | 2026-08-07 |
| [[Source - LLM Improvements Sonnet Analysis]] | notes | Sonnet-Analyse, die AGENTS.md und wikitool mit Farzas Gist und awesome-llm-wiki vergleicht und die Codex-Analyse um konkrete Empfehlungen zu Qualitätsschwellen, Stilrichtlinie, Auditrhythmus und Skalierung ergänzt | 2026-08-03 |
@@ -0,0 +1,96 @@
---
type: types/source.md
source_type: notes
author: Torben Nehmer
raw_files: [raw/notes/Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02.md]
source_language: de
date: 2026-09-02
tags: [issues, gitea, labels, triage, process]
entities: [Chemenu, Gitea MCP Server]
concepts: [Issue Label Scheme]
summary: 'Threadkopie zu Gitea-Issue #41: vier Pflicht-Label-Achsen statt zwei, zwei optionale status/-Flags, und der Issue-Body als aktuelle Wahrheit statt als Ursprungstext'
---
# Source: Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02
**Autor:** Torben Nehmer
**Datum:** 2026-09-02
**Raw-Dateien:** raw/notes/Gitea Issue 41 - Issue Management and Label Scheme 2026-09-02.md
**Typ:** Notes
## Zusammenfassung
Wörtliche Kopie des Threads zu Gitea-Issue #41, gezogen am 2026-09-02: Issue-Body im Stand
nach der Umsetzung, die drei Changelog-Kommentare und das zu diesem Zeitpunkt in Gitea
angelegte Label-Set. Das Issue hält eine Diskussion vom selben Tag fest, die aus der
Aufarbeitung von fünf als "Fallouts" des Entwicklungsprozesses eingestuften Issues (#38, #30,
#28, #7, #27) hervorging und den Rahmen für deren Bearbeitung setzen sollte.
Verhandelt wurden drei Dinge. Erstens bleibt ein eingehender Wunsch ein Issue und wird keine
`kb/`-Seite, weil Issues ephemer sind und Wünsche abbilden - neu ist daran nur, wie ein Issue
gepflegt wird: der Body ist aktuelle Wahrheit und wird umgeschrieben, Kommentare tragen einen
Changelog statt einer Vollkopie, und beides macht in der Regel eine LLM-Sitzung. Zweitens
werden aus zwei Pflicht-Label-Achsen vier: `area/`, `kind/`, `prio/` und `size/`. Drittens
kommen zwei optionale Flags dazu, `status/blocked` und `status/unconfirmed`.
Die Quelle ist zugleich der Beleg für die Umsetzung: das Issue verzeichnet, dass das
Label-Set in Gitea steht und dass das Schema seit Stack-Version `4.0.1` kanonisch in
`instructions/dev/issue-tracking.md` liegt.
## Kernaussagen
- **Der Issue-Body ist die Lifeline für das Agent-Memory.** Die Umsetzung eines Issues zieht
sich über mehrere, zeitlich getrennte LLM-Sitzungen, und der Body ist der einzige Ort, der
sie verbindet: eine Sitzung muss allein aus ihm rekonstruieren können, was entschieden und
was offen ist. Ein additiv wachsendes Log zwingt dagegen zum Lesen der ganzen Geschichte,
um den aktuellen Stand herauszufiltern.
- **Kommentare sind Changelog, nicht Kopie.** Ein Volltext-Snapshot des alten Bodys pro
Revision zwingt einen Menschen zum Diffen zweier Fließtexte und ist damit keine lesbare
Historie, sondern nur eine weitere Kopie. Der Kommentar nennt nur, was neu, entfallen oder
korrigiert ist.
- **Vier Pflichtachsen sind bezahlbar geworden, weil die Pflege maschinell läuft.** Der
ursprüngliche Einwand gegen eine dritte Achse war der Pflegeaufwand für einen einzelnen
menschlichen Betreuer; da Body-Rewrites und Labelpflege über eine LLM-Sitzung laufen, trägt
er nicht mehr.
- **`area/` folgt der Systemgrenze, nicht dem Codeort.** Die Werte `kb`, `distribution`,
`corpus`, `workflow`, `process` folgen der Stufenteilung aus `AGENTS.md`. Ein `area/tools`
gibt es bewusst nicht - Tooling wird nach der Domäne einsortiert, die es bedient.
- **`kind/` darf sich im Lauf eines Issues ändern.** Der Wechsel von `decision` zu `build`,
sobald entschieden ist, ist erwünschtes Session-Memory-Verhalten und kein Makel.
- **`prio/` wurde nur umbenannt.** `1`/`2`/`3` heißen jetzt `blocking`/`planned`/`waiting`,
die Bedeutung ist unverändert. Bei `size/` entfällt `XS`; `S`/`M`/`L` bleiben, wie sie
waren.
- **Ein unbelegter Verdacht bleibt nicht offen liegen.** Solange `status/unconfirmed` gesetzt
ist, sind `size` und `prio` vorläufig. Die Triage endet mit entferntem Flag und
verbindlichen Werten oder mit einem geschlossenen Issue samt Begründung - vom Issue selbst
als Prozessentsprechung zu Invariante 3 des Stacks bezeichnet.
- **Sechzehn Label stehen in Gitea**, gelesen am 2026-09-02: fünf `area/`, drei `kind/`, drei
`prio/`, drei `size/`, zwei `status/`. `size/XS`, `prio/1`, `prio/2` und `prio/3`
existieren nicht mehr.
- **Der Release war ein PATCH.** `4.0.1`, weil `dist export` `instructions/dev/` vollständig
ausschließt und sich für eine ausgelieferte Instanz nichts ändert - dieselbe Begründung wie
bei `1.2.1`, das das Zweiachsen-Schema eingeführt hatte.
## Aufgaben
- [ ] Bestehende Sachissues nach und nach auf die vier Pflicht-Label umstellen (laut Issue
bereits umgestellt: #38, #27 geschlossen, #7, #42)
## Nicht übernommen
- **Die Diskussion, aus der das Issue hervorging.** Das Issue nennt sie ("Diskussion vom
2026-09-02"), aber ihr Transkript liegt nicht in `raw/`. Die Quelle ist damit das Ergebnis
der Debatte, nicht ihr Verlauf; die verworfenen Alternativen sind nicht rekonstruierbar.
- **Die Sachinhalte der referenzierten Issues #38, #30, #28, #27, #7, #42, #39, #40.** Sie
kommen im Thread nur als Nummern vor. Was in ihnen steht, gehört in die Seiten zu den
jeweiligen Gegenständen, nicht hierher.
- **Der Volltext von `instructions/dev/issue-tracking.md`.** Das Issue beschreibt, was dort
hineingeschrieben wurde; die Instruction selbst ist Teil des Stacks und kein Rohmaterial.
## Verwandte Entities
- [[Chemenu]]
- [[Gitea MCP Server]]
## Verwandte Concepts
- [[Issue Label Scheme]]