docs: Ticket-Kennungen sind auch alphanumerisch — Muster statt Numerik-Heuristik (D34-Nachtrag)

Taiga schreibt #US-123 für eine User Story, Jira #ABC-123 — die frühere
Heuristik „rein numerisch = Ticket" trägt nicht. Als Ticket-Link erkannt
wird künftig, was dem konfigurierbaren Muster des angebundenen Trackers
entspricht (Festlegung beim Taiga-Spike); die Zeichenmenge der Knoten-ID
deckt solche Kennungen schon ab, am Parser ändert sich nichts. SPEC
§1/§11, llms.md und Plan nachgezogen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
mhoennig
2026-08-22 21:06:42 +02:00
co-authored by Claude Fable 5
parent 01b836a4d4
commit fd324d8828
4 changed files with 34 additions and 13 deletions
+13
View File
@@ -1601,6 +1601,19 @@ frei. Verworfen: `$` (Preis-Kollision), `%` (ein Tippfehler vom
Auskommentieren), `:` (zu nah an `:#…`), `§` (fehlt auf US-Tastaturen), `*`
(Markdown, schon in D29 verworfen).
**Nachtrag — Ticket-Kennungen sind auch alphanumerisch; die
Numerik-Heuristik ist gestrichen.** Der ältere Nachtrag oben nahm an, als
Ticket-Link genüge heuristisch das rein numerische `#123`. Das trägt nicht:
Taiga schreibt `#US-123` für eine User Story, Jira `#ABC-123` — Kennungen
sind alphanumerisch (Nutzer-Hinweis). Statt die Form-Heuristik auszuweiten
(jedes `GROSS-123` als Ticket zu raten, kollidierte mit gewöhnlichen
Knoten-IDs), wird ein Token künftig am **Muster des angebundenen Trackers**
erkannt — konfigurierbar je Integration, z. B. `US-\d+` und `\d+` bei Taiga.
Die Zeichenmenge der Knoten-ID (§1: Buchstaben, Ziffern, `.`, `_`, `-`)
deckt solche Kennungen bereits ab; am Parser ändert sich nichts, die
Festlegung des Musters liegt beim Taiga-Spike. SPEC §11 ist entsprechend
umformuliert.
**Nachtrag — das XOR-Zeichen ist entschieden: `=`.** Das in §11 zunächst
vorgeschlagene `x` ist verworfen; ausschlaggebend war, **wann** seine
Glyph-Kollision auftritt: `x` teilt sich das Zeichen mit dem Statuscode für
+17 -11
View File
@@ -47,9 +47,10 @@ sie ist die Adresse für Abhängigkeiten und Beschreibungsblöcke (§11).
Label, und der für Abhängigkeiten reservierte Doppelpunkt `:#a,#b` (§11)
kollidiert nicht.
- Das **erste** solche Token der Zeile ist die ID; weitere `#`-Token bleiben im
Label stehen (dort liegt die reservierte Ticket-Referenz `#123`, §11). Eine
rein numerische ID ist zugleich die künftige Ticket-Referenz — oft ist die
Ticket-Nummer die natürliche Knoten-ID (D34).
Label stehen (dort liegt die reservierte Ticket-Referenz, §11). Eine ID, die
dem Muster des angebundenen Trackers entspricht (`#123`, `#US-123`), ist
zugleich die künftige Ticket-Referenz — oft ist die Ticket-Kennung die
natürliche Knoten-ID (D34).
- Die ID gehört **nicht** zum Label. Eine eigene Darstellung im Diagramm hat
sie (noch) nicht; sichtbar ist sie im Knoten-Tooltip und im `aria-label`.
- **Doppelte ID:** Warnung `duplicateId` mit beiden Zeilennummern; die spätere
@@ -730,18 +731,23 @@ das auch. Begründung und Zusammenhang: D34.
### Referenzen und Knoten-IDs (`#`)
- `#123` — Referenz auf externe Tickets (geplant für Taiga-Integration).
Ticket-Referenzen werden **so** notiert, weil es die etablierte
Kurzschreibweise ist; sie haben unter den `#`-Verwendungen Vorrang.
- `#123`, `#US-123` — Referenz auf externe Tickets (geplant für die
Tracker-Integration). Ticket-Referenzen werden **so** notiert, weil es die
etablierte Kurzschreibweise ist; sie haben unter den `#`-Verwendungen
Vorrang. Ticket-Kennungen sind **auch alphanumerisch** (Taiga schreibt
`#US-123` für eine User Story, Jira `#ABC-123`) — die Zeichenmenge der
Knoten-ID (§1) deckt sie ab.
- `#auth`**Knoten-ID**: **umgesetzt**, Definition jetzt in §1 (Zeichenmenge,
Alleinstehend-Regel, Warnung `duplicateId`). Ziel für Abhängigkeiten und
Beschreibungsblöcke (siehe unten).
Beide Rollen vertragen sich: Oft **ist** die Ticket-Nummer die natürliche
Knoten-ID. Als Ticket-Link behandelt wird heuristisch das rein **numerische**
`#123`; wo das nicht reicht, schafft eine Präfix-Konvention (z. B. `#t123`)
Eindeutigkeit. Freie Schlagworte liegen **nicht** mehr auf `#` — siehe `&tag`
unten; damit ist die frühere Dreifach-Rolle von `#` aufgelöst (D34).
Beide Rollen vertragen sich: Oft **ist** die Ticket-Kennung die natürliche
Knoten-ID. Als Ticket-Link behandelt wird ein Token **nicht an seiner Form**
(die frühere Heuristik „rein numerisch" trägt bei alphanumerischen Kennungen
nicht), sondern am **Muster des angebundenen Trackers** — konfigurierbar,
z. B. `US-\d+`/`\d+` bei Taiga; festzulegen im Taiga-Spike (D34-Nachtrag).
Freie Schlagworte liegen **nicht** mehr auf `#` — siehe `&tag` unten; damit
ist die frühere Dreifach-Rolle von `#` aufgelöst (D34).
### Schlagworte (`&tag`) — reserviert, bewusst ungebaut
+1 -1
View File
@@ -22,7 +22,7 @@
- [^] A short text right at the node (S) %% a " line below the node
- [^] A long block at the end, addressed by its id (S) %% behind a --- separator
- [-] A separate storage format for the structure (L) %% the text is the format
- [ ] Ticket references (#123) (S)
- [ ] Ticket references (#123,#US-123) (S) %% Taiga writes #US-123 for a user story
- [x] llms.md, the notation explained to AI agents (S)
- [?] Benefit per node, not only cost (M)
| [?] Another sigil next to the size (S)
+3 -1
View File
@@ -182,5 +182,7 @@ One node per line. Everything except the label is optional.
## Reserved — do not use for other purposes
- Purely numeric `#123`: ticket references (planned tracker integration).
- Ticket references like `#123` or `#US-123` (Taiga user story, Jira
`#ABC-123`): planned tracker integration will resolve node IDs that match
the connected tracker's reference pattern.
- Free-standing `&tag`: keywords across the hierarchy (reserved, unbuilt).