Skip to content

feat: eip-5792 batch org creation + expand-role-to-circle#47

Merged
Skanislav merged 2 commits into
devfrom
chore/sepolia-deploy
Apr 16, 2026
Merged

feat: eip-5792 batch org creation + expand-role-to-circle#47
Skanislav merged 2 commits into
devfrom
chore/sepolia-deploy

Conversation

@Skanislav

Copy link
Copy Markdown
Contributor

Summary

  • EIP-5792 batch org creation: MeetingComponentsFactory.deploy slimmed to (subname, orgFactory) — resolves roleRegistry/govToken internally via getOrganizationBySubname, eliminating the orgId prediction race. New useSendTransaction.sendBatch tries wallet_sendCalls, falls back to sequential. useDeployOrganization now batches createOrganization + meetingComponentsFactory.deploy in one wallet prompt.
  • ExpandRoleToCircle governance action: new ChangeType.ExpandRoleToCircle (12) + bool isCircle on Role struct + RoleRegistry.expandToCircle(roleId) + MeetingFactory dispatch branch. Wired in the UI as "Expand role to circle" option in the governance proposal wizard.
  • Tests: 2 new Foundry tests (happy path + revert), 20 new vitest encoder unit tests, E2E Journey 6 (governance proposal lifecycle + expand-to-circle + double-expand revert).

Test plan

  • Foundry: 95/95 pass (forge test)
  • Vitest: 46/46 pass (pnpm vitest run)
  • Type-check: clean across all packages (turbo run check-types)
  • Lint: 0 errors (pre-existing warnings only)
  • E2E: run pnpm --filter hola-modern test:e2e against local Anvil
  • Smoke test: create org from UI, verify wallet shows single 5792 batch (or two prompts for non-5792 wallets)
  • Smoke test: open governance meeting, propose "Expand role to circle", adopt, verify role renders as circle

🤖 Generated with Claude Code

Skanislav and others added 2 commits April 16, 2026 09:47
Slim MeetingComponentsFactory.deploy to (subname, orgFactory) — resolves
roleRegistry/govToken internally via getOrganizationBySubname, enabling
race-free batching with createOrganization via wallet_sendCalls.

Add useSendTransaction.sendBatch (EIP-5792 with sequential fallback) and
wire useDeployOrganization to batch org + meeting components in one prompt.

Add ExpandRoleToCircle (ChangeType 12) to HolacracyTypes, bool isCircle
to Role struct, expandToCircle on RoleRegistry, and the MeetingFactory
dispatch branch. Wire encoder + UI option in GovernanceMeetingRoom.

Tests: 95/95 Foundry, 46/46 vitest, E2E Journey 6 (governance lifecycle).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ory) ABI

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Skanislav Skanislav merged commit 758f92b into dev Apr 16, 2026
6 checks passed
@Skanislav Skanislav deleted the chore/sepolia-deploy branch April 16, 2026 09:27
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