**Anti-patterns**
Inline comments (WRONG: `#` fails to parse):
```lemma-skip
data customer_age: number -> minimum 0 # input
rule discount: 0% # default
```
Commentary after `uses` (WRONG). RIGHT: commentary immediately after `spec` (see **Syntax**).
Mega-rule (WRONG):
```lemma-skip
rule final_total:
base_price * qty
- base_price * qty * (0% unless qty >= 10 then 10% unless is_premium then 20%)
+ (15 unless base_price * qty >= 100 then 10 unless base_price * qty >= 200 then 0)
```
Decomposed pipeline (RIGHT):
```lemma
spec order_pricing
data base_price: number -> minimum 0
data qty: number -> minimum 0
rule subtotal: base_price * qty
rule discount_percentage: 0% unless qty >= 10 then 10%
rule discount_amount: subtotal * discount_percentage
rule total_after_discount: subtotal - discount_amount
rule shipping_cost: 15 unless total_after_discount >= 100 then 10
rule final_total: total_after_discount + shipping_cost
```
Hardcoded input (WRONG): `rule discount: 10 * 0.1`
RIGHT: `data qty: number` then `rule discount: qty * 0.1`
Wrong unless order (WRONG: VIP gets 20% not 25%):
```lemma-skip
rule discount: 0%
unless is_vip then 25%
unless qty >= 50 then 20%
```
RIGHT: specific override last (`qty` tiers first, `is_vip` last).
Placeholder (WRONG): `data customer_name: "TODO"`
RIGHT: `data customer_name: text`
Error vs Veto: `5 and "text"` = planning Error. `unless age > 120 then veto "…"` = runtime Veto.
Veto-as-rejection (WRONG: denial is answerable; see **Veto**):
```lemma-skip
rule is_eligible: true
unless age < 18 then veto "Must be 18+"
unless has_id is false then veto "ID required"
```
RIGHT: boolean rules composed with `and` (`is_old_enough and has_valid_id`).
Unnecessary `repo` (WRONG). RIGHT: single-file `spec` without `repo`.
No `or` (WRONG): `rule is_eligible: is_adult or has_guardian`. See **Syntax**; use `unless` or separate booleans.
Constraints on rules (WRONG): `rule discount: 10% -> help "…"`. `->` is data-only (see **Syntax**).
Domain-blind polarity / double denial (WRONG):
```lemma-skip
rule can_ship: yes
unless in_stock is false then no
unless address_complete is false then no
```
RIGHT: domain principle + positive grant (see **Rules**):
```lemma-skip
rule can_ship: no
unless in_stock and address_complete then yes
```