feat(helpdesk): configure ticket routing profiles
This commit is contained in:
@@ -28,20 +28,37 @@ Internal service desk workflows for IT, facilities, HR, finance, procurement, ac
|
||||
- files
|
||||
- tasks
|
||||
|
||||
## Seed State
|
||||
## Implemented Policy Overlay
|
||||
|
||||
The current repository state is intentionally small:
|
||||
The module persists only tenant configuration:
|
||||
|
||||
- module manifest and entry point
|
||||
- tenant-level permission definitions
|
||||
- manager and viewer role templates
|
||||
- documentation topic describing the module boundary
|
||||
- Gitea issue workflow templates
|
||||
- manifest contract test
|
||||
- ordered, active/inactive service profiles
|
||||
- ticket-type and priority match criteria
|
||||
- canonical queue references
|
||||
- per-priority and default service-target minutes
|
||||
- immutable, replay-safe configuration history and platform events
|
||||
|
||||
No runtime API, database model, migration, WebUI route, or navigation item is registered yet. The first implementation slice should preserve the boundary above and only add user-visible surfaces once the workflow model is clear.
|
||||
The administrative API and `/helpdesk` workspace require
|
||||
`helpdesk:workspace:admin`. Each save carries an expected revision,
|
||||
idempotency key, and explicit change reason. The shared action bar provides
|
||||
Reload and New-profile actions, while create/edit dialogs keep dirty state
|
||||
local until Save or Cancel.
|
||||
|
||||
## First Implementation Slice
|
||||
## Ticket Routing Contract
|
||||
|
||||
Define Helpdesk queue, SLA, and escalation profiles over `govoplan-tickets`.
|
||||
Do not create a second ticket persistence model.
|
||||
Helpdesk provides Core's optional `tickets.routing` capability. Tickets sends a
|
||||
bounded tenant, ticket, type, priority, title, receive time, optional queue
|
||||
hint, and non-secret attributes. Helpdesk evaluates active profiles in sort
|
||||
order and returns the first match's queue and calculated service target.
|
||||
|
||||
An explicit queue hint narrows matching to that queue. No match is a successful
|
||||
result with an explanation; it does not reject or delay Ticket intake. Tickets
|
||||
owns the resulting queue and target snapshot, lifecycle, assignment, and
|
||||
history. Helpdesk never imports Tickets or persists a second ticket model.
|
||||
|
||||
## Data-subject Requests
|
||||
|
||||
`privacy.dsar.helpdesk` covers only Helpdesk-owned configuration actor
|
||||
attribution. Profiles and their immutable history contain institutional policy,
|
||||
not customer ticket data; evidence is retained and any correction is made by a
|
||||
new authorized profile revision.
|
||||
|
||||
Reference in New Issue
Block a user