Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
167 commits
Select commit Hold shift + click to select a range
91c1907
Design release binary attestation
prk-Jr Oct 9, 2026
c58aa77
Tighten release attestation verification and deployment contracts
prk-Jr Oct 9, 2026
fd5cc4d
Require reproducible release builds and operator replay
prk-Jr Oct 9, 2026
712f355
Extend release attestation contracts to all server adapters
prk-Jr Oct 9, 2026
7f6056b
Merge branch 'main' into spec/1235-release-attestation
aram356 Oct 9, 2026
24a8a71
Resolve release attestation review findings
prk-Jr Oct 12, 2026
d29812c
Merge branch 'main' into spec/1235-release-attestation
prk-Jr Oct 12, 2026
a42fe6b
Merge branch 'main' into spec/1235-release-attestation
aram356 Oct 12, 2026
44c5b56
Merge branch 'main' into spec/1235-release-attestation
prk-Jr Oct 13, 2026
484d2c0
Plan attested release implementation and integration milestones
prk-Jr Oct 13, 2026
58d2e7a
Close spec-to-plan verification and qualification gaps
prk-Jr Oct 13, 2026
d157766
Keep release spec and implementation on the existing PR
prk-Jr Oct 13, 2026
8a45cc1
Clarify release implementation prerequisites
prk-Jr Oct 13, 2026
1cfca13
Add strict release document utilities
prk-Jr Oct 13, 2026
c299409
Reject invalid keys in nested producer arrays
prk-Jr Oct 13, 2026
fbb88d2
Normalize serialization errors and identity fields
prk-Jr Oct 13, 2026
7acdfb3
Record release utility verification and review
prk-Jr Oct 13, 2026
c9076d0
Define fixed release inputs and preflight policy
prk-Jr Oct 13, 2026
31ee073
Require the SPDX 2.3 predicate in release policy
prk-Jr Oct 13, 2026
b89552d
Check discovered test sources and nested Cargo overrides
prk-Jr Oct 13, 2026
7dd91ce
Record preflight verification and review
prk-Jr Oct 13, 2026
bfb6974
Derive immutable release build facts
prk-Jr Oct 13, 2026
2956485
Record immutable build facts verification
prk-Jr Oct 13, 2026
e1606fa
Bind release JS inputs to a checked inventory
prk-Jr Oct 13, 2026
d668129
Record checked JS input verification
prk-Jr Oct 13, 2026
eeb68f9
Record release JS composition evidence
prk-Jr Oct 13, 2026
27080c5
Check all JavaScript validation sources
prk-Jr Oct 13, 2026
c9683ba
Check lifecycle output package ownership
prk-Jr Oct 13, 2026
9684fd8
Bind installed tree modes to opened files
prk-Jr Oct 13, 2026
8c8e9a7
Record JS composition verification and source checks
prk-Jr Oct 13, 2026
2236876
Build and compare shared release JS inputs
prk-Jr Oct 13, 2026
3e7fdc3
Bound release Git acquisition and validate JS inventory sizes
prk-Jr Oct 13, 2026
c27d50f
Record independent JS build verification
prk-Jr Oct 14, 2026
481f8c7
Add release environment qualification checks
prk-Jr Oct 14, 2026
7c8f279
Validate qualification probe phases and numeric floors
prk-Jr Oct 14, 2026
b48b92c
Protect immutable source ancestors in macOS qualification
prk-Jr Oct 14, 2026
54f6c6e
Record local qualification framework verification
prk-Jr Oct 14, 2026
5476b7c
Add confined Rust recipe and executable inspection framework
prk-Jr Oct 14, 2026
9988a56
Correct release runtime configuration and startup gates
prk-Jr Oct 14, 2026
2a2db6d
Bind release boundary imports to the source-owned module
prk-Jr Oct 14, 2026
7abb8e8
Terminate bounded process groups after leader exit
prk-Jr Oct 14, 2026
99d2ec7
Record local Rust recipe verification and integration gates
prk-Jr Oct 14, 2026
6d0efda
Replace Python release tooling and address attestation review
prk-Jr Oct 14, 2026
6a07ccc
Align crate documentation with release build guards
prk-Jr Oct 14, 2026
90a87c3
Define fixed Rust release inputs and preflight policy
prk-Jr Oct 15, 2026
917620d
Authenticate release source and helper closure in preflight
prk-Jr Oct 15, 2026
7450b37
Parse release evidence under embedded consumer policy and bound gh
prk-Jr Oct 15, 2026
8a68537
Harden release source authentication and preflight inputs
prk-Jr Oct 15, 2026
a7d1740
Merge remote-tracking branch 'origin/main' into spec/1235-release-att…
prk-Jr Oct 15, 2026
019d791
Make escaped gh descendant test portable to Linux
prk-Jr Oct 15, 2026
f407fe4
Add bounded release child-process supervision
prk-Jr Oct 15, 2026
9473dde
Avoid secret-bearing redaction test diagnostics
prk-Jr Oct 15, 2026
da3c9ce
Verify official release evidence through the ts CLI
prk-Jr Oct 15, 2026
39f59bb
Gate macOS offline test imports by platform
prk-Jr Oct 15, 2026
39fbf7c
Add guarded producer boundaries and original material verification
prk-Jr Oct 15, 2026
58da0d7
Preserve bounded diagnostics for failed denial probes
prk-Jr Oct 15, 2026
69583d8
Extract authenticated dependency archives into bounded private state
prk-Jr Oct 15, 2026
c9d0b5f
Specify private propagation for recursive read-only mounts
prk-Jr Oct 15, 2026
4473b75
Review lifecycle declarations against authenticated package manifests
prk-Jr Oct 15, 2026
fd7c2d3
Require Git object bodies to match preflight sizes
prk-Jr Oct 15, 2026
67aaa3f
Share bounded Git object verification across source and Cargo policies
prk-Jr Oct 15, 2026
e07944b
Keep boundary sibling fixtures alive until parent cleanup
prk-Jr Oct 15, 2026
4eebe62
Validate pinned consumer verification against real signed fixtures
prk-Jr Oct 15, 2026
2edd46c
Build and compare two fresh offline JavaScript installations
prk-Jr Oct 15, 2026
e2260d4
Support reviewed layouts in locked npm originals
prk-Jr Oct 15, 2026
cbd9604
Optimize full JavaScript acceptance checks with test safety retained
prk-Jr Oct 15, 2026
1a2c460
Preserve approved source context in collector rejection fixtures
prk-Jr Oct 15, 2026
a439929
Record two fresh JS build acceptance evidence
prk-Jr Oct 15, 2026
60fafa7
Reap escaped macOS sandbox descendants by sandbox instance
prk-Jr Oct 15, 2026
94fabc2
Mark Task 7 complete after macOS escape containment passes CI
prk-Jr Oct 15, 2026
a7ae687
Add closed release recipe planning with checked A/B profiles
prk-Jr Oct 15, 2026
8678c3e
Apply role umasks to confined release commands
prk-Jr Oct 15, 2026
03fa8e5
Prepare confined Cargo execution pieces for release recipes
prk-Jr Oct 15, 2026
2d933b0
Run a confined candidate Cargo build of the Fastly Wasm in Linux CI
prk-Jr Oct 16, 2026
ce50e5d
Install worker-build with its published lockfile
prk-Jr Oct 16, 2026
1b23a87
Merge branch 'main' into spec/1235-release-attestation
prk-Jr Oct 16, 2026
efa34f7
Record the first confined candidate Cargo build evidence
prk-Jr Oct 16, 2026
d472aaa
Compare Fastly A and B builds byte for byte with remapped paths
prk-Jr Oct 16, 2026
26045fd
Name recipe build roles Canonical and Reproduction
prk-Jr Oct 16, 2026
f0511dc
Record Fastly canonical and reproduction byte equality evidence
prk-Jr Oct 16, 2026
4cc5700
Gate final Fastly bytes on Wasm validation and a Viceroy request
prk-Jr Oct 16, 2026
7bc57a1
Record Fastly final-byte runtime gate evidence
prk-Jr Oct 16, 2026
bf3057d
Normalize vendored Git manifests in the producer
prk-Jr Oct 16, 2026
be3e16d
Record producer-normalized manifest evidence
prk-Jr Oct 16, 2026
10167c6
Add confined Linux CLI candidate recipe and startup evidence
prk-Jr Oct 16, 2026
b4fd6b1
Build the Linux candidate probe inside the GNU baseline
prk-Jr Oct 16, 2026
e813dbf
Acknowledge container creation before starting confined processes
prk-Jr Oct 16, 2026
3fc1ca8
Report bounded final-byte context for rejected build paths
prk-Jr Oct 16, 2026
d75c5ea
Confine GNU build storage and enforce bound artifact paths
prk-Jr Oct 16, 2026
639596d
Keep release fixtures inside owned build storage
prk-Jr Oct 16, 2026
0299c3a
Merge main into release attestation branch
prk-Jr Oct 16, 2026
ac32b75
Record successful Linux CLI candidate validation
prk-Jr Oct 16, 2026
8fbee5a
Disable background Git maintenance in source fixtures
prk-Jr Oct 16, 2026
4c523cc
Merge branch 'main' into spec/1235-release-attestation
prk-Jr Oct 19, 2026
8510fde
Format documentation proposal scripts with the docs Prettier config
prk-Jr Oct 19, 2026
c78185b
Prepare Apple CLI candidate recipes for macOS boundaries
prk-Jr Oct 19, 2026
edf4697
Exercise Apple CLI candidates on native macOS runners
prk-Jr Oct 19, 2026
84f1b58
Isolate Darwin Cargo from ambient OpenSSL configuration
prk-Jr Oct 19, 2026
8a63be8
Merge branch 'main' into spec/1235-release-attestation
prk-Jr Oct 19, 2026
9867d8f
Update Darwin plan environment regression expectations
prk-Jr Oct 19, 2026
4176b81
Capture confined Cargo unit observations for candidate recipes
prk-Jr Oct 19, 2026
76fd76c
Hide optional macOS OpenSSL configuration from confined Cargo
prk-Jr Oct 19, 2026
850d203
Retain verified Cargo package origins during vendoring
prk-Jr Oct 19, 2026
203c7db
Preserve host dependency identities in Cargo composition metadata
prk-Jr Oct 19, 2026
22d600e
Create fresh source checkouts under canonical temporary paths
prk-Jr Oct 19, 2026
456d150
Merge main Rust CI cache updates into attestation implementation
prk-Jr Oct 19, 2026
6c065ad
Validate candidate release transfers and comparison outcomes
prk-Jr Oct 19, 2026
6bc3dcf
Bind candidate composition to verified source and final artifact bytes
prk-Jr Oct 19, 2026
3fef2c5
Retain candidate tool identities and observed runtime requirements
prk-Jr Oct 19, 2026
a86fa4a
Add private SPDX rendering and observed archive profile tests
prk-Jr Oct 19, 2026
d8fdb26
Retain measured build receipts and correct AWS feature policy
prk-Jr Oct 19, 2026
b99a176
Export checked JS contributors and candidate build receipts
prk-Jr Oct 19, 2026
775696b
Project verified Cargo packages into SPDX components
prk-Jr Oct 19, 2026
df4a6e5
Bind Darwin recipes to detached SDK contents
prk-Jr Oct 19, 2026
b835b27
Bind JavaScript origins and GNU tools to candidate builds
prk-Jr Oct 20, 2026
7bcf93e
Project native and platform evidence and retain Fastly acceptance
prk-Jr Oct 20, 2026
4828557
Accept the documented empty GCC sysroot response
prk-Jr Oct 20, 2026
7be86d9
Retain native startup acceptance and bound artifact transfers
prk-Jr Oct 20, 2026
e5a780d
Record reviewed root-only image helpers by metadata in GNU snapshots
prk-Jr Oct 20, 2026
bfab8ef
Measure the GNU image in a sibling sandbox without the target root
prk-Jr Oct 20, 2026
1719cf1
Assemble a candidate whole-document SPDX for completed builds
prk-Jr Oct 20, 2026
073704c
Check candidate SPDX documents against every real candidate build
prk-Jr Oct 20, 2026
2ed617b
Reconcile release plan and qualification docs with candidate evidence
prk-Jr Oct 20, 2026
0f43d4a
Assemble an unqualified candidate release index
prk-Jr Oct 20, 2026
ba0de39
Merge branch 'main' into spec/1235-release-attestation
prk-Jr Oct 21, 2026
4483e82
Check candidate index entries against every real candidate build
prk-Jr Oct 21, 2026
7d045ac
Measure the Apple clang resources, libLTO and toolchain helpers
prk-Jr Oct 21, 2026
a9994b4
Give the Intel macOS CLI candidate time for its reproduction build
prk-Jr Oct 21, 2026
3e3e309
Defer native candidate reproduction to scheduled runs and cache the p…
prk-Jr Oct 21, 2026
b4c8e0c
Size the ordinary CI confined build wall from hosted Intel timings
prk-Jr Oct 21, 2026
b5bd72f
Document candidate index evidence and native reproduction scheduling
prk-Jr Oct 21, 2026
58fa27d
Document and validate verified-byte Fastly deployment
prk-Jr Oct 21, 2026
4c7b583
Give the JS handoff test fixture time for Darwin bind verification
prk-Jr Oct 21, 2026
7ab7f96
Bind native archive measurements and state GNU coverage gaps
prk-Jr Oct 21, 2026
6ffebbd
Join four real candidate entries across CI jobs into one candidate index
prk-Jr Oct 21, 2026
04be896
Reject unsupported JavaScript SPDX relationships
prk-Jr Oct 21, 2026
d774ee4
Bound each candidate entry download within the transport attempt limit
prk-Jr Oct 21, 2026
dfb60a4
Record Intel candidate gap validation and defer SPDX completeness
prk-Jr Oct 21, 2026
a1388b4
Record the first cross-job four-asset candidate index run
prk-Jr Oct 21, 2026
de52e66
Reject release transfer pairs whose reproduction does not vary
prk-Jr Oct 21, 2026
2b642b5
Add callable release validation without release authority
prk-Jr Oct 21, 2026
ac07047
Reject unqualified candidate releases in consumer verification
prk-Jr Oct 21, 2026
f86dc94
Record the hosted four-asset join, pair checks and consumer candidate…
prk-Jr Oct 21, 2026
f17377a
Derive optional reproduction outcomes from observed jobs and bind run…
prk-Jr Oct 21, 2026
15893ef
Render strict collector build records from producer facts and separat…
prk-Jr Oct 21, 2026
9bd8be2
Add the closed immutable release publication owner against a fake API
prk-Jr Oct 21, 2026
e91d75b
Validate GNU receipts and reject unsupported native licenses
prk-Jr Oct 21, 2026
5a98c18
Collect the producer's sealed composition receipt in the strict colle…
prk-Jr Oct 21, 2026
69f4b6a
Record the collector, invocation, receipt and publication progress in…
prk-Jr Oct 21, 2026
416b43f
Require Cargo build-script execution context evidence
prk-Jr Oct 21, 2026
b6f5d92
Measure the selected Apple TAPI library in candidate evidence
prk-Jr Oct 21, 2026
6d6c630
Record hosted receipt and Apple measurement acceptance
prk-Jr Oct 22, 2026
add479f
Measure the selected Apple toolchain library directory
prk-Jr Oct 22, 2026
7c6de17
Merge main into the release attestation branch
prk-Jr Oct 22, 2026
810862e
Align candidate tool pins with the merged toolchain
prk-Jr Oct 22, 2026
383e2d7
Merge branch 'main' into spec/1235-release-attestation
prk-Jr Oct 22, 2026
0bf4523
Generate authentication fixture keys from kernel randomness
prk-Jr Oct 22, 2026
d4408d2
Read kernel entropy without constant key buffers
prk-Jr Oct 22, 2026
0c67be6
Vendor direct file links from verified Git objects
prk-Jr Oct 22, 2026
7e41dfa
Reject unmeasured JavaScript licenses and align Git fixtures
prk-Jr Oct 22, 2026
5d194d0
Allow exact Cargo registry bookkeeping in vendored builds
prk-Jr Oct 22, 2026
41560cf
Accept the reviewed Fastly asynchronous I/O host module
prk-Jr Oct 22, 2026
9368a57
Reconcile SPDX fixtures and native coverage dependencies
prk-Jr Oct 22, 2026
060172f
Adapt workflow job observations into typed collector inputs
prk-Jr Oct 22, 2026
9999c39
Measure selected Fastly host tools inside the denied boundary
prk-Jr Oct 22, 2026
99a8c58
Keep optional reproductions nonblocking in the workflow adapter
prk-Jr Oct 22, 2026
122b786
Merge remote-tracking branch 'origin/spec/1235-release-attestation' i…
prk-Jr Oct 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/actions/setup-integration-test-env/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ description: Prepare toolchains, Viceroy, and Docker images for integration test

