/tc — Technical Change Tracker (Verfolgung technischer Änderungen)
Führe einen TC-Befehl (Technical Change) aus. Argumente: $ARGUMENTS.
Wenn $ARGUMENTS leer ist, zeige dieses Menü an und stoppe:
/tc init TC-Verfolgung in diesem Projekt initialisieren
/tc create <name> Neuen TC-Datensatz erstellen
/tc update <tc-id> [...] Felder, Status, Dateien, Übergabe aktualisieren
/tc status [tc-id] Einen TC oder die Zusammenfassung des Registers anzeigen
/tc resume <tc-id> Einen TC aus einer vorherigen Sitzung fortsetzen
/tc close <tc-id> Einen TC in den Zustand „bereitgestellt“ überführen
/tc export Abgeleitete Artefakte neu rendern
/tc dashboard Zusammenfassung des Registers neu rendern
Andernfalls analysiere $ARGUMENTS als <Unterbefehl> <Rest> und leite an das passende Protokoll weiter. Alle Skripte befinden sich unter engineering/tc-tracker/scripts/.
Unterbefehle
init
- Führe aus:
python3 engineering/skills/tc-tracker/scripts/tc_init.py --root . --json - Wenn der Status
already_initializedist, melde die aktuellen Statistiken und stoppe. - Andernfalls melde, was erstellt wurde, und schlage
/tc create <name>als nächsten Schritt vor.
create <name>
- Analysiere
<name>als Slug in Kebab-Schreibweise. Falls nicht vorhanden, frage den Benutzer danach. - Frage den Benutzer (eine Frage nach der anderen) nach:
- Titel (5–120 Zeichen)
- Umfang:
feature | bugfix | refactor | infrastructure | documentation | hotfix | enhancement - Priorität:
critical | high | medium | low(Standardmedium) - Zusammenfassung (10+ Zeichen)
- Motivation
- Führe aus:
python3 engineering/skills/tc-tracker/scripts/tc_create.py --root . \ --name "<slug>" --title "<title>" --scope <scope> --priority <priority> \ --summary "<summary>" --motivation "<motivation>" --json - Melde die neue TC-ID und den Pfad zur Aufzeichnung.
update <tc-id> [Absicht]
- Wenn
<tc-id>fehlt, liste aktive TCs (Statusin_progressoderblocked) austc_status.py --allauf und frage, welcher gemeint ist. - Bestimme die Absicht des Benutzers aus natürlicher Sprache:
- Statusänderung →
--set-status <Zustand>mit--reason "<Warum>" - Dateien hinzufügen → ein oder mehrere
--add-file Pfad:Aktion - Test hinzufügen →
--add-test "<Titel>" --test-procedure "<Schritt>" --test-expected "<Ergebnis>" - Übergabe aktualisieren → beliebige Kombination von
--handoff-progress,--handoff-next,--handoff-blocker,--handoff-context - Notiz hinzufügen →
--note "<Text>" - Tag hinzufügen →
--tag <Tag>
- Statusänderung →
- Führe aus:
python3 engineering/skills/tc-tracker/scripts/tc_update.py --root . --tc-id <tc-id> [Flags] --json - Wenn der Exit-Code ungleich Null ist, gib den Fehler wörtlich aus. Die Zustandsmaschine und der Validator lehnen ungültige Übergänge ab – wiederhole nicht blind.
status [tc-id]
- Wenn
<tc-id>angegeben ist:python3 engineering/skills/tc-tracker/scripts/tc_status.py --root . --tc-id <tc-id> - Andernfalls:
python3 engineering/skills/tc-tracker/scripts/tc_status.py --root . --all
resume <tc-id>
- Führe aus:
python3 engineering/skills/tc-tracker/scripts/tc_status.py --root . --tc-id <tc-id> --json - Zeige den Übergabe-Block prominent an:
progress_summary,next_steps(nummeriert),blockers,key_context. - Frage: „ fortsetzen und bei Schritt 1 der nächsten Schritte beginnen? (j/n)“
- Falls ja, führe ein Update durch, um die Wiederaufnahme zu protokollieren:
python3 engineering/skills/tc-tracker/scripts/tc_update.py --root . --tc-id <tc-id> \ --note "Sitzung fortgesetzt" --reason "Sitzungsübergabe" - Beginne mit der Ausführung des ersten Eintrags in
next_steps. Leite KEINEN Kontext neu ab – vertraue der Übergabe.
close <tc-id>
- Lese die Aufzeichnung über
tc_status.py --tc-id <tc-id> --json. - Überprüfe, ob der aktuelle Status
testedist. Falls nicht, lehne ab und teile dem Benutzer mit, welche Übergänge noch erforderlich sind. - Prüfe
test_cases: warne, wenn einerpending,failoderblockedist. - Frage den Benutzer:
- „Wer genehmigt? (Ihr Name oder ‚self‘)“
- „Genehmigungsnotizen (optional):“
- „Testabdeckungsstatus: none / partial / full“
- Führe aus:
Bearbeite dann denpython3 engineering/skills/tc-tracker/scripts/tc_update.py --root . --tc-id <tc-id> \ --set-status deployed --reason "Genehmigt von <Genehmiger>" --note "Genehmigung: <Genehmiger> — <Notizen>"approval-Block direkt über ein nachfolgendes Update, wenn die Skriptversion dies unterstützt; andernfalls weise den Benutzer an, die Genehmigung innoteszu protokollieren. - Melde: „TC-NNN geschlossen und bereitgestellt.“
export
Diese Fähigkeit bietet keinen automatischen HTML-Export. Stattdessen wird alles erneut validiert:
- Lese das Register.
- Führe für jede Aufzeichnung aus:
python3 engineering/skills/tc-tracker/scripts/tc_validator.py --record <Pfad> --json - Führe aus:
python3 engineering/skills/tc-tracker/scripts/tc_validator.py --registry docs/TC/tc_registry.json --json - Melde: Anzahl der validierten Aufzeichnungen, etwaige Fehler, Pfade zu ungültigen Einträgen.
dashboard
Führe die Zusammenfassung aller Aufzeichnungen aus:
python3 engineering/skills/tc-tracker/scripts/tc_status.py --root . --all
Eiserne Regeln
- Bearbeite niemals
tc_record.jsonvon Hand. Verwende immertc_update.py, damit der Revisionsverlauf angehängt und die Validierung durchgeführt wird. - Übergehe niemals die Zustandsmaschine. Durchlaufe die Zustände in der richtigen Reihenfolge, auch wenn es sich redundant anfühlt.
- Lösche niemals einen TC. Der Verlauf ist nur anfügbar – füge eine letzte Revision hinzu und markiere sie mit
[CANCELLED]. - Hintergrundbuchhaltung. Wenn eine Aufgabe läuft, starte einen Hintergrund-Subagenten, um den TC zu aktualisieren. Unterbrich das Programmieren nicht für Papierkram.
- Validiere vor der Erfolgsmeldung. Wenn ein Skript mit einem Exit-Code ungleich Null beendet wird, gib den Fehler aus und stoppe.
Verwandte Fähigkeiten
engineering/tc-tracker— Vollständige SKILL.md mit Schema-Referenz, Lebenszyklusdiagrammen und dem Übergabeformat.engineering/changelog-generator— Kombinierbar mit dem TC-Tracker: TCs für den änderungsbezogenen Prüfpfad, Changelog für benutzerseitige Versionshinweise.engineering/tech-debt-tracker— Zur Verfolgung langlebiger technischer Schulden anstelle einzelner Code-Änderungen.