SSL Service Manager · Inventory module, second design iteration – same requirement base as the v1 draft (Decisions Register I-001…I-011 plus G-004, S-005/S-006, Q-004), new information architecture and visual design. The v1 draft (files 22) is retired (Ivan, 06 Jul) – archived under Old Versions; this is the Inventory module. sources: consolidated meeting notes (M6, M7, M9), current SM Inventory screens, SaaS4 customer review.
Artifacts: 00 Register · 01 Shell · 02 Profile spec · 03 Profile wireframes · 04 Build spec · 11 Dashboard spec · 12 Dashboard wireframes · 13 Requests spec · 14 Requests wf · 15 Referrals spec · 16 Referrals wf · 17 Scheduling spec · 18 Scheduling wf · 23 Inventory spec v2 · 23 Inventory wireframes
The Inventory module owns stock custody: every device the service holds, which store holds it, and every hand-off between stores, service users, manufacturers and the scrap heap. It is a top-level main-menu section (G-004) and services the install / decommission / reactivate loop that Requests opens (Q-004, S-005, S-006).
This is design round 2. The requirement base is unchanged (register I-001…I-011); the information architecture and visual design are new, replacing the v1 draft (files 22) at Ivan's direction:
| v1 draft (22 – superseded) | v2 (this spec + wireframes 23) |
|---|---|
| Card-per-screen sub-navigation spliced from the Administration shell; every screen a dense table page. | Overview-first landing: a stock dashboard (six KPI tiles computed from the data, not typed in), a visual store-network browser with typed store cards, and a “Needs attention” work list. Working flows are sub-pages. |
| Stock by location = one flat custody table with store chips. | Store detail pages – each store opens as its own page (type badge, engineer mapping, hierarchy) with Stock / Awaiting-receipt / Settings tabs. |
| Flows presented as forms above tables. | Scan-first surfaces (Goods In, Transfers, Stock take share one context-aware scan dialog), basket side rails with live counts, a return-pipeline visual and gated quarantine work cards, and a three-step stock-take wizard. |
Everything else follows the established shell conventions: theme tokens + dark mode, pill status tokens, WIREFRAME drawer, destructive-action confirmations with mandatory reasons, no breadcrumb on the module landing. Style-consistency pass (06 Jul, Ivan): page heads use the shared greetbar pattern (h1 + greet-sub, actions in the toolbar), section headers are standard card-h > h3 (accent bar, controls in .right), required fields use the shared red .req asterisk, inputs match the system control style (7×10px padding, 10px radius), the Goods-Out internal/external switch reuses the dashboard “Team work / My work” .seg filter, internal shipments carry a grey left edge mirroring the external accent, and the scrap tiles are standard stat cards.
The Inventory landing answers “what needs doing?” before offering any table:
NEW Store types replace the old free-text store names (I-007): primary, van (secondary), quarantine, maintenance, scrap, arranged in a hierarchy (sub-stores under a primary). The type drives the send/receive rules:
| Store type | Sends / receives with | Ref |
|---|---|---|
| Primary | Manufacturers (incl. repairs out / replacements in), all internal stores; the only type that takes Goods In deliveries. | I-006, I-007, I-009 |
| Van (secondary) | Service users and primary stores. Mapped to an engineer, who may only use their own store's equipment. Cannot receive deliveries or send directly to scrap. | I-007, I-008 |
| Quarantine / maintenance | Receives returned equipment; releases to primary stock or scrap once servicing tasks complete. | I-008 |
| Scrap | Receives only; items leave by purge. | I-010 |
In stock, Reserved (pick-stock, Q-004), Outgoing, Incoming, Decommissioned – until serviced (I-008) – rendered with the shell's fixed pill tokens.| Old SM capability | SSL Service Manager v2 | Ref |
|---|---|---|
| Stock Items query (hid zero-stock lines) | CHANGED Product Management – every line at every level as a table; NSM creation with the old Add-Stock field set; multi part-codes (§3) | I-001 |
| Barcode support – none | NEW Shared scan dialog with auto-mapping + manufacturer profiles + manual fallback (§9) | I-002 |
| Stock Transfer (basket bug: not all items shown; reasons admin-only) | CHANGED Any-to-any transfer, full basket list, in-place reasons, type-rule guardrails (§5) | I-003, I-007 |
| No receipt step – stock “arrived” on send | NEW Receipt confirmation with revert-on-reject; per-store flag (§5) | I-004 |
| No stock-take facility | NEW Stock-take wizard with matched / missing / overstock report (§8) | I-005 |
| Goods In (no auto-populate; single primary store) | CHANGED Scan-first Goods In into any primary store; bulk from delivery note (§4) | I-006 |
| Store names as plain text | NEW Typed store hierarchy with engineer mapping and send/receive rules (§2) | I-007 |
| Returned stock handling ad hoc | NEW Return pipeline + gated quarantine work cards + state flags (§6) | I-008 |
| Faulty item exchange | KEEP Immediate exchange + RMA from primary + refurbished pool, now with flags visible (§6) | I-009 |
| Scrap store (ghost stock, no purge, no value visibility) | CHANGED Purge with audit + 6/12-month value tiles (§7) | I-010 |
| Task allocation vs stock – not linked | TBD Tie requests to the engineer-store stock at allocation – to define with Tunstall (open question) | I-011, Q-004 |
SSL Service Manager · Inventory & stock spec – design round 2 · pairs with wireframes 23 and Decisions Register I-001…I-011, G-004, S-005/S-006, Q-004 · supersedes the v1 draft (22) · 02 July 2026.