Meeting
A Meeting documents a held meeting: its channel, its stakeholders and participants, when and how long it ran, its agenda, its conclusions, and the action items it produced.
See Domain Model — Meetings for a conceptual overview and Merging — Meeting merging for merge semantics.
links, task_links, risk_links, and user_story_links hold typed relationships to other Meetings, to Tasks, to Risks, and to UserStories respectively. See Links for the full concept.
Meeting
Meeting
Bases: MergeableModel, Commentable
A documented meeting, its participants, and its outcomes.
Attributes:
| Name | Type | Description |
|---|---|---|
id |
str
|
Identifier, unique within the enclosing Scope's meetings. |
title |
str
|
Short free-text title summarising the meeting. |
channel |
MeetingChannel
|
The medium through which the meeting was held. |
channel_detail |
str
|
Non-empty free-text detail for the channel (e.g. a room name, an email thread reference, a call link or number, or a ticket reference). |
stakeholders |
frozenset[str]
|
Free-text names of the organizations or groups with an interest in the meeting (e.g. clients), who may not be modelled elsewhere in the system. Defaults to an empty frozenset. |
participants |
frozenset[str]
|
Free-text names of the individual people who attended the meeting, who may not be modelled elsewhere in the system. Defaults to an empty frozenset. |
started_at |
datetime
|
When the meeting began (must be timezone-aware). |
duration |
timedelta
|
How long the meeting lasted. Must be positive. |
agenda |
tuple[Topic, ...]
|
Ordered topics discussed, each optionally broken down into nested subtopics. Defaults to an empty tuple. |
conclusions |
tuple[Conclusion, ...]
|
Ordered outcomes reached, each optionally broken down into nested subconclusions. Defaults to an empty tuple. |
action_items |
tuple[ActionItem, ...]
|
Ordered to-do items arising from the meeting. Defaults to an empty tuple. |
links |
frozenset[MeetingLink]
|
Typed relationships to other Meetings. Defaults to an empty frozenset. |
task_links |
frozenset[MeetingTaskLink]
|
Typed relationships to Tasks this meeting produced or discussed. Defaults to an empty frozenset. |
risk_links |
frozenset[MeetingRiskLink]
|
Typed relationships to Risks this meeting raised or discussed. Defaults to an empty frozenset. |
user_story_links |
frozenset[MeetingUserStoryLink]
|
Typed relationships to UserStories this meeting discussed. Defaults to an empty frozenset. |
MeetingChannel
MeetingChannel
Bases: str, Enum
Classifies the medium through which a Meeting was held.
Topic
Topic
Bases: BaseModel
An agenda entry, optionally broken down into nested subtopics.
Attributes:
| Name | Type | Description |
|---|---|---|
text |
str
|
Non-empty description of the topic. |
subtopics |
tuple['Topic', ...]
|
Ordered nested topics, to any depth. Defaults to an empty tuple. |
Conclusion
Conclusion
Bases: BaseModel
A meeting outcome, optionally broken down into nested subconclusions.
Attributes:
| Name | Type | Description |
|---|---|---|
text |
str
|
Non-empty description of the conclusion. |
subconclusions |
tuple['Conclusion', ...]
|
Ordered nested conclusions, to any depth. Defaults to an empty tuple. |
ActionItem
ActionItem
Bases: BaseModel
A single to-do item arising from a meeting.
Attributes:
| Name | Type | Description |
|---|---|---|
description |
str
|
Non-empty description of the action to take. |
completed |
bool
|
Whether the action item has been completed. Defaults to |
MeetingLinkKind
MeetingLinkKind
Bases: str, Enum
Classifies the nature of a relationship between two Meetings.
Attributes:
| Name | Type | Description |
|---|---|---|
RELATES_TO |
A loose, non-directional association. |
|
FOLLOWS_UP_ON |
The owning Meeting is a follow-up to the target. |
MeetingLink
MeetingLink
Bases: BaseModel
A typed relationship from a Meeting to another Meeting.
Attributes:
| Name | Type | Description |
|---|---|---|
target_meeting_id |
str
|
The id of the related Meeting. |
kind |
MeetingLinkKind
|
The nature of the relationship. |
provenance |
LinkProvenance
|
Whether the relationship was explicitly asserted or implicitly inferred. |
MeetingTaskLinkKind
MeetingTaskLinkKind
Bases: str, Enum
Classifies how a Meeting relates to a Task.
Attributes:
| Name | Type | Description |
|---|---|---|
PRODUCED |
The meeting gave rise to the Task. |
|
DISCUSSED |
The Task was discussed during the meeting. |
MeetingTaskLink
MeetingTaskLink
Bases: BaseModel
A typed relationship from a Meeting to a Task.
Attributes:
| Name | Type | Description |
|---|---|---|
target_task_id |
int
|
The id of the related Task. |
kind |
MeetingTaskLinkKind
|
The nature of the relationship. |
provenance |
LinkProvenance
|
Whether the relationship was explicitly asserted or implicitly inferred. |
MeetingRiskLinkKind
MeetingRiskLinkKind
Bases: str, Enum
Classifies how a Meeting relates to a Risk.
Attributes:
| Name | Type | Description |
|---|---|---|
RAISED |
The meeting is where the risk was first raised. |
|
DISCUSSED |
The risk was discussed during the meeting. |
MeetingRiskLink
MeetingRiskLink
Bases: BaseModel
A typed relationship from a Meeting to a Risk.
Attributes:
| Name | Type | Description |
|---|---|---|
target_risk_id |
int
|
The id of the related Risk. |
kind |
MeetingRiskLinkKind
|
The nature of the relationship. |
provenance |
LinkProvenance
|
Whether the relationship was explicitly asserted or implicitly inferred. |
MeetingUserStoryLink
MeetingUserStoryLink
Bases: BaseModel
A typed relationship from a Meeting to a UserStory it discussed.
Attributes:
| Name | Type | Description |
|---|---|---|
target_story_id |
int
|
The id of the related UserStory. |
provenance |
LinkProvenance
|
Whether the relationship was explicitly asserted or implicitly inferred. |