Skip to content

feat(jira): adds manual custom-order reordering for Jira Assigned tab - #129

Merged
wgordon17 merged 10 commits into
gordon-code:mainfrom
wgordon17:feat/jira-custom-order
Aug 18, 2026
Merged

feat(jira): adds manual custom-order reordering for Jira Assigned tab#129
wgordon17 merged 10 commits into
gordon-code:mainfrom
wgordon17:feat/jira-custom-order

Conversation

@wgordon17

Copy link
Copy Markdown
Member

Summary

  • Lets users manually rank all their assigned Jira issues into one flat, cross-project priority order via arrow-up/down buttons, persisted client-side in viewState (no server write-back)
  • New jiraCustomOrder array + applyCustomOrder pure ordering helper drive a flat, ungrouped list view (default sort for the tab), with per-row project badges, FLIP-animated reordering, cross-page auto-advance, and a reset button back to custom order from any other sort
  • Went through full plan review/fix/quality-gate cycles both before and after implementation (see hack/plans/main-1786651495-jira-row-reordering.md); closes Let users manually reorder Jira Assigned issues by priority #127

@wgordon17
wgordon17 force-pushed the feat/jira-custom-order branch 2 times, most recently from bb716bd to e07af56 Compare August 18, 2026 17:59
@wgordon17
wgordon17 marked this pull request as ready for review August 18, 2026 18:00
@wgordon17
wgordon17 requested a review from a team August 18, 2026 18:00
Resolves 13 of 14 /pr-review findings on the custom-order feature
(1 correctly determined invalid — SortDropdown's placeholder prop is
the live Kobalte fallback path, not a no-op). Switches the stale
jiraCustomOrder prune guard from result.total (a field the real Jira
Enhanced JQL Search endpoint never returns) to result.nextPageToken.

Implements merge-on-write cross-tab sync in initViewPersistence():
at write time, re-read on-disk state and overlay only the fields this
tab actually changed, instead of blindly overwriting with a stale
full snapshot.

Quality-gate then found and fixed additional issues in the same
mechanism: a debounce bug where onCleanup nested inside createEffect
fired on every recomputation instead of only true disposal, a schema-
validation gap letting unvalidated on-disk localStorage content
persist indefinitely, and a data-preservation edge case for keys
missing from a stale on-disk blob. Adds a genuine two-tab concurrency
test and a live post-mount sortField mode-switch test (via a
lazily-created reactive signal in the test mock).
playwright.config.ts already sets channel: "chrome" on the chromium
project, which resolves to the system's branded Google Chrome via
Playwright's registry — ubuntu-latest ships Chrome/Chromium/Edge/
Firefox preinstalled. The npx playwright install chromium --with-deps
step downloaded a separate Playwright-managed Chromium build that the
config never launches, and its apt-based --with-deps step is pure
network/CPU overhead once you're on channel: "chrome" (the
preinstalled Chrome already carries its own working runtime
dependencies). Removing the step entirely eliminates this dead work
and the associated network-flake exposure it introduced.
@wgordon17
wgordon17 force-pushed the feat/jira-custom-order branch from e07af56 to 4e1f12d Compare August 18, 2026 20:01
@wgordon17
wgordon17 merged commit b8485c8 into gordon-code:main Aug 18, 2026
1 check passed
wgordon17 added a commit that referenced this pull request Aug 19, 2026
…136)

## Summary
- Fixes 14 findings from `/pr-review` on merged PR #135 (title-parsing
pattern ordering, a shared body-fetch helper extraction, a
failure-cooldown mechanism for persistently-failing GraphQL requests)
plus additional gaps found by this session's own `/quality-gate` pass
- Restores always-on `console.debug` diagnostics in the affected files
to match this codebase's dominant logging convention and preserve the
original plan's production-diagnostic strategy
- Opened as a new PR since #135 was merged mid-review; branch rebased
cleanly onto current `main` (including PR #129, Jira row reordering)
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.

Let users manually reorder Jira Assigned issues by priority

1 participant