Skip to content

Add TransformStream resource fallback - #304

Merged
wieslawsoltes merged 1 commit into
mainfrom
feature/transform-stream-fallback-266
Sep 17, 2026
Merged

wieslawsoltes merged 1 commit into
mainfrom
feature/transform-stream-fallback-266

Conversation

@wieslawsoltes

@wieslawsoltes wieslawsoltes commented Sep 17, 2026

Copy link
Copy Markdown
Collaborator

Problem

The lower CacheStorage/request-broker entry can return complete Response bodies, but unchanged Code OSS also uses its Safari-style chunk fallback when a transferable stream is unavailable: new TransformStream(), writable.getWriter(), ordered write() calls, close()/abort(), writer.closed, and the readable side as the response body.

Result

  • Adds browser-shaped WritableStream, WritableStreamDefaultWriter, and TransformStream brands, receiver checks, descriptors, locking, ordered writes, close, abort, ready/closed promises, and readable byte delivery.
  • Keeps the enlarged fetch bootstrap in four MSVC-safe 9.0-9.6 KiB literals while preserving the concatenated snapshot source.
  • Extends the lower 100-cycle broker test through the exact chunk fallback shape and adds a cumulative WPT-derived Chrome/native contract.

Part of #266. This cumulative entry merged after lower #303. The issue remains open for parser/image/style request interception, 200/206/304/range validators, security roots, and exact unchanged Markdown rendering.

Cumulative validation

  • Clean snapshot/native build.
  • Portable bootstrap literal regression: 2/2.
  • Native service-worker-resource-plane: 100 cycles, p95 0.284 ms; V8 heap 1,161,272 -> 1,161,272 bytes; peak RSS 38,207,488 -> 49,430,528 bytes; oversized responses reject at 64 MiB before combined allocation.
  • Native candidate contract: 1/1 document, 3/3 subtests, 67 ms after the bounded-body follow-up.
  • Google Chrome 153 oracle: 1/1 document, 3/3 subtests, 138 ms.
  • No lingering isolated Chrome process after the oracle run.
  • Rebased head c6c26649 is conflict-free atop lower head bd1b872e and main 3d143240; the only Implement effective CSS property cascade semantics #305 path overlap is the additive component-profile ledger. Focused cumulative revalidation passes bootstrap/syntax/build, the native contract (3/3, 69 ms), and 100 cycles (p95 0.210 ms; heap 1,161,232 -> 1,161,232 bytes; peak RSS 38,207,488 -> 49,266,688 bytes). Evidence: /private/tmp/webscene-266-rebased-top-native-profile-3d143240/results.json.

@wieslawsoltes
wieslawsoltes force-pushed the feature/cache-storage-fetch-broker-266 branch from 22c095f to 0267d60 Compare September 17, 2026 17:59
@wieslawsoltes
wieslawsoltes force-pushed the feature/transform-stream-fallback-266 branch from 18a19fa to 34cb18b Compare September 17, 2026 18:00
@wieslawsoltes
wieslawsoltes force-pushed the feature/cache-storage-fetch-broker-266 branch from 0267d60 to bd1b872 Compare September 17, 2026 18:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant