FuzeFront
▦
DO

Add / edit value

Shown over the value editor. Two variants: add (code editable) and edit (code locked, id revealed).

Add a value

Edit a value — code locked, id revealed

Delete is a purge — typed confirmation

Archive is one click. Purge is destructive and irreversible: it is the only action that makes an already-stored id un-resolvable.

States

Duplicate code — 409 CONFLICT

A value with code US already exists in this list. Codes are unique per list and are never reused, including by archived values.

This list is full — 403 QUOTA_EXCEEDED

Scope list_items · 500 of 500 used. Archive values you no longer offer, or ask an org admin to raise the ceiling.

Translators can't add or remove values — 403 FORBIDDEN

list-translator holds translate only. For that role + Add value, Archive and Delete are disabled with this explanation, not hidden.

Test hooks: [data-frame='04-value-modal'] · [data-modal='add-value'] · [data-modal='edit-value'] · [data-modal='purge-value'] · [data-field='code'] · [data-item-id] · [data-confirm-input] · [data-action='save-value'] · [data-action='archive-instead'] · [data-action='confirm-purge'] · [data-error='CONFLICT'] · [data-error='QUOTA_EXCEEDED'] · [data-error='FORBIDDEN']
Contract: POST /v1/selection-lists/{listId}/items · PATCH …/items/{itemId} · POST …/items/{itemId}/archive · DELETE …/items/{itemId} (purge).
Tokens only — no raw hex, spacing or type outside tokens.css / frame.css.

Review · selection-lists approve or reject each flow ↓
list-managementapproved · izzywdev
translation-workbenchapproved · izzywdev
access-controlapproved · izzywdev
pickerapproved · izzywdev