life-noc/docs/plan-demockage-life-noc.md

658 lines
26 KiB
Markdown
Raw Normal View History

2026-03-15 14:43:50 -04:00
# Plan de démockage Life-NOC
## 1. Objet
Ce document sert de plan directeur pour faire évoluer Life-NOC dune preuve de concept partiellement mockée vers un système où **chaque item** :
- possède une **méthode réelle** ;
- possède une **source dintrants réelle** ;
- possède une **page web canonique** ;
- possède une **URL stable** ;
- peut être **consulté**, **compris** et **renseigné** de manière interactive.
Lobjectif final est :
> **1 item = 1 URL = 1 page = 1 logique = 1 source de vérité**
---
## 2. Principes retenus
### 2.1 Tout item doit être démocké
À terme, aucun item ne devrait dépendre dun état mocké durablement.
Le mock a servi à :
- prouver larchitecture ;
- faire exister la structure BPM et Icinga ;
- valider les flux de déploiement ;
- permettre une mise en place progressive.
Mais la cible est désormais :
- **zéro item purement mocké**.
### 2.2 Chaque item doit avoir sa page web
Chaque item doit avoir une URL canonique de la forme :
```text
/life-noc/item/<domaine>/<item_key>
```
Cette page doit devenir :
- la page dinformation ;
- la page dinstructions ;
- la page daction ;
- la page de saisie des intrants.
### 2.3 La page web dun item est linstruction par défaut
Pour tout item :
- si `instructions_url` est défini, il surcharge ;
- sinon, la page canonique de litem est la page dinstructions implicite.
Règle :
```text
instructions_url implicite = /life-noc/item/<domaine>/<item_key>
```
### 2.4 Les domaines organisent, les méthodes évaluent
- le **domaine** organise les items par sens métier ;
- la **méthode** exprime la logique de calcul ;
- l**item** relie domaine, méthode, intrant, UI et action.
Donc :
- plusieurs items dun même domaine peuvent utiliser des méthodes différentes ;
- plusieurs domaines peuvent réutiliser la même méthode.
---
## 3. Méthodes de sonde cibles
### 3.1 Méthodes déjà validées
#### `elapsed_time`
Mesure le temps écoulé depuis une dernière exécution.
#### `days_until_due`
Mesure le temps restant avant une échéance fixe.
### 3.2 Méthodes encore à industrialiser
#### `elapsed_distance`
Mesure une distance écoulée depuis une action passée.
#### `current_value`
Évalue une valeur instantanée contre des seuils.
#### `remaining_quantity`
Évalue une quantité restante contre des seuils.
---
## 4. Types dintrants cibles
Les intrants vivants continueront dêtre stockés dans :
```text
data/inputs/<domaine>.yaml
```
Les types principaux dintrants à supporter sont :
- `manual_date`
- `manual_counter`
- `manual_value`
À terme, dautres sources pourront exister, mais le démockage initial se concentre sur les intrants simples et robustes.
---
## 5. Formulaires web cibles
Chaque item doit pouvoir afficher un formulaire adapté à son type réel.
### 5.1 `complete_date`
Pour les items de type `elapsed_time` avec saisie de date de dernière exécution.
Exemples :
- revue périodique ;
- inspection ;
- test ;
- vérification périodique.
Fonctions attendues :
- bouton `Compléter`
- saisie manuelle dune date
- bouton `Aujourdhui`
### 5.2 `due_date`
Pour les items de type `days_until_due`.
Exemples :
- permis ;
- assurance ;
- passeport ;
- échéance administrative.
Fonctions attendues :
- saisie dune date déchéance
- bouton `Enregistrer`
### 5.3 `counter_pair`
Pour les items de type `elapsed_distance`.
Exemples :
- huile moteur ;
- pneus ;
- freins ;
- timing belt.
Fonctions attendues :
- compteur courant
- compteur au dernier entretien
- bouton `Enregistrer`
### 5.4 `numeric_value`
Pour les items de type `current_value`.
Exemples :
- tension batterie
- capacité libre
- température
- mesure technique
Fonctions attendues :
- saisie numérique
- unité affichée
- bouton `Enregistrer`
### 5.5 `remaining_quantity`
Pour les items de type `remaining_quantity`.
Exemples :
- réserve deau
- stock nourriture chats
- stock consommables
- carburant
Fonctions attendues :
- quantité restante
- unité
- bouton `Enregistrer`
---
## 6. Modèle cible dun item réel
Le modèle canonique minimal dun item réel devrait converger vers ceci :
```yaml
- name: remplacement-filtre-fournaise
title: "Remplacement du filtre de la fournaise"
summary: "Suivi périodique du filtre principal."
notes: "À faire selon la fréquence dusage et la saison."
notes_url: ""
instructions: |
1. Couper le système si nécessaire.
2. Retirer le filtre usagé.
3. Vérifier le sens du flux dair.
4. Installer le nouveau filtre.
5. Confirmer la date dans Life-NOC.
instructions_url: ""
action_url: ""
probe:
type: elapsed_time
source:
type: manual_date
inputs_file: "/opt/life-noc/data/inputs/maison.yaml"
item_key: "remplacement-filtre-fournaise"
metric:
unit: days
thresholds:
unknown_lt: 30
ok_gte: 30
warning_gte: 60
critical_gte: 90
policy:
on_error: critical
ui:
form_mode: complete_date
allow_complete: true
allow_manual_edit: true
```
Tous les champs ne seront pas obligatoires immédiatement, mais cette structure donne la direction.
---
## 7. Tableau de migration
## 7.1 REVUE
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| revue-quotidienne-life-noc | elapsed_time | manual_date | complete_date | réel |
| revue-hebdomadaire-priorites | elapsed_time | manual_date | complete_date | réel |
| revue-mensuelle-systeme-vie | elapsed_time | manual_date | complete_date | à migrer |
| revue-trimestrielle-orientation | elapsed_time | manual_date | complete_date | à migrer |
## 7.2 FOCUS
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| entretien-processus-focus | elapsed_time | manual_date | complete_date | à migrer |
| nettoyage-inbox-mentale | elapsed_time | manual_date | complete_date | à migrer |
| revue-limitation-engagements | elapsed_time | manual_date | complete_date | à migrer |
## 7.3 FINANCES-PERSONNELLES
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| revision-comptes-bancaires | elapsed_time | manual_date | complete_date | à migrer |
| verification-cartes-credit | elapsed_time | manual_date | complete_date | à migrer |
| paiement-cartes-credit | elapsed_time | manual_date | complete_date | à migrer |
| revision-budget-personnel | elapsed_time | manual_date | complete_date | à migrer |
| verification-prelevements-automatiques | elapsed_time | manual_date | complete_date | à migrer |
| verification-placements | elapsed_time | manual_date | complete_date | à migrer |
| verification-cotisations-reer | elapsed_time | manual_date | complete_date | à migrer |
| verification-celi | elapsed_time | manual_date | complete_date | à migrer |
| preparation-dossier-financier-annuel | elapsed_time | manual_date | complete_date | à migrer |
## 7.4 FISCALITE-PERSONNELLE
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| preparation-documents-impots | elapsed_time | manual_date | complete_date | à migrer |
| production-impots-federal | days_until_due / elapsed_time | manual_date | due_date / complete_date | à préciser |
| production-impots-quebec | days_until_due / elapsed_time | manual_date | due_date / complete_date | à préciser |
| paiement-solde-impots | days_until_due | manual_date | due_date | à migrer |
| verification-avis-cotisation | elapsed_time | manual_date | complete_date | à migrer |
| archivage-documents-fiscaux | elapsed_time | manual_date | complete_date | à migrer |
| verification-acomptes-provisionnels | days_until_due | manual_date | due_date | à migrer |
## 7.5 OBLIGATIONS-LEGALES-PERSONNELLES
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-testament | elapsed_time | manual_date | complete_date | à migrer |
| verification-mandat-inaptitude | elapsed_time | manual_date | complete_date | à migrer |
| verification-directives-medicales | elapsed_time | manual_date | complete_date | à migrer |
| verification-papiers-identite | elapsed_time | manual_date | complete_date | à migrer |
| renouvellement-permis-conduire | days_until_due | manual_date | due_date | réel |
| verification-carte-assurance-maladie | days_until_due | manual_date | due_date | à migrer |
| verification-passeport | days_until_due | manual_date | due_date | à migrer |
## 7.6 MAISON
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| remplacement-filtre-fournaise | elapsed_time | manual_date | complete_date | à migrer |
| inspection-fournaise | elapsed_time | manual_date | complete_date | à migrer |
| inspection-thermopompe | elapsed_time | manual_date | complete_date | à migrer |
| nettoyage-unites-exterieures | elapsed_time | manual_date | complete_date | à migrer |
| inspection-toiture | elapsed_time | manual_date | complete_date | à migrer |
| inspection-gouttieres | elapsed_time | manual_date | complete_date | à migrer |
| inspection-fondation | elapsed_time | manual_date | complete_date | à migrer |
| verification-drainage-terrain | elapsed_time | manual_date | complete_date | à migrer |
| test-detecteurs-fumee | elapsed_time | manual_date | complete_date | à migrer |
| test-detecteurs-co | elapsed_time | manual_date | complete_date | à migrer |
| remplacement-piles-detecteurs | elapsed_time | manual_date | complete_date | à migrer |
| verification-plomberie-visible | elapsed_time | manual_date | complete_date | à migrer |
| inspection-sump-pump | elapsed_time | manual_date | complete_date | à migrer |
| verification-calfetrage | elapsed_time | manual_date | complete_date | à migrer |
| inspection-portes-garage | elapsed_time | manual_date | complete_date | à migrer |
| verification-extincteurs | days_until_due / elapsed_time | manual_date | due_date / complete_date | à préciser |
## 7.7 GARAGE-ET-RANGEMENT
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| inspection-rangement-plafond | elapsed_time | manual_date | complete_date | à migrer |
| revue-inventaire-garage | elapsed_time | manual_date | complete_date | à migrer |
| verification-rouille-outillage | elapsed_time | manual_date | complete_date | à migrer |
| inspection-securite-garage | elapsed_time | manual_date | complete_date | à migrer |
| rotation-stockage-bacs | elapsed_time | manual_date | complete_date | à migrer |
## 7.8 ENERGIE
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| inspection-batteries-lifepo4 | elapsed_time | manual_date | complete_date | à migrer |
| verification-tension-batteries | current_value | manual_value | numeric_value | à migrer |
| verification-smartshunt | current_value | manual_value | numeric_value | à préciser |
| verification-cerbo-gx | elapsed_time / current_value | manual_date / manual_value | complete_date / numeric_value | à préciser |
| verification-can-rs485 | elapsed_time | manual_date | complete_date | à migrer |
| inspection-cablage-energie | elapsed_time | manual_date | complete_date | à migrer |
| verification-busbars | elapsed_time | manual_date | complete_date | à migrer |
| verification-parametres-charge | elapsed_time | manual_date | complete_date | à migrer |
| test-charge-batteries | elapsed_time | manual_date | complete_date | à migrer |
| test-comportement-onduleur | elapsed_time | manual_date | complete_date | à migrer |
| verification-journal-evenements-victron | elapsed_time | manual_date | complete_date | à migrer |
## 7.9 RESILIENCE
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| test-generatrice-propane | elapsed_time | manual_date | complete_date | à migrer |
| verification-carburant-generatrice | remaining_quantity | manual_value | remaining_quantity | à migrer |
| verification-procedure-bascule | elapsed_time | manual_date | complete_date | à migrer |
| verification-stock-lampes-piles | remaining_quantity | manual_value | remaining_quantity | à migrer |
| verification-trousses-urgence | remaining_quantity / elapsed_time | manual_value / manual_date | remaining_quantity / complete_date | à préciser |
| revision-plan-urgence | elapsed_time | manual_date | complete_date | à migrer |
| test-autonomie-base | elapsed_time | manual_date | complete_date | à migrer |
| verification-moyens-cuisson-secours | remaining_quantity / elapsed_time | manual_value / manual_date | remaining_quantity / complete_date | à préciser |
## 7.10 STOCK-ALIMENTAIRE
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| rotation-nourriture-seche | elapsed_time | manual_date | complete_date | à migrer |
| verification-reserve-eau | remaining_quantity | manual_value | remaining_quantity | à migrer |
| verification-mylar-absorbeurs | remaining_quantity | manual_value | remaining_quantity | à migrer |
| revue-inventaire-conserves | remaining_quantity | manual_value | remaining_quantity | à migrer |
| revue-inventaire-farine-riz-pates | remaining_quantity | manual_value | remaining_quantity | à migrer |
| verification-bacs-legumes-racines | remaining_quantity | manual_value | remaining_quantity | à migrer |
| revue-supplements-vitamines | remaining_quantity | manual_value | remaining_quantity | à migrer |
## 7.11 SANTE
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-trousse-premiers-soins | remaining_quantity / elapsed_time | manual_value / manual_date | remaining_quantity / complete_date | à préciser |
| verification-expiration-medicaments | days_until_due | manual_date | due_date | à migrer |
| revision-rendez-vous-medicaux | days_until_due | manual_date | due_date | à migrer |
| verification-lunettes-prescriptions | days_until_due / elapsed_time | manual_date | due_date / complete_date | à préciser |
| verification-dossier-sante | elapsed_time | manual_date | complete_date | à migrer |
## 7.12 VOITURE
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-huile-moteur | elapsed_distance | manual_counter | counter_pair | à migrer |
| inspection-freins | elapsed_distance | manual_counter | counter_pair | à migrer |
| verification-pneus | elapsed_distance | manual_counter | counter_pair | à migrer |
| ajustement-valves | elapsed_distance / elapsed_time | manual_counter / manual_date | counter_pair / complete_date | à préciser |
| verification-timing-belt | elapsed_distance | manual_counter | counter_pair | à migrer |
| verification-batterie-voiture | current_value | manual_value | numeric_value | à migrer |
| verification-balais-essuie-glace | elapsed_time | manual_date | complete_date | à migrer |
| verification-liquides | current_value / elapsed_time | manual_value / manual_date | numeric_value / complete_date | à préciser |
| verification-eclairage | elapsed_time | manual_date | complete_date | à migrer |
| verification-immatriculation-assurance | days_until_due | manual_date | due_date | à migrer |
## 7.13 JARDIN
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| inspection-vignes | elapsed_time | manual_date | complete_date | à migrer |
| entretien-bleuetiers | elapsed_time | manual_date | complete_date | à migrer |
| entretien-framboisiers | elapsed_time | manual_date | complete_date | à migrer |
| inspection-kiwis-nordiques | elapsed_time | manual_date | complete_date | à migrer |
| entretien-rhubarbe | elapsed_time | manual_date | complete_date | à migrer |
| inspection-groseillier | elapsed_time | manual_date | complete_date | à migrer |
| inspection-muriers | elapsed_time | manual_date | complete_date | à migrer |
| entretien-houblon | elapsed_time | manual_date | complete_date | à migrer |
| revision-pharmacopee-jardin | remaining_quantity | manual_value | remaining_quantity | à migrer |
| revision-armoire-produits-jardin | remaining_quantity | manual_value | remaining_quantity | à migrer |
## 7.14 OUTILS-ET-EQUIPEMENTS
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| entretien-outils-jardin | elapsed_time | manual_date | complete_date | à migrer |
| inspection-outils-electriques | elapsed_time | manual_date | complete_date | à migrer |
| verification-rallonges-et-connecteurs | elapsed_time | manual_date | complete_date | à migrer |
| verification-compresseur-et-accessoires | elapsed_time | manual_date | complete_date | à migrer |
| revision-inventaire-outillage | elapsed_time | manual_date | complete_date | à migrer |
## 7.15 INFORMATIQUE-PERSONNELLE
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-sauvegardes-personnelles | elapsed_time | manual_date | complete_date | à migrer |
| nettoyage-stockage-personnel | elapsed_time | manual_date | complete_date | à migrer |
| verification-comptes-importants | elapsed_time | manual_date | complete_date | à migrer |
| revue-mots-de-passe-personnels | elapsed_time | manual_date | complete_date | à migrer |
| verification-documents-cloud-personnels | elapsed_time | manual_date | complete_date | à migrer |
## 7.16 INFRASTRUCTURE-CHEZLEPRO
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-proxmox | elapsed_time | manual_date | complete_date | à migrer |
| verification-ceph | elapsed_time / current_value | manual_date / manual_value | complete_date / numeric_value | à préciser |
| test-restauration-backups | elapsed_time | manual_date | complete_date | à migrer |
| verification-pbs-truenas | elapsed_time | manual_date | complete_date | à migrer |
| verification-ups-infrastructure | current_value | manual_value | numeric_value | à migrer |
| verification-capacite-stockage | current_value | manual_value | numeric_value | à migrer |
| verification-apt-cacher-ng | elapsed_time | manual_date | complete_date | à migrer |
| verification-icinga2 | elapsed_time | manual_date | complete_date | à migrer |
| verification-keycloak-openldap | elapsed_time | manual_date | complete_date | à migrer |
| verification-nextcloud | elapsed_time | manual_date | complete_date | à migrer |
| verification-mailcow | elapsed_time | manual_date | complete_date | à migrer |
| verification-openvas | elapsed_time | manual_date | complete_date | à migrer |
| verification-journaux-systemes | elapsed_time | manual_date | complete_date | à migrer |
## 7.17 RESEAU-CHEZLEPRO
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-firewalls | elapsed_time | manual_date | complete_date | à migrer |
| verification-vpn-openvpn | elapsed_time | manual_date | complete_date | à migrer |
| verification-crl-certificats | days_until_due / elapsed_time | manual_date | due_date / complete_date | à préciser |
| verification-switches | elapsed_time | manual_date | complete_date | à migrer |
| verification-vlans-segmentation | elapsed_time | manual_date | complete_date | à migrer |
| verification-dns | elapsed_time | manual_date | complete_date | à migrer |
| verification-dynamic-dns | elapsed_time | manual_date | complete_date | à migrer |
| audit-regles-firewall | elapsed_time | manual_date | complete_date | à migrer |
| verification-geoblocking | elapsed_time | manual_date | complete_date | à migrer |
| verification-certificats-publics | days_until_due | manual_date | due_date | à migrer |
## 7.18 SECURITE-CHEZLEPRO
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-mises-a-jour-securite | elapsed_time | manual_date | complete_date | à migrer |
| audit-comptes-acces | elapsed_time | manual_date | complete_date | à migrer |
| verification-ids-snort | elapsed_time | manual_date | complete_date | à migrer |
| revue-pki-privee | days_until_due / elapsed_time | manual_date | due_date / complete_date | à préciser |
| revue-politiques-securite | elapsed_time | manual_date | complete_date | à migrer |
| verification-sauvegardes-configuration | elapsed_time | manual_date | complete_date | à migrer |
## 7.19 EXPLOITATION-CHEZLEPRO
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| revision-playbooks-ansible | elapsed_time | manual_date | complete_date | à migrer |
| verification-inventaires-ansible | elapsed_time | manual_date | complete_date | à migrer |
| revision-documentation-technique | elapsed_time | manual_date | complete_date | à migrer |
| verification-procedures-reprise | elapsed_time | manual_date | complete_date | à migrer |
| revue-capacite-ressources | elapsed_time | manual_date | complete_date | à migrer |
| verification-jobs-automatises | elapsed_time | manual_date | complete_date | à migrer |
## 7.20 OBLIGATIONS-CHEZLEPRO
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-registraire-entreprise | days_until_due | manual_date | due_date | à migrer |
| verification-declarations-taxes | days_until_due | manual_date | due_date | à migrer |
| verification-dossier-comptable-entreprise | elapsed_time | manual_date | complete_date | à migrer |
| verification-facturation-clients | elapsed_time | manual_date | complete_date | à migrer |
| verification-paiements-fournisseurs | elapsed_time | manual_date | complete_date | à migrer |
| verification-contrats-ententes | days_until_due / elapsed_time | manual_date | due_date / complete_date | à préciser |
| verification-assurances-entreprise | days_until_due | manual_date | due_date | à migrer |
| archivage-documents-entreprise | elapsed_time | manual_date | complete_date | à migrer |
## 7.21 ACTIFS-CHEZLEPRO
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| revision-inventaire-materiel | elapsed_time | manual_date | complete_date | à migrer |
| verification-amortissables | days_until_due / elapsed_time | manual_date | due_date / complete_date | à préciser |
| verification-serveurs-et-composants | elapsed_time | manual_date | complete_date | à migrer |
| verification-reserve-pieces | remaining_quantity | manual_value | remaining_quantity | à migrer |
| revision-actifs-transferts | elapsed_time | manual_date | complete_date | à migrer |
## 7.22 PROJETS
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| revision-life-noc | elapsed_time | manual_date | complete_date | à migrer |
| revision-alliance-boreale | elapsed_time | manual_date | complete_date | à migrer |
| revision-erplibre | elapsed_time | manual_date | complete_date | à migrer |
| revision-semence-numerique | elapsed_time | manual_date | complete_date | à migrer |
| revision-ortrux-1 | elapsed_time | manual_date | complete_date | à migrer |
| revision-district16 | elapsed_time | manual_date | complete_date | à migrer |
## 7.23 COMMUNAUTE
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-outils-aa | elapsed_time | manual_date | complete_date | à migrer |
| verification-espace-87-16 | elapsed_time | manual_date | complete_date | à migrer |
| verification-salles-visio-groupes | elapsed_time | manual_date | complete_date | à migrer |
| verification-depots-rapports-rsg | elapsed_time | manual_date | complete_date | à migrer |
| revision-outils-communication-communaute | elapsed_time | manual_date | complete_date | à migrer |
## 7.24 DOCUMENTATION
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| revue-docs-personnelles-importantes | elapsed_time | manual_date | complete_date | à migrer |
| revue-wiki-technique | elapsed_time | manual_date | complete_date | à migrer |
| revue-base-connaissances | elapsed_time | manual_date | complete_date | à migrer |
| verification-sauvegarde-docs-cles | elapsed_time | manual_date | complete_date | à migrer |
## 7.25 ANIMAUX
| item_key | méthode cible | intrant | formulaire | statut |
|---|---|---|---|---|
| verification-stock-nourriture-chats | remaining_quantity | manual_value | remaining_quantity | à migrer |
| verification-friandises-et-litiere | remaining_quantity | manual_value | remaining_quantity | à migrer |
| revision-routine-soins-animaux | elapsed_time | manual_date | complete_date | à migrer |
---
## 8. Priorité de migration
### Vague 1 — tout ce qui est date simple
Objectif :
- finir `elapsed_time`
- finir `days_until_due`
Cest la vague la plus simple, la plus rentable et la moins risquée.
### Vague 2 — voiture
Objectif :
- introduire `elapsed_distance`
### Vague 3 — stocks et réserves
Objectif :
- introduire `remaining_quantity`
### Vague 4 — mesures techniques
Objectif :
- introduire `current_value`
---
## 9. Pages web cibles
Chaque item doit converger vers une page web canonique :
```text
/life-noc/item/<domaine>/<item_key>
```
Cette page doit devenir :
- la fiche de contexte ;
- la fiche dinstructions ;
- la fiche daction ;
- la fiche de saisie des intrants.
### 9.1 Contenu minimal
- titre humain
- état actuel
- dernier intrant
- résumé
- notes
- instructions
- liens utiles
- formulaire adapté
- action disponible
### 9.2 Règle sur `instructions_url`
La page de litem est la page dinstructions par défaut.
Règle :
- si `instructions_url` est explicite, on lutilise ;
- sinon, on considère implicitement :
```text
/life-noc/item/<domaine>/<item_key>
```
---
## 10. Critère de fin de démockage
Le démockage dun item sera considéré terminé quand :
- litem possède un `probe` réel ;
- litem possède un intrant réel ;
- litem possède une page web opérationnelle ;
- litem possède un formulaire web adapté ;
- litem possède une URL canonique stable ;
- létat Icinga est calculé à partir du vrai store.
---
## 11. Stratégie de mise en œuvre
### Phase 1
Finir toutes les migrations `elapsed_time` et `days_until_due`.
### Phase 2
Faire évoluer la page item pour afficher :
- `title`
- `summary`
- `instructions`
- formulaire adapté au type dintrant.
### Phase 3
Ajouter les endpoints HTML de mise à jour interactive des intrants.
### Phase 4
Introduire successivement :
- `elapsed_distance`
- `remaining_quantity`
- `current_value`
### Phase 5
Éliminer complètement les items mockés restants.
---
## 12. Conclusion
La cible Life-NOC retenue est désormais claire :
- **tout item doit être réel**
- **tout item doit avoir sa page**
- **tout item doit avoir son URL**
- **tout item doit être renseignable**
- **tout item doit pouvoir guider laction**
Ce plan sert de carte de migration pour converger progressivement vers ce modèle.