0.0.1-alpha.3.fix.1
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/architecture/001-PROJECT_PROFILE.md -->
|
||||
<!-- version: 4 -->
|
||||
<!-- version: 5 -->
|
||||
|
||||
# Profil du projet Knowledge
|
||||
|
||||
@@ -74,10 +74,12 @@ Les profils Java/Maven/Gradle, Android et autres technologies absentes ne sont p
|
||||
| Maud | `KEEP-LOCAL` | rendu SSR initial lorsque pertinent |
|
||||
| TypeScript | `ADOPT` | conforme au owner `530` et à l'intention locale |
|
||||
| Package manager frontend | `DEFER` | choisir dans la tranche Web avant création du manifest/lockfile |
|
||||
| Vite | `KEEP-LOCAL` + owner `550` adopté | choix local cohérent avec la recommandation PGR ; configuration à décider dans la tranche Web |
|
||||
| Sass | `KEEP-LOCAL` + owner `560` adopté | choix local ; compilation intégrée à la chaîne Web si elle apporte la valeur attendue |
|
||||
| Bootstrap | `KEEP-LOCAL` | framework CSS local, jamais règle PGR/Tauri/Web universelle |
|
||||
| Racine(s) frontend | `DEFER` | décider dans la tranche Web selon le partage réel entre les trois applications |
|
||||
| Vite | `KEEP-LOCAL` + owner `550` adopté | build/preview des templates et assets de référence ; manifest de production consommé par l’intégration Maud |
|
||||
| Sass | `KEEP-LOCAL` + owner `560` adopté | styles source de la chaîne de validation Web et des assets réellement servis par les pages Maud |
|
||||
| Bootstrap | `KEEP-LOCAL` | framework CSS retenu pour les templates de référence et le rendu Maud ; jamais règle PGR universelle |
|
||||
| Racine(s) frontend | `DEFER` | décider en `alpha.4` selon le partage réel entre les trois applications et leurs templates de référence |
|
||||
| Templates statiques Web | `KEEP-LOCAL` | harness de conception/validation ; le markup runtime est adapté et servi par Maud |
|
||||
| Intégration manifest Vite / Maud | `KEEP-LOCAL` | mapping d’assets hashés requis en production ; API Rust exacte différée jusqu’à la composition serveur |
|
||||
| Driver/ORM PostgreSQL | `DEFER` | reprendre à la première implémentation persistante réelle |
|
||||
| Migrations PostgreSQL | `DEFER` | reprendre avec le choix de driver/tooling et le premier schéma réel |
|
||||
| Moteur de recherche | `DEFER` | commencer par capacités PostgreSQL/index applicatif ; réévaluer sur besoin mesuré |
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/architecture/002-KNOWLEDGE_ARCHITECTURE.md -->
|
||||
<!-- version: 4 -->
|
||||
<!-- version: 5 -->
|
||||
|
||||
# Architecture de fondation Knowledge
|
||||
|
||||
@@ -238,6 +238,34 @@ Actix Web et Maud sont des choix de composition/rendu locaux. Vite gère les ass
|
||||
|
||||
La stratégie exacte de partage des assets/frontend entre les trois applications reste `DEFER` jusqu'à la tranche Web : un package commun n'est créé que si du code/assets sont réellement communs.
|
||||
|
||||
### Pipeline Web de référence et rendu runtime
|
||||
|
||||
Le frontend Web n’est pas une SPA concurrente du SSR Maud. Il possède deux responsabilités distinctes :
|
||||
|
||||
```text
|
||||
Vite + TypeScript + Sass + Bootstrap
|
||||
-> assets construits et templates statiques de référence
|
||||
-> typecheck/build/preview/smoke indépendants du backend
|
||||
|
||||
Actix Web + Maud
|
||||
-> markup runtime des trois applications
|
||||
-> consommation des mêmes contrats d’assets
|
||||
```
|
||||
|
||||
Les templates statiques de référence permettent de travailler rapidement sur le HTML, le responsive, les classes Bootstrap, les comportements TypeScript et les styles Sass sans démarrer les serveurs Rust. Ils sont ensuite adaptés en composants/templates Maud pour le rendu runtime. Cette adaptation ne doit pas créer deux produits UI indépendants : la tranche Web devra définir les invariants vérifiables qui empêchent la dérive entre référence statique et rendu Maud.
|
||||
|
||||
Le build production Vite doit exposer un manifest permettant au backend de convertir une clé d’entrée stable en URL d’asset hashé. Le corpus `actix-auth-app` montre un pattern utile : manifest Vite activé, entrées TypeScript/Sass explicites, loader Rust et sélection dev-server versus manifest en fonction du mode. Knowledge retient le **contrat d’intégration**, pas l’implémentation historique telle quelle.
|
||||
|
||||
En particulier, Knowledge ne doit pas hériter mécaniquement :
|
||||
|
||||
- d’un origin Vite `localhost:5173` codé en dur ;
|
||||
- d’un préfixe `/res` universel ;
|
||||
- d’un `panic!` lorsque le manifest est absent ou invalide ;
|
||||
- d’une arborescence d’assets spécifique au corpus ;
|
||||
- de dépendances TypeScript `@types/*` non justifiées par les packages réellement consommés.
|
||||
|
||||
`alpha.4` possède le frontend indépendant et la production du manifest. `alpha.5` possède l’intégration Actix/Maud et doit décider si le loader d’assets devient une crate/lib partagée entre les trois serveurs.
|
||||
|
||||
## 10. Administration
|
||||
|
||||
L'administration Web est une interface vers les mêmes cas d'usage que l'édition locale Git, pas une deuxième source de vérité.
|
||||
|
||||
Reference in New Issue
Block a user