fix(app-render): end the cache-signal read when encryptActionBoundArgs hits the Resume Data Cache
`encryptActionBoundArgs` calls `startReadOnce()` before looking the
serialized bound args up in the Resume Data Cache and, on a hit, returned
the cached ciphertext without `endReadIfStarted()`. The request's
CacheSignal count then stayed at 1 forever. With `partialPrefetching` the
runtime-prefetch stream embedded in the RSC payload is only written and
closed after `cacheSignal.cacheReady()`, so the Flight stream never ended
and the HTML response of every partially prerendered page that renders an
inline Server Function with bound args never terminated in production.
End the read on the hit path, mirroring the miss and error paths, and add
an e2e test that fetches such a page and asserts the body ends with
`</html>`.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>