Address round-1 review nits on apps.ts:
- readUiMeta now accepts `unknown` and narrows internally, removing the
three `as WithUiMeta` casts at its call sites (readability win).
- Add a comment documenting that the content-block-then-result precedence
for `_meta.ui` is intentional (posture lives on the content block; no
shallow merge).
- Add a TODO to switch to the named McpUiToolMeta/McpUiResourceMeta types
once the upstream extensionless re-export is fixed for NodeNext.
Coverage: apps.ts 100% lines / 97.05% branch / 100% funcs — clears the gate.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S3fTN8H3R8YV4yUGvZjYnX