- Shipped
- 7 settembre 2026 alle ore 06:52 UTC
- Author
- Kamo
- Commit
- 6c7ca3d
Il launchpad sta ottenendo un metro di archiviazione, e il modo ovvio per alimentarlo è una richiesta propria su ogni carico di pagina. I numeri non meritano uno: "usato" viene da un'istantanea la spazzata notturna ha preso ieri notte, quindi un endpoint dedicato sarebbe un viaggio rotondo per recuperare una cifra che non può da allora. /api/security/entitlements/me è già una richiesta per scheda, condivisa da 11 consumatori e accumulato quindici minuti in Redis dietro un ~60 cache del browser. Equitazione costa il launchpad niente affatto. E niente doveva essere cablato per farlo: SecurityService elenca già entrambi com.kamo.z.shared.storage.usage e com.kamo.z.shared.commerce sul suo @EnableJpaRepositories, così StorageQuotaService è stato in diretta qui il tutto il tempo — contingente, tendenza e blocco acquistabile sono cinque piccoli indicizzato legge su una miss cache, e solo per un proprietario. Il campo è calcolato SOLO per un proprietario di organizzazione, in entrambi i casi sentieri. Mantenerlo sul server piuttosto che nasconderlo nel browser è la stessa scelta /auto/piano fa circa posti e rinnovo: un membro che apre la scheda di rete non impara nulla su ciò che l'organizzazione è in attesa o pagamento. `asOf` è nullable e che è carico-portante. Null significa che la spazzata ha mai correre per questo org, quindi l'uso è zero perché nessuno ha guardato — un cliente che lo legge come uno zero onesto disegna una barra vuota per un organizzazione che può essere piena.