You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Portal's /$name/roles/ and /resolver/$address/roles/ views want per-role-assignment history: "which events granted/revoked/modified this specific role entry for this user". Today the closest Omnigraph query is Permission.events(where: { selector }), which returns all role-mutation events for a permission and requires the client to filter by account + resource.
Proposal
Expose event history directly on the PermissionsUser (role assignment) entity:
Returns the chronological list of events (grants, revokes, role-bitmap mutations) that produced the current state of this specific (user, resource, permission) tuple.
Notes
Indexer already has the association at ingest time — PermissionsUser is the aggregation of those events.
Equivalent today: Permission.events(where: { selector }) filtered client-side by account == user. The proposal collapses that.
Useful for both name roles (registry) and resolver permissions.
Consumers
apps/portal//$name/roles/ (per-user role change log)
Problem
Portal's
/$name/roles/and/resolver/$address/roles/views want per-role-assignment history: "which events granted/revoked/modified this specific role entry for this user". Today the closest Omnigraph query isPermission.events(where: { selector }), which returns all role-mutation events for a permission and requires the client to filter by account + resource.Proposal
Expose event history directly on the
PermissionsUser(role assignment) entity:Returns the chronological list of events (grants, revokes, role-bitmap mutations) that produced the current state of this specific
(user, resource, permission)tuple.Notes
PermissionsUseris the aggregation of those events.Permission.events(where: { selector })filtered client-side byaccount == user. The proposal collapses that.Consumers
apps/portal//$name/roles/(per-user role change log)apps/portal//resolver/$address/roles/(same)