Skip to content

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.