Skip to content
MirrorFirm

What tool actions, state and reset behaviour can a simulated environment expose?

A concrete list of tool calls with arguments, how state is stored and exported, how a reset works, and what each call logs for replay and scoring.

A simulated environment exposes the workflow as tool calls over a state store. A typical set of actions follows, with the arguments each one could take.

- **search_open_items**(customer_id, amount_range, reference_text) returns candidate items with open amounts. - **get_history**(customer_id, since) returns past allocations and cases. - **read_remittance**(line_id) returns structured or free-text advice. - **post_allocation**(line_id, item_id, amount) writes an allocation record. - **park_receipt**(line_id, reason_code) moves the amount to suspense. - **raise_case**(line_id, owner_role, note) creates a case. - **reverse_allocation**(allocation_id, reason_code) undoes a posting where policy permits.

Each call returns a JSON object with a status field and any error, such as an amount exceeding the open balance. State is held in tables keyed by line_id, item_id and allocation_id, and can be exported as Parquet for analysis.

For reset, the environment loads a named snapshot at task start, so every run begins from the same ledger. Scheduled events, such as a reversal that arrives after a set number of steps, can be listed in the task file.

For logging, every call writes a JSONL row with task_id, step, tool, arguments, result and a state hash. This lets you replay a run and compare the final state to the reference. Confirm the exact tool signatures during a pilot, as they can be adapted to your agent framework.

Define tool signatures, snapshot reset and per-call logging early, since they decide whether runs are repeatable and comparable.

Audience:
Evaluation teams
Content type:
Integration
Buyer question:
What can be generated

Content release: r-a220eb6e099b243b

More on Payment allocation