Skip to content

feat(storybook): showcase all GoodWidget widgets with QA fixtures and theme overrides - #253

Open
goodbounties-nanoclaw-agent[bot] wants to merge 1 commit into
mainfrom
feat/gw250-storybook-showcase
Open

goodbounties-nanoclaw-agent[bot] wants to merge 1 commit into
mainfrom
feat/gw250-storybook-showcase

Conversation

@goodbounties-nanoclaw-agent

Copy link
Copy Markdown
Contributor

Closes #252

Summary

Adds the Showcase / Theme overrides / QA three-way story split to the remaining widgets per the plan in #252:

  • CitizenClaimWidget — Theme overrides + env control
  • GoodReserveWidget — split Showcase/QA + Theme overrides
  • GovernanceWidget — Onboarding moved to QA, env control dropped
  • AiCreditsWidget — MockBackend moved to QA + Theme overrides
  • SuperfluidCampaignWidget — API Contracts moved to QA + Theme overrides
  • GoodDataWidget — QA title renamed, Showcase + Theme overrides added

Each widget gets an MDX integrator doc, a deterministic QA fixture set backing its Playwright spec, and (where applicable) a Theme overrides playground scoped to the theme targets the widget actually renders.

Test plan

  • tsc --noEmit clean (only pre-existing baseline errors)
  • eslint clean
  • Full Playwright suite: 253 passed / 1 failed / 1 flaky / 1 skipped — the failure and flake are both AiCreditsWidget appkit connect wallet tests caused by VITE_REOWN_PROJECT_ID not being set in the CI/dev sandbox (pre-existing, unrelated to this change — confirmed zero diff on that spec file vs main)

Note on commit signing

