Skip to content

v2.10.0

v2.10.0 — Channel reserve: the last N pieces belong to B2B

Minor release. One additive migration (nullable columns). ## Operator-facing **Per-product channel reserve.** Set "hold back N pieces" and/or "publish only X% " on a product and every sales channel…

Minor release. One additive migration (nullable columns).

Operator-facing

Per-product channel reserve. Set “hold back N pieces” and/or “publish only X% ” on a product and every sales channel sees that much less ATP — the held stock stays fully available to B2B. Both set → the more conservative wins; reserve is applied inside the single ATP composition, so published numbers and allocation always agree (a component’s reserve also shrinks what kits can promise to assemble). The product page shows “reserved off-channel” next to ATP. Null fields = behavior identical to before, for every existing product.

Fixed

Manual inventory reconcile had been dead since S4: the busy-check counted the hygiene scheduler’s permanent delayed marker as pending work, so it yielded forever in any environment with schedulers running. It now counts waiting+active only.

Rollback

Re-deploy v2.9.1. Columns are nullable and harmless to old code.

Other releases

See how DockingWare handles this →