Glossary
This glossary defines the ubiquitous language of this bounded context.
Core Terms
| Term |
Code Name |
Definition |
Scope |
| Task |
Task |
The central aggregate of the system. Represents a unit of work a user wants to track. Has an identity, a lifecycle status, and optional scheduling information. |
ALL |
| Task ID |
TaskId |
The auto-generated numeric identifier that uniquely identifies a Task within the system. Immutable after creation. Represented as Long in Java, number in TypeScript. |
ALL |
| Title |
title |
A short, human-readable summary of a Task. Required. Maximum 100 characters. |
ALL |
| Description |
description |
An optional, longer explanation of a Task. Maximum 500 characters. |
ALL |
| Due Date |
dueDate |
An optional calendar date by which the Task is expected to be completed. Has no time component. Represented as LocalDate in Java, string (ISO 8601 date) in TypeScript. |
ALL |
| User |
User |
A person who creates, reads, updates, or deletes Tasks via the web interface. Not an authenticated identity — the system does not implement authentication. |
ALL |
Value Objects
Value objects have no identity — they are equal by value. List them here so the
AI generates them as immutable types, not mutable entities.
| Term |
Code Name |
Validation / Constraints |
| Due Date |
dueDate |
Optional. When present, must be a valid calendar date (ISO 8601). |
Enumerations
| Enum Name |
Values |
Notes |
TaskStatus |
TODO, IN_PROGRESS, DONE |
Represents the lifecycle stage of a Task. No automatic transitions — the User changes the status manually via the UI. All three values are valid at all times; there are no terminal states that prevent further changes. |