Reads and writes · rule
data.conflict_cannot_break
Conflict mapping for a rule the write can't break.
Area 6, Reads and writes; not declinable; the next step is usually the agent's.
An update can break only the unique rules over the fields it sets:
type CustomerName = Text { max_length: 80}entity Customer { id: Uuid email: Email { unique: true } name: CustomerName}type EmailTaken = Failure { kind: FailureKind.conflict}action rename(customer: Customer, name: Customer.name) fails EmailTaken -> Customer { return attempt Customer.update(customer) { set: { name: name } conflict: { Customer.email: EmailTaken } }}
error: `Customer.update` can't break `Customer.email`, so it takes no arm --> main.jadpo:23:13 |23 | Customer.email: EmailTaken | ^^^^^^^^^^^^^^ never runs reason: `Customer.update` sets none of the fields `Customer.email` covers, so it can't break it. next: Remove `Customer.email: ...` (agent) rule: data.conflict_cannot_break help: https://jadpo.dev/docs/errors/data.conflict_cannot_breakcheck failed: 1 error, 1 file
A conflict arm naming a failure of another kind is area 4's
failure.mapping_kind, an arm given twice failure.duplicate_mapping, and
invalid: in a write's block failure.invalid_outside_construction.
Markdown for agents: /docs/errors/data.conflict_cannot_break.md.Built from Jadpo main at a707efb.