#32603 [Feature]: Budget rollover — carry unused budget into the next budget_duration period
### The Feature
Add an option to **carry over unused budget** into the next period instead of resetting spend to zero when `budget_duration` elapses.
Today, when `budget_duration` elapses, LiteLLM resets accumulated spend to 0 and the entity starts the new period back at `max_budget`. Any unused portion of the previous period's budget is lost. There is no way to roll it forward.
Proposed: a flag such as `budget_rollover: true` (settable per key/user/team/org, and via `/key/update`, `/user/update`, etc.) so that at reset, the next period's effective budget = `max_budget + (previous max_budget − spend)`, i.e. unused budget accumulates. Ideally with an optional `max_rollover` / cap to bound accumulation.
### Motivation / Use Case
Teams with monthly AI budgets often want unspent allowance to accumulate rather than expire monthly — e.g. a \$100/month cap where a team that spends \$60 starts the next month at \$140 (up to a cap). This matches how many internal cost-allocation and cloud-commit models work. Without it, users must reconstruct rollover externally by reading spend via the API and rewriting `max_budget` each cycle, which is fragile and races with LiteLLM's own reset job. …