| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-08-06 | 2.1 kB | |
| v0.2.1 -- staff ticket replies source code.tar.gz | 2026-08-06 | 866.2 kB | |
| v0.2.1 -- staff ticket replies source code.zip | 2026-08-06 | 1.2 MB | |
| Totals: 3 Items | 2.1 MB | 0 | |
Added
- Staff can now reply to and resolve customer support tickets.
Closes the loop that's been open since the portal shipped: customers
could raise a ticket and read replies, but no staff screen existed to
see or answer one — the backend (
AdminTicketController) had been fully built and idle the whole time. New Support section (top-level nav, not nested under Post-sales — inquiries and brokers raise tickets too, not just post-sales) with a queue and a thread view: reply, change status, filter by status. - Ticket queue enrichment. The queue now shows who raised each ticket (resolved from the linked Applicant/Broker, not a bare ID), its category, how many messages it has, and when it was last active — the minimum a triaging staff member needs to work a queue, none of which the API returned before.
- Overdue flagging from the existing
slaByAtfield. The column has existed in the schema since Phase 6 with nothing reading it; the queue now shows an "Overdue" flag when a ticket'sslaByAthas passed and it isn't resolved/closed. No SLA policy or configuration was added — this only renders a field that was already there. - The e2e harness gained its first scenario that drives both
apps/webandapps/portalagainst the same API in one test: customer raises a ticket → staff sees it, replies, resolves it → customer sees the reply. Every prior scenario exercised one app at a time.
Still missing
Two gaps remain, tracked for future releases, not fixed here:
- Layout plan / brochure / photo uploads. The validation and
storage service (
UploadService) has existed since Phase 2 and already supports these categories, but no route in the Inventory module has ever called it — there is no way, staff or customer portal, to attach or view a project's layout plan today. - Custom field values. Admins can define custom fields (Applicant, Unit, etc.) via Admin → Custom Fields, but no form anywhere in either app captures or displays a value for one — defining a field has no effect elsewhere in the product yet.