47 lines
1.9 KiB
Markdown
47 lines
1.9 KiB
Markdown
# Data Model: Result Preparation Refactoring
|
|
|
|
**Date**: 2025-10-11
|
|
**Feature**: Result Preparation Refactoring
|
|
|
|
This document defines the data structures used in the feature.
|
|
|
|
## Entities
|
|
|
|
### DesireSet
|
|
|
|
Represents a single user's submission.
|
|
|
|
| Field | Type | Description |
|
|
|---|---|---|
|
|
| participantId | string | The unique identifier for the participant. |
|
|
| wants | string[] | A list of things the participant wants. |
|
|
| accepts | string[] | A list of things the participant is willing to accept. |
|
|
| noGoes | string[] | A list of things the participant does not want. |
|
|
|
|
### Session
|
|
|
|
Represents a single session where users submit their desires.
|
|
|
|
| Field | Type | Description |
|
|
|---|---|---|
|
|
| sessionId | string | The unique identifier for the session. |
|
|
| state | SessionState | The current state of the session (`SETUP`, `GATHERING`, `HARMONIZING`, `FINAL`, `ERROR`). |
|
|
| expectedResponses | number | The number of participants expected to submit their desires. |
|
|
| submittedCount | number | The number of participants who have submitted their desires. |
|
|
| responses | Map<string, DesireSet> | A map of participant IDs to their submitted `DesireSet`. |
|
|
| clients | Map<string, WebSocket> | A map of client IDs to their WebSocket connections. |
|
|
| finalResult | Decision \| null | The final categorized result of the session. |
|
|
| topic | string \| null | The topic of the session. |
|
|
|
|
### Decision
|
|
|
|
Represents the final categorized result of the analysis.
|
|
|
|
| Field | Type | Description |
|
|
|---|---|---|
|
|
| goTos | string[] | A list of items that all participants want. |
|
|
| alsoGoods | string[] | A list of items that some participants want and others accept. |
|
|
| considerables | string[] | A list of items that are wanted or accepted by some participants. |
|
|
| noGoes | string[] | A list of items that at least one participant does not want. |
|
|
| needsDiscussion | string[] | A list of items with conflicting desires. |
|