← Heatmap / Gemini 3.1 Flash Lite · Task 58
Gemini 3.1 Flash Lite · Tool use · Task 58 (Calculation, below tax-free line, resolved amendment)
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 | 599.56 | 599.56 | 599.56 | 599.56 |
| employee contribution | 35.97 | 35.97 | 35.97 | 35.97 |
| allowed deduction | 68.60 | 68.60 | 68.60 | 68.60 |
| taxable pay | 494.99 | 494.99 | 494.99 | 494.99 |
| income tax | 0.00 | 0.00 | 0.00 | 0.00 |
| net pay | 494.99 | 494.99 | 494.99 | 494.99 |
| clauses | R1 R2 R3 R4 R5 R6 R9 | R1 R2 R3 R4 R5 R6 R9 | R1 R2 R3 R4 R5 R6 R9 | R1 R2 R3 R4 R5 R6 R9 |
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 · 6 tool calls · 6.2s · $0.0045
| Component | Score | Clauses |
|---|---|---|
| decision | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
| exact | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
| field accuracy | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
| citations | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
Assistant
list_documents()Tool
[
{"id": "168ee1fead32400b-payroll", "kind": "payroll"},
{"id": "168ee1fead32400b-contract", "kind": "contract"},
{"id": "168ee1fead32400b-amendment", "kind": "amendment"}
]
Assistant
read_document(document_id="168ee1fead32400b-payroll")Tool
{
"kind": "payroll",
"record": {"gross_pay": "599.56", "payroll_month": "2026-12", "allowed_deduction": "68.60"}
}
Assistant
read_document(document_id="168ee1fead32400b-contract")Tool
{
"kind": "contract",
"gross_pay": "1019.55"
}
Assistant
read_document(document_id="168ee1fead32400b-amendment")Tool
{
"kind": "amendment",
"gross_pay": "599.56",
"approved": true,
"effective_month": "2026-01"
}
Assistant
lookup_reference(reference="second-half")Tool
{
"reference": "second-half",
"months": ["2026-07", "2026-12"],
"rate": "0.06",
"cap": "4000.00",
"deduction": "400.00",
"free": "900.00",
"upper": "2800.00",
"middle_rate": "0.14",
"upper_rate": "0.20"
}
Assistant
calculate(program="employee_contribution = round(min(599.56, 4000.00) * 0.06, 2)\ntaxable_pay = 599.56 - employee_contribution - 68.60\nincome_tax = round(max(0, taxable_pay - 900.00) * 0.14 + max(0, taxable_pay - 2800.00) * 0.06, 2)\nnet_pay = 599.56 - employee_contribution - 68.60 - income_tax")Tool
{
"results": {"employee_contribution": "35.97", "taxable_pay": "494.99", "income_tax": "0.00", "net_pay": "494.99"}
}
Assistant
{
"decision": "calculate",
"currency": "LCR",
"gross_pay": "599.56",
"employee_contribution": "35.97",
"allowed_deduction": "68.60",
"taxable_pay": "494.99",
"income_tax": "0.00",
"net_pay": "494.99",
"clauses": ["R1", "R2", "R3", "R4", "R5", "R6", "R9"]
}
Rollout #2 100.0% passed · 6 tool calls · 8.2s · $0.0045
| Component | Score | Clauses |
|---|---|---|
| decision | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
| exact | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
| field accuracy | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
| citations | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
Assistant
list_documents()Tool
[
{"id": "168ee1fead32400b-payroll", "kind": "payroll"},
{"id": "168ee1fead32400b-contract", "kind": "contract"},
{"id": "168ee1fead32400b-amendment", "kind": "amendment"}
]
Assistant
read_document(document_id="168ee1fead32400b-payroll")Tool
{
"kind": "payroll",
"record": {"gross_pay": "599.56", "payroll_month": "2026-12", "allowed_deduction": "68.60"}
}
Assistant
read_document(document_id="168ee1fead32400b-contract")Tool
{
"kind": "contract",
"gross_pay": "1019.55"
}
Assistant
read_document(document_id="168ee1fead32400b-amendment")Tool
{
"kind": "amendment",
"gross_pay": "599.56",
"approved": true,
"effective_month": "2026-01"
}
Assistant
lookup_reference(reference="second-half")Tool
{
"reference": "second-half",
"months": ["2026-07", "2026-12"],
"rate": "0.06",
"cap": "4000.00",
"deduction": "400.00",
"free": "900.00",
"upper": "2800.00",
"middle_rate": "0.14",
"upper_rate": "0.20"
}
Assistant
calculate(program="employee_contribution = round(min(599.56, 4000.00) * 0.06, 2)\ntaxable_pay = 599.56 - employee_contribution - 68.60\nincome_tax = round(max(0, taxable_pay - 900.00) * 0.14 + max(0, taxable_pay - 2800.00) * (0.20 - 0.14), 2)\nnet_pay = 599.56 - employee_contribution - 68.60 - income_tax")Tool
{
"results": {"employee_contribution": "35.97", "taxable_pay": "494.99", "income_tax": "0.00", "net_pay": "494.99"}
}
Assistant
{
"decision": "calculate",
"currency": "LCR",
"gross_pay": "599.56",
"employee_contribution": "35.97",
"allowed_deduction": "68.60",
"taxable_pay": "494.99",
"income_tax": "0.00",
"net_pay": "494.99",
"clauses": ["R1", "R2", "R3", "R4", "R5", "R6", "R9"]
}
Rollout #3 100.0% passed · 6 tool calls · 7.1s · $0.0045
| Component | Score | Clauses |
|---|---|---|
| decision | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
| exact | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
| field accuracy | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
| citations | 100.0% | R1 R2 R3 R4 R5 R6 R9 |
Assistant
list_documents()Tool
[
{"id": "168ee1fead32400b-payroll", "kind": "payroll"},
{"id": "168ee1fead32400b-contract", "kind": "contract"},
{"id": "168ee1fead32400b-amendment", "kind": "amendment"}
]
Assistant
read_document(document_id="168ee1fead32400b-payroll")Tool
{
"kind": "payroll",
"record": {"gross_pay": "599.56", "payroll_month": "2026-12", "allowed_deduction": "68.60"}
}
Assistant
read_document(document_id="168ee1fead32400b-contract")Tool
{
"kind": "contract",
"gross_pay": "1019.55"
}
Assistant
read_document(document_id="168ee1fead32400b-amendment")Tool
{
"kind": "amendment",
"gross_pay": "599.56",
"approved": true,
"effective_month": "2026-01"
}
Assistant
lookup_reference(reference="second-half")Tool
{
"reference": "second-half",
"months": ["2026-07", "2026-12"],
"rate": "0.06",
"cap": "4000.00",
"deduction": "400.00",
"free": "900.00",
"upper": "2800.00",
"middle_rate": "0.14",
"upper_rate": "0.20"
}
Assistant
calculate(program="employee_contribution = round(min(599.56, 4000.00) * 0.06, 2)\ntaxable_pay = 599.56 - employee_contribution - 68.60\nincome_tax = round(max(0, taxable_pay - 900.00) * 0.14 + max(0, taxable_pay - 2800.00) * 0.06, 2)\nnet_pay = 599.56 - employee_contribution - 68.60 - income_tax")Tool
{
"results": {"employee_contribution": "35.97", "taxable_pay": "494.99", "income_tax": "0.00", "net_pay": "494.99"}
}
Assistant
{
"decision": "calculate",
"currency": "LCR",
"gross_pay": "599.56",
"employee_contribution": "35.97",
"allowed_deduction": "68.60",
"taxable_pay": "494.99",
"income_tax": "0.00",
"net_pay": "494.99",
"clauses": ["R1", "R2", "R3", "R4", "R5", "R6", "R9"]
}