refactor: rename issue reporting module to tickets
This commit is contained in:
@@ -1,47 +0,0 @@
|
||||
# Issue Reporting Domain Boundary
|
||||
|
||||
## Purpose
|
||||
|
||||
Public or internal problem reporting for broken infrastructure, damaged rooms, IT outages, safety issues, accessibility issues, triage, and routing.
|
||||
|
||||
## Owns
|
||||
|
||||
- issue intake
|
||||
- problem category taxonomy
|
||||
- triage and routing facts
|
||||
- public reporter references
|
||||
- handoff targets
|
||||
|
||||
## Does Not Own
|
||||
|
||||
- internal service desk execution
|
||||
- legal case handling
|
||||
- asset lifecycle management
|
||||
|
||||
## Integration Candidates
|
||||
|
||||
- helpdesk
|
||||
- cases
|
||||
- assets
|
||||
- facilities
|
||||
- forms_runtime
|
||||
- portal
|
||||
- files
|
||||
- workflow
|
||||
|
||||
## Seed State
|
||||
|
||||
The current repository state is intentionally small:
|
||||
|
||||
- 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
|
||||
|
||||
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.
|
||||
|
||||
## First Implementation Slice
|
||||
|
||||
Define intake submission, triage status, category, location, evidence, and handoff contracts to helpdesk, cases, assets, or facilities.
|
||||
78
docs/TICKETS_DOMAIN_BOUNDARY.md
Normal file
78
docs/TICKETS_DOMAIN_BOUNDARY.md
Normal file
@@ -0,0 +1,78 @@
|
||||
# Tickets Domain Boundary
|
||||
|
||||
## Purpose
|
||||
|
||||
Queue-oriented operational work: public or internal reports, service requests,
|
||||
incidents, problems, triage, routing, assignment, service-level tracking, and
|
||||
auditable resolution.
|
||||
|
||||
## Owns
|
||||
|
||||
- ticket identity, type, category, priority, state, and queue
|
||||
- public and internal intake profiles
|
||||
- reporter/requester and affected-object references
|
||||
- triage, routing, assignment, escalation, and service-level facts
|
||||
- discussion and resolution evidence references
|
||||
- stable links to tasks, projects, assets, facilities, and cases
|
||||
|
||||
## Does Not Own
|
||||
|
||||
- formal administrative case identity, parties, evidence, decisions, and retention
|
||||
- project plans, milestones, and portfolios
|
||||
- asset lifecycle management
|
||||
- workflow definitions and task execution
|
||||
|
||||
## Integration Candidates
|
||||
|
||||
- cases
|
||||
- projects
|
||||
- wiki
|
||||
- assets
|
||||
- facilities
|
||||
- forms_runtime
|
||||
- portal
|
||||
- files
|
||||
- workflow
|
||||
- tasks
|
||||
- mail
|
||||
- notifications
|
||||
- search
|
||||
|
||||
## Ticket Versus Case
|
||||
|
||||
A ticket is the operational record of work entering and moving through a queue.
|
||||
It can be reported with incomplete information, assigned and reassigned,
|
||||
discussed, resolved, reopened, or linked to another work object. Its lifecycle
|
||||
answers: what needs attention, who owns the next action, and was it resolved?
|
||||
|
||||
A case is the authoritative procedural record for an administrative matter. It
|
||||
has formal parties, evidence, decisions, procedural deadlines, access rules,
|
||||
retention obligations, and a durable case history. Its lifecycle answers: what
|
||||
matter is being administered, under which procedure, and what formal outcome
|
||||
was reached?
|
||||
|
||||
Escalation does not convert or duplicate records. It creates an auditable
|
||||
relation containing the ticket reference, case reference, relation type,
|
||||
actor, timestamp, and optional handoff note. The ticket remains the intake and
|
||||
service history; the case becomes authoritative for the formal procedure.
|
||||
|
||||
The former Issue Reporting and Helpdesk concepts become ticket type, intake,
|
||||
queue, and policy profiles. They do not need separate persistence models.
|
||||
|
||||
## Seed State
|
||||
|
||||
The current repository state is intentionally small:
|
||||
|
||||
- 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
|
||||
|
||||
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.
|
||||
|
||||
## First Implementation Slice
|
||||
|
||||
Define ticket identity, intake profiles, queues, triage, assignment,
|
||||
resolution, and stable escalation links to cases.
|
||||
@@ -11,6 +11,12 @@
|
||||
"description": "New user-visible behavior or platform capability.",
|
||||
"exclusive": true
|
||||
},
|
||||
{
|
||||
"name": "type/user-story",
|
||||
"color": "1d76db",
|
||||
"description": "End-to-end user journey or real-world process story used to steer product slices.",
|
||||
"exclusive": true
|
||||
},
|
||||
{
|
||||
"name": "type/task",
|
||||
"color": "1d76db",
|
||||
@@ -143,6 +149,24 @@
|
||||
"description": "GovOPlaN core runner, shared primitives, shell, or extension points.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/dashboard",
|
||||
"color": "1d76db",
|
||||
"description": "GovOPlaN Dashboard module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/dataflow",
|
||||
"color": "1d76db",
|
||||
"description": "GovOPlaN Dataflow module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/datasources",
|
||||
"color": "006b75",
|
||||
"description": "GovOPlaN governed datasource contracts, catalogs, and integrations.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/dms",
|
||||
"color": "c5def5",
|
||||
@@ -151,8 +175,14 @@
|
||||
},
|
||||
{
|
||||
"name": "module/docs",
|
||||
"color": "5319e7",
|
||||
"description": "GovOPlaN documentation layer behavior or integration.",
|
||||
"color": "c5def5",
|
||||
"description": "GovOPlaN Docs module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/dist-lists",
|
||||
"color": "0e8a16",
|
||||
"description": "GovOPlaN Distribution Lists module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
@@ -161,6 +191,12 @@
|
||||
"description": "GovOPlaN Erp module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/evaluation",
|
||||
"color": "bfdadc",
|
||||
"description": "GovOPlaN Evaluation module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/files",
|
||||
"color": "006b75",
|
||||
@@ -185,6 +221,12 @@
|
||||
"description": "GovOPlaN Identity Trust module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/identity",
|
||||
"color": "bfd4f2",
|
||||
"description": "GovOPlaN Identity module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/idm",
|
||||
"color": "0052cc",
|
||||
@@ -215,30 +257,66 @@
|
||||
"description": "GovOPlaN Ops module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/organizations",
|
||||
"color": "bfdadc",
|
||||
"description": "GovOPlaN Organizations module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/payments",
|
||||
"color": "bfd4f2",
|
||||
"description": "GovOPlaN Payments module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/permits",
|
||||
"color": "fbca04",
|
||||
"description": "GovOPlaN Permits module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/policy",
|
||||
"color": "d93f0b",
|
||||
"description": "GovOPlaN Policy module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/poll",
|
||||
"color": "e4e669",
|
||||
"description": "GovOPlaN Poll module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/portal",
|
||||
"color": "1d76db",
|
||||
"description": "GovOPlaN Portal module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/postbox",
|
||||
"color": "d93f0b",
|
||||
"description": "GovOPlaN Postbox module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/projects",
|
||||
"color": "5319e7",
|
||||
"description": "GovOPlaN Projects module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/reporting",
|
||||
"color": "c2e0c6",
|
||||
"description": "GovOPlaN Reporting module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/risk-compliance",
|
||||
"color": "b60205",
|
||||
"description": "GovOPlaN Risk Compliance module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/search",
|
||||
"color": "bfdadc",
|
||||
@@ -270,9 +348,21 @@
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/web",
|
||||
"color": "bfd4f2",
|
||||
"description": "GovOPlaN public website, product page, or publication content.",
|
||||
"name": "module/tickets",
|
||||
"color": "0e8a16",
|
||||
"description": "GovOPlaN Tickets module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/views",
|
||||
"color": "c5def5",
|
||||
"description": "GovOPlaN governed task views, interface projections, and workflow view integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/wiki",
|
||||
"color": "006b75",
|
||||
"description": "GovOPlaN Wiki module behavior or integration.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
@@ -365,6 +455,12 @@
|
||||
"description": "Versioning, release locks, tags, packaging, or dependency pins.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "area/security",
|
||||
"color": "b60205",
|
||||
"description": "Security posture, static analysis, supply-chain hardening, or vulnerability remediation.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "area/docs",
|
||||
"color": "5319e7",
|
||||
@@ -389,6 +485,48 @@
|
||||
"description": "Imported from markdown backlog, roadmap, plan, or TODO files.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "source/security-audit",
|
||||
"color": "d4c5f9",
|
||||
"description": "Created from a structured security or code-quality audit report.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "audit/quick-fix",
|
||||
"color": "0e8a16",
|
||||
"description": "Audit finding that appears narrow and directly fixable.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "audit/structural",
|
||||
"color": "d93f0b",
|
||||
"description": "Audit finding that needs design, refactoring, or behavior review.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "audit/complexity",
|
||||
"color": "fbca04",
|
||||
"description": "Complexity finding from Radon, Xenon, or equivalent maintainability scans.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "audit/duplication",
|
||||
"color": "c2e0c6",
|
||||
"description": "Duplicated-code finding from jscpd or equivalent similarity scans.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "audit/false-positive",
|
||||
"color": "cccccc",
|
||||
"description": "Audit finding reviewed as a narrow false positive or acceptable risk.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "audit/needs-design",
|
||||
"color": "f9d0c4",
|
||||
"description": "Audit finding that needs an architectural or product decision before implementation.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "codex/ready",
|
||||
"color": "0e8a16",
|
||||
@@ -400,11 +538,5 @@
|
||||
"color": "f9d0c4",
|
||||
"description": "Needs an explicit human decision before Codex should implement.",
|
||||
"exclusive": false
|
||||
},
|
||||
{
|
||||
"name": "module/issue-reporting",
|
||||
"color": "0e8a16",
|
||||
"description": "GovOPlaN Issue Reporting module behavior or integration.",
|
||||
"exclusive": false
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user