inputs:
origin-port:
description: Fixed origin port baked into the WASM binary for integration tests.
description: Fixed origin port used by integration runtime configuration and container mappings.
required: true
install-viceroy:
description: Install the Viceroy binary used by integration tests.
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/format.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: "Run Format"
name: 'Run Format'

on:
push:
Expand Down Expand Up @@ -61,7 +61,7 @@ jobs:
uses: ./.github/actions/setup-rust
with:
target: wasm32-wasip1,wasm32-unknown-unknown
components: "clippy, rustfmt"
components: 'clippy, rustfmt'
cache-key: cargo-clippy

- name: Run cargo fmt
Expand Down Expand Up @@ -113,14 +113,14 @@ jobs:
- name: Retrieve Node.js version
id: node-version
working-directory: .
run: echo "node-version=$(grep '^nodejs ' .tool-versions | awk '{print $2}')" >> $GITHUB_OUTPUT
run: echo "node-version=$(grep '^nodejs ' .tool-versions | awk '{print $2}')" >> "$GITHUB_OUTPUT"
shell: bash

- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ steps.node-version.outputs.node-version }}
cache: "npm"
cache: 'npm'
cache-dependency-path: crates/trusted-server-js/lib/package.json

- name: Install dependencies
Expand All @@ -144,14 +144,14 @@ jobs:
- name: Retrieve Node.js version
id: node-version
working-directory: .
run: echo "node-version=$(grep '^nodejs ' .tool-versions | awk '{print $2}')" >> $GITHUB_OUTPUT
run: echo "node-version=$(grep '^nodejs ' .tool-versions | awk '{print $2}')" >> "$GITHUB_OUTPUT"
shell: bash

- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ steps.node-version.outputs.node-version }}
cache: "npm"
cache: 'npm'
cache-dependency-path: docs/package.json

- name: Install dependencies
Expand All @@ -167,7 +167,7 @@ jobs:
working-directory: .
run: >-
docs/node_modules/.bin/prettier --config docs/.prettierrc --check
"*.md" ".claude/**/*.md" ".github/**/*.md" "crates/**/*.md" "scripts/**/*.md" "tinybird/**/*.md"
"*.md" ".claude/**/*.md" ".github/**/*.md" "crates/**/*.md" "scripts/**/*.md" "scripts/**/*.mjs" "tinybird/**/*.md"

- name: Build with VitePress (fails on dead links)
run: npm run build
Expand All @@ -180,7 +180,7 @@ jobs:

- name: Retrieve Node.js version
id: node-version
run: echo "node-version=$(grep '^nodejs ' .tool-versions | awk '{print $2}')" >> $GITHUB_OUTPUT
run: echo "node-version=$(grep '^nodejs ' .tool-versions | awk '{print $2}')" >> "$GITHUB_OUTPUT"
shell: bash

- name: Use Node.js
Expand Down
Loading
Loading