Commits on this branch show as unsigned in this environment — a known, long-standing issue in this org (same symptom previously seen on #148, #179, and #227; root cause not yet pinned down). Per the pattern used on #227, please squash-merge this PR rather than rebase-merge — GitHub signs the resulting squash commit itself at merge time, independent of the source branch's signature state, which satisfies main's "require signed commits" ruleset.

🤖 Generated by goodbounties-nanoclaw-agent

…A fixtures and theme overrides

Adds the Showcase/Theme-overrides/QA three-way story split to
CitizenClaimWidget, GoodReserveWidget, GovernanceWidget, AiCreditsWidget,
SuperfluidCampaignWidget, and GoodDataWidget per issue #252, including
MDX integrator docs and deterministic QA fixtures backing each widget's
Playwright states spec.

Co-Authored-By: Claude <noreply@anthropic.com>

On-Behalf-Of: BountyCoder[onecli] (yaskkeryodtdijpv)

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Several showcased overrides are ineffective, environment switching can retain stale data, and new playgrounds lack required Playwright coverage.

9 open findings
What changed in this PR

Adds consistent Showcase, Theme Overrides, QA, and integrator documentation across the remaining widgets.

Changes:

  • Adds theme playgrounds and widget guides.
  • Reorganizes deterministic QA stories and updates Playwright story IDs.
  • Adds environment and live-connector showcase controls.
File Description
tests/​widgets/​superfluid-campaign-widget/​states.spec.ts Updates QA story IDs.
tests/​widgets/​governance-widget/​onboarding.spec.ts Updates onboarding story IDs.
tests/​widgets/​goodreserve-widget/​states.spec.ts Updates Showcase and QA story IDs.
tests/​widgets/​gooddata-widget/​states.spec.ts Updates QA story IDs.
examples/​storybook/​src/​stories/​superfluid-campaign-widget/​SuperfluidCampaignWidgetThemeOverrides.stories.tsx Adds theme playground.
examples/​storybook/​src/​stories/​superfluid-campaign-widget/​SuperfluidCampaignWidgetApiContracts.stories.tsx Moves API contracts under QA.
examples/​storybook/​src/​stories/​superfluid-campaign-widget/​SuperfluidCampaignWidget.mdx Documents theme overrides.
examples/​storybook/​src/​stories/​helpers/​goodDataWidgetStories.tsx Registers and exposes the live connector.
examples/​storybook/​src/​stories/​helpers/​citizenClaimWidgetStories.tsx Adds environment and initial-tab inputs.
examples/​storybook/​src/​stories/​governance-widget/​GovernanceWidget.mdx Documents environment availability.
examples/​storybook/​src/​stories/​governance-widget/​GovernanceOnboarding.stories.tsx Moves onboarding stories under QA.
examples/​storybook/​src/​stories/​goodreserve-widget/​GoodReserveWidgetThemeOverrides.stories.tsx Adds theme playground.
examples/​storybook/​src/​stories/​goodreserve-widget/​GoodReserveWidgetShowcase.stories.tsx Retains live showcase stories.
examples/​storybook/​src/​stories/​goodreserve-widget/​GoodReserveWidgetQA.stories.tsx Adds deterministic reserve fixtures.
examples/​storybook/​src/​stories/​goodreserve-widget/​GoodReserveWidget.mdx Adds integrator documentation.
examples/​storybook/​src/​stories/​gooddata-widget/​GoodDataWidgetThemeOverrides.stories.tsx Adds theme playground.
examples/​storybook/​src/​stories/​gooddata-widget/​GoodDataWidgetShowcase.stories.tsx Adds live-connector showcase.
examples/​storybook/​src/​stories/​gooddata-widget/​GoodDataWidgetQA.stories.tsx Renames the QA namespace.
examples/​storybook/​src/​stories/​gooddata-widget/​GoodDataWidget.mdx Adds integrator documentation.
examples/​storybook/​src/​stories/​citizen-claim-widget/​CitizenClaimWidgetThemeOverrides.stories.tsx Adds theme playground.
examples/​storybook/​src/​stories/​citizen-claim-widget/​CitizenClaimWidgetShowcase.stories.tsx Adds environment controls.
examples/​storybook/​src/​stories/​citizen-claim-widget/​CitizenClaimWidget.mdx Documents controls and theming.
examples/​storybook/​src/​stories/​ai-credits-widget/​AiCreditsWidgetThemeOverrides.stories.tsx Adds theme playground.
examples/​storybook/​src/​stories/​ai-credits-widget/​AiCreditsWidgetShowcase.stories.tsx Removes the mock fixture from Showcase.
examples/​storybook/​src/​stories/​ai-credits-widget/​AiCreditsWidgetQA.stories.tsx Moves the mock fixture into QA.
examples/​storybook/​src/​stories/​ai-credits-widget/​AiCreditsWidget.mdx Updates showcase and QA guidance.

🧠 Review effort: Balanced


💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +133 to +140
dark_Card: {
background: args.darkCardBackground,
borderColor: args.darkCardBorderColor,
},
light_Card: {
background: args.lightCardBackground,
borderColor: args.lightCardBorderColor,
},
export default meta
type Story = StoryObj<OverridesArgs>

export const Playground: Story = {
export default meta
type Story = StoryObj<OverridesArgs>

export const Playground: Story = {
export default meta
type Story = StoryObj<OverridesArgs>

export const Playground: Story = {
export default meta
type Story = StoryObj<OverridesArgs>

export const Playground: Story = {
Comment on lines +170 to +174
<GoodReserveWidget
provider={provider}
mockState={reserveWidgetMockStates.idleBuy}
defaultTheme="dark"
themeOverrides={themeOverrides}
<CitizenClaimWidget
provider={provider}
environment="development"
environment={environment}
export default meta
type Story = StoryObj<OverridesArgs>

export const Playground: Story = {
Comment on lines +135 to +139
<li>
<strong>dark_Card / light_Card</strong>: outer widget shell, ActionCard, the
LeaderboardSummary card, and each LeaderboardRow all cascade from this theme —
demonstrated below on the outer shell and ActionCard.
</li>

This branch was successfully deployed

2 active deployments
preview-storybook — 9032a631 Deployed Oct 14, 2026 by goodbounties-nanoclaw-agent[bot] via preview #421
internal — 9032a631 Deployed Oct 14, 2026 by goodbounties-nanoclaw-agent[bot] via authorize-preview #421
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.

[DRAFT][PLAN] Widget showcase in storybook

1 participant