📦 Vendor pinned Cloudflare DOFS source - #389
Conversation
PR #389: 📦 Vendor pinned Cloudflare DOFS source116 files, +8477 / -11 Scope🔴 PR has 8488 lines changed. Split into focused PRs. 🟡 8488 lines changed. PRs under 400 receive more thorough review. 🟡 116 files changed. Are all changes related? 🟡 PR mixes config and source changes. Structural🟡 1 console statements. Slop✅ Slop indicators look low. Static Analysis✅ Oxlint found no issues. CorrectnessNo extraneous code patterns detected. |
System/software architecture reviewVerdict: APPROVE as stack layer 1. I found no architectural blocker in #389. This is the correct first boundary for the #365 stack:
I independently compared the snapshot with Cloudflare Computer commit
One wording precision: the offline verifier proves that the checked-in snapshot has not drifted from its recorded inventory; it cannot independently prove that the initial bytes came from the named remote commit. That upstream provenance is established by this review-time comparison and then retained by Git plus the manifest. I recommend describing the SHA-256 inventory as enforcing post-capture byte identity, not as independently proving remote provenance. This is not a merge blocker. The dependent stack layers must preserve these constraints:
With those constraints, #389 is a coherent, independently reviewable foundation for #391 rather than an early commitment of the provider-neutral model to Cloudflare internals. |
Why
Issue #365 needs the pinned Cloudflare Computer DOFS source to be reviewable and reproducible before any XMD adapter or Workspace behavior depends on it. This is the first, dependency-free layer replacing the monolithic draft #387.
What changes
Before:
The repository did not retain or verify the required DOFS production subset.
After:
The repository contains the required DOFS source from Cloudflare Computer commit
63d363632e558f7e077794988d36ed75017c2a62, its complete MIT notice, deterministic generated JavaScript/declarations, provenance, and a SHA-256 inventory. Normal verification rejects missing, extra, changed, or unreproducible generated files without network access, and refuses regeneration when the installed TypeScript compiler does not match the manifest.How it works
Review guide
Start with:
packages/workflow/vendor/cloudflare-computer-dofs/PROVENANCE.mdThen review:
MANIFEST.jsonand the complete MITLICENSEscripts/verify-cloudflare-dofs.tsscripts/tests/cloudflare-dofs-vendor.test.tsLook carefully at:
packages/workflow/vendor/cloudflare-computer-dofs; future vendor trees inherit no exemption.What must stay true
deno task vendor:verify.tscentrypoint used for emission before it runs.How to verify it
deno task vendor:verifyproves the pinned 104-file inventory reproduces offline with TypeScript 5.9.3.scripts/tests/cloudflare-dofs-vendor.test.tsproves the unchanged snapshot regenerates successfully; compiler mismatch, changed source, changed generated output, missing files, and extra files are all refused.deno task verifypassed all nine applicable commands and confirmed the tracked tree remained unchanged.deno task lint,deno task check,deno task test, anddeno task check:jsrall pass; the Deno suite reports 400 tests / 2,732 steps with zero failures.git diff --check origin/main...HEADpasses.Scope
Included
Intentionally unchanged
<File>, lifecycle, history/fork, Worker Shell, Git, FUSE, subprocess, workerd, GC, or secret-policy behaviorGenerated or mechanical changes
upstream/**is the selected production source copied from Cloudflare Computer commit63d363632e558f7e077794988d36ed75017c2a62.generated/**is deterministic TypeScript 5.9.3 compiler output from those pinned inputs.MANIFEST.jsonrecords every retained file and digest.Risks and limitations
Scope confirmation