Consent dialogs no longer render tool input on a best-effort basis. A shared preview builder now returns either a full render or a withheld result, withholding when the value exceeds the grapheme/unit budget, exceeds the element budget, or would otherwise come back containing an elision marker. When withheld, the dialog shows a marker in place of the command or URL, and the "always allow" and suggestion options are suppressed, leaving only one-time approval.
The unknown-tool and stub preview renderers now throw rather than half-render, with errors like "stub preview cannot render an over-bound parameter" and "unknown-tool stub cannot render parameters". The old best-effort renderer that caught errors and logged "Error rendering tool use line" has been removed. This applies to everyone.