Skip to content

feat: add the /principal/invalidate command - #70

Open
pyropy wants to merge 1 commit into
srdjan/feat/iam-principal-fieldfrom
srdjan/feat/iam-principal-invalidate
Open

feat: add the /principal/invalidate command#70
pyropy wants to merge 1 commit into
srdjan/feat/iam-principal-fieldfrom
srdjan/feat/iam-principal-invalidate

Conversation

@pyropy

@pyropy pyropy commented Sep 10, 2026

Copy link
Copy Markdown

Description

Adds the /principal/invalidate command Hilt invokes on Swarf before committing a change to a principal's access. Hilt self-signs it with its own DID as subject, the shape /ucan/revoke uses; Swarf authorizes it from a publisher list. Part of the Forge S3 tenant IAM work (RFC).

Change log

  • New package commands/principal: InvalidateArguments{Tenant, Principal}, Invalidate binding, unit result
  • Generator and generated codecs
  • Tests: codec round-trip; self-signed Invoke, Handler and Unpack

馃 Generated with Claude Code

@pyropy
pyropy added this pull request to stack #71 September 10, 2026 16:10
Hilt tells Swarf that the proofs gateways cached for a principal's access
keys are void, and it does so before it commits the change that voided
them. The command carries the tenant DID and the principal identifier and
returns a unit result. No delegation names a principal, so the invocation
is self-signed and Swarf authorizes it from a publisher list rather than a
proof chain.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@pyropy
pyropy force-pushed the srdjan/feat/iam-principal-invalidate branch from ecc3a1c to 654f2ea Compare September 11, 2026 09:03
@pyropy
pyropy marked this pull request as ready for review September 11, 2026 12:41
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