← Heatmap / Gemini 3.1 Flash Lite · Task 78
Gemini 3.1 Flash Lite · Tool use · Task 78 (Calculation, at the tax-free line)
Mean 100.0%
| Field | Expected | Rollout #1 (100%) | Rollout #2 (100%) | Rollout #3 (100%) |
|---|---|---|---|---|
| decision | calculate | calculate | calculate | calculate |
| currency | LCR | LCR | LCR | LCR |
| gross pay | 948.45 | 948.45 | 948.45 | 948.45 |
| employee contribution | 47.42 | 47.42 | 47.42 | 47.42 |
| allowed deduction | 1.03 | 1.03 | 1.03 | 1.03 |
| taxable pay | 900.00 | 900.00 | 900.00 | 900.00 |
| income tax | 0.00 | 0.00 | 0.00 | 0.00 |
| net pay | 900.00 | 900.00 | 900.00 | 900.00 |
| clauses | R1 R2 R3 R4 R5 R6 | R1 R2 R3 R4 R5 R6 | R1 R2 R3 R4 R5 R6 | R1 R2 R3 R4 R5 R6 |
Prompt
Process this monthly payroll record under the supplied rulebook. Return the R6 or R7 JSON answer. Retrieve the case inputs with list_documents and read_document. Reference rows are available only through lookup_reference. Use calculate for exact decimal arithmetic.
Rollouts
Rollout #1 100.0% passed · 4 tool calls · 5.7s · $0.0032
| Component | Score | Clauses |
|---|---|---|
| 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
list_documents()Tool
[
{"id": "5178404fc18b0e41-payroll", "kind": "payroll"}
]
Assistant
read_document(document_id="5178404fc18b0e41-payroll")Tool
{
"kind": "payroll",
"record": {"gross_pay": "948.45", "payroll_month": "2026-05", "allowed_deduction": "1.03"}
}
Assistant
lookup_reference(reference="first-half")Tool
{
"reference": "first-half",
"months": ["2026-01", "2026-06"],
"rate": "0.05",
"cap": "4500.00",
"deduction": "400.00",
"free": "900.00",
"upper": "3300.00",
"middle_rate": "0.08",
"upper_rate": "0.18"
}
Assistant
calculate(program="employee_contribution = round(min(948.45, 4500.00) * 0.05, 2)\ntaxable_pay = 948.45 - employee_contribution - 1.03\ntax_bracket1 = max(0, min(taxable_pay, 3300.00) - 900.00)\ntax_bracket2 = max(0, taxable_pay - 3300.00)\nincome_tax = round(tax_bracket1 * 0.08 + tax_bracket2 * 0.18, 2)\nnet_pay = 948.45 - employee_contribution - 1.03 - income_tax")Tool
{
"results": {"employee_contribution": "47.42", "taxable_pay": "900.00", "tax_bracket1": "0", "tax_bracket2": "0", "income_tax": "0.00", "net_pay": "900.00"}
}
Assistant
{
"decision": "calculate",
"currency": "LCR",
"gross_pay": "948.45",
"employee_contribution": "47.42",
"allowed_deduction": "1.03",
"taxable_pay": "900.00",
"income_tax": "0.00",
"net_pay": "900.00",
"clauses": ["R1", "R2", "R3", "R4", "R5", "R6"]
}
Rollout #2 100.0% passed · 4 tool calls · 5.6s · $0.0033
| Component | Score | Clauses |
|---|---|---|
| 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
list_documents()Tool
[
{"id": "5178404fc18b0e41-payroll", "kind": "payroll"}
]
Assistant
read_document(document_id="5178404fc18b0e41-payroll")Tool
{
"kind": "payroll",
"record": {"gross_pay": "948.45", "payroll_month": "2026-05", "allowed_deduction": "1.03"}
}
Assistant
lookup_reference(reference="first-half")Tool
{
"reference": "first-half",
"months": ["2026-01", "2026-06"],
"rate": "0.05",
"cap": "4500.00",
"deduction": "400.00",
"free": "900.00",
"upper": "3300.00",
"middle_rate": "0.08",
"upper_rate": "0.18"
}
Assistant
calculate(program="employee_contribution = round(min(948.45, 4500.00) * 0.05, 2)\ntaxable_pay = 948.45 - employee_contribution - 1.03\ntax_bracket_1 = max(0, min(taxable_pay - 900.00, 3300.00 - 900.00))\ntax_bracket_2 = max(0, taxable_pay - 3300.00)\nincome_tax = round(tax_bracket_1 * 0.08 + tax_bracket_2 * 0.18, 2)\nnet_pay = 948.45 - employee_contribution - 1.03 - income_tax")Tool
{
"results": {"employee_contribution": "47.42", "taxable_pay": "900.00", "tax_bracket_1": "0", "tax_bracket_2": "0", "income_tax": "0.00", "net_pay": "900.00"}
}
Assistant
{
"decision": "calculate",
"currency": "LCR",
"gross_pay": "948.45",
"employee_contribution": "47.42",
"allowed_deduction": "1.03",
"taxable_pay": "900.00",
"income_tax": "0.00",
"net_pay": "900.00",
"clauses": ["R1", "R2", "R3", "R4", "R5", "R6"]
}
Rollout #3 100.0% passed · 4 tool calls · 4.8s · $0.0033
| Component | Score | Clauses |
|---|---|---|
| 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
list_documents()Tool
[
{"id": "5178404fc18b0e41-payroll", "kind": "payroll"}
]
Assistant
read_document(document_id="5178404fc18b0e41-payroll")Tool
{
"kind": "payroll",
"record": {"gross_pay": "948.45", "payroll_month": "2026-05", "allowed_deduction": "1.03"}
}
Assistant
lookup_reference(reference="first-half")Tool
{
"reference": "first-half",
"months": ["2026-01", "2026-06"],
"rate": "0.05",
"cap": "4500.00",
"deduction": "400.00",
"free": "900.00",
"upper": "3300.00",
"middle_rate": "0.08",
"upper_rate": "0.18"
}
Assistant
calculate(program="employee_contribution = round(min(948.45, 4500.00) * 0.05, 2)\ntaxable_pay = 948.45 - employee_contribution - 1.03\ntax_bracket_1 = max(0, min(taxable_pay - 900.00, 3300.00 - 900.00))\ntax_bracket_2 = max(0, taxable_pay - 3300.00)\nincome_tax = round(tax_bracket_1 * 0.08 + tax_bracket_2 * 0.18, 2)\nnet_pay = 948.45 - employee_contribution - 1.03 - income_tax")Tool
{
"results": {"employee_contribution": "47.42", "taxable_pay": "900.00", "tax_bracket_1": "0", "tax_bracket_2": "0", "income_tax": "0.00", "net_pay": "900.00"}
}
Assistant
{
"decision": "calculate",
"currency": "LCR",
"gross_pay": "948.45",
"employee_contribution": "47.42",
"allowed_deduction": "1.03",
"taxable_pay": "900.00",
"income_tax": "0.00",
"net_pay": "900.00",
"clauses": ["R1", "R2", "R3", "R4", "R5", "R6"]
}