Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument mechanism / verified-clean

Bill Split Calculator mechanism

The inspectable method record for Bill Split Calculator, kept separate from implementation and qualification.

Status: VERIFIED_CLEANLifecycle: verified-clean

Model scope

The core even formula is standard, and the proportional-allocation interpretation used in the test vectors is mathematically valid. The specification requires review because the itemized tax/tip basis, allocation semantics, shared-item behavior, percentage units, and rounding policy are not fully defined. The educational-only limitation is appropriate; no individualized financial, tax, or legal advice is implied.

  • The even formula total/n_people is correct only when total is already the complete amount to split and n_people is a positive integer.
  • The itemized formula is underspecified: it does not explicitly define whether tax and tip are calculated from the item subtotal, whether tip is applied before or after tax, or how tax/tip are allocated among people.
  • The itemized formula does not define handling for shared items, unassigned items, duplicate assignments, or items assigned to nonexistent people.
  • No currency-rounding or cent-reconciliation rule is specified, so displayed per-person amounts may not sum exactly to the bill.

Units and conventions

  • total and item prices are monetary amounts in one currency, represented in major currency units such as dollars.
  • n_people is a positive whole number.
  • tax % and tip % are entered as percentage points, so 8 means 8% and is converted by dividing by 100.
  • For the test vectors, tax and tip are calculated from the item subtotal and allocated proportionally to each person's assigned-item subtotal.
  • Expected outputs are shown to two decimal places for currency; the implementation needs a defined rounding and reconciliation policy.

Inspectable vector

One of 4 source-bound review vectors:

{
  "inputs": {
    "mode": "even",
    "total": 96,
    "n_people": 4
  },
  "expected_outputs": {
    "amount_owed_per_person": {
      "person_1": 24,
      "person_2": 24,
      "person_3": 24,
      "person_4": 24
    }
  },
  "working": "96.00 / 4 = 24.00. Each person owes 24.00."
}

Failure boundary

BREAK_CLAIMED · SELF_FLAGGED

The calculator has an undefined-result trap when n_people is zero and should reject that input. Its percentage fields also have a convention ambiguity: interpreting 10 as 10% gives 115 per person in the probe, while interpreting it as a raw multiplier gives 1600 per person.

Other records

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json
  • evidence-tranche5/tranche5-results.json
  • BOUNDARY_HAZARD_CATALOG.json