Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
24de46a
The ad server this repository ships is named for its maintainer
jwrosewell Oct 14, 2026
f2c8dfd
The seam probe is named for its maintainer
jwrosewell Oct 14, 2026
7c7008e
The ads.txt module this repository ships is named for its maintainer
jwrosewell Oct 14, 2026
3e7ce5d
Each module describes the middleware it supplies
jwrosewell Oct 14, 2026
cafb8b4
The ts command asks the builders it links
jwrosewell Oct 14, 2026
2722d96
Each adapter lists the modules it links
jwrosewell Oct 14, 2026
78f039e
Merge 42-consent-decoders into 43-no-modules-crate
jwrosewell Oct 14, 2026
dec1be2
Import the composition functions in the Fastly test module
jwrosewell Oct 15, 2026
39952aa
Merge 42-consent-decoders into 43-no-modules-crate
jwrosewell Oct 15, 2026
3ad3789
Merge 42-consent-decoders into 43-no-modules-crate
jwrosewell Oct 15, 2026
0fdbaf5
The no modules crate design names the adapters, the startup refusal a…
jwrosewell Oct 15, 2026
c6cafb9
The no modules crate design takes its round 2 corrections
jwrosewell Oct 15, 2026
2df3293
Merge 42-consent-decoders into 43-no-modules-crate
jwrosewell Oct 15, 2026
39d98df
Merge 42-consent-decoders into 43-no-modules-crate
jwrosewell Oct 15, 2026
81beae5
Merge 42-consent-decoders into 43-no-modules-crate
jwrosewell Oct 15, 2026
3fff42e
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
6eb3cec
Read the pushed document back with the modules ts links
jwrosewell Oct 16, 2026
aa07b76
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
bdc273e
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
cdcbd94
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
caa8d59
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
bde48fa
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
6449fc5
The rules guide maps `sellers` to `iabtl` and the APS checks test the…
jwrosewell Oct 16, 2026
95e040e
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
e1f0391
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
603df10
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
ad5e4e1
Merge the review fixes into split/43-no-modules-crate
jwrosewell Oct 16, 2026
d78bb39
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
aac177f
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
212382d
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
1a27668
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
5bc6b80
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
0c93d50
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 16, 2026
5c76e8e
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 18, 2026
734c9d5
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 18, 2026
7cff4d6
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 18, 2026
44deb7a
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 18, 2026
7fb7272
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 18, 2026
819af9c
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 18, 2026
3ee03e2
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 19, 2026
3459ee0
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 19, 2026
d65b6fe
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 19, 2026
e7ab4c9
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 19, 2026
008f79d
The DataDome description test names the module by its constant
jwrosewell Oct 19, 2026
d982767
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 28, 2026
96f305f
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 28, 2026
504ee95
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 28, 2026
da07b6a
No adapter and not the ts tool links the loading cache module
jwrosewell Oct 28, 2026
1115feb
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 28, 2026
29d9325
Row 43 takes the final no modules crate design
jwrosewell Oct 28, 2026
9a012d3
The endpoint proof tests select the probe by its new name
jwrosewell Oct 28, 2026
c950b26
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 28, 2026
ef2bc4e
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 28, 2026
55519d1
Row 43's design copy names the ts list's order test
jwrosewell Oct 28, 2026
fe46cde
A CLI test shows ts config validate refusing a loading cache module i…
jwrosewell Oct 28, 2026
2b7c55f
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 28, 2026
9006e87
Row 43's design copy carries the date it is proposed, 2026-10-27
jwrosewell Oct 28, 2026
c60a832
Merge split/42-consent-decoders into split/43-no-modules-crate
jwrosewell Oct 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,10 @@ test_details = "test --target aarch64-apple-darwin"
# native crate needs no change here. Axum (native), Cloudflare
# (wasm32-unknown-unknown), Spin, the CLI (native), and integration-tests
# (native) are simply not listed.
build-fastly = "build -p trusted-server-core -p trusted-server-adapter-fastly -p trusted-server-device-fastly -p trusted-server-geo-fastly -p trusted-server-cmp-osano -p trusted-server-modules -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-sellers -p trusted-server-headers-geo -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-mock -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb -p trusted-server-js -p trusted-server-openrtb --target wasm32-wasip1"
check-fastly = "check -p trusted-server-core -p trusted-server-adapter-fastly -p trusted-server-device-fastly -p trusted-server-geo-fastly -p trusted-server-cmp-osano -p trusted-server-modules -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-sellers -p trusted-server-headers-geo -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-mock -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb -p trusted-server-js -p trusted-server-openrtb --target wasm32-wasip1"
clippy-fastly = "clippy -p trusted-server-core -p trusted-server-adapter-fastly -p trusted-server-device-fastly -p trusted-server-geo-fastly -p trusted-server-cmp-osano -p trusted-server-modules -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-sellers -p trusted-server-headers-geo -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-mock -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb -p trusted-server-js -p trusted-server-openrtb --all-targets --all-features --target wasm32-wasip1 -- -D warnings"
test-fastly = "test -p trusted-server-core -p trusted-server-adapter-fastly -p trusted-server-device-fastly -p trusted-server-geo-fastly -p trusted-server-cmp-osano -p trusted-server-modules -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-sellers -p trusted-server-headers-geo -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-mock -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb -p trusted-server-js -p trusted-server-openrtb --target wasm32-wasip1"
build-fastly = "build -p trusted-server-core -p trusted-server-adapter-fastly -p trusted-server-device-fastly -p trusted-server-geo-fastly -p trusted-server-cmp-osano -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-iabtl -p trusted-server-headers-geo -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-iabtl -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb -p trusted-server-js -p trusted-server-openrtb --target wasm32-wasip1"
check-fastly = "check -p trusted-server-core -p trusted-server-adapter-fastly -p trusted-server-device-fastly -p trusted-server-geo-fastly -p trusted-server-cmp-osano -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-iabtl -p trusted-server-headers-geo -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-iabtl -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb -p trusted-server-js -p trusted-server-openrtb --target wasm32-wasip1"
clippy-fastly = "clippy -p trusted-server-core -p trusted-server-adapter-fastly -p trusted-server-device-fastly -p trusted-server-geo-fastly -p trusted-server-cmp-osano -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-iabtl -p trusted-server-headers-geo -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-iabtl -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb -p trusted-server-js -p trusted-server-openrtb --all-targets --all-features --target wasm32-wasip1 -- -D warnings"
test-fastly = "test -p trusted-server-core -p trusted-server-adapter-fastly -p trusted-server-device-fastly -p trusted-server-geo-fastly -p trusted-server-cmp-osano -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-iabtl -p trusted-server-headers-geo -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-iabtl -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb -p trusted-server-js -p trusted-server-openrtb --target wasm32-wasip1"
# Feature-on counterpart of `test-fastly`. `test-fastly` does NOT pass
# --all-features, so without this the reusable-sandbox code is linted by
# `clippy-fastly` but its tests never execute.
Expand All @@ -40,8 +40,8 @@ test-fastly-reuse = "test -p trusted-server-adapter-fastly --target wasm32-wasip
# run with the Axum adapter in CI.
build-axum = "build -p trusted-server-adapter-axum"
check-axum = "check -p trusted-server-adapter-axum"
clippy-axum = "clippy -p trusted-server-adapter-axum -p trusted-server-permission-signal-gpc -p trusted-server-permission-signal-gpp -p trusted-server-permission-signal-mtm -p trusted-server-permission-signal-tcf -p trusted-server-permission-signal-us-privacy -p trusted-server-cmp-osano -p trusted-server-modules -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-sellers -p trusted-server-headers-geo -p trusted-server-loading-cache-51degrees -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-mock -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb --all-targets --all-features -- -D warnings"
test-axum = "test -p trusted-server-adapter-axum -p trusted-server-permission-signal-gpc -p trusted-server-permission-signal-gpp -p trusted-server-permission-signal-mtm -p trusted-server-permission-signal-tcf -p trusted-server-permission-signal-us-privacy -p trusted-server-cmp-osano -p trusted-server-modules -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-sellers -p trusted-server-headers-geo -p trusted-server-loading-cache-51degrees -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-mock -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb"
clippy-axum = "clippy -p trusted-server-adapter-axum -p trusted-server-permission-signal-gpc -p trusted-server-permission-signal-gpp -p trusted-server-permission-signal-mtm -p trusted-server-permission-signal-tcf -p trusted-server-permission-signal-us-privacy -p trusted-server-cmp-osano -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-iabtl -p trusted-server-headers-geo -p trusted-server-loading-cache-51degrees -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-iabtl -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb --all-targets --all-features -- -D warnings"
test-axum = "test -p trusted-server-adapter-axum -p trusted-server-permission-signal-gpc -p trusted-server-permission-signal-gpp -p trusted-server-permission-signal-mtm -p trusted-server-permission-signal-tcf -p trusted-server-permission-signal-us-privacy -p trusted-server-cmp-osano -p trusted-server-identity-lockr -p trusted-server-audience-permutive -p trusted-server-cmp-sourcepoint -p trusted-server-cmp-didomi -p trusted-server-cmp-inmobi -p trusted-server-ads-txt-iabtl -p trusted-server-headers-geo -p trusted-server-loading-cache-51degrees -p trusted-server-asset-cache-51degrees -p trusted-server-tag-google-tag -p trusted-server-tag-google-tag-manager -p trusted-server-testing-testlight -p trusted-server-framework-nextjs -p trusted-server-ad-tag-google -p trusted-server-bot-protection-datadome -p trusted-server-ad-server-iabtl -p trusted-server-auction-aps -p trusted-server-auction-prebid -p trusted-server-auction-prebid-server -p trusted-server-auction-protocol-openrtb"

# --- Cloudflare adapter (native host + wasm32-unknown-unknown) ---
# Build/check target the WASM runtime (requires the `cloudflare` feature);
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -126,13 +126,13 @@ jobs:
run: |
cargo test --package trusted-server-core --target "$(rustc -vV | sed -n 's/host: //p')"

# The seam-probe fixture crate's own unit tests only run when invoked on
# The seam probe fixture crate's own unit tests only run when invoked on
# the host target, because no adapter alias compiles its test target. Run
# them here so a fault in the seam fixture cannot sit unseen behind a
# green gate set.
- name: Run host-target seam-probe integration tests
- name: Run host-target seam probe integration tests
run: |
cargo test --package trusted-server-integration-seam-probe --target "$(rustc -vV | sed -n 's/host: //p')"
cargo test --package trusted-server-testing-iabtl --target "$(rustc -vV | sed -n 's/host: //p')"

- name: Verify Fastly WASM release build
run: cargo build --package trusted-server-adapter-fastly --release --target wasm32-wasip1
Expand Down
Loading
Loading