A municipal open-data portal agent must avoid runaway tool calling against public endpoints. What harness control best bounds fair use per resident query?
Select an answer to reveal the explanation.
Short Explanation
Public open-data APIs are shared park benches—one agent shouldn't sprawl across the whole row. You cap the tool rounds per query so everyone still gets a turn; token budgets, caching, and retry backoff don't do that job.
Full Explanation
Capping max tool rounds per resident query in the custom harness best bounds fair use for a municipal open-data portal agent that must avoid runaway tool calling against public endpoints. Shared civic APIs are finite: one agent session should not sprawl across unlimited rounds, scraping every dataset in a single resident query. A harness-level max-round cap is a deterministic budget that stops loops regardless of model enthusiasm. Enforcing a response token budget per resident answer fails by concept: a token budget caps generated output, not the number of tool rounds, so it cannot stop an agent from making excessive calls against public endpoints. Caching public endpoint responses for repeated queries fails stewardship of per-query fairness: it only reduces duplicate fetch overhead and does nothing to stop one resident query from triggering runaway tool calls against public endpoints. Retrying failed endpoint calls with exponential backoff fails accountability and does not bound call volume—automatic retries can multiply tool usage per session and make runaway behavior harder to stop without a round cap. Exam caveat: round caps complement, not replace, API rate limits and caching. Tune caps to legitimate multi-step open-data questions without enabling bulk extraction patterns. Operational check: set max tool rounds per query in the harness, return a clear limit error to the agent/UI, log round counts per session, alert on repeated cap hits, and align caps with the open-data portal's published fair-use expectations.