Repository navigation
Conversation
There was a problem hiding this comment.
Copilot wasn't able to review any files in this pull request. Check if the Files changed in this pull request are included in default exclusions.
Co-authored-by: sirpy <671095+sirpy@users.noreply.github.com>
Co-authored-by: sirpy <671095+sirpy@users.noreply.github.com>
sirpy
left a comment
There was a problem hiding this comment.
- import only {version} from package.json instead of the whole file
- add tests to verify version text exists in the ui
|
There was a problem hiding this comment.
🟡 Changes recommended
Composite widgets render duplicate labels, and required Storybook and screenshot evidence is incomplete.
13 open findings
Add claim theme version label assertion and screenshot · New Add GoodData version label assertion and screenshot · New Duplicate version label in governance onboarding · New Duplicate version label in embedded claim view · New Add Storybook and Playwright coverage for shared UI primitive · New Normal-flow row increases widget layout height · New Add tracked screenshot for AI credits smoke test · New Add tracked screenshot for citizen claim smoke test · New Add tracked screenshot for GoodReserve smoke test · New Add tracked screenshot for governance widget smoke test · New Add tracked screenshot for staking migration smoke test · New Add tracked screenshot for streaming widget smoke test · New Add tracked screenshot for Superfluid campaign smoke test · New
🧠 Review effort: Balanced
| defaultTheme={defaultTheme} | ||
| > | ||
| <ClaimInner /> | ||
| <WidgetVersion version={version} /> |
| <Route path="*" element={<UnknownDashboardPage />} /> | ||
| </Routes> | ||
| </BrowserRouter> | ||
| <WidgetVersion version={version} /> |
| ) : ( | ||
| <DefaultGovernanceWidgetContent adapterInput={adapterInput} testId={testId} /> | ||
| )} | ||
| <WidgetVersion version={version} /> |
There was a problem hiding this comment.
Removed the label and unused imports from GovernanceOnboardingWidget in 51d0273. GovernanceWidget retains its package-version label; existing onboarding QA now displays exactly one v0.1.0 row.
| /> | ||
| </Card> | ||
| <ToastContainer /> | ||
| <WidgetVersion version={version} /> |
There was a problem hiding this comment.
Both labels are intentional per the focused follow-up: each widget package displays its own version even when embedded. CitizenClaim retains v0.2.1 and Superfluid Campaign retains v0.1.6. Desktop/mobile light/dark embedded-claim screenshots in 51d0273 confirm both rows sit below their respective content without overlapping.
| * It sits in normal flow below the widget content (right-aligned) so it never | ||
| * overlaps or shifts the widget layout. | ||
| */ | ||
| export function WidgetVersion({ version, testId = 'widget-version' }: WidgetVersionProps) { |
|
|
||
| test('GoodReserveWidget displays its package version', async ({ page }) => { | ||
| await page.goto('/iframe.html?id=widgets-goodreservewidget--interactive&viewMode=story') | ||
| await expect(page.getByTestId('widget-version')).toHaveText(`v${version}`, { timeout: 20_000 }) |
| await page.goto( | ||
| '/iframe.html?id=qa-governancewidget-runtime-fixtures--disconnected-dashboard&viewMode=story', | ||
| ) | ||
| await expect(page.getByTestId('widget-version')).toHaveText(`v${version}`, { timeout: 20_000 }) |
| await page.goto( | ||
| '/iframe.html?id=qa-stakingmigrationwidget-runtime-fixtures--ready&viewMode=story', | ||
| ) | ||
| await expect(page.getByTestId('widget-version')).toHaveText(`v${version}`, { timeout: 20_000 }) |
| await page.goto( | ||
| '/iframe.html?id=qa-streamingwidget-runtime-fixtures--populated-state&viewMode=story', | ||
| ) | ||
| await expect(page.getByTestId('widget-version')).toHaveText(`v${version}`, { timeout: 20_000 }) |
| await page.goto( | ||
| '/iframe.html?id=qa-superfluidcampaignwidget-runtime-fixtures--no-wallet-content&viewMode=story', | ||
| ) | ||
| await expect(page.getByTestId('widget-version')).toHaveText(`v${version}`, { timeout: 20_000 }) |
Focused follow-up for #237
No new automated test coverage, stories or testing infrastructure is required for this patch. |
…idence (#236) Co-authored-by: L03TJ3 <6606028+L03TJ3@users.noreply.github.com>
Addressed in 51d0273: removed the onboarding duplicate, corrected layout wording, and preserved both intentional embedded package labels. Added 36 QA screenshots across all nine packages at 1280×900 and 430×932, including light/dark pairs where existing demos expose them. Versions match package.json; checked rows remain below content without clipping/overlap. AI Credits’ fixture and GoodData’s host are dark-only. Seven existing version tests plus the embedded-claim open/close test, governance build, and edited-file ESLint passed. Full governance lint still reports unrelated existing unused-variable errors. No tests, stories, or infrastructure added. |
There was a problem hiding this comment.
🔵 Needs a closer look
Screenshot evidence is not reproducible by committed tests, two integrations lack assertions, and the new primitive lacks required Storybook coverage.
12 open findings
Add Storybook and Playwright coverage for shared UI primitive Duplicate version label in embedded claim view Duplicate version label in governance onboarding Add GoodData version label assertion and screenshot Add claim theme version label assertion and screenshot Add tracked screenshot for Superfluid campaign smoke test Add tracked screenshot for streaming widget smoke test Add tracked screenshot for staking migration smoke test Add tracked screenshot for governance widget smoke test Add tracked screenshot for GoodReserve smoke test Add tracked screenshot for citizen claim smoke test Add tracked screenshot for AI credits smoke test
1 resolved since last review
🧠 Review effort: Balanced


Fixes #236.
Adds a muted, right-aligned
WidgetVersionrow using each widget package’s namedversionimport from its ownpackage.json. The row renders below content in normal flow and adds height. Future-widget instructions document the requirement.Focused follow-up (
51d0273)Only two source files and QA images changed in this follow-up. No automated tests, stories, or testing infrastructure were added or changed.
QA evidence
Chromium; desktop 1280×900, mobile 430×932. All displayed labels matched the package versions below. Measured rows remained below their preceding content, with label bounds inside each row and viewport; no version-row clipping or overlap observed. Governance onboarding has one label. Embedded claim deliberately shows both packages’ labels.
36 screenshots, tracked in the existing per-widget
test-resultsflow. The links below open each package’s evidence folder; latest captures are namedversion-<state>-<desktop|mobile>-<light|dark>.png.v0.1.8v0.2.1v0.1.0v0.1.0v0.1.7v0.1.0v0.1.0v0.1.0-betav0.1.6(plus CitizenClaimv0.2.1when embedded)AI Credits’ existing disconnected fixture and GoodData’s app host hard-code dark presentation; no light-mode coverage is claimed for those demos. CitizenClaim light presentation was checked within the existing Campaign showcase. No demos were modified to expand coverage.
Mobile onboarding: one governance label
Mobile embedded claim: intentional independent versions
Validation
git diff --checkpassed.widgetBoundsin GovernanceWidget andProfileTextAreaFieldin ProfileStepContent); left untouched.