Skip to content

prioritize prototypes in Community filters - #6980

Merged
AmyShang-alt merged 5 commits into
mainfrom
agent/community-prototype-first
Aug 19, 2026
Merged

prioritize prototypes in Community filters#6980
AmyShang-alt merged 5 commits into
mainfrom
agent/community-prototype-first

Conversation

@Siri-Ray

Copy link
Copy Markdown
Contributor

Why

The Community template gallery currently leads with Slides even though Prototype is the preferred first creation type. This makes the category order inconsistent with the intended prototype-first discovery flow and opens the gallery on slide templates by default.

This PR aligns the Community entry experience with the requested priority while keeping the existing catalogue, filtering, template actions, and routing unchanged.

What users will see

Community now opens with Prototype selected first and Slides immediately second. The initial card grid and subtype filters show prototype templates; selecting Slides continues to show the same slide catalogue and actions as before.

Surface area

  • UI — new page / dialog / panel / menu item / setting / empty state in apps/web or apps/desktop (including Electron menu bar)
  • Keyboard shortcut — new or changed
  • CLI / env var — new od subcommand or flag, new tools-dev / tools-pack flag, or new OD_* env var
  • API / contract — new /api/* endpoint, new SSE event, or changed shape in packages/contracts
  • Extension point — new entry under skills/, design-systems/, design-templates/, or craft/, or change to the skills protocol
  • i18n keys — added new translation keys (see TRANSLATIONS.md for the locale workflow)
  • New top-level dependency — adding any new entry to the root package.json (dependencies or devDependencies); workspace-package package.json files are out of scope. Include a paragraph on what we get vs. what bytes we ship (see CONTRIBUTING.md → Code style)
  • Default behavior change — changes what existing users experience without opting in (default model, default setting, file/SQLite schema, auto-network on startup, auto-install)
  • None — internal refactor, docs, tests, or translation update only

Screenshots

Omitted at the request of the change author. The visible category order and initial active gallery are covered by the focused Community regression test.

Bug fix verification

This is a preference-ordering change rather than a bug fix. The public Community behavior is covered in apps/web/tests/community-view.test.tsx: the new prototype-first assertion failed before the source change and passes on this branch.

Validation

  • pnpm --filter @open-design/web exec vitest run -c vitest.config.ts tests/community-view.test.tsx --maxWorkers=2 — 17 tests passed
  • pnpm --filter @open-design/web typecheck
  • pnpm guard
  • pnpm typecheck
  • git diff --check origin/main...HEAD

@github-actions

github-actions Bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Visual regression review

Head: c72a4e5 · Base: aa5bb5d

0 changed · 49 unchanged · 0 new without baseline · 0 failed

Unchanged cases
Case Main PR Diff
visual-avatar-local-agent-list
0 px (0.00%)
main pr diff
visual-avatar-local-agent-list-panel
0 px (0.00%)
main pr diff
visual-avatar-menu
0 px (0.00%)
main pr diff
visual-avatar-menu-panel
0 px (0.00%)
main pr diff
visual-avatar-open-design-model-picker
0 px (0.00%)
main pr diff
visual-critical-settings
0 px (0.00%)
main pr diff
visual-critical-workspace
0 px (0.00%)
main pr diff
visual-critical-workspace-preview
0 px (0.00%)
main pr diff
visual-design-system-detail
0 px (0.00%)
main pr diff
visual-design-systems
0 px (0.00%)
main pr diff
visual-home
0 px (0.00%)
main pr diff
visual-home-catalog
0 px (0.00%)
main pr diff
visual-home-context-picker
0 px (0.00%)
main pr diff
visual-home-context-picker-popover
0 px (0.00%)
main pr diff
visual-home-plugin-filter
0 px (0.00%)
main pr diff
visual-home-plugin-use-staged
0 px (0.00%)
main pr diff
visual-home-plugin-use-with-query
0 px (0.00%)
main pr diff
visual-home-staged-attachment
0 px (0.00%)
main pr diff
visual-integrations
0 px (0.00%)
main pr diff
visual-integrations-mcp
0 px (0.00%)
main pr diff

Visual diff is advisory only and does not block merging.

Generated-By: looper 0.11.8 (runner=fixer, agent=codex)
@lefarcen
lefarcen requested a review from nettee August 17, 2026 07:13
@lefarcen lefarcen added size/S PR changes 20-100 lines risk/medium Medium risk: regular code changes type/enhancement Enhancement to existing feature labels Aug 17, 2026

@nettee nettee 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.

@Siri-Ray I verified that the Community gallery now orders Prototype before Slides, initializes the Prototype facet, and that the updated regression fixtures preserve explicit Slides coverage for deck-only catalogs. The live PR checks are green across the changed web surface. This is a focused, well-covered improvement to the intended prototype-first discovery flow—nice work!

🔁 Powered by Looper · runner=reviewer · agent=codex · An autonomous AI dev team for your GitHub repos.

@lefarcen lefarcen added the needs-validation Runtime change detected; needs human or /explore agent validation. label Aug 17, 2026
@lefarcen
lefarcen requested a review from ivy-ting August 17, 2026 07:24
@lefarcen

lefarcen commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

🧪 This PR has changes that need a manual QA pass before merge — please hold off self-merging for now; we'll loop QA in once it's merge-ready (and design/product have signed off, where applicable).

@ivy-ting ivy-ting 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.

@Siri-Ray

Thanks for the contribution. I completed QA validation for this PR.

QA found a blocking catalogue fallback regression: when the available catalogue contains Slides but no Prototype templates, Community renders the Slides tab but keeps Prototype as the active type. No tab is active and the card grid is empty until the user manually clicks Slides. A focused regression check reproduces this consistently.

Please fall back to the first available template type when Prototype is absent, and add coverage for a catalogue without Prototype templates.

Conclusion: Not accepted.

Comment thread apps/web/src/components/CommunityView.tsx Outdated
Generated-By: looper 0.11.8 (runner=fixer, agent=codex)
@Siri-Ray

Copy link
Copy Markdown
Contributor Author

Looper fixer round complete8dc65af

  • ✅ Review comment on apps/web/src/components/CommunityView.tsx (@ivy-ting) — thread
    • Derived Community's active type from the available ordered facets, preserving Prototype preference while activating Slides for a Slides-only catalogue. Added focused no-Prototype coverage and removed the modal test's manual Slides-click workaround.

🔁 Powered by Looper · runner=fixer · agent=codex · An autonomous AI dev team for your GitHub repos.

@Siri-Ray Siri-Ray added the backport release/v0.20.0 Backport this fix to release/v0.20.0 label Aug 18, 2026
@AmyShang-alt AmyShang-alt added validated Runtime change validated (via /explore Pass or manual QA). and removed needs-validation Runtime change detected; needs human or /explore agent validation. labels Aug 18, 2026
@AmyShang-alt

Copy link
Copy Markdown
Contributor

@Siri-Ray

Thanks for the contribution. I completed QA validation for the latest head 8dc65af.

QA Acceptance Record

Scope:

  • Prototype-first Community category order and initial selection.
  • Slides selection, subtype reset, and catalogue fallback when Prototype is unavailable.

Scope-to-evidence:

  • Prototype-first default -> verified in the focused Vitest suite and the Electron runtime.
  • Slides flow -> verified by switching facets and confirming the active state, All subtype, and rendered slide cards.
  • Slides-only fallback -> verified by the regression test and an injected Slides-only runtime catalogue.

Verified:

  • community-view.test.tsx: 18/18 passed.
  • @open-design/web typecheck passed.
  • Current GitHub checks are green.

Not verified:

  • Broader low-risk locale and viewport permutations.

Risks / notes:

  • The fallback regression reported against the earlier head is fixed on the latest head.

Conclusion:

  • Accepted.

@AmyShang-alt
AmyShang-alt added this pull request to the merge queue Aug 18, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Aug 18, 2026
@AmyShang-alt
AmyShang-alt enabled auto-merge August 18, 2026 16:31
@AmyShang-alt
AmyShang-alt added this pull request to the merge queue Aug 19, 2026
Merged via the queue into main with commit e711d11 Aug 19, 2026
25 checks passed
@open-design-release-bot

Copy link
Copy Markdown
Contributor

Successfully created backport PR for release/v0.20.0:

open-design-release-bot Bot added a commit that referenced this pull request Aug 19, 2026
* prioritize prototypes in Community filters

* test(web): select slides in modal mapping coverage

Generated-By: looper 0.11.8 (runner=fixer, agent=codex)

* fix(web): fall back to an available Community facet

Generated-By: looper 0.11.8 (runner=fixer, agent=codex)

* test(web): select slides before deck preview assertion

---------


(cherry picked from commit e711d11)

Co-authored-by: Ray Xi <2667192167@qq.com>
Co-authored-by: Amy <1184569493@qq.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport release/v0.20.0 Backport this fix to release/v0.20.0 risk/medium Medium risk: regular code changes size/S PR changes 20-100 lines type/enhancement Enhancement to existing feature validated Runtime change validated (via /explore Pass or manual QA).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants