refactor(ui): standardize "Providers" wording across UI and docs#10971
Conversation
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
|
✅ Conflict Markers Resolved All conflict markers have been successfully resolved in this pull request. |
|
✅ All necessary |
🔒 Container Security ScanImage: 📊 Vulnerability Summary
2 package(s) affected
|
Standardization is a behaviour-visible change, not a bug fix; ship it in the next minor instead of patching 1.25.1. Also fill in the actual PR number (#10971). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
-
The Playwright locator on the scans page filters by stale text.
ui/tests/scans/scans-page.ts:23matches'Choose a cloud provider', but this PR renamed the placeholder to'Choose a provider'inselect-scan-provider.tsx(L55, L70). The combobox locator will no longer match and the scans E2E suite will fail at runtime. Please update the filter text to'Choose a provider'. (Cannot anchor inline because line 23 is outside the diff hunk.) -
The
manage_accountpermission was relabeled to "Manage Provider". See the inline comment onui/lib/helper.ts.
Other things that look incomplete relative to the stated scope ("UI strings ... and all callers"):
ui/app/(prowler)/providers/account-groups-content.tsxL60, L63, L130, L132 still render "Create a new account group" / "Edit account group" headings inside the Provider Groups tab.- The tabs component still exports
accountsContent/accountGroupsContentprops andpage.tsxstill references theAccountGroupsContentclass, so the internal API does not match the newPROVIDER_TAB.PROVIDERS/PROVIDER_GROUPSenum. ui/tests/setups/manage-cloud-providers.auth.setup.tsand several Playwright comments still carry the old wording.
Worth considering a temporary redirect from ?tab=accounts to ?tab=providers so existing bookmarks do not break silently after the slug change.
Replace legacy "Cloud Providers" / "Accounts" / "Account Groups" copy with
the canonical "Provider" / "Provider Group" terms aligned with the SDK,
API, and Django models. Also rename PROVIDER_TAB enum keys/values and
URL slug (?tab=accounts → ?tab=providers, ?tab=account-groups → ?tab=provider-groups).
Brand references ("Google Cloud Provider", "AlibabaCloud Provider") and
genuine cloud-account constructs ("AWS account", "Service Account",
"Account ID", "Management Account") are preserved per design D3.
PROWLER-1468
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Original audit was case-sensitive and missed lowercase variants visible in the scan launch flow, empty states, overview filters, and the manage_providers permission description. Replace with 'provider' / 'providers' for consistency. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Standardization is a behaviour-visible change, not a bug fix; ship it in the next minor instead of patching 1.25.1. Also fill in the actual PR number (#10971). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Revert manage_account label rename: it is a distinct RBAC permission
for org/tenant settings (users, billing, RBAC), not provider
management. Keep 'Manage Account' in helper.ts and permissions.ts.
- Fix stale Playwright locator in tests/scans/scans-page.ts:23 that still
filtered the combobox by the old 'Choose a cloud provider' text.
- Rename provider-page-tabs props (accountsContent/accountGroupsContent
-> providersContent/providerGroupsContent), the AccountGroupsContent
component (-> ProviderGroupsContent), and the matching file
(account-groups-content.tsx -> provider-groups-content.tsx) to align
the internal API with PROVIDER_TAB.PROVIDERS / PROVIDER_GROUPS.
- Update Provider Groups tab headings and prose
('Create a new account group' / 'Edit account group' -> 'provider
group').
- Update stale wording in tests/setups/manage-cloud-providers.auth.setup
test description and Playwright comments in tests/providers/providers-
page.ts.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
219e68a to
dce1ee6
Compare
# Conflicts: # ui/CHANGELOG.md
…can list Aligns the Attack Paths scan-list table with the canonical "Provider" wording used across Scans, Resources and Findings tables. The cell already renders provider data (provider_alias / provider_uid via EntityInfo), so the prior "Account" header was the last Provider-synonym column header in the UI. Captured by spec scenario "Cross-page table column header" and tasks §11.4 in the standardize-providers-wording openspec change.
|
@Alan-TheGentleman @jfagoagas Small tweak e1a5e4d |
PR #10939 collapsed the compliance card to an always-stacked column layout and removed `sm:flex-row`, but the existing source assertion test was not updated and started failing in CI on every PR that touched the UI. Update the assertion to reflect the new layout and rename the test case accordingly. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
dd6d08a
Context
The Prowler UI used three different names for the same concept — "Cloud Providers", "Accounts", "Account Groups" — while the SDK, API, and Django models all use Provider / Provider Group. This PR aligns the UI and developer docs with the rest of the platform.
Description
UI strings — sidebar (
menu-list.ts),/providerspage (title, tabs, columns), wizard (provider-wizard-modal*,wizard-stepper.tsx), empty states (no-providers-{added,connected}.tsx), manage-groups (button + row actions + error), cross-page column headers and filters (Scans, Resources, Findings,data-filters.ts), and RBAC labels (lib/helper.ts,lib/permissions.ts):Cloud Providers→ProvidersAccounts/Account Groups→Providers/Provider GroupsCloud Provider(column / wizard / filter) →ProviderManage Cloud Providers→Manage Providers;Manage Account→Manage ProviderInternal contract —
provider-page-tabs.shared.tsand all callers:PROVIDER_TAB.ACCOUNTS/ACCOUNT_GROUPS→PROVIDERS/PROVIDER_GROUPS?tab=accounts→?tab=providers,?tab=account-groups→?tab=provider-groups(deep-link break)Tests — vitest fixtures (
provider-page-tabs.test.tsx,provider-wizard-modal.utils.test.ts,providers/page.test.ts) and Playwright (tests/providers/providers-page.ts,tests/scans/scans-page.ts).Docs —
docs/getting-started/basic-usage/prowler-app.mdx,docs/user-guide/tutorials/prowler-app*.mdx,docs/user-guide/tutorials/prowler-cloud-aws-organizations.mdx, all 16docs/user-guide/providers/*/getting-started-*.mdx,docs/developer-guide/provider.mdx.Preserved: brand titles ("Google Cloud Provider", "Alibaba Cloud Provider"), AWS Organizations terms ("Account ID", "Management Account", "AWS Cloud Account"), GCP "Service Account", and PNG filenames under
docs/images/.Steps to review
cd ui && pnpm install && pnpm run typecheck && pnpm run lint:check && pnpm run test:run— expect 591 tests passing./providers: title, tabs, columns, URL slug on tab switch.Screenshots / Video — UI
Responsive
Checklist
Community Checklist
UI
License
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.