Luma Payroll Gym
← Heatmap / GLM 5.3 Flash · Task 99
GLM 5.3 Flash · Single-turn · Task 99 (Calculation, wage cap binds) Mean 50.0%
Field Expected Rollout #1 (100%) Rollout #2 (-50%) Rollout #3 (100%)
decision calculate calculate (malformed) calculate
currency LCR LCR (malformed) LCR
gross pay 9174.15 9174.15 (malformed) 9174.15
employee contribution 160.00 160.00 (malformed) 160.00
allowed deduction 353.50 353.50 (malformed) 353.50
taxable pay 8660.65 8660.65 (malformed) 8660.65
income tax 1438.13 1438.13 (malformed) 1438.13
net pay 7222.52 7222.52 (malformed) 7222.52
clauses R1 R2 R3 R4 R5 R6 R1 R2 R3 R4 R5 R6 (malformed) R1 R2 R3 R4 R5 R6
Prompt
Process this monthly payroll record under the supplied rulebook. Return the R6 or R7 JSON answer.
Source documents: {"b91d767a6a759d3c-payroll": {"kind": "payroll", "record": {"gross_pay": "9174.15", "payroll_month": "2026-07", "allowed_deduction": "353.50"}}}
Authoritative case reference schedule: {"first-half": {"rate": "0.08", "cap": "4000.00", "deduction": "400.00", "free": "1200.00", "upper": "3300.00", "middle_rate": "0.10", "upper_rate": "0.18"}, "second-half": {"rate": "0.04", "cap": "4000.00", "deduction": "400.00", "free": "900.00", "upper": "2800.00", "middle_rate": "0.14", "upper_rate": "0.20"}}
Rollouts
Rollout #1 100.0% passed · 5.6s · $0.0008
ComponentScoreClauses
decision 100.0% R1 R2 R3 R4 R5 R6
exact 100.0% R1 R2 R3 R4 R5 R6
field accuracy 100.0% R1 R2 R3 R4 R5 R6
citations 100.0% R1 R2 R3 R4 R5 R6
Assistant
{
  "decision": "calculate",
  "currency": "LCR",
  "gross_pay": "9174.15",
  "employee_contribution": "160.00",
  "allowed_deduction": "353.50",
  "taxable_pay": "8660.65",
  "income_tax": "1438.13",
  "net_pay": "7222.52",
  "clauses": ["R1", "R2", "R3", "R4", "R5", "R6"],
  "explanation": "2026-07 selects the case schedule's second-half row (R1). Contribution: 0.04 \u00d7 min(9174.15, 4000.00) = 160.00 (R3). Allowed deduction 353.50 is within the 400.00 cap and below gross minus contribution (R4). Taxable pay: 9174.15 \u2212 160.00 \u2212 353.50 = 8660.65 (R4). Tax: 900.00 free, 1900.00 \u00d7 0.14 = 266.00, (8660.65 \u2212 2800.00) \u00d7 0.20 = 1172.13, total 1438.13 (R5). Net pay: 9174.15 \u2212 160.00 \u2212 353.50 \u2212 1438.13 = 7222.52 (R6)."
}
Reasoning
Let me work through this payroll record.

Inputs:
- gross_pay: "9174.15"
- payroll_month: "2026-07"
- allowed_deduction: "353.50"

Case reference schedule (authoritative, replaces defaults):
- second-half (2026-07 through 2026-12): rate 0.04, cap 4000.00, deduction 400.00, free 900.00, upper 2800.00, middle_rate 0.14, upper_rate 0.20

