Repository navigation
Issue #226: seeded Gateway acceptance test for historical consent and revocation - #236
Merged
KAVentures merged 2 commits intoOct 16, 2026
Merged
Conversation
KAVentures
force-pushed
the
test/issue-226-seeded-gateway-privacy-acceptance
branch
from
October 16, 2026 10:14
a73345e to
d833cd8
Compare
KAVentures
changed the base branch from
main
to
fix/issue226-atomic-history-preview-consent
October 16, 2026 10:14
KAVentures
force-pushed
the
test/issue-226-seeded-gateway-privacy-acceptance
branch
from
October 16, 2026 10:50
d833cd8 to
7deaeec
Compare
KAVentures
changed the base branch from
fix/issue226-atomic-history-preview-consent
to
main
October 16, 2026 10:50
…eway approval flow
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Stack dependency and scope
Merge #237 FIRST. The original #236 independently reimplemented atomic consent (creating a conflicting implementation). I resolved that overlap by rebasing #236 onto #237's reviewed canonical atomic-consent branch. The only file this PR now changes relative to #237 is
tests/test_issue226_gateway_history_e2e.py.This test exercises the real FastAPI Gateway/SQLite handlers using an in-process test transport: one-time enrollment, default-off pre-enrollment history, explicit date-range preview and consent, device-side redaction, actor/organization isolation, remote-revoked 401, source policy change invalidating preview, partial upload requiring reapproval, and idempotent repeated event IDs. It never contacts live providers, shares private data, or enables historical uploads by default.
CI fix: The test used to assert an exception class from ordinary
httpx, but FastAPI's in-process TestClient raises the analogoushttpx2exception. It now asserts the security-relevant HTTP status 401 on revocation instead of the implementation-specific exception class.After #237 lands on main, confirm this PR targets
main, run full CI on the resulting commit and merge only when green. Do not merge #236 before #237 or use this as evidence of a real customer-provider A/B/C evaluation.Retargeted after #239 merged (2026-10-16): The branch is now a single-file commit
7deaeec2on currentmain(8ce18e70), with #237 atomic consent and #239 Discovery exclusions already inherited frommain. PR base ismainand GitHub reports mergeable with one changed file (tests/test_issue226_gateway_history_e2e.py). Previous checks were all green on the earlier stacked branch. Added a new end-to-end regression demonstrating that a completed Discovery Mode study is excluded from explicit historical consent upload even when the user enrolls the Gateway later. Latest heada991e0b4; verify all checks on this head before merging. Remains draft until full merged-baseline CI verification. No production feature gate enabled.