import vault
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
---
|
||||
components:
|
||||
- reviewable
|
||||
review_status: needs_review
|
||||
review_reason: "Cluster fuer Hygiene-Migration"
|
||||
---
|
||||
|
||||
# Hygiene Migration
|
||||
|
||||
Quelle: [[90-dashboards/Hygiene|Hygiene Report]] vom 2026-06-24.
|
||||
|
||||
## Zusammenfassung
|
||||
|
||||
| Cluster | Befund | Anzahl | Migrationsart |
|
||||
| --- | --- | ---: | --- |
|
||||
| C1 | `components` fehlt | 24 Notes | Komponenten deklarieren |
|
||||
| C2 | `contextual` fehlt oder ist nicht deklariert | 25 Notes, 26 Warnungen | `components` um `contextual` ergaenzen und Kontextfelder pruefen |
|
||||
| C3 | `context_role` hat alte Werte | 16 Notes | Werte auf neues Enum migrieren |
|
||||
| C4 | `base_created` wurde bisher gegen ein zu strenges Format geprueft | 5 Notes | Pruefung auf Obsidian-Format umstellen |
|
||||
| C5 | Iterationsdefinitionen haben alte Feldwerte/Formate | 3 Notes plus Backlog-Hinweis | `iterdef` + Datum/Status normalisieren |
|
||||
| C6 | Root-Note ohne Frontmatter | 1 Note | Minimal-Frontmatter fuer Root festlegen |
|
||||
|
||||
## C1 Components Fehlen
|
||||
|
||||
Diese Notes haben gar kein `components`-Array. Minimal muss `components` angelegt werden; fachlich vermutlich mindestens `contextual`.
|
||||
|
||||
| Bereich | Notes |
|
||||
| --- | --- |
|
||||
| Inbox | [[00-inbox/Tagesabschluss in der Zeiterfassung ermöglichen|Tagesabschluss in der Zeiterfassung ermöglichen]] |
|
||||
| Contexts | [[10-contexts/Genius.ceo|Genius.ceo]], [[10-contexts/health|health]], [[10-contexts/work|work]] |
|
||||
| Projects | [[20-projects/Avicenna|Avicenna]], [[20-projects/JULI|JULI]], [[20-projects/medmix Deutschland GmbH|medmix Deutschland GmbH]] |
|
||||
| Tasks | [[30-tasks/Arbeitszeit aufteilen|Arbeitszeit aufteilen]], [[30-tasks/Arbeitszeit Sonstiges nur mit Kommentar|Arbeitszeit Sonstiges nur mit Kommentar]], [[30-tasks/Arbeitszeit taggen|Arbeitszeit taggen]], [[30-tasks/Liste der Mehraufwände am Projekt|Liste der Mehraufwände am Projekt]], [[30-tasks/Passwort ändern|Passwort ändern]], [[30-tasks/Personalstamm implementieren|Personalstamm implementieren]], [[30-tasks/Projektpositionen können abgeschlossen werden|Projektpositionen können abgeschlossen werden]], [[30-tasks/Review erfasster Mehraufwände|Review erfasster Mehraufwände]], [[30-tasks/Werkstatt als Systemprojekt aufnehmen|Werkstatt als Systemprojekt aufnehmen]], [[30-tasks/Zeit mit Projekt kann nicht auf Allgemein gebucht werden|Zeit mit Projekt kann nicht auf Allgemein gebucht werden]], [[30-tasks/Zeitzuordnung wird durch Sync zurückgesetzt|Zeitzuordnung wird durch Sync zurückgesetzt]] |
|
||||
| Notes | [[40-notes/Austausch Dashboard Painpoints|Austausch Dashboard Painpoints]], [[40-notes/Demo Iteration 2|Demo Iteration 2]], [[40-notes/Iteration 1|Iteration 1]], [[40-notes/Iteration 2|Iteration 2]], [[40-notes/Iteration 3|Iteration 3]], [[40-notes/Onboarding von Philipp Töbelmann|Onboarding von Philipp Töbelmann]] |
|
||||
|
||||
## C2 Contextual Migration
|
||||
|
||||
Regel: Jede Nicht-Root-Note soll mittelfristig `contextual` in `components` tragen. Wenn `contextual` gesetzt ist, ist `context_target` Pflicht; `context_role` ist empfohlen.
|
||||
|
||||
Betroffen sind alle Notes aus C1 plus [[40-notes/Backlog|Backlog]]. Backlog hat bereits `components: [iterdef]`, braucht aber zusaetzlich `contextual`.
|
||||
|
||||
## C3 Context Role Werte
|
||||
|
||||
Erlaubt sind: `root`, `area`, `customer`, `project`, `product`, `person`, `topic`, `technology`, `organization`.
|
||||
|
||||
| Alter Wert | Anzahl | Notes | Vorschlag |
|
||||
| --- | ---: | --- | --- |
|
||||
| `Customer` | 2 | [[20-projects/JULI|JULI]], [[20-projects/medmix Deutschland GmbH|medmix Deutschland GmbH]] | wahrscheinlich `project` oder `customer` fachlich entscheiden |
|
||||
| `Feature` | 7 | [[30-tasks/Arbeitszeit aufteilen|Arbeitszeit aufteilen]], [[30-tasks/Arbeitszeit Sonstiges nur mit Kommentar|Arbeitszeit Sonstiges nur mit Kommentar]], [[30-tasks/Arbeitszeit taggen|Arbeitszeit taggen]], [[30-tasks/Passwort ändern|Passwort ändern]], [[30-tasks/Personalstamm implementieren|Personalstamm implementieren]], [[30-tasks/Projektpositionen können abgeschlossen werden|Projektpositionen können abgeschlossen werden]], [[30-tasks/Werkstatt als Systemprojekt aufnehmen|Werkstatt als Systemprojekt aufnehmen]] | `context_role: project` ist nicht passend; Feature-Typ gehoert eher nach `work_kind: feature`, Kontextrolle eher `topic` oder weglassen/neu entscheiden |
|
||||
| `Bug` | 2 | [[30-tasks/Zeit mit Projekt kann nicht auf Allgemein gebucht werden|Zeit mit Projekt kann nicht auf Allgemein gebucht werden]], [[30-tasks/Zeitzuordnung wird durch Sync zurückgesetzt|Zeitzuordnung wird durch Sync zurückgesetzt]] | Bug-Typ nach `work_kind: bug`, Kontextrolle eher `topic` oder neu entscheiden |
|
||||
| `Iteration` | 4 | [[40-notes/Backlog|Backlog]], [[40-notes/Iteration 1|Iteration 1]], [[40-notes/Iteration 2|Iteration 2]], [[40-notes/Iteration 3|Iteration 3]] | Iteration ist Komponente `iterdef`; Kontextrolle vermutlich `project` oder `topic` |
|
||||
| `Meeting` | 1 | [[40-notes/Demo Iteration 2|Demo Iteration 2]] | Meeting-Typ nach `event_kind: meeting`; Kontextrolle vermutlich `project` oder `topic` |
|
||||
|
||||
## C4 Base Created Format
|
||||
|
||||
Sollformat fuer `base_created` und `base_modified`: `YYYY-MM-DDTHH:mm`. Diese Felder werden von Obsidian automatisch gesetzt.
|
||||
|
||||
| Note | Aktuelles Muster | Migration |
|
||||
| --- | --- | --- |
|
||||
| [[30-tasks/Liste der Mehraufwände am Projekt|Liste der Mehraufwände am Projekt]] | `2026-06-17 17:22` | Leerzeichen durch `T` ersetzen |
|
||||
| [[30-tasks/Personalstamm implementieren|Personalstamm implementieren]] | `2026-06-09T14:19:55` | Sekunden entfernen |
|
||||
| [[30-tasks/Projektpositionen können abgeschlossen werden|Projektpositionen können abgeschlossen werden]] | `2026-06-10 13:13` | Leerzeichen durch `T` ersetzen |
|
||||
| [[30-tasks/Review erfasster Mehraufwände|Review erfasster Mehraufwände]] | `2026-06-17 15:49` | Leerzeichen durch `T` ersetzen |
|
||||
| [[40-notes/Backlog|Backlog]] | `2026-06-09 16:59` | Leerzeichen durch `T` ersetzen |
|
||||
|
||||
## C5 Iterdef Migration
|
||||
|
||||
Sollwerte: `iterdef_status` ist `planned`, `active`, `closed` oder `cancelled`; `iterdef_start` und `iterdef_end` sind reine Datumswerte `YYYY-MM-DD`.
|
||||
|
||||
| Note | Befunde | Migration |
|
||||
| --- | --- | --- |
|
||||
| [[40-notes/Iteration 1|Iteration 1]] | `completed`, DateTime in Start/Ende, keine `components` | `closed`, Datum kuerzen, `components: [iterdef, contextual]` |
|
||||
| [[40-notes/Iteration 2|Iteration 2]] | `completed`, DateTime in Start/Ende, keine `components` | `closed`, Datum kuerzen, `components: [iterdef, contextual]` |
|
||||
| [[40-notes/Iteration 3|Iteration 3]] | `started`, DateTime in Start/Ende, keine `components` | `active`, Datum kuerzen, `components: [iterdef, contextual]` |
|
||||
| [[40-notes/Backlog|Backlog]] | `iterdef` ohne `contextual` | `components` um `contextual` ergaenzen |
|
||||
|
||||
## C6 Root Frontmatter
|
||||
|
||||
[[Personal OS|Personal OS]] hat kein Frontmatter. Da Root in `context-hygiene` fachlich ausgenommen ist, sollte hier ein minimales Frontmatter mit `components` und `context_role: root` festgelegt werden oder die Hygiene-Regel muss Root ohne Frontmatter tolerieren.
|
||||
|
||||
## Empfohlene Reihenfolge
|
||||
|
||||
1. C4 nach Schema-Anpassung neu bewerten und verbleibende Leerzeichen-Datumswerte korrigieren.
|
||||
2. C1/C2 fuer eindeutige Typen: Contexts, Projects, Iterationen, Backlog.
|
||||
3. C3 fuer Tasks: alte `Feature`/`Bug`-Rollen in `work_kind` migrieren und passende Kontextrolle entscheiden.
|
||||
4. C6 Root-Note entscheiden: Frontmatter einfuehren oder Hygiene-Ausnahme erweitern.
|
||||
Reference in New Issue
Block a user