Extensions
Le CRM expose quelques points d'accroche typés, sans effet par défaut, pour qu'un
déploiement ajoute ses propres règles, pages et routes sans forker le code : refuser un
appel employé, enrichir la configuration publique, limiter invitations, créations de
contacts, envois et enrôlements, répondre à une requête d'API avant la route, ajouter des
routes HTTP, des tables, des pages et des entrées de menu, différer les traitements en
arrière-plan (préparation et envoi des campagnes, étapes de workflow) et refuser avec un
code structuré que l'interface sait afficher. Un overlay remplace convex/extensions.ts,
convex/extensionsSchema.ts et src/extensions.tsx. Le contrat est décrit dans
docs/extensions.md.