Skip to content

feat(taip-15): trust connection fields on Connect and Authorize#8

Merged
thomasjsk merged 2 commits into
TransactionAuthorizationProtocol:mainfrom
amnb52:feature/taip15-trust-connection-fields
Jul 2, 2026
Merged

feat(taip-15): trust connection fields on Connect and Authorize#8
thomasjsk merged 2 commits into
TransactionAuthorizationProtocol:mainfrom
amnb52:feature/taip15-trust-connection-fields

Conversation

@amnb52

@amnb52 amnb52 commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Adds the TAIP-15 trust-connection fields from the pending spec revision (TransactionAuthorizationProtocol/TAIPs#53) so consumers stop hand-rolling body structs around the library.

Changes

ConnectBody: new ConnectionTypes (connectionTypes) and Action (action) fields, plus ConnectionType{Transaction,DDQAccess,MutualTrust,Whitelist} and ConnectAction{Establish,Update} constants.
AuthorizeBody: new ApprovedTypes (approvedTypes) field for connection approvals.
NewConnectMessage validates requester/principal/agents/constraints for transactional connections only (connectionTypes absent or containing "transaction"). Trust connections omit them, and the four fields are now omitempty.

Compatibility

Additive for readers: unknown fields were ignored before, the new ones parse now.
Constructor behavior for existing callers is unchanged: a Connect without connectionTypes counts as transactional and keeps the same four required-field checks.
One wire difference for anyone marshaling ConnectBody by hand with nil transactional fields: they serialize as omitted keys instead of explicit nulls.

amnb52 and others added 2 commits July 2, 2026 16:20
Per the pending TAIP-15 revision (TAIPs#53): ConnectBody gains
connectionTypes + action (with ConnectionType*/ConnectAction* constants);
AuthorizeBody gains approvedTypes for connection approvals.

NewConnectMessage validates requester/principal/agents/constraints only
for transactional connections (connectionTypes absent or containing
"transaction") — trust connections (ddq-access, mutual-trust, whitelist)
omit them, so those four fields are now omitempty.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@thomasjsk thomasjsk merged commit 0e21e38 into TransactionAuthorizationProtocol:main Jul 2, 2026
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.

3 participants