# Product Experience

This is a Post.Build.Ship reference, not a standalone skill.

Use this reference when `post`, `build`, or `ship` handles user-facing create, edit, save, or delete
behavior or draft retention.

## Do Not Surprise Users

Do not surprise users. Make ordinary controls perform their expected operation. Treat Save as a
request to capture every valid value visible in the draft, including valid text that has not needed
an intermediate add or confirmation action.

## Do Not Lose User-Entered Data

Do not lose user-entered data. Preserve the complete raw draft through validation and persistence
failures until it is saved or the user explicitly discards it. Do not clear or silently transform
visible input before persistence succeeds.

## Let Users Remove Data They Create

Let users remove data they create when domain, security, and retention rules permit. Remove derived
values after their final reference disappears. Apply constraints explicitly when those rules require
data to remain; do not present constrained retention as successful removal.
