Align plugin browse cards and filters - #993
Conversation
|
🚨 SLOP COP 🚨 · I am SlopCop. I am reviewing this pull request under the The stack contains #993, #994, #995, #996, #997, #1000, and #1001. All seven pull requests are ready for review, and @brsbl has write access. I will run security, code quality, performance, architecture, and end-to-end checks. I will post each phase result when it completes. |
|
🚨 SLOP COP 🚨 · I am SlopCop. I am reviewing this stack under the The stack contains these pull requests, from bottom to top:
I will run security, code quality and architecture, performance, and one end-to-end phase on top PR #1001. I skipped no pull requests. |
|
🚨 SLOP COP 🚨 · Security phase complete. I found no security issue in this PR after I reviewed the complete stack. The changes do not add a trust-boundary change, unsafe render sink, data exposure, dependency risk, or protocol change. |
|
🚨 SLOP COP 🚨 · Performance phase complete. I found no performance or resource-use defects in this pull request. I reviewed it against the final seven-pull-request stack. I checked render work, value stability, filtering, sorting, memoization, requests, subscriptions, and test cost. |
|
🚨 SLOP COP 🚨 · Security phase complete. I found no security or privacy defects in this pull request. I reviewed it against the final seven-pull-request stack. I checked unsafe rendering, injection, links, actions, permissions, data disclosure, configuration, dependencies, and trust boundaries. |
SawyerHood
left a comment
There was a problem hiding this comment.
🚨 SLOP COP 🚨 · review
Review complete.
I found no issues in this pull request after the complete stack lands.
The security, code-quality, architecture, performance, and final review phases found no issue here.
I used a comment-only review. I did not approve or request changes.
SawyerHood
left a comment
There was a problem hiding this comment.
🚨 SLOP COP 🚨 · review
Final comment-only review for #993.
No actionable findings.
The security review found no security or privacy defect. The quality and architecture review found no defect or useful refactor. The performance review found no defect.
I ran the end-to-end attempt only on the top pull request. The shared host did not produce a ready development server.
GitHub CI passed on the latest stack head. The GPT-5.6 review gate approved this review result.
|
🚨 SLOP COP 🚨 · Performance phase complete. I found no material performance issue in this PR after I reviewed the complete stack. The render scope, allocations, bundle inputs, and pagination behavior stay stable. |
| const description = | ||
| entry.description.length > 0 ? entry.description : undefined; | ||
| const descriptionArea = ( | ||
| <span className="block min-h-[2lh]">{description}</span> |
There was a problem hiding this comment.
🚨 slopcop/review — Keep the description height in the shared browse card.
ResourceBrowseCard already owns descriptionLines and its line clamp. This local wrapper aligns only plugin cards.
Add the minimum height beside the shared clamp. This keeps plugin, skill, and template cards consistent.
|
🚨 SLOP COP 🚨 · Code-quality and architecture phase complete. I left one architecture finding. The shared browse card should own the reserved description height. I checked the full stack and checked later PRs before I reported each issue. |
SawyerHood
left a comment
There was a problem hiding this comment.
🚨 SLOP COP 🚨 · review
Review result: one architecture finding.
- Security review found no issue.
- Performance review found no material render, allocation, bundle, or pagination issue.
- Turbo type checks passed for the app, shared UI, Automations, and Docs packages.
- The affected tests passed after clean reruns. The latest Docs suite passed all 57 tests.
The local height wrapper duplicates a concern that the shared browse card already owns. See the inline comment.
## Summary - use the same outlined Download control for installed and uninstalled plugin Browse cards - distinguish installed/uninstall actions with a darker, theme-token-derived green treatment - preserve the uninstall tooltip and confirmation flow ## Verification - `pnpm exec turbo run test --filter=@bb/app -- --run src/components/plugin/management/BrowsePluginsTab.test.tsx` (6 tests passed) - `pnpm exec turbo run typecheck --filter=@bb/app` - branch-built desktop app: verified installed and uninstalled states in Default light, Default dark, and Dracula; exercised and canceled the uninstall confirmation ## Stack - Parent: #993 - This PR: plugin Browse installed-action styling
90f50c6
into
bb/capability-name-typography-thr_cxz5rwzns3
Summary
Verification
pnpm exec turbo run test --filter=@bb/app -- --run src/components/plugin/management/BrowsePluginsTab.test.tsx src/components/plugin/PluginsOverview.test.tsx(16 tests passed)pnpm exec turbo run typecheck --filter=@bb/appStack