pub async fn verify_exchange_org_access(
user: &AuthenticatedUser,
exchange_id: Uuid,
exchange_use_cases: &LocalExchangeUseCases,
building_use_cases: &BuildingUseCases,
acp_use_cases: &AcpUseCases,
) -> Result<(), AppError>Expand description
Vérifie le mandat de l’appelant sur l’organisation d’un échange local.
── Ce que cette garde protège ─────────────────────────────────────────────
Le système d’échange local — le SEL — enregistre qui rend quel service à qui, et pour combien de crédits. Six routes agissent sur un échange par son seul identifiant : le demander, le démarrer, le clore, l’annuler, noter le prestataire, noter le demandeur.
Les deux dernières comptent particulièrement : une note engage la réputation d’un voisin dans sa propre copropriété. La poser depuis une autre ACP n’a aucun sens légitime.
── Pourquoi elle délègue ─────────────────────────────────────────────────
Comme les dix autres gardes du module, elle remonte jusqu’à l’immeuble puis
confie la comparaison à verify_building_org_access. C’est la duplication
de cette comparaison, recopiée à la main dans chaque gestionnaire, que
l’issue #772 désigne comme la cause première de la fuite.