Changelog
What actually shipped, in human terms. Append-only, newest first, grouped by sprint cycle. Format follows Keep a Changelog.
Backward-looking record
For what's planned, see the Roadmap; for the full per-cycle analysis, see Sprint Reviews.
2026-WK22 · May 25–31
✨ Added
- Inventory cost / COGS accounting — INVENTORY + COGS internal accounts; sale and stock-adjust post double-entry vouchers.
@nx/finance - Inventory search — Typesense flat collection + CDC enrichment across SKU/barcode/QR/location.
@nx/search - Ledger job status + websocket — realtime ledger-generation progress for tax books.
@nx/ledger - Product Variant Option — option/value model + variant↔option mapping.
@nx/commerce - Product sync event bus — event-driven product sync with BullMQ workers + bulk variant creation.
@nx/commerce - Per-merchant Casbin authorization (inventory pilot) — wildcard-domain model + merchant-scoped enforcement.
@nx/identity
🔧 Changed
- Onboarding backfilled to 6 steps (merchant info / sale channel / finance / tax / product / employee).
@nx/commerce - Pricing uniqueness keyed on SaleOrderItem instead of ProductVariant.
@nx/pricing - FE client auth-recovery (token refresh), x-merchant-id scoping, multi-merchant product sync, broad i18n.
- Alpha deployment restructured: Postgres HA behind pg-lb, Debezium CDC, data-driven Makefile.
🐛 Fixed
- Tax-info + Vietnam address resolution via API; Citizen-ID (CCCD) validation.
@nx/invoice - E.164 phone formatting; Casbin cache cleared on token refresh.
@nx/identity - UTC correctness + unique index on ledger job status.
@nx/ledger
Why: Phase 1 MVP completion — see Roadmap › Phase 1.