Skip to content

feat(audit-trail): complete capabilities tracking feature - #198

Closed
alexruzenhack wants to merge 1 commit into
feat/audit-trail-rolesfrom
feat/audit-trail-capabilities
Closed

feat(audit-trail): complete capabilities tracking feature#198
alexruzenhack wants to merge 1 commit into
feat/audit-trail-rolesfrom
feat/audit-trail-capabilities

Conversation

@alexruzenhack

@alexruzenhack alexruzenhack commented May 19, 2026

Copy link
Copy Markdown
Contributor

Description of change

This PR finalizes the Audit Trail epic by introducing the Capabilities tracking view.

Key Features and Changes

  • Capabilities View: Added CapabilitiesView.tsx to list active and revoked capabilities held by addresses.
  • Mock Data Integration: Temporarily utilizing mockCapabilities.ts to populate the view. Note: This mock data is used intentionally because the on-chain capability resolution is pending a future SDK release. It allows us to merge and test the UI in the meantime.

Screenshot

[Insert Screenshot of the Capabilities View]

@alexruzenhack
alexruzenhack requested a review from a team as a code owner May 19, 2026 16:31
@vercel

vercel Bot commented May 19, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
rebased-explorer Error Error May 21, 2026 4:58pm
5 Skipped Deployments
Project Deployment Actions Updated (UTC)
apps-ui-kit Ignored Ignored Preview May 21, 2026 4:58pm
iota-evm-bridge Skipped Skipped May 21, 2026 4:58pm
iota-multisig-toolkit Skipped Skipped May 21, 2026 4:58pm
iota-names Skipped Skipped May 21, 2026 4:58pm
wallet-dashboard Skipped Skipped May 21, 2026 4:58pm

Request Review

@vercel
vercel Bot temporarily deployed to Preview – iota-evm-bridge May 19, 2026 16:31 Inactive
@vercel
vercel Bot temporarily deployed to Preview – iota-names May 19, 2026 16:31 Inactive
@vercel
vercel Bot temporarily deployed to Preview – wallet-dashboard May 19, 2026 16:31 Inactive
validUntil: Date | null;
}

export const mockCapabilities: Capability[] = [

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer Comment: // TODO: [Insert Issue #] Replace this mock data with real capability resolution once the SDK supports it.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This must be removed.


return (
<Panel>
<div data-testid="tx">

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Must be data-testid="capabilities".

Comment on lines +121 to +137
<div className="inline-flex content-between items-center gap-x-2">
<Input
type={InputType.Text}
placeholder="Holder Address..."
value={searchTerm}
onChange={(e) => setSearchTerm(e.target.value)}
/>

<div className="flex-shrink-0">
{' '}
{/* This wrapper prevents wrapping */}
<FiltersControl
filterValue={filterValue}
setFilterValue={setFilterValue}
/>
</div>
</div>

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Extract it to filter component.

Comment on lines +161 to +203
{(hasNextPage || (data && data?.pages.length > 1)) && (
<Pagination
hasFirst={currentPageState[filterValue] !== 0}
onNext={() => {
if (isPending || isFetching) {
return;
}

// Make sure we are at the end before fetching another page
if (
data &&
currentPageState[filterValue] === data?.pages.length - 1 &&
!isPending &&
!isFetching
) {
fetchNextPage();
}
dispatch({
type: PageAction.Next,

filterValue,
});
}}
hasNext={
(Boolean(hasNextPage) && Boolean(data?.pages[currentPage])) ||
currentPage < (data?.pages.length ?? 0) - 1
}
hasPrev={currentPageState[filterValue] !== 0}
onPrev={() =>
dispatch({
type: PageAction.Prev,

filterValue,
})
}
onFirst={() =>
dispatch({
type: PageAction.First,
filterValue,
})
}
/>
)}

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Extract to pagination component.

@alexruzenhack
alexruzenhack force-pushed the feat/audit-trail-roles branch from 15bc5c1 to 8828603 Compare May 21, 2026 16:35
@alexruzenhack
alexruzenhack force-pushed the feat/audit-trail-capabilities branch from 79f2be4 to 6b9ebe5 Compare May 21, 2026 16:43
@vercel
vercel Bot temporarily deployed to Preview – iota-names May 21, 2026 16:43 Inactive
@vercel
vercel Bot temporarily deployed to Preview – iota-evm-bridge May 21, 2026 16:43 Inactive
@vercel
vercel Bot temporarily deployed to Preview – iota-multisig-toolkit May 21, 2026 16:43 Inactive
@vercel
vercel Bot temporarily deployed to Preview – wallet-dashboard May 21, 2026 16:43 Inactive
@alexruzenhack
alexruzenhack force-pushed the feat/audit-trail-roles branch from 96e99a1 to 9943bea Compare May 21, 2026 16:54
@alexruzenhack
alexruzenhack force-pushed the feat/audit-trail-capabilities branch from 6b9ebe5 to 30d47a5 Compare May 21, 2026 16:57
@vercel
vercel Bot temporarily deployed to Preview – iota-names May 21, 2026 16:57 Inactive
@vercel
vercel Bot temporarily deployed to Preview – iota-evm-bridge May 21, 2026 16:57 Inactive
@vercel
vercel Bot temporarily deployed to Preview – iota-multisig-toolkit May 21, 2026 16:57 Inactive
@vercel
vercel Bot temporarily deployed to Preview – wallet-dashboard May 21, 2026 16:57 Inactive
queryFn: async () => {
if (!limit) {
// Do some validation at the runtime level for some extra type-safety
// https://tkdodo.eu/blog/react-query-and-type-script#type-safety-with-the-enabled-option

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤔

@github-actions

Copy link
Copy Markdown

This PR is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 14 days.

@github-actions github-actions Bot added the Stale label Jul 21, 2026
@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown

This PR was closed because it has been stalled for 14 days with no activity.

@github-actions github-actions Bot closed this Aug 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants