NeoGraph 0.16.0
A C++20 Graph Agent Engine Library — LangGraph for C++
Loading...
Searching...
No Matches
neograph::a2a::CollaborationMailbox Class Referencefinal

Owner-scoped idempotent mailbox. More...

#include <collaboration.h>

Public Member Functions

void accept_link (CollaborationLink link, std::string consent_token)
 Receiver-side consent; a proposed link is not usable before this call.
 
bool authenticates_sender (std::string_view link_id, const CollaborationPeerIdentity &peer) const
 Verify that a transport-authenticated peer is the accepted sender for one link.
 
CollaborationTaskAuthorization authorize_task (std::string_view receiver_program_run_id, const CollaborationPeerIdentity &peer, bool require_cancellation=false) const
 Authorize one peer to read or cancel a Program-backed receiver task.
 
std::optional< CollaborationRecord > get (std::string_view idempotency_key) const
 Unauthorized/missing links return nullopt without disclosing existence.
 
bool permits_artifact (std::string_view link_id, std::string_view artifact_identity) const
 Check the receiver-side artifact attenuation for one accepted link.
 

Detailed Description

Owner-scoped idempotent mailbox.

It is deliberately transport-neutral: the A2A adapter submits an envelope here, then persists serialize_canonical() with the local Program transition boundary before acknowledging the peer.

Definition at line 230 of file collaboration.h.

Member Function Documentation

◆ authenticates_sender()

bool neograph::a2a::CollaborationMailbox::authenticates_sender ( std::string_view  link_id,
const CollaborationPeerIdentity &  peer 
) const

Verify that a transport-authenticated peer is the accepted sender for one link.

Missing, expired, revoked, and mismatched links fail closed.

◆ authorize_task()

CollaborationTaskAuthorization neograph::a2a::CollaborationMailbox::authorize_task ( std::string_view  receiver_program_run_id,
const CollaborationPeerIdentity &  peer,
bool  require_cancellation = false 
) const

Authorize one peer to read or cancel a Program-backed receiver task.

An unrelated legacy task returns NotLinked; linked task authorization never leaks which identity or link check failed.

◆ permits_artifact()

bool neograph::a2a::CollaborationMailbox::permits_artifact ( std::string_view  link_id,
std::string_view  artifact_identity 
) const

Check the receiver-side artifact attenuation for one accepted link.

Missing, revoked, expired, or unauthorized links return false.


The documentation for this class was generated from the following file: