Skip to content

feat(web-console): replicate notice logs through a hub - #321

Merged
Mearman merged 6 commits into
mainfrom
feat/replicate-notices
Oct 1, 2026
Merged

Mearman merged 6 commits into
mainfrom
feat/replicate-notices

Conversation

@Mearman

@Mearman Mearman commented Oct 1, 2026 •

Copy link
Copy Markdown
Member

Stage B of #274: notice logs are exchanged with every connected route (a hub with a mailbox as well as a direct peer), so a notice posted while the peer was offline is read after the peer reconnects. Also fixes a DM's own-notice verification and redelivers the first epoch key until acknowledged. Closes #274. Live announcement over a hub is tracked in #322.

@Mearman
Mearman marked this pull request as ready for review October 1, 2026 09:50
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
🔒 Security Review ✅ Completed 2026-10-01T13:14:18.255182Z fc45abc Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@Mearman
Mearman enabled auto-merge (rebase) October 1, 2026 09:58
@Mearman
Mearman force-pushed the feat/replicate-notices branch from bce057d to 8974fe0 Compare October 1, 2026 10:14
@Mearman
Mearman marked this pull request as draft October 1, 2026 10:14
auto-merge was automatically disabled October 1, 2026 10:14

Pull request was converted to draft

@Mearman
Mearman marked this pull request as ready for review October 1, 2026 10:14
@Mearman
Mearman enabled auto-merge (rebase) October 1, 2026 13:03
createMeshSession takes the same optional frame hook acceptMeshSession
has, so a caller can receive the core/data replies a hub sends and notice
a fresh connection after a reconnect. sendRoomRekey needs only a session's
sendManageRequest.
…ticipant root policy

A DM member's token is rooted at the other participant, so the strict
root rule rejected the member's own notices when it read its own log.
Notices read from another device still must be rooted at the reader.
One notice wiring now serves the whole console. Own logs are announced to
a hub or peer when it connects and after each post, and the logs of a
conversation's peers are requested from it, so a notice posted while the
peer was offline is read from the hub after the peer reconnects. The DM
first epoch and notice posting work over a hub route as well as a direct
one, and the first epoch key is sent again until the peer has taken it,
so a peer that was offline or had no token yet still receives it. A
message from a peer triggers a pull of its log, notices of restored
conversations are read on load, and a hub connection is one stable object
so closing it drops the conversations' routes through it.
Two consoles connect to a hub with a mailbox directory and no direct
route; one closes, the other posts, and the first reads both notices
after reconnecting on the same storage.
@Mearman
Mearman force-pushed the feat/replicate-notices branch from 8974fe0 to fc45abc Compare October 1, 2026 13:05
@Mearman
Mearman merged commit ce6e8f5 into main Oct 1, 2026
9 checks passed
@Mearman
Mearman deleted the feat/replicate-notices branch October 1, 2026 13:11
@Mearman

Mearman commented Oct 1, 2026

Copy link
Copy Markdown
Member Author

@codex security review

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review

Security review completed. No security issues were found in this pull request.

Reviewed commit: ce6e8f5a0b

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

web-console: replicate durable notices through the hub's mailbox and keep room keys across reloads

1 participant