Skip to content

Add broker-facing IFC sessions - #7497

Open
jmecom wants to merge 3 commits into
jm/buzz-ifc-domainfrom
jm/buzz-ifc-session-api
Open

Add broker-facing IFC sessions#7497
jmecom wants to merge 3 commits into
jm/buzz-ifc-domainfrom
jm/buzz-ifc-session-api

Conversation

@jmecom

@jmecom jmecom commented Sep 8, 2026

Copy link
Copy Markdown
Collaborator

Adds IfcSession over the Buzz execution domains in #7349. The broker checks reads with read(resource), non-publishing operations with call(operation), and publications with publish(operation, destination, bytes).

A publication authorization owns the operation, destination label, and serialized request. The sink receives those checked bytes, so an agent cannot change the request while it waits to be sent. Reads validate the audience, retained-state context, and membership epoch; they do not change the session's audience restrictions.

The broker keeps the IFC session for as long as it retains the agent's history or files. The example reuses sessions by domain key, and tests cover unknown-input restrictions surviving reuse, owner-private state staying out of ordinary conversations, and reads staying within one community.

This is library-only. The broker must authenticate facts, check current membership and destination policy, isolate retained state, and execute the complete request that was authorized. Integrity tracking, declassification, and runtime integration are not included.

Stack: #7293 (merged) → #7349 → this PR. Both open branches are rebased onto main at 44c1cc7df.

Checked: formatting, strict Clippy, documentation with warnings denied, 31 unit tests and 7 doctests across buzz-ifc and ifc-core, including frozen-request and compile-fail regressions.

Signed-off-by: Jordan Mecom <jm@squareup.com>
Signed-off-by: Jordan Mecom <jm@squareup.com>
Signed-off-by: Jordan Mecom <jm@squareup.com>
@jmecom
jmecom force-pushed the jm/buzz-ifc-session-api branch from 5070cb5 to fe75084 Compare September 11, 2026 18:10
@jmecom
jmecom marked this pull request as ready for review September 11, 2026 18:10
@jmecom
jmecom requested a review from a team as a code owner September 11, 2026 18:10
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.

1 participant