Skip to content

feat(bulk-edit): sectioned field list with A–Z sorting in flyout - #46

Merged
fathiraz merged 2 commits into
mainfrom
feat/bulk-edit-fields-divider-sort
Jun 6, 2026
Merged

fathiraz merged 2 commits into
mainfrom
feat/bulk-edit-fields-divider-sort

Conversation

@fathiraz

@fathiraz fathiraz commented Jun 6, 2026

Copy link
Copy Markdown
Owner

Summary

  • Restructure the Edit fields flyout into sectioned lists (Recent, Issue properties, Project fields, Relationships) with A→Z ordering in browse mode
  • Flatten to a single filtered list while searching, with deduplicated relationship rows
  • Add relationship editing via a dedicated flyout pane and shared payload helpers; pass repo context from the bulk actions bar

Changes

Flyout UI (src/features/bulk-edit-flyout.tsx)

  • Replace the single “All fields” list with section headers and sorted partitions
  • Route relationship fields to an operation-first editor pane; reset flyout state on close
  • Support Comment as a first-class issue property label

Field catalog (src/features/bulk-edit-utils.tsx, src/features/bulk-edit-relationship-pane.tsx)

  • Add partitionFieldList, relationship field IDs, and catalog builders for browse vs search modes
  • New relationship pane for parent / blocked-by / blocking bulk updates

Bar integration (src/features/bulk-actions-bar.tsx, src/features/bulk-actions-utils.tsx)

  • Forward repoName into the flyout for metadata and relationship search
  • Add buildRelationshipsPayload for background message dispatch

Tests (src/features/__tests__/bulk-edit-flyout.test.tsx)

  • Cover partition sorting, search dedupe, comment apply gating, and relationship payloads

Test Plan

  • Select items on a project table, open Edit fields, and confirm four sections appear in browse mode with A→Z order under Project fields
  • Confirm Recent shows last edited fields without duplicating them in lower sections
  • Filter fields via search and confirm a flat list (no Recent header) with sensible matches
  • Pick a relationship field, apply an operation, and verify the bulk queue starts
  • Run pnpm vitest run src/features/__tests__/bulk-edit-flyout.test.tsx

Summary by cubic

Reorganized the Edit fields flyout into sectioned lists with A–Z sorting and added a dedicated relationships editor (parent/blocked-by/blocking). Search now shows a single, deduped list, and the apply flow is more robust with state resets, debounced validation, and clearer errors.

  • New Features

    • Browse shows Recent, Issue properties, Project fields, and Relationships with A–Z sorting; Comment is supported.
    • Search flattens to one match list and dedupes relationship rows.
    • Relationships pane: set/clear parent and add/remove/clear blocked-by/blocking, with validation and PR skip notice.
    • Bulk actions bar passes repoName into the flyout; new utils for field catalog/partitioning and buildRelationshipsPayload; tests cover sorting, search dedupe, Comment apply gating, and relationship payloads.
  • Bug Fixes

    • Reset flyout state on prop-driven close to avoid stale selection and queries.
    • Guard relationship preflight with request IDs and debounce; return actionable errors when validation or apply fails.

Written for commit 55228a4. Summary will update on new commits.

Review in cubic

Organize the Edit fields flyout into Recent, Issue properties, Project
fields, and Relationships sections with alphabetical ordering in browse
mode. Flatten to a single match list when searching, wire relationship
editing through a dedicated pane, and extend tests for partitioning and
relationship payloads.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cursor auto review

Found 2 actionable issue(s) on changed lines.

Solid sectioned field list and relationship pane wiring, but two correctness gaps: flyout state is not cleared when the parent closes via Escape/selection clear, and relationship editor state bleeds across field switches.

Generated automatically when this PR was submitted using Cursor CLI with --model auto.

Comment thread src/features/bulk-edit-flyout.tsx
Comment thread src/features/bulk-edit-flyout.tsx

@cubic-dev-ai cubic-dev-ai Bot 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.

4 issues found across 7 files

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

Comment thread src/features/bulk-edit-relationship-pane.tsx
Comment thread src/features/bulk-edit-relationship-pane.tsx Outdated
Comment thread src/features/bulk-edit-flyout.tsx
Comment thread src/features/bulk-edit-flyout.tsx
Reset flyout state on prop-driven close, guard preflight races, and
return actionable errors when relationship validation or apply throws.
@fathiraz
fathiraz merged commit a64fe74 into main Jun 6, 2026
3 checks passed
@fathiraz
fathiraz deleted the feat/bulk-edit-fields-divider-sort branch June 6, 2026 06:06
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.

1 participant