Add project tags with sidebar filtering and editing#4
Closed
kevinher7 wants to merge 14 commits into
Closed
Conversation
Pass the git user's first name through to branch name generation so branches follow the format <type>/<username>/<slug>, and update the prompt rules to enforce a conventional type prefix (feature, fix, chore, docs, refactor, test). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Read .github/pull_request_template.md from the repository root and pass it through the text generation pipeline so all providers (Claude, Codex, Cursor, OpenCode) instruct the model to follow the project's PR template structure when generating PR body content. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…redundant availability checks Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds a custom Migrator runner that uses set-difference semantics over effect_sql_migrations instead of the stock max-id strategy, plus a banded-id convention (upstream 1..999, downstream-only >= 5000) so a downstream-only migration cannot silently shadow a future upstream migration during merges. Also lands the first downstream migration, 5001_ProjectionTags, which creates the projection_tags table and adds a tags_json column to projection_projects (DEFAULT '[]'). The MigrationsRunner integration test resets all user tables between sibling it.effect blocks because @effect/vitest's `it.layer` builds the layer with `Effect.cached`, sharing the in-memory SQLite across the suite.
* Add tag catalog support to orchestration - Project tag catalog into snapshots and projections - Add tag invariants, persistence, and schema plumbing - Update tests and read models for tag-aware data * Replace sidebar tag chips with dropdown menus - Swap inline tag chips for a compact filter dropdown - Add project tag assignment and tag management actions - Cover new tag toggling logic with tests * Refactor sidebar tag filter into collapsible pills - Replace the tag filter dropdown with inline selectable pills - Add pill context menus for rename and delete actions - Keep clear/new tag actions in the sidebar header * Refactor sidebar section headers and tag filter layout - Reuse a shared header component for sidebar sections - Simplify tag filter pills and align tag/project controls * chore: delete plan.md * Refine tag filter pill styling - Increase tag pill text size for better readability - Add foreground tint to the default unpressed state * Extract sidebar tag-filter UI into focused files - Move TagFilterPills (renamed SidebarTagFilter), the project-tag editor menu (renamed ProjectTagsEditor), and the shared SidebarSectionHeader out of Sidebar.tsx into apps/web/src/components/sidebar/ - Drop now-unused imports from Sidebar.tsx (XIcon, Toggle, Collapsible*, MenuItem, MenuCheckboxItem, cn) - Sidebar.tsx shrinks by ~330 lines; the new components are short, single-purpose, and easy to review on their own No behavior change. Dialog state, store selectors, and command-dispatch handlers stay in Sidebar.tsx; props on the call sites are unchanged. * Flatten sidebar/ subdirectory into components/ Co-locate the sidebar-specific components with their siblings (PlanSidebar, AppSidebarLayout, etc.) so the components/ folder follows the same flat layout used by the rest of the app. - git mv four files out of components/sidebar/ into components/ - Re-anchor relative imports (../../foo -> ../foo, ../ui/x -> ./ui/x) - Update Sidebar.tsx imports to drop the ./sidebar/ path prefix - Remove the now-empty sidebar/ subdirectory * Reformat tag filter components - Rewrap menu and collapsible imports - Tighten component and popup formatting - No behavior change * Use Object.assign for sortable sidebar projects - Preserve project shape while overriding the sortable id - Keep project tag filtering and thread sorting logic unchanged
The symlink target was AGENTS.md\n (10 bytes) instead of AGENTS.md (9 bytes), making it a broken symbolic link. Mirrors upstream pingdotgg#2052, which was inadvertently reverted by pingdotgg#2080.
- Show project tags in the chat header - Wire tag toggling to project meta updates - Share tag-create dialog state between sidebar and chat
- Rehydrate the tag editor target from current sidebar snapshots - Close the editor if the project no longer exists - Keep tag updates using the latest member state
- Pin devcontainer feature versions - Keep local dev environment reproducible
Owner
Author
|
already merged #3 on personal branch |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Testing
bun fmtbun lintbun typecheckbun run test