Per-tenant identity, SSO and fleet patching
- NEW
Tenant identity comes from runtime config: organization name, branding, DPO and contact details are no longer baked into the build.
- SECURITY
First admin is created with a one-time setup token: 32 random bytes, stored only as a SHA-256 hash, single use, expires in 72 hours. No default password ships.
- SECURITY
Session secrets are minted per deployment. In production the app refuses to start without them.
- NEW
Per-tenant SSO over OIDC, with presets for Microsoft Entra ID, Google and generic OIDC. Signature, issuer, audience and expiry are verified; nonce and state are checked.
- NEW
Fleet patching: one code fix can be rolled across many single-tenant deployments, optionally scoped to the deployments running a given module.