── verification ────────────────────────────────────────────────────────────
id: group-enterprise-migration title: x/group requires manual migration to enterprise/group version: v50+ -> v54 description: | The x/group module is NOT supported by the automated v54 migration tool. It has been moved to enterprise/group under a commercial license. If your chain uses x/group you must contact Cosmos Labs to establish a commercial agreement before upgrading.
This spec is intentionally fatal: if x/group imports are detected, the migration tool will halt with a clear error message and not apply any automated changes to group-related code.
Steps required for manual migration:
- Contact Cosmos Labs (https://cosmos.network/enterprise) to obtain a commercial license for enterprise/group.
- Once licensed, follow the enterprise/group migration guide to update your import paths and keeper wiring.
- Re-run the migration tool after removing or updating x/group usage.
upstream_sources:
- docs://upgrading/v0.54
- docs://changelog/v0.54-breaking
depends_on: []
detection: imports: - github.com/cosmos/cosmos-sdk/x/group - cosmossdk.io/x/group - cosmossdk.io/api/cosmos/group patterns: - app.GroupKeeper - groupkeeper.NewKeeper - group.ModuleName
changes:
── imports ──────────────────────────────────────────────────────────────
imports: warnings: - prefix: github.com/cosmos/cosmos-sdk/x/group message: > the group module is not supported by the v54 migration tool. It requires a manual move to enterprise/group. fatal: true
- prefix: cosmossdk.io/x/group
message: >
the group module is not supported by the v54 migration tool.
It requires a manual move to enterprise/group.
fatal: true
- prefix: cosmossdk.io/api/cosmos/group
message: >
the group module is not supported by the v54 migration tool.
It requires a manual move to enterprise/group.
fatal: true
No automated changes. The migration halts before any files are modified.
── verification ────────────────────────────────────────────────────────────
If migration ran successfully (i.e., group was not present), verify it's gone.
verification: must_not_import: - github.com/cosmos/cosmos-sdk/x/group - cosmossdk.io/x/group - cosmossdk.io/api/cosmos/group must_not_contain: - pattern: app.GroupKeeper - pattern: group.ModuleName