---
title: "Migration PKM — Plan d'exécution ciblé"
tags: [plan, pkm, silverbullet, migration, execution]
type: plan
projects: 
  - "[[02_PROJETS/MIGRATION-PKM-2026]]"
status: draft
date: "2026-10-11"
---

# Migration PKM — Plan d'exécution ciblé (étape par étape)

> **Contexte** : la structure cible (arborescence plate) est en place. Ce document
> détaille les **corrections restantes**, dans un ordre d'exécution logique.
> Complète `80_CONFIG/PLAN_PKM_Reorganisation.md` (décisions & structure).
>
> **État des lieux (audit du 2026-10-11)** :
> - 242 pages référencent encore `02_DOMAINS` (journal 136, projets 47, notes 21, templates 11, hebdo 9, BOOKS 7, hubs 5, skills 2, divers 4)
> - 628 tâches `[STATE]` dans 142 pages (DONE 375, TODO 143, PLANNED 41, ABORTED 30, REVIEW 13, WAITING 10, DUPLICATE 9, MISSING 7)
> - 558 pages avec `priority` (attribut **réservé SilverBullet** → **à conserver**, sert au tri des pages)
> - `area` en majuscules : PRO 102, PERSO 68, WORK 29, AMM 3, ALL 1
> - 48 références d'images cassées

---

## Règle d'or (avant chaque phase)

1. **`rename_note` du MCP** pour tout déplacement (met à jour les backlinks).
2. **Toujours `read_note` avant `update_note`** pour conserver frontmatter & contenu.
3. **Jeter un œil** : certaines pages `[STATE]` sont des **exemples de documentation** (TaskState.md, BOOKS/Organisation, PLAN) → **NE PAS convertir**.
4. Vérifier après chaque phase (recherche `02_DOMAINS`, images cassées).

---

## ÉTAPE 1 — Hubs & navigation (priorité haute)

**Objectif** : rendre `index`, TDB et Dashboard utilisables immédiatement.

| Fichier | Actions |
|---|---|
| `index.md` | Remplacer les liens `[[02_DOMAINS/...]]` (AMM/CODES, PERSO/EVENTS…) par les hubs réels (`TDB_*`, `02_PROJETS`, `03_NOTES`, `04_CODES`, `05_CONTACTS`) ; réécrire les requêtes `p.name.startsWith("02_DOMAINS/...")` en requêtes par attribut (`p.area == ... and p.type == ...`) |
| `Dashboard.md` | Mêmes corrections : liens cassés (8+) + requêtes par `area` + conversion éventuelle des tâches `[STATE]` (voir Étape 6) |
| `TDB_PRO.md` | Corriger les 4 liens projets NPDGE cassés (`[[02_PROJETS/NPDGE-LOT2]]`…) |
| `TDB_PERSO.md`, `TDB_AMM.md` | Vérifier (aucun lien cassé détecté) |
| `02_PROJETS.md`, `03_NOTES.md`, `04_CODES.md`, `05_CONTACTS.md` | Corriger les liens résiduels (`[[02_DOMAINS/AMM]]` → `[[TDB_AMM]]`, etc.) |
| `AGENTS.md`, `BACKLOGS-PRO.md` | Mettre à jour les références de chemins documentées |

**Outils** : `read_note` + `update_note` / `search_replace` / `update_frontmatter`.
**Validation** : aucun lien `[[02_DOMAINS/...]]` dans les 5 fichiers hubs.

---

## ÉTAPE 2 — Templates & skills (pour les futures créations)

**Objectif** : que toute nouvelle page soit créée avec les nouveaux chemins/attributs.

### 2a. `80_CONFIG/Templates/sd_*.md`
- `sd_contact.md` : `suggestedName: "05_CONTACTS"` (au lieu de `02_DOMAINS/PRO/CONTACTS`)
- `sd_code.md` : `suggestedName: "04_CODES"`
- `sd_note.md` : `suggestedName: "03_NOTES"` + frontmatter final (§3 du plan principal)
- `sd_project.md` : `suggestedName: "02_PROJETS/Projet"` + frontmatter projet final
- `sd_meeting.md` : `suggestedName: "01_JOURNAL/Meetings/..."` + `project: "[[02_PROJETS/]]"`
- `sd_book.md` : `suggestedName: "03_NOTES/BOOKS"` (décision type book, voir Étape 5)
- `sd_week.md` : requêtes `startsWith('02_DOMAINS/PRO/')` → par attribut `area`

### 2b. `80_CONFIG/Slash/*`
- `week-template.md` : requêtes par `area`
- `project-link.md` : `[[02_DOMAINS/PRO/PROJETS/|^|]]` → `[[02_PROJETS/|^|]]`
- `contact-link.md` : → `[[05_CONTACTS/|^|]]`
- `meeting-link.md` : → `[[01_JOURNAL/Meetings/2026/|^|]]`

