-
Notifications
You must be signed in to change notification settings - Fork 0
feat: room encryption keys end-to-end #171
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
Merged
Merged
Changes from all commits
Commits
Show all changes
45 commits
Select commit
Hold shift + click to select a range
ff03a9a
docs(spec): room encryption keys design
claude 75fa131
docs(plan): room encryption keys implementation plan
claude 2e78b60
feat(pkg/subject): ServerRoomKeyGet builder for inter-site key RPC
claude b1948b5
feat(pkg/model): NewKeyVersion, RoomType, RoomKeyGetRequest
claude e8e73f2
feat(pkg/roomkeysender): NatsPublisher adapter; Send accepts RoomKeyE…
claude 231ed0b
feat(pkg/roomkeymetrics): OTel meter instruments for room key operations
claude 8449942
docs(pkg/roomkeystore): package-level doc — versioning, concurrency, …
claude e1ccb03
feat(room-service): RoomKeyStore Set+Rotate methods; generateRoomKeyP…
claude bd72482
feat(room-service): generate key on create; rotate on channel member …
claude 755fd6f
feat(room-worker): wire Valkey keystore and roomkeysender into Handler
claude 9364386
feat(room-worker): consume canonical events; fan out RoomKeyEvent to …
claude ddf851f
test(room-worker): integration tests for key persistence and fan-out
claude 2bc732f
feat(inbox-worker): inter-site key RPC client; Valkey + sender wiring
claude 11d8d5f
feat(inbox-worker): replicate room keypair into local Valkey for cros…
claude 2e941cd
test(room-service,inbox-worker): integration tests for key persistenc…
claude 0bb0c41
docs(client-api): document RoomKeyEvent; wire VALKEY config in worker…
claude 3429f72
fix(integration): repair integration test compilation after API refac…
claude f00ccaa
refactor: drop unnecessary code; unexport sentinels; polish
claude 89f86eb
refactor(inbox-worker): merge duplicate rotateLocalKey + replicateRoo…
claude 441cd53
fix(room-service): skip rotation on org-remove when no subscriptions …
claude 4266a7b
feat: errRoomKeyAbsent sentinel + bounded retries on cross-site RPC
claude b4248dc
fix(integration): update inbox-worker test after fan-out change; skip…
claude 94dcc8f
fix(inbox-worker): replicate origin key version + fail-fast on misconfig
claude 27205f1
fix(room-worker,room-service): NAK on key-path failures + clarify intent
claude 9f7fdf3
docs,test: align with implementation + stronger keypair/sender assert…
claude 7305bb1
fix(room-worker,inbox-worker): require VALKEY_ADDR at startup
claude 15439a1
fix(inbox-worker): idempotent subscription upserts on cross-site replay
claude b45c6e2
test,docs: tighten new assertions + flag stale plan paragraphs
claude c88eaad
test(room-worker): wire stub key deps into integration test handlers
claude c286c5e
fix,docs: address CodeRabbit review findings against 54b938a
claude 71f2863
docs(plan): rewrite stale snippets to match shipped code
claude 48d9953
chore: regenerate stale mocks across repo
claude 4877fba
fix(room-worker): wire keystore stubs into tests ported from main
claude dafefac
docs(client-api): fix stale anchor + add fenced-code language
claude ccec424
docs(client-api): clarify DM vs channel key behavior in §5.1
claude 0b58d12
refactor(inbox-worker): drop cross-site room-key replication
claude 301ed5b
refactor(room-worker): drop unused siteID arg from ListByRoom
claude 14067d0
docs(spec,plan): record removal of cross-site key replication
claude d81f345
refactor: drop dead inter-site room-key RPC handler
claude a916635
refactor(room-key): omit PublicKey from client wire payload
claude 5d1008e
refactor(room-key): move rotation from room-service to room-worker
claude b9a627f
test(room-worker): flip PublicKey assertion to expect empty on wire
claude 94aa94b
refactor,docs: drop dead inbox-worker plumbing + per-section spec sta…
claude 860dad0
docs(spec,plan): fix stream name and clarify actually_deleted skip cases
claude 0057498
fix(room-worker): publish subscription.update before room.key in add-…
claude 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
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.