Skip to content

System test cases (index)

VersionDate (UTC)Authoring notes
1.0.02026-05-13Initial hub: overview, module index, checklist contract, links to per-module sheets. Bump minor when new scenario sections ship; bump patch for typo or clarification-only edits.
1.1.02026-05-13Split sheets: admin catalog, admin B2B orders, vendor inventory/finance/orders/POS workspace; expanded POS shell + POS payments + auth; slimmed cross-cutting admin/vendor backend.
1.2.02026-05-13New sheets: admin membership (platform), admin client events, support tickets (vendor + admin), in-app notifications; shared-desktop gains dashboard number-format TC-SHR-010+ block.
1.3.02026-05-13Admin inventory & suppliers, admin organization & RBAC, vendor customers/staff/settings; expanded admin/vendor backend + health-ops cross-cutting rows.
1.4.02026-05-13Vendor marketing & gallery sheet; vendor inventory TC-VINV-040+ internal transfers; hub links + VCS/VWU pointer updates.
1.5.02026-05-21Link to E2E retail roadmap — phased P0/P1 checklist and implementation backlog (schedule TBD).

How to version: edit this table on every merge that changes scenario meaning, adds/removes TC- ids, or moves automation guidance. Keep English as the canonical doc language (same as the rest of /technical).


This site tracks human-readable test scenarios for LionPOS end-to-end: API (NestJS), web apps (admin-web, vendor-web), shared packages, POS checkout, and desktop / bridge / terminal surfaces.

GoalNon-goals
Prevent missing happy and unhappy cases during releasesReplace Jest/Playwright code—this is the planning and traceability layer
Give QA and engineers one index into all module sheetsDuplicate Swagger field lists (Backend API catalog)
Record whether a scenario is a good E2E candidateMandate that every row already has automation
TermMeaning
Happy pathValid inputs, authorized actor, expected success response and side effects
Unhappy pathValidation failures, authz denials, idempotency conflicts, dependency blocks, timeouts, partial failures
E2E candidateScenario is suitable for browser or HTTP black-box automation (e.g. Playwright); may still start with unit tests in Nest or Vite
TC idStable identifier (TC-AUTH-001 …) used in PRs and release notes
TagMeaning
UnitJest specs colocated with services/controllers/components
E2E*Playwright (or similar) feasible; * = recommended next investment
E2E✓A spec already exists in-repo (path noted in the module sheet when known)
ManualHardware, third-party PSP, or environment not practical in CI

Tier A — revenue-critical (expand first in each release): POS checkout, vendor POS workspace, vendor orders & checkout, admin B2B orders, vendor finance.

Implementation backlog (phases, screen checklist, schedule TBD): E2E retail roadmap and checklist.

DomainSheetScope
Auth & publicAuth & publicCustomer/admin/vendor auth, refresh, lockout, public landing
Admin API (cross-cutting)Admin backendJWT, zones, modules, guards
Admin catalogAdmin catalog & productsProducts, categories, tags, units, batch, list UX
Admin membership (platform)Admin membership & platformPlans, subscriptions, invoices, platform auth
Admin client eventsAdmin client eventsTelemetry list, batch resolve/delete, access
Admin B2B ordersAdmin B2B ordersList tabs, filters, stats, detail, receipt HTML
Admin inventory & suppliersAdmin inventory & suppliersWarehouses, stocks, lots, adjustments, global suppliers
Admin organization & RBACAdmin organization & RBACManagers, stores, vendors, roles, modules, banners, settings
Vendor API (cross-cutting)Vendor backendJWT, store_id, employee scope
Vendor inventoryVendor inventoryWarehouses, stocks, lots, adjustments, internal transfers
Vendor marketing & galleryVendor marketing & galleryBanners, media gallery, embedded picker
Vendor financeVendor financeTransactions, expenses, refunds, receivables, invoices, report
Vendor orders & checkoutVendor orders & checkoutOrders UI/API, shifts, create order, usePosPlaceOrder
Support ticketsSupport ticketsVendor thread + admin Kanban/list/detail
In-app notificationsIn-app notificationsVendor merged feed + prefs; admin inbox
POS checkout & webhooksPOS & paymentspos/*, payments, tenders, idempotency
POS workspace HTTPPoint of Sale v2 shellvendor/point-of-sale/*, bootstrap, lanes
Vendor POS workspace UIVendor POS workspace/point-of-sale/* sale UX, drafts, tender
Admin UIAdmin webapps/admin-web shell + maps to TC-ACP / TC-AOB
Vendor UI shellVendor webEntry, nav, POS entry, delegates to deep sheets
Vendor customers, staff & settingsVendor customers, staff & settingsCustomers, employees, stores, roles, discounts, system settings
Shared & desktopShared packages & desktoppackages/shared, bridge, terminals
Health & opsHealth & operations/health, deploy smoke

Draft = structure only; Expanded = many TC rows for happy + unhappy; Reviewed = signed off vs production.

SheetDoc statusHappy scenariosUnhappy scenariosE2E map complete
Auth & publicExpandedStrongStrongPartial
Admin backendExpandedStrongPartialPartial
Admin catalog & productsExpandedStrongStrongPartial
Admin membership & platformExpandedStrongStrongPartial
Admin client eventsExpandedStrongStrongPartial
Admin B2B ordersExpandedStrongStrongPartial
Admin inventory & suppliersExpandedStrongStrongPartial
Admin organization & RBACExpandedStrongStrongPartial
Vendor backendExpandedStrongPartialPartial
Vendor inventoryExpandedStrongStrongPartial
Vendor marketing & galleryExpandedStrongStrongPartial
Vendor financeExpandedStrongStrongPartial
Vendor orders & checkoutExpandedStrongStrongPartial
Support ticketsExpandedStrongStrongPartial
In-app notificationsExpandedStrongPartialPartial
POS & paymentsExpandedStrongStrongPartial
Point of Sale v2 shellExpandedStrongStrongPartial
Vendor POS workspaceExpandedStrongStrongPartial
Admin webExpandedPartialPartialPartial
Vendor webExpandedPartialPartialPartial
Vendor customers, staff & settingsExpandedStrongStrongPartial
Shared packages & desktopExpandedStrongPartialPartial
Health & operationsExpandedStrongPartialPartial


  1. Prefer adding rows to Tier A sheets before expanding low-traffic areas.
  2. Preserve TC- ids; deprecate with strikethrough + replacement row when behavior changes.
  3. Mark Automation column: E2E✓ + path when a spec exists.
  4. Bump the sheet’s version table and this hub’s Document control when scenario meaning changes.
  5. Run cd apps/docs && npm run build before merging doc PRs.