Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given two parameters, an output schema, and annotations already marking the tool as non-read-only, the description covers the source ledger, resolution payload shapes, the file-rewriting side effect, the return value, and the integration with set_param. Nothing essential is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.