Parent: #473 Related: #666, #681, #682
Problem
Three Response boundaries still consume physical bytes from toStringV:
new Response(..., { statusText })before persistent response storage;Response.json(..., { statusText })before persistent response storage;Response.redirect(url)before the owned URL parser.
With physical flat Latin-1 storage active, valid Latin-1 status text can be republished as invalid canonical StringData, while non-ASCII redirect paths can be parsed and percent-encoded from malformed bytes.
Scope
- Route these three Response coercions through the representation-aware WTF-8 helper.
- Preserve status-before-statusText-before-headers ordering, exactly one coercion, status validation, null-body status checks, JSON body/content-type behavior, redirect status validation, URL serialization, exception identity, ASCII borrowing, storage ownership, and OOM propagation.
- Cover constructor/JSON statusText and redirect URL serialization under canonical and physical flat-Latin-1 storage.
No-workaround rules
- No flat-storage disablement, eager global canonicalization, replacement characters, duplicate coercion, alternate URL/fetch implementation, hidden retry, or fake corpus coverage.
- No stack, queue, job, Promise, Worker, agent, or Map/Set iterator changes.
Acceptance
- Response status text is stored as canonical semantic WTF-8.
- Response.redirect parses canonical semantic URL text and emits exact UTF-8 percent escapes.
- Each custom ToString hook runs exactly once with existing observable ordering.
- The witness passes with canonical storage and with
flat_storage_activeenabled, then the switch is restored and not landed. - Focused Debug/ReleaseSafe/TSan and full units pass with exact inventory reported; zero Test262 Web API coverage is stated explicitly.