Steps:
1. Employee contribution (R3): rate 0.04 × min(gross, cap) = 0.04 × min(9174.15, 4000.00) = 0.04 × 4000.00 = 160.00
2. Allowed deduction check (R4): deduction must not exceed deduction cap (400.00) or gross pay minus rounded employee contribution (9174.15 − 160.00 = 9014.15). 353.50 ≤ 400.00 and ≤ 9014.15. OK.
3. Taxable pay (R4): 9174.15 − 160.00 − 353.50 = 8660.65
4. Income tax (R5): progressive brackets:
   - Tax-free: up to 900.00 → 0
   - Middle: 900.00 to 2800.00 → 1900.00 × 0.14 = 266.00
   - Upper: above 2800.00 → 8660.65 − 2800.00 = 5860.65 × 0.20 = 1172.13
   - Total: 266.00 + 1172.13 = 1438.13
5. Net pay (R6): 9174.15 − 160.00 − 353.50 − 1438.13 = 7222.52

Let me verify: 9174.15 − 160.00 = 9014.15; 9014.15 − 353.50 = 8660.65; 8660.65 − 1438.13 = 7222.52. Yes.

Check rounding: 5860.65 × 0.20 = 1172.13 exactly. 1900 × 0.14 = 266.00 exactly. Total 1438.13. No rounding issues.

Answer JSON:
{
  "decision": "calculate",
  "currency": "LCR",
  "gross_pay": "9174.15",
  "employee_contribution": "160.00",
  "allowed_deduction": "353.50",
  "taxable_pay": "8660.65",
  "income_tax": "1438.13",
  "net_pay": "7222.52",
  "clauses": ["R1", "R2", "R3", "R4", "R5", "R6"]
}

Clauses: R1 (reference row selection via schedule), R2 (rounding), R3 (contribution), R4 (deduction/taxable), R5 (tax), R6 (net pay). No amendment, so no R9.
Rollout #2 -50.0% malformed · 4.1s · $0.0007
ComponentScoreClauses
decision 0.0% R1 R2 R3 R4 R5 R6
exact 0.0% R1 R2 R3 R4 R5 R6
field accuracy 0.0% R1 R2 R3 R4 R5 R6
citations 0.0% R1 R2 R3 R4 R5 R6
Assistant
```json
{
  "decision": "calculate",
  "currency": "LCR",
  "gross_pay": "9174.15",
  "employee_contribution": "160.00",
  "allowed_deduction": "353.50",
  "taxable_pay": "8660.65",
  "income_tax": "1438.13",
  "net_pay": "7222.52",
  "clauses": ["R1", "R2", "R3", "R4", "R5", "R6"]
}
```
Reasoning
Let me work through this payroll case.

Input:
- gross_pay: "9174.15"
- payroll_month: "2026-07"
- allowed_deduction: "353.50"

Reference schedule (authoritative case schedule per R1):
- second-half (2026-07 through 2026-12): rate 0.04, cap 4000.00, deduction 400.00, free 900.00, upper 2800.00, middle_rate 0.14, upper_rate 0.20

Step 1: Employee contribution (R3): rate × min(gross, cap) = 0.04 × min(9174.15, 4000.00) = 0.04 × 4000.00 = 160.00

Step 2: Allowed deduction check (R4): must not exceed deduction cap (400.00) or gross pay minus rounded employee contribution (9174.15 − 160.00 = 9014.15). 353.50 ≤ 400.00 and ≤ 9014.15. OK.

Step 3: Taxable pay (R4): gross − contribution − deduction = 9174.15 − 160.00 − 353.50 = 8660.65

Step 4: Income tax (R5), marginal:
- Tax-free: 900.00 → untaxed
- Middle bracket: from 900.00 to 2800.00 → 1900.00 × 0.14 = 266.00
- Upper bracket: above 2800.00 → 8660.65 − 2800.00 = 5860.65 × 0.20 = 1172.13

Total tax = 266.00 + 1172.13 = 1438.13

Step 5: Net pay (R6): 9174.15 − 160.00 − 353.50 − 1438.13 = 7222.52

Let me verify: 9174.15 − 160.00 = 9014.15; 9014.15 − 353.50 = 8660.65; 8660.65 − 1438.13 = 7222.52. Yes.

Check rounding: 5860.65 × 0.20 = 1172.13 exactly. 1900.00 × 0.14 = 266.00 exactly. No rounding issues.

