No description
- Rust 98.3%
- HTML 1.7%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Closes the produce->budget->open loop. App.open_budget is one shared pool equal to last turn's total production, drawn down by every open (the player's manual 'a' and AI explore). Each worker also gets a per-turn budget_cap -- a limit on its draw from the pool, not a separate purse -- assigned top-down by ai::divide_budget: the root holds the whole total and each manager splits its cap equally among its reports. An open requires treasury and pool and the worker's cap to cover the cost, decrementing pool and cap (and treasury). Production timing is cleaned up: a new Worker.produced_last holds the previous turn's production, snapshotted from `produced` at the turn boundary in end_turn; the quota reads produced_last and the budget total sums it (replacing the old in-run_ai snapshot that mixed interactive and pass-2 production). Treasury stays the stock; the budget is the per-turn flow cap, so a rich treasury can't outrun production. The dashboard shows the open budget and over-budget opens are rejected. Turn 1 is produce-first (no prior production). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
| notes | ||
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| CLAUDE.md | ||
| LICENSE | ||
| rust-toolchain.toml | ||