Conventions
Comment travailler sur le repo sans se prendre les pieds dans le tapis.
Tests
On teste uniquement la logique pure de lib/ : filtres, geo, search,
synergies, admin, validation d’input.
- Fichiers colocalisés :
*.test.ts - Runner :
bun test - Style :
describe/test/expect(bun:test)
Nouvelle feature : extraire validation / dérivation / merge dans lib/,
couvrir par un test, laisser routes et JSX de côté.
Git
Le repo utilise GitButler.
- Commit :
but commit -m "message"(pasgit commit) - Push :
but push - PR :
gh pr create(pasbut pr) - Pas de ligne
Co-Authored-Byni d’attribution IA dans les commits
Migrations
Drizzle applique toute entrée du journal dont le when est au-dessus
du watermark (max(created_at)), lu une seule fois. Il ne compare pas
les hashes.
Ne jamais modifier le when d’une migration déjà appliquée quelque
part. Ça la rejoue sur un schéma où elle existe déjà, et
drizzle-kit migrate sort en exit 1 sans message utile.
- Générer une migration : OK
- L’appliquer en preview pour valider : OK
- L’appliquer en prod : seulement sur demande explicite
Auth, en une phrase
requireLicensedUser → puis, si on touche un établissement,
guardCompanyAccess. Les modules interdits aux agents territoire
passent par requireNonTerritoryUser.