issuetracker / Architecture / Data Model

Data Model

The exact ORM/model definitions in the supplied project are authoritative. The following diagram documents the issue-tracking domain boundary.

1 min readApplies to v0.6.0
On this page ▾
  1. Data ownership
  2. Project
  3. Issue
  4. Comment
  5. User
  6. Referential integrity
text
User
 │
 ├──────────────┐
 │              │
 ▼              ▼
ProjectMember   Issue
 │              │
 │              ├── reporter → User
 │              ├── assignee → User
 │              ├── status
 │              ├── priority
 │              ├── labels
 │              ├── Comment
 │              └── Attachment
 │
 ▼
Project

Data ownership

Project

Owns project-level configuration and membership.

Issue

Owns the current work-item state.

Comment

Owns discussion entries associated with an issue.

User

Owns identity/profile information. Issue-tracking relationships should refer to the user rather than duplicate identity data.

Referential integrity

Deleting a project or user should follow the project's explicit lifecycle rules. Avoid accidental cascades for records that are required for audit history.