Answer fields:
- decision: "calculate"
- currency: "LCR"
- gross_pay: "9174.15"
- employee_contribution: "160.00"
- allowed_deduction: "353.50"
- taxable_pay: "8660.65"
- income_tax: "1438.13"
- net_pay: "7222.52"
- clauses: R1, R2, R3, R4, R5, R6

No amendment present, no conflict. Cite R1–R6.
Rollout #3 100.0% passed · 5.1s · $0.0008
ComponentScoreClauses
decision 100.0% R1 R2 R3 R4 R5 R6
exact 100.0% R1 R2 R3 R4 R5 R6
field accuracy 100.0% R1 R2 R3 R4 R5 R6
citations 100.0% R1 R2 R3 R4 R5 R6
Assistant
{
  "decision": "calculate",
  "currency": "LCR",
  "gross_pay": "9174.15",
  "employee_contribution": "160.00",
  "allowed_deduction": "353.50",
  "taxable_pay": "8660.65",
  "income_tax": "1438.13",
  "net_pay": "7222.52",
  "clauses": ["R1", "R2", "R3", "R4", "R5", "R6"],
  "explanation": "Payroll month 2026-07 selects the second-half row of the authoritative case schedule (rate 0.04, wage cap 4000.00, deduction cap 400.00, tax-free 900.00, upper bracket 2800.00, middle 0.14, upper 0.20). Contribution: 0.04 \u00d7 min(9174.15, 4000.00) = 160.00. Allowed deduction 353.50 is within the 400.00 cap and below gross minus contribution (9014.15). Taxable pay: 9174.15 \u2212 160.00 \u2212 353.50 = 8660.65. Tax: first 900.00 untaxed; 1900.00 \u00d7 0.14 = 266.00; 5860.65 \u00d7 0.20 = 1172.13; total 1438.13. Net pay: 9174.15 \u2212 160.00 \u2212 353.50 \u2212 1438.13 = 7222.52."
}
Reasoning
Let me work through this.

Payroll record: gross_pay = 9174.15, payroll_month = 2026-07, allowed_deduction = 353.50.

Case reference schedule supplied (authoritative):
- second-half (2026-07 falls in second-half): rate = 0.04, cap = 4000.00, deduction = 400.00, free = 900.00, upper = 2800.00, middle_rate = 0.14, upper_rate = 0.20.

R3: Employee contribution = rate × min(gross, cap) = 0.04 × min(9174.15, 4000.00) = 0.04 × 4000.00 = 160.00.

R4: allowed_deduction = 353.50. Must not exceed deduction cap (400.00) or gross pay minus rounded employee contribution (9174.15 − 160.00 = 9014.15). 353.50 ≤ 400.00 and ≤ 9014.15. OK.

Taxable pay = 9174.15 − 160.00 − 353.50 = 8660.65.

R5: Tax brackets:
- Tax-free amount: 900.00 → untaxed.
- Portion above 900.00 up to upper boundary 2800.00: 2800.00 − 900.00 = 1900.00 at middle rate 0.14 → 266.00.
- Portion above 2800.00: 8660.65 − 2800.00 = 5860.65 at upper rate 0.20 → 1172.13.

Total tax = 266.00 + 1172.13 = 1438.13. Round to two decimals: 1438.13.

R6: Net pay = 9174.15 − 160.00 − 353.50 − 1438.13 = 7222.52.

Check: 9174.15 − 160.00 = 9014.15; 9014.15 − 353.50 = 8660.65; 8660.65 − 1438.13 = 7222.52.

Answer fields:
- decision: "calculate"
- currency: "LCR"
- gross_pay: "9174.15"
- employee_contribution: "160.00"
- allowed_deduction: "353.50"
- taxable_pay: "8660.65"
- income_tax: "1438.13"
- net_pay: "7222.52"
- clauses: ["R1", "R2", "R3", "R4", "R5", "R6"]

No amendment needed, no conflict. Cite R1 through R6.