Publish a pricing revision with optimistic review protection
A reviewer approves a draft while an editor changes its discount; publication currently activates content nobody reviewed.
- Focused work estimate
- 4h + prerequisites
- Priority in the scenario
- High
- Engineering practice
- Optimistic concurrency · Versioning
Estimated field mix
- Backend60%
- Database engineering40%
Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.
Review it, then add it to your workspace.
The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.
Project context
A fictional parts supplier combines contract prices with promotions. Sales needs repeatable quotes when rules change during checkout.
Setup prerequisites
- Create synthetic products and integer minor-unit prices.
- Implement a small local quote API.
Preceding work
Complete these dependencies, or supply their agreed outputs before taking this ticket.
- ARULE-101 · Define the supported promotion predicates without executable expressions
- ARULE-103 · Validate promotion date ranges before publishing drafts
- ARULE-102 · Resolve overlapping promotions with an explicit tie-break policy
- ARULE-104 · Freeze product and rule versions when a quote is accepted
- ARULE-106 · Keep negotiated account prices outside shared quote caches
- ARULE-107 · Report why a cart missed a promotion without leaking contract terms
- ARULE-108 · Compare a draft pricing revision against a named quote corpus
Acceptance criteria
- Approval binds the exact canonical draft hash.
- Publication rejects a changed draft or stale expected revision.
- Published rule content cannot be updated in place.
Implementation constraints
- Commit active-pointer selection and audit metadata together.
Verification to include
- Publish an unchanged approved draft.
- Edit between approval and publish and retain the previous active revision.
Deliverables
- Guarded publication command
Rollout and recovery
Publish to synthetic accounts first; restore the prior active pointer without rewriting versions.
Value of the work
For the engineer: Practice deterministic rule evaluation, revision control and bounded execution.
For the team: Review explainable commercial rules without trusting opaque price changes.
Evidence boundaries
Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.
Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.