La fiche d'un lot rendait tout son historique, et rien d'autre. Sur un
parc suivi depuis 2023, lire ce qu'un lot a fait ces trois derniers mois
supposait de faire soi-même la soustraction. Le paramètre `mois` ouvre
une fenêtre sur les chiffres, la chronologie, les intervenants, les
locataires et la courbe du loyer.
Trois décisions la gouvernent, et chacune évite un chiffre qui
mentirait :
- **la fenêtre est calée sur le dernier compte rendu du lot**, jamais sur
aujourd'hui. Les derniers comptes rendus du parc datent de juillet
alors qu'on est en août : une fenêtre glissante depuis la date du jour
décalerait déjà tout d'un mois, et viderait entièrement la fiche d'un
lot sorti de la gestion — une page vide se lisant comme une absence
d'activité plutôt que comme un filtre trop court ;
- **le restant dû y échappe**, parce qu'un stock ne se borne pas comme un
flux. Le ramener à la fenêtre l'annulerait dès qu'aucun compte rendu
n'y tombe : un lot afficherait 0 € dû tout en devant plusieurs
milliers ;
- **le loyer en vigueur et la comparaison au parc y échappent aussi.**
La courbe, elle, est bien coupée, mais après coup : les paliers restent
lus sur la série entière, sans quoi « depuis mai 26 » daterait de la
borne du filtre au lieu de la révision qui a fixé ce loyer, et la
médiane du parc changerait de mois de référence à chaque changement de
période. Rien n'est coupé au-delà de la fenêtre : un bail trimestriel
facturé d'avance porte des mois postérieurs au dernier compte rendu, et
les retirer ferait croire que le lot cesse d'être loué.
Les locataires n'ont ni date d'entrée ni date de sortie — aucune n'est
extraite des comptes rendus. Leur seul rattachement au temps est donc le
document qui les porte. Hors fenêtre, la liste reste malgré tout celle de
la table : la base contient des locataires dont aucune ligne ne dépend, et
la vue par défaut ne filtre rien.
Un filtre qui masque doit dire ce qu'il masque : la réponse porte le
compte des lignes, des mois et des occupants laissés dehors, et les
bornes effectivement retenues.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>