Permissions And Migration
Purpose
This page captures the non-UI rules around seller authority, moderation outcomes, and compatibility handling.
Seller Authority
The server must resolve seller authority per listing.
Locked rules:
- seller writes are not granted from a vague account-wide role alone
- the owner or authorized business team must be resolved for each listing
- active seller eligibility is enforced on create, edit, lifecycle, and media actions
- live listings may correct year, VIN, and condition, but owner, make, model, and variant stay locked after go-live
Readiness
Activation must stay server-gated.
Locked rules:
- listings cannot move into
activeuntil readiness passes - the readiness gate must consider required details and required photos
- seller UI may assist, but the API owns the final decision
Moderation Outcomes
Legacy rejected data still exists for compatibility, but it is not part of the durable seller-facing target lifecycle.
Direction:
- treat
rejectedas a moderation outcome - surface it separately from normal archived inventory
- require a dedicated hold or resubmission path instead of normal availability actions
Compatibility Layer
The older status field still exists underneath for compatibility.
Locked rules:
- new lifecycle writes should use workflow and visibility first
- raw legacy
statusshould not become the primary model again - compatibility reads may remain while old rows are migrated safely
Practical Rule
Do not let client route semantics or page-state shortcuts redefine listing lifecycle rules. The server model stays primary.