143 lines
5.2 KiB
Markdown
143 lines
5.2 KiB
Markdown
# Plan de finalisation v0.301 — Phase 3 Social
|
|
|
|
**Version cible** : v0.301
|
|
**Référence** : [V0_301_RELEASE_SCOPE.md](V0_301_RELEASE_SCOPE.md)
|
|
**Dernière mise à jour** : 20 février 2026
|
|
|
|
---
|
|
|
|
## 1. Objectif
|
|
|
|
Finaliser entièrement la version v0.301 : vérifier tous les critères de livraison, mettre à jour la documentation, effectuer les opérations Git de release, et nettoyer les branches résiduelles.
|
|
|
|
---
|
|
|
|
## 2. État actuel (pré-finalisation)
|
|
|
|
| Élément | État |
|
|
|---------|------|
|
|
| Branche courante | `main` |
|
|
| Tag v0.301 | Créé et poussé sur origin |
|
|
| Branche release/v0.301 | N'existe pas (déjà mergée ou jamais créée) |
|
|
| Backend Go | `go build ./...` OK |
|
|
| Frontend | `npm run build` OK |
|
|
| Chat Server Rust | `cargo build --release` OK |
|
|
| Working tree | Propre (rien à committer) |
|
|
|
|
---
|
|
|
|
## 3. Lots et statut
|
|
|
|
| Lot | Description | Statut | Vérification |
|
|
|-----|-------------|--------|---------------|
|
|
| P0 | Chat Server compilable, auth WebSocket | ✅ | `cd veza-chat-server && cargo build --release` |
|
|
| C1 | Typing, read receipts, delivered | ✅ | Code présent, MSW si besoin |
|
|
| P1 | Présence API, PresenceBadge, last_seen | ✅ | GET /users/:id/presence, migration 088 |
|
|
| S1 | Feed enrichi, pagination, explore, filtres | ✅ | socialService.getFeed, SocialViewExplore |
|
|
|
|
---
|
|
|
|
## 4. Plan d'exécution détaillé
|
|
|
|
### Phase F1 — Vérification des builds (5 min)
|
|
|
|
| # | Commande | Répertoire | Critère |
|
|
|---|----------|------------|---------|
|
|
| F1.1 | `go build ./...` | veza-backend-api | Exit 0 |
|
|
| F1.2 | `cargo build --release` | veza-chat-server | Exit 0 |
|
|
| F1.3 | `npm run build` | apps/web | Exit 0 |
|
|
| F1.4 | `npx tsc --noEmit` | apps/web | Exit 0 (optionnel, léger) |
|
|
|
|
### Phase F2 — Vérification des critères de livraison (10 min)
|
|
|
|
| Critère | Fichier / Route | Vérification |
|
|
|---------|-----------------|---------------|
|
|
| Chat Server compile | veza-chat-server | F1.2 |
|
|
| Typing indicators | TypingIndicator.tsx, chatStore | Grep `UserTyping`, `setUserTyping` |
|
|
| Read receipts | read_receipts, MarkAsRead | Grep `MarkAsRead`, `MessageRead` |
|
|
| Delivered status | Delivered, MessageDelivered | Grep `Delivered` |
|
|
| Présence visible | PresenceBadge, GET /users/:id/presence | presence_handler.go, PresenceBadge.tsx |
|
|
| Feed pagination | socialService.getFeed, useInfiniteQuery | useSocialView.ts, next_cursor |
|
|
| Posts enrichis (track inline) | SocialViewFeedItem | target_type === 'track', item.track |
|
|
| Onglet exploration | SocialViewExplore, GET /social/explore | SocialView.tsx, social_handler.go |
|
|
| Filtres feed | type=all\|following\|groups | SocialViewFeed.tsx, GetFeed |
|
|
| Tests backend | go test | `go test ./...` (optionnel, peut être lourd) |
|
|
| Documentation | FEATURE_STATUS, PROJECT_STATE, CHANGELOG | Fichiers à jour |
|
|
|
|
### Phase F3 — Mise à jour documentation (15 min)
|
|
|
|
| # | Fichier | Action |
|
|
|---|---------|--------|
|
|
| F3.1 | docs/PROJECT_STATE.md | Branche courante = main, Chat Server ✅, prochaines étapes = v0.302 |
|
|
| F3.2 | docs/V0_301_RELEASE_SCOPE.md | Cocher critères de livraison (§7), checklist pré-merge (§8) |
|
|
| F3.3 | docs/SCOPE_CONTROL.md | v0.301 taguée (ligne 127) |
|
|
| F3.4 | docs/FEATURE_STATUS.md | Vérifier cohérence (déjà à jour) |
|
|
|
|
### Phase F4 — Opérations Git (5 min)
|
|
|
|
| # | Action | Commande |
|
|
|---|--------|----------|
|
|
| F4.1 | Vérifier tag local | `git tag -l v0.301` |
|
|
| F4.2 | Vérifier tag remote | `git ls-remote origin refs/tags/v0.301` |
|
|
| F4.3 | Si tag manquant ou décalé | `git tag -a v0.301 -m "Release v0.301 - Phase 3 Social"` puis `git push origin v0.301` |
|
|
| F4.4 | Vérifier merge main | main doit contenir tous les commits v0.301 |
|
|
|
|
### Phase F5 — Nettoyage branches (2 min)
|
|
|
|
| # | Action | Commande |
|
|
|---|--------|----------|
|
|
| F5.1 | Lister branches locales | `git branch` |
|
|
| F5.2 | Si release/v0.301 existe et mergée | `git branch -d release/v0.301` |
|
|
| F5.3 | Si release/v0.301 remote existe | `git push origin --delete release/v0.301` (optionnel) |
|
|
|
|
### Phase F6 — Commit final (2 min)
|
|
|
|
| # | Action |
|
|
|---|--------|
|
|
| F6.1 | Commit des mises à jour doc | `git add docs/ && git commit -m "docs: finalisation v0.301, plan et checklists"` |
|
|
| F6.2 | Push main | `git push origin main` |
|
|
|
|
---
|
|
|
|
## 5. Checklist finale (à cocher)
|
|
|
|
- [ ] F1.1 Backend Go build OK
|
|
- [ ] F1.2 Chat Server build OK
|
|
- [ ] F1.3 Frontend build OK
|
|
- [ ] F2 Critères de livraison vérifiés
|
|
- [ ] F3 Documentation mise à jour
|
|
- [ ] F4 Tag v0.301 présent (local + remote)
|
|
- [ ] F5 Branche release/v0.301 supprimée si existante
|
|
- [ ] F6 Commit et push effectués
|
|
|
|
---
|
|
|
|
## 6. Commandes consolidées
|
|
|
|
```bash
|
|
# Vérification builds
|
|
cd /home/senke/git/talas/veza/veza-backend-api && go build ./...
|
|
cd /home/senke/git/talas/veza/veza-chat-server && cargo build --release
|
|
cd /home/senke/git/talas/veza/apps/web && npm run build
|
|
|
|
# Git
|
|
cd /home/senke/git/talas/veza
|
|
git status
|
|
git branch
|
|
git tag -l v0.301
|
|
git ls-remote origin refs/tags/v0.301
|
|
# Si release/v0.301 existe : git branch -d release/v0.301
|
|
git add docs/
|
|
git status
|
|
git commit -m "docs: finalisation v0.301, plan et checklists"
|
|
git push origin main
|
|
```
|
|
|
|
---
|
|
|
|
## 7. Références
|
|
|
|
- [V0_301_RELEASE_SCOPE.md](V0_301_RELEASE_SCOPE.md)
|
|
- [PROJECT_STATE.md](PROJECT_STATE.md)
|
|
- [SCOPE_CONTROL.md](SCOPE_CONTROL.md)
|
|
- [FEATURE_STATUS.md](FEATURE_STATUS.md)
|