Skip to content

feat: multisig governance, accessible modal, migration & contributor docs (#361 #364 #365 #366) - #453

Merged
devJaja merged 5 commits into
Epta-Node:mainfrom
oomokaro1:feat/multisig-hardening-modal-docs-361-364-365-366
Aug 31, 2026
Merged

feat: multisig governance, accessible modal, migration & contributor docs (#361 #364 #365 #366)#453
devJaja merged 5 commits into
Epta-Node:mainfrom
oomokaro1:feat/multisig-hardening-modal-docs-361-364-365-366

Conversation

@oomokaro1

Copy link
Copy Markdown
Contributor

Closes #366, Closes #365, Closes #364, Closes #361

Type of Change

  • New feature (non-breaking change that adds functionality)
  • Documentation update

Summary

This PR addresses all four assigned issues in a single batch:

  1. Issue Harden error-resolver with governance-gated admin and multisig allowlist operations #366 — Adds multisig governance to the error-resolver contract: signer set, quorum threshold, timelocked propose/approve/execute flow for allowlist changes, and an append-only audit log with events.
  2. Issue Write migration and back-compat guidance for API and event consumers #365 — Creates docs/MIGRATION_GUIDE.md covering API versioning policy, deprecation calendar, event schema migration, and a worked SDK upgrade example.
  3. Issue Add accessible modal/dialog system with focus trap and scroll lock #364 — Refactors AgentDetailModal to use the shared Modal component, gaining focus trap, scroll lock, escape-to-close, and proper ARIA attributes. Also fixes a missing useAgentReputation hook call.
  4. Issue Document the onboarding and day-2 operations for the mobile/frontend contributors #361 — Creates frontend/CONTRIBUTING.md documenting onboarding, commands, project structure, component conventions, data-fetching patterns, and testing expectations.

Motivation / Context

Testing

  • Smart contracts: cargo test -p error-resolver — all 23 tests pass (existing + new multisig tests)
  • Smart contracts: cargo fmt -p error-resolver — formatting verified
  • Frontend: Changes are limited to importing existing Modal and removing duplicate code; verified via code review
  • Documentation: New files reviewed for accuracy and internal link validity

Closes #366, Closes #365, Closes #364, Closes #361

…olver (Epta-Node#366)

- Add multisig signers list and quorum threshold to ErrorResolverContract
- Add pending allowlist operations with timelock (24h default)
- Add approve/execute flow for quorum-checked allowlist changes
- Add append-only audit log with actor, op, and timestamp
- Add new error variants: QuorumNotMet, TimelockNotExpired, AlreadyApproved, OpNotFound, SignerNotFound
- Add tests for full multisig lifecycle: propose, approve, execute, timelock, quorum enforcement
- Emit audit events for all governance operations
…-Node#365)

- Add versioning policy with URL-based versioning and stability guarantees
- Add deprecation calendar with 30-day announcement and 90-day window
- Add event schema migration rules for additive and breaking changes
- Add worked end-to-end example: upgrading SDK integration from v1 to v2
- Reference existing API_REFERENCE.md, events.md, and STORAGE_MIGRATION.md
…nt (Epta-Node#364)

- Replace custom overlay/escape/scroll-lock with shared Modal component
- Modal provides focus trap, escape-to-close, scroll lock, backdrop, aria-modal
- Fix missing useAgentReputation hook call for reputation data
- Remove duplicate overlay, modal, and closeButton CSS (now handled by Modal)
…Epta-Node#361)

- Document quick start, all commands (dev, build, test, test:e2e)
- Document project structure with component directories and conventions
- Document CSS module patterns, naming conventions, data-testid usage
- Document data-fetching hooks (useContractRead, useTransaction, useWalletBalance)
- Document testing patterns with Vitest, Testing Library, and MSW
- Document design tokens, styling approach, and key dependencies
- Link to root CONTRIBUTING.md and AGENTS.md
@drips-wave

drips-wave Bot commented Aug 29, 2026

Copy link
Copy Markdown

@oomokaro1 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@vercel

vercel Bot commented Aug 29, 2026

Copy link
Copy Markdown

@oomokaro1 is attempting to deploy a commit to the Jaja's projects Team on Vercel.

A member of the Team first needs to authorize it.

@devJaja
devJaja merged commit f4b71a0 into Epta-Node:main Aug 31, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment