-
Notifications
You must be signed in to change notification settings - Fork 12
Add the provider documentation set and finish the decomposition #1047
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
jwrosewell
wants to merge
97
commits into
IABTechLab:main
Choose a base branch
from
jwrosewell:split/5-response-hook-docs
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
97 commits
Select commit
Hold shift + click to select a range
b740265
Add a pluggable Edge Cookie provider seam with the built-in HMAC prov…
jwrosewell d2ad2a9
Accept the provider-code envelope on the partner-facing identifier paths
jwrosewell b2623cb
Rename the legacy passphrase migration so CodeQL stops tainting Settings
jwrosewell 918f96c
Stop serving without identity when a selected provider is unavailable
jwrosewell 61b7cf1
Hold the deprecated EC passphrase to the same rules as the new block
jwrosewell 5b01f98
Reject unknown keys in the built-in HMAC provider block
jwrosewell 7424932
Stop rather than run stateless when the hmac block is missing
jwrosewell d6dc848
Restore the missing line continuation in the mint rejection message
jwrosewell 45ec829
Give EdgeCookieProvider its own doc comment back
jwrosewell c4c584c
Delete the unused ec::get_ec_id helper
jwrosewell 5203c2d
Correct the provider module docs about when evidence arrives
jwrosewell e44ff38
Replace the scattered EC provider key strings with a typed selector
jwrosewell afdb7be
Reserve core's own response surface against provider effects
jwrosewell e90b471
Dispatch partner-path identifier checks by provider code
jwrosewell 3b74d74
Let each provider decide whether it needs the client IP
jwrosewell 29a3a7f
State a real retirement condition for the legacy bare-identifier reader
jwrosewell cb62786
Key identity-graph reads and write-backs by the canonical form
jwrosewell fe23dcc
Egress only an Edge Cookie identifier the provider recognizes
jwrosewell e3ba579
Record the cluster-count gap the identifier envelope opens
jwrosewell 292df1f
Consume the refused Report in the testlight egress tests
jwrosewell a3a5d57
Drop the request-evidence accessors that have no caller
jwrosewell b70ddc0
Collapse the EC provider selector to statelessness and a named provider
jwrosewell 5da52c8
Accumulate provider response headers instead of replacing the origin's
jwrosewell 67c3b0b
State what a provider switch really does to existing identities
jwrosewell 1f62e1a
Name the design documents rather than their paths in doc comments
jwrosewell c7464bc
Restore the line continuations missed in the neighbouring files
jwrosewell ef81e88
Correct the two provider doc comments the earlier pass missed
jwrosewell acb416f
Stop a provider code from panicking when a vendor builds one at run time
jwrosewell 8eb0a9b
Refuse two Edge Cookie providers claiming the same name
jwrosewell f2b1825
Build the internal header list from the Edge Cookie response headers
jwrosewell 52e2692
Resolve the Edge Cookie provider once per request instead of twice
jwrosewell 1c7df60
Load Spin settings from the config store instead of a baked template
jwrosewell 3234092
Stop exposing an inbound Edge Cookie identifier nothing has vouched for
jwrosewell 1df8bf7
Keep the whole request-evidence interface
jwrosewell 8a29373
Documentation and house-style cleanup for the Edge Cookie provider PR
jwrosewell 147a37b
Name the caching reason accurately in the reserved-header rejection
jwrosewell 7dda9dd
Collapse Edge Cookie provider injection to a single seam
jwrosewell c16c99d
Remove the orphaned no-client-IP test fixture
jwrosewell 99b1acd
Add device and geo provider selection with the host-signal Edge Cooki…
jwrosewell 20fee6a
Omit an unset provider selector from the serialized config
jwrosewell 74047c1
Read the Cloudflare visitor region so US state opt-outs are honored
jwrosewell cf8d098
Reunite the request-info builders with their own documentation
jwrosewell de98934
Documentation and house-style cleanup for the device and geo provider PR
jwrosewell d3b4b06
Drop the unused HeaderMap import from the device tests
jwrosewell dcdb493
Give each vendor crate a visible maintainers declaration
jwrosewell 8bb5987
Log the jurisdiction class rather than the value when EC creation is …
jwrosewell 4ef07d5
Add the permission model with the Privacy Taxonomy vocabulary
jwrosewell 68f67d0
Correct the permission-model docs to what the code does
jwrosewell 4c889b0
Give the remaining test fixtures the now-required default country
jwrosewell bb56ceb
Say which geo lookups can reach the requires-signal floor, and prove it
jwrosewell 8adbb06
Scope the permission-gating claim to the provider it is true of
jwrosewell f446393
State that evidence is not rationed and use is
jwrosewell 292352a
Name the IAB Tech Lab Privacy Taxonomy as the source of the vocabulary
jwrosewell 625e816
Build the test provider code through the macro that cannot fail
jwrosewell 0dd10fd
Documentation and house-style cleanup for the permission model PR
jwrosewell 1a73fe6
Complete the mint and fingerprint house-style sweep after rebase
jwrosewell c793b23
Document how the resolved permissions reach filters and the page
jwrosewell e759653
Expose the request permission state on the tsjs core API
jwrosewell 5eb8132
Pass the resolved permission state to integration request filters
jwrosewell e56cf0d
Carry the resolved permission state to the page
jwrosewell af386ca
Document the permission rules tree and retire the default country
jwrosewell 84b97c2
Match the guide's jurisdiction values to the policy parser
jwrosewell 7459346
Document jurisdiction as a per-node inherited attribute
jwrosewell 76fe217
Note the unknown jurisdiction on a failed lookup and the DE codes
jwrosewell 4c0758b
Point the GDPR page at the rules tree for jurisdiction assignment
jwrosewell ec86a6f
Add the permission model guide to the site navigation
jwrosewell 1f9b03f
Restructure the permission policy into a tree of places
jwrosewell c681310
Give the integration environment a real place through Viceroy geoloca…
jwrosewell 6f50829
Give the template-cache harness a real place through Viceroy geolocation
jwrosewell e8f0343
Anchor the harness's geo selector uncomment to the whole line
jwrosewell 4ea7757
Repair the harness's geo selector uncomment
jwrosewell 204393b
Model a realistic demo policy in permissions.yaml
jwrosewell f3f64f8
State that no policy ever ships with Trusted Server
jwrosewell 361d934
Move the sample permissions into config/permissions
jwrosewell 187a66a
Add the permissions inspector, driven by the real code as WebAssembly
jwrosewell 069ec9d
Mark the inspector build script executable
jwrosewell 9909f2e
Limit the inspector workflow token to reading contents
jwrosewell aa0bce0
Point the compiled-in rules doc at config/permissions
jwrosewell 15af0ec
Add the client-set Edge Cookie value path
jwrosewell 92a9594
Tidy the client-cycle spec prose and state the no-store rule precisely
jwrosewell a80c8a2
Hold the resolve endpoint to the reserved response-surface contract
jwrosewell dc60823
Accumulate provider response headers on the resolve endpoint too
jwrosewell 73ea970
Build the resolve test provider code through the macro that cannot fail
jwrosewell 5413ccb
Documentation and house-style cleanup for the client-resolve PR
jwrosewell ead75e2
Align the header-accumulation test with the reserved cache-control su…
jwrosewell 678b322
Reach the resolve endpoint's provider through the single seam
jwrosewell ee07418
Authorize the client resolve endpoint by exact origin, and restart th…
jwrosewell e2a7d49
Compare resolve origins by the RFC 6454 same-origin test
jwrosewell 93e3d69
Make the demo page script check its required permission before posting
jwrosewell 3ff6054
Add the provider documentation set and finish the decomposition
jwrosewell 1f6eea4
Correct the documentation set against the code
jwrosewell aba3399
Remove the test fixture and import the evidence rewrite left behind
jwrosewell 72542e3
Put back the check on what a provider is handed with no client IP
jwrosewell e28ffc8
Run the core library tests natively in CI as well as on WebAssembly
jwrosewell 5494e0f
Documentation and house-style cleanup for the response-hook and docs PR
jwrosewell bcc9a5b
Drop the retired default_country from the configuration guide
jwrosewell 158c129
Correct the configuration guide's permissions file location
jwrosewell File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| name: "Permissions Inspector" | ||
|
|
||
| on: | ||
| push: | ||
| branches: [main] | ||
| pull_request: | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| jobs: | ||
| build-inspector-wasm: | ||
| name: build inspector wasm | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - name: Retrieve Rust version | ||
| id: rust-version | ||
| run: echo "rust-version=$(grep -oP 'channel = "\K[^"]+' rust-toolchain.toml)" >> "$GITHUB_OUTPUT" | ||
| - name: Set up Rust toolchain | ||
| uses: actions-rust-lang/setup-rust-toolchain@v1 | ||
| with: | ||
| toolchain: ${{ steps.rust-version.outputs.rust-version }} | ||
| target: wasm32-unknown-unknown | ||
| - name: Build the inspector engine | ||
| run: ./scripts/build-inspector-wasm.sh | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.