[SETUP-01] Fork Fractal upstream + initialiser le workspace Cargo multi-crate #71

Closed
opened 2026-04-06 01:41:02 +00:00 by charles · 1 comment
Owner

Contexte

Point de départ du projet : forker Fractal (client Matrix GNOME officiel) et restructurer le dépôt en workspace Cargo multi-crate pour accueillir les modules M1–M5 sans modifier l'upstream.

Critères d'acceptation

  • Fork de https://gitlab.gnome.org/World/fractal dans le repo my-fractal
  • Cargo.toml workspace avec les crates : fractal-core, fractal-gtk, fractal-ext, fractal-stt, fractal-ai, fractal-rich, fractal-bridge
  • Le projet compile (cargo build) sans erreur
  • meson.build adapté pour le workspace multi-crate
  • CI/CD (Forgejo Actions) : pipeline cargo check + cargo clippy + cargo test sur chaque push
  • Branches de travail créées : feature/m1-stt, feature/m2-ai-agent, feature/m3-rich-render, feature/m4-bridges
  • README.md racine mis à jour avec la structure du projet

Notes techniques

Structure cibles :

fractal-plus/
├── crates/
│   ├── fractal-core/     # hérité upstream
│   ├── fractal-gtk/      # hérité upstream
│   ├── fractal-ext/      # nouveau — trait Extension + EventBus
│   ├── fractal-stt/      # M1
│   ├── fractal-ai/       # M2
│   ├── fractal-rich/     # M3
│   └── fractal-bridge/   # M4
├── data/
├── docs/adr/
├── po/
├── Cargo.toml
└── meson.build
  • Convention Conventional Commits obligatoire dès le départ
  • Licence : GPLv3 (identique upstream)
## Contexte Point de départ du projet : forker Fractal (client Matrix GNOME officiel) et restructurer le dépôt en workspace Cargo multi-crate pour accueillir les modules M1–M5 sans modifier l'upstream. ## Critères d'acceptation - [ ] Fork de `https://gitlab.gnome.org/World/fractal` dans le repo `my-fractal` - [ ] `Cargo.toml` workspace avec les crates : `fractal-core`, `fractal-gtk`, `fractal-ext`, `fractal-stt`, `fractal-ai`, `fractal-rich`, `fractal-bridge` - [ ] Le projet compile (`cargo build`) sans erreur - [ ] `meson.build` adapté pour le workspace multi-crate - [ ] CI/CD (Forgejo Actions) : pipeline `cargo check` + `cargo clippy` + `cargo test` sur chaque push - [ ] Branches de travail créées : `feature/m1-stt`, `feature/m2-ai-agent`, `feature/m3-rich-render`, `feature/m4-bridges` - [ ] `README.md` racine mis à jour avec la structure du projet ## Notes techniques Structure cibles : ``` fractal-plus/ ├── crates/ │ ├── fractal-core/ # hérité upstream │ ├── fractal-gtk/ # hérité upstream │ ├── fractal-ext/ # nouveau — trait Extension + EventBus │ ├── fractal-stt/ # M1 │ ├── fractal-ai/ # M2 │ ├── fractal-rich/ # M3 │ └── fractal-bridge/ # M4 ├── data/ ├── docs/adr/ ├── po/ ├── Cargo.toml └── meson.build ``` - Convention Conventional Commits obligatoire dès le départ - Licence : GPLv3 (identique upstream)
Author
Owner

Fermé en doublon : ce travail a été réalisé dans la PR #70 (issue #1). Le workspace Cargo multi-crate et la CI sont déjà en place sur main.

Fermé en doublon : ce travail a été réalisé dans la PR #70 (issue #1). Le workspace Cargo multi-crate et la CI sont déjà en place sur `main`.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/my-fractal#71
No description provided.