docs(poll): describe response retirement contract
This commit is contained in:
@@ -116,6 +116,13 @@ submission. Option removal and option changes invalidate only answers bound to
|
||||
that option, and repeated removal/revocation is an idempotent replay even after
|
||||
the Poll has moved out of an editable lifecycle state.
|
||||
|
||||
Owning modules can also retire a participant's responses through the optional
|
||||
response-retirement extension. Retirement is idempotent and soft-deletes the
|
||||
live rows so aggregation and capacity checks stop counting them, while answers
|
||||
and a reason/source retirement record remain available for audit. The boundary
|
||||
accepts only server-trusted respondent or invitation identities and rejects
|
||||
secret-like metadata.
|
||||
|
||||
## Identified response invariant
|
||||
|
||||
Poll stores at most one active response for each identified respondent in a
|
||||
|
||||
Reference in New Issue
Block a user