### 2c. Skills IA (`80_CONFIG/IA_SKILLS/`) + resync OpenCode
- `Silverbullet-Conventions.md` : documenter la nouvelle arborescence + frontmatter + format tâches
- `Synthese-Reunion.md` : chemin `01_JOURNAL/Meetings/...` + format actions `* [ ]`
- `Week-To-Days.md` : chemin `01_JOURNAL/Weeks/` + gestion `[ ]`/`[x]`
- **Après** : relancer la sync → OpenCode (`opencode service restart`)

**Outils** : `update_note`, `search_replace`.
**Validation** : plus aucun `02_DOMAINS` dans `80_CONFIG/Templates`, `80_CONFIG/Slash`, `80_CONFIG/IA_SKILLS` (hors historique du PLAN).

---

## ÉTAPE 3 — Frontmatter global (opération de masse)

**Objectif** : uniformiser les attributs sur l'ensemble des pages.

### 3a. `priority` — **CONSERVER** (attribut réservé SilverBullet)
- `priority` est un attribut **réservé SilverBullet** qui sert au tri/affichage des pages.
- **Ne PAS le supprimer** : il n'est pas une priorité métier. Décision du 2026-10-11.

### 3b. Normaliser `area` en minuscules (≈203 pages)
- `PRO` → `pro`, `PERSO` → `perso`, `AMM` → `amm`, `ALL` → `all` (si pertinent)
- **`WORK` (29 pages)** : **décidé** → transférer vers `pro` (2026-10-11)
- `search_replace` : `area: PRO` → `area: pro`, etc. (attention aux frontmatter)

### 3c. Frontmatter projet (pages `02_PROJETS/`)
- Aligner sur le modèle final : `status` (cycle de vie), `urgence`, `axe`, `start`/`end`/`review`
- Exemple constaté à corriger : `COTEC-DGE-2026-02` a `start/end/review` = même date + `due` → `end`/`review` doivent être **vides**, pas de `due`

**Outils** : `update_frontmatter` (bulk), `search_replace`.
**Validation** : 0 `area` en majuscules (`priority` conservé).

---

## ÉTAPE 4 — Liens projets (`02_PROJETS`, 47 pages)

**Objectif** : corriger les liens internes vers les projets.

- `[[02_DOMAINS/PRO/PROJETS/NPDGE-LOT1]]` → `[[02_PROJETS/NPDGE-LOT1]]`
- `[[02_DOMAINS/PERSO/PROJETS/VPS-IA]]` → `[[02_PROJETS/VPS-IA]]`
- Idem AMM : `[[02_DOMAINS/AMM/PROJETS/COMMUNICATION]]` → `[[02_PROJETS/COMMUNICATION-AMM]]` ⚠️ **vérifier le nouveau nom** (renommés avec suffixe `-AMM`)
- Cas particuliers (`NPDGE-LOT1_ABANDON-GEOFENCE`, sous-dossiers `NPDGE/`, `ACCOMPAGNEMENT/`…) : vérifier chaque correspondance

**Outils** : `search_replace` par motif, puis `read_note` de contrôle.
**Validation** : 0 occurrence `02_DOMAINS` dans `02_PROJETS/**`.

---

## ÉTAPE 5 — Notes (`03_NOTES` + BOOKS, 28 pages)

**Objectif** : corriger liens + frontmatter des notes migrées.

- Liens `[[02_DOMAINS/PERSO/NOTES/...]]` → `[[03_NOTES/...]]`
- Liens `[[02_DOMAINS/PRO/NOTES/...]]` → `[[03_NOTES/...]]`
- Frontmatter : `area` minuscule, `nature` renseigné (`priority` conservé)
- **BOOKS (30)** : **décidé** → passer à `type: note` + `nature: book` (Option B, 2026-10-11)
- Exemple constaté : `KOPIA_Sauvegarde...` a `area: PERSO` + `project: [[02_DOMAINS/...]]` cassé → corriger en `[[02_PROJETS/INFORMATIQUE]]`

**Outils** : `update_frontmatter`, `search_replace`, `update_note`.
**Validation** : 0 `02_DOMAINS` dans `03_NOTES/**` (hors textes historiques d'organisation).

---

## ÉTAPE 6 — Journal, Weeks, Meetings (145 pages) + conversion tâches

**Objectif** : corriger les liens et convertir les tâches `[STATE]`.

### 6a. Pages journal (`01_JOURNAL/YYYY/YYYY-MM-DD`, 136 pages)
- `[[02_DOMAINS/PRO/PROJETS/...]]` → `[[02_PROJETS/...]]`
- `[[02_DOMAINS/PRO/EVENTS/...]]` → `[[01_JOURNAL/Meetings/...]]`
- `[[02_DOMAINS/PERSO/PROJETS/...]]` → `[[02_PROJETS/...]]`

### 6b. Pages hebdo (`01_JOURNAL/Weeks/*`, 9 pages)
- Requêtes `startsWith('02_DOMAINS/PRO/')` → par attribut `area`
- Liens projets/événements résiduels → nouveaux chemins
- Exemples constatés : `2026-W39/40/41` contiennent des `[[02_DOMAINS/PRO/PROJETS/project]]` et `Cf. [[02_DOMAINS/PRO/EVENTS/...]]`

### 6c. Conversion des tâches `[STATE]` → `[ ]`/`[x]` (142 pages)
- `[DONE]` → `[x]`
- `[TODO]` → `[ ]`
- `[WAITING]` → `[ ] #waiting`
- `[PLANNED]` → `[ ] #planned`
- `[REVIEW]` → `[ ] #review`
- `[ABORTED]` / `[DUPLICATE]` / `[MISSING]` → **`[x]` + tag** (`#aborted`/`#duplicate`/`#missing`) — décidé (2026-10-11)
- ⚠️ **Ne PAS convertir les pages d'exemples/documentation** : `80_CONFIG/TaskState.md`, `80_CONFIG/PLAN_PKM_Reorganisation.md`, `03_NOTES/BOOKS/Organisation*`, `03_NOTES/ORGANISATION/SB_Reorganisation*`

**Outils** : `search_replace` (par motif regex), `eval_lua` pour contrôle.
**Validation** : 0 tâche `[STATE]` hors pages d'exemples ; 0 `02_DOMAINS` dans journal.

---

## ÉTAPE 7 — Images cassées (48 références)

**Objectif** : réparer les liens d'images `![[...]]` vers les nouveaux chemins.

| Page | Lien actuel | Lien cible |
|---|---|---|
| `03_NOTES/PLACES/*` (3 pages) | `![[02_DOMAINS/PERSO/NOTES/Ressources/Chateaux/...]]` | `![[03_NOTES/PLACES/...]]` |
| `03_NOTES/BOOKS/Shinkendo.md` | `![[00_INBOX/image2-7.webp]]` | `![[03_NOTES/BOOKS/image2-7.webp]]` |
| `03_NOTES/LIEUX/Chateau_Lichtenberg.md` | `![[03_RESSOURCES/LIEUX/...]]` | `![[03_NOTES/LIEUX/...]]` |
| `03_NOTES/RECETTE_Chirashi_Sushi.md` | `![[02_DOMAINS/PERSO/1783866547797.webp]]` | `![[03_NOTES/Recette_chirashi_1783866547797.webp]]` |
| `03_NOTES/ordi-region-p220246.md` | `![[06_Notes/PERSO/...]]` | `![[03_NOTES/ordi-region-p220246-specifications.webp]]` |
| Journal (casse `01_Journal/`) | `![[01_Journal/2026/...]]` | `![[01_JOURNAL/2026/...]]` |

**Outils** : `search_replace`.
**Validation** : 0 référence d'image cassée (script de contrôle).

---

## ÉTAPE 8 — Archivage & vérification finale

- Déplacer vers `90_ARCHIVES` les résidus éventuels (dossiers vides, `AI Chat` supprimé si restauré)
- Vérifications globales :
  - [ ] 0 occurrence `02_DOMAINS` dans tout l'espace (hors textes historiques volontairement conservés)
  - [ ] 0 tâche `[STATE]` (hors exemples)
  - [ ] 0 image cassée
  - [ ] Hubs (index, TDB, Dashboard) affichés sans lien rouge
  - [ ] Skills resynchronisés dans OpenCode

---

## Points ouverts — DÉCISIONS PRISES (2026-10-11) ✅

1. **`area: WORK`** (29 pages) → transférer vers **`pro`** (référentiel pro/perso/amm uniquement).
2. **BOOKS** → **`type: note` + `nature: book`** (Option B, cohérent avec `nature: documentation`).
3. **Tâches `[ABORTED]`/`[DUPLICATE]`/`[MISSING]`** → **`[x]` + tag** (`#aborted` / `#duplicate` / `#missing`) pour trace.
4. **`AI Chat 2026-10-01...md`** → **laissé supprimé** (volontaire, pas de restauration).
5. **Fichier orphelin `03_NOTES/1783866547797.webp`** → **supprimer le doublon** + **corriger le lien** dans `RECETTE_Chirashi_Sushi.md`.

---

## Ordre d'exécution recommandé

```
1. Hubs → 2. Templates & skills → 3. Frontmatter masse
→ 4. Liens projets → 5. Notes/BOOKS → 6. Journal + tâches
→ 7. Images → 8. Archivage & vérification
```

Chaque étape est courte et vérifiable avant de passer à la suivante.
