Bahn: aisupport, Analyse-O2C-C2S, awesome-bahn-mcp-servers, beam-mcp,
Confluence_Bot, db-planet-mcp-server, O2C-Harness, project-audit,
Projekt-KIQ-HP, teamlandkarte-mcp
Dhive: Jury-Voting
Privat: CV, NoteGraph (NOTE: NoteGraph needs complete redo after consolidation)
Shared: AI-Orchestrator, OrgMyLife, power_skills_and_more
Shared/references: symphony (read-only)
Bahn repos remain available as independent remotes - this monorepo
pulls them in via subtree, the originals are untouched.
5.6 KiB
5.6 KiB
Planung mit Responsible Vibe + GitLab Issues
Entwicklungsprozess
Nutze den workflows MCP Server (Responsible Vibe) für strukturierte Entwicklung:
start_development()– Workflow starten (greenfield für neue Projekte)whats_next()– Nach JEDER Aktion aufrufen für nächsten Schrittproceed_to_phase()– Phase wechseln wenn Kriterien erfüllt
GitLab Issues: PFLICHT vor Implementierung
BEVOR du eine einzige Zeile Code schreibst, MUSST du Issues anlegen:
# Labels erstellen (einmalig)
glab label create "enhancement" --color "#428BCA"
glab label create "bug" --color "#d9534f"
glab label create "documentation" --color "#5cb85c"
glab label create "test" --color "#f0ad4e"
glab label create "ci/cd" --color "#777777"
glab label create "refactoring" --color "#9b59b6"
# Issues anlegen – JEDE Aufgabe wird ein Issue
glab issue create --title "feat: REST Controller implementieren" --description "Endpoints: GET/POST/PUT/DELETE /api/..." --label "enhancement"
glab issue create --title "feat: Service-Layer mit Business-Logik" --description "Validierung, Error-Handling, ..." --label "enhancement"
glab issue create --title "test: Unit- und Integrationstests" --description "Controller-Tests, Service-Tests, Testcontainers" --label "test"
glab issue create --title "docs: Arc42 + README" --description "Context-Diagramm, ADRs, API-Doku" --label "documentation"
glab issue create --title "ci: Pipeline konfigurieren" --description ".gitlab-ci.yml, Helm Values, Deployment" --label "ci/cd"
Reihenfolge:
- Aufgabe analysieren
- In 3-7 Issues zerlegen
- Issues in GitLab anlegen
- Erst DANN implementieren
Ablauf (strikt einhalten)
start_development()→ Workflow initialisierenwhats_next()→ Plan erstellen- Issues in GitLab anlegen (PFLICHT, nicht optional!)
- Issues der Reihe nach abarbeiten:
- Implementieren
- Testen
- Committen mit Issue-Referenz:
feat(users): implement GET endpoint (#1) - Issue schließen:
glab issue close 1
whats_next()→ Nächste Phase- Wiederholen bis alle Issues geschlossen
Commit-Messages: Conventional Commits (Pflicht)
feat(controller): implement GET /users endpoint (#1)
feat(service): add validation and error handling (#2)
test(controller): add WebMvcTest for UserController (#3)
docs(arc42): add context diagram and ADR-1 (#4)
ci(pipeline): add .gitlab-ci.yml from pipelinetemplates (#5)
Format: type(scope): beschreibung (#issue-nummer)
Fragen selbst beantworten
Responsible Vibe stellt in den Phasen Fragen (z.B. "Wer nutzt das System?", "Welche Constraints gibt es?").
WICHTIG: Diese Fragen NICHT an den Benutzer weiterleiten. Beantworte sie selbst basierend auf:
- Der Ticket-Beschreibung / Aufgabe ($TICKET_DESCRIPTION)
- Dem Projekt-Kontext (vorhandener Code, README, etc.)
- Best Practices und Conventions aus dem Steering
- Sinnvollen Defaults wenn keine Info vorhanden
Der Agent arbeitet autonom – er ist Entwickler UND Product Owner in einem.
Issue-Labels nach Workflow-Typ
| Workflow | Label | Beschreibung |
|---|---|---|
| greenfield | enhancement |
Neues Projekt/Feature |
| epcc | enhancement |
Feature zu bestehendem Projekt |
| bugfix | bug |
Fehlerbehebung |
| tdd | test |
Test-getriebene Entwicklung |
| minor | chore |
Kleine Änderung/Refactoring |
GitLab Issues: Qualität
Issues MÜSSEN ausführlich in Markdown geschrieben werden:
Format
glab issue create \
--title "feat: Address REST API (CRUD)" \
--label "enhancement" \
--description "## Beschreibung
REST Controller mit vollständigen CRUD Endpoints für die Adressverwaltung.
## Anforderungen
- GET /api/addresses – Alle Adressen auflisten
- GET /api/addresses/{id} – Einzelne Adresse
- POST /api/addresses – Neue Adresse anlegen
- PUT /api/addresses/{id} – Adresse aktualisieren
- DELETE /api/addresses/{id} – Adresse löschen
## Akzeptanzkriterien
- [ ] Alle Endpoints implementiert und getestet
- [ ] Validierung der Eingaben (Name, PLZ nicht leer)
- [ ] Korrekte HTTP Status Codes (201, 404, 400)
- [ ] JSON Request/Response Format dokumentiert
## Technische Details
- Spring @RestController
- @Valid für Bean Validation
- ResponseEntity für Status Codes"
Regeln
- Mehrzeilige Descriptions: Heredoc oder mehrzeilige Strings nutzen, KEINE
\nEscapes - Markdown-Struktur: Überschriften (##), Listen (-), Checkboxen (- [ ])
- Inhalt: Beschreibung, Anforderungen, Akzeptanzkriterien, technische Details
- Ausführlich: Jedes Issue muss für sich allein verständlich sein
Arc42 Dokumentation: PFLICHT-Issue
Bei JEDEM Projekt muss ein Issue für Arc42-Doku angelegt und abgearbeitet werden:
glab issue create \
--title "docs: Arc42 Dokumentation erstellen" \
--label "documentation" \
--description "## Beschreibung
Arc42-Dokumentation unter docs/arc42/ anlegen.
## Pflicht-Inhalte
- docs/arc42/01-introduction.md (Aufgabenstellung, Qualitätsziele)
- docs/arc42/03-context.md (C4 Context-Diagramm als Mermaid)
- docs/arc42/05-building-blocks.md (Komponenten-Übersicht)
- docs/arc42/06-runtime-view.md (Sequenzdiagramm Hauptflow)
- docs/arc42/09-architecture-decisions.md (mind. 1 ADR im Nygard-Format)
## Akzeptanzkriterien
- [ ] Mindestens 5 Arc42-Dateien unter docs/arc42/
- [ ] C4 Context-Diagramm als Mermaid
- [ ] Mindestens 1 ADR (z.B. Stack-Wahl, Datenbank-Wahl)
- [ ] Sequenzdiagramm für den Hauptflow"
Arc42-Doku ist kontextabhängig:
- Services/APIs mit Deployment → Arc42 anlegen
- Libraries, CLI-Tools, Doku-Repos → KEINE Arc42 nötig
- Bestehende Projekte mit vorhandener Doku → nur ergänzen wenn sinnvoll