Sprint history — Cross-pooling
What shipped
Borrowing workers across pools when a pool can't cover its own demand.
- Pools & pool-lending rules —
Pool(default one per department) and the directionalPoolLendingRuleCRUD + UI, with the default-pool-per-department invariant. - Runtime enforcement —
CrossPoolEligibilityRuleenforces lending at allocation time, so cross-pool borrowing is a live runtime behaviour, not config-only.
Key decisions
- Cross-pooling is enforced at allocation time — the eligibility rule decides who can be borrowed during a run (Phase-0 correction: cross-pooling is LIVE runtime behaviour, not config-only).
- Lending rules are directional — source pool → target pool.
MaxConcurrentBorrowscap, an approval workflow, and a lending ledger are PLANNED — the rule decides eligibility; there is no borrow cap or approval chain yet (sheet 22).- The cross-pool block reason is computed server-side but not surfaced in the UI (part of F8).
Build status
Available (Pool + PoolLendingRule CRUD + UI + runtime enforcement); Planned on the cap/approval/ledger. See Pools & cross-pooling (concept) and the Pools API.
Related
- Fact sheets 12 (cross-pooling), 22 (pools & lending).