Rattraper le référentiel des absences des instances déjà installées

installReferentials() pose les types d'absence depuis WP-02, mais ne tourne
qu'à la création du compte. Une instance installée avant garde zéro type : le
menu « Type » du formulaire de demande reste vide et le module de congés est
inutilisable, sans qu'aucune erreur ne le signale. Déployer le correctif ne
suffisait donc pas.

La migration ne touche que les comptes dont le référentiel est entièrement
vide — un type délibérément archivé ne doit pas réapparaître. Elle lève
FORCE ROW LEVEL SECURITY le temps de la transaction, faute de compte courant.

Le formulaire dit désormais que le référentiel manque et renvoie aux réglages,
plutôt que d'afficher un menu vide qui laisse saisir une demande impossible.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
MichaelandClaude Opus 5 committed 2026-08-12 15:52:13 +02:00
1 parent dd01fb58f4
commit 49c311423d
2 files changed
+93

No files matched your search

+16
View File
@@ -33,6 +33,22 @@ export function RequestForm({
empty,
);
// Un menu « Type » vide ne se voit pas : le formulaire paraît complet, la
// demande part sans type et échoue au serveur. Dire que le référentiel manque
// coûte moins qu'une saisie qui ne pouvait pas aboutir.
if (absenceTypes.length === 0) {
return (
<p className="rounded-3 border border-line-2 bg-surface-2 p-3 text-sm text-ink-2">
Aucun type d’absence n’est défini : une demande ne peut pas être
qualifiée, donc pas enregistrée. Le référentiel se pose depuis{' '}
<a className="underline" href="/reglages/types-absence">
Réglages · Types d’absence
</a>
.
</p>
);
}
return (
<PersistentForm
resetAfter={state.ok ? state : null}