Skip to content

fix(kanban-dashboard): wire onValueChange on OrchestrationPanel Selects#27893

Merged
teknium1 merged 1 commit into
mainfrom
fix/kanban-dashboard-select-onchange
May 18, 2026
Merged

fix(kanban-dashboard): wire onValueChange on OrchestrationPanel Selects#27893
teknium1 merged 1 commit into
mainfrom
fix/kanban-dashboard-select-onchange

Conversation

@teknium1

@teknium1 teknium1 commented May 18, 2026

Copy link
Copy Markdown
Contributor

Summary

The orchestrator profile and default assignee dropdowns in the kanban dashboard Orchestration panel did nothing on change — popup opened, user picked an option, popup closed, nothing saved. This fixes both.

Root cause

The dashboard SDK's <Select> is a shadcn-style popup that fires onValueChange(value), not native onChange({target:{value}}). plugins/kanban/dashboard/dist/index.js has a selectChangeHandler() helper at L213 with this comment:

"Older plugin code calls onChange({target:{value}}) which silently never fires."

#24547 already fixed three regressions onto the broken pattern (bulk-reassign / workspace-kind / new-task parent). The two OrchestrationPanel selects introduced later in #27572 regressed onto the same pattern and were missed.

Changes

plugins/kanban/dashboard/dist/index.js (2 sites, 8+/12-):

  • OrchestrationPanel orchestrator_profile picker
  • OrchestrationPanel default_assignee picker

Both rewired through the existing selectChangeHandler helper for consistency with the other working Selects in the same file.

Validation

node --check passes. Backend PUT /orchestration was already correct — it just wasn't being called.

Before After
Pick orchestrator profile popup closes, nothing saved PUT /orchestration fires, config.yaml updated, resolved label re-renders
Pick default assignee same as above saves

Reported by Exaario on Discord.

@github-actions

github-actions Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor

🔎 Lint report: fix/kanban-dashboard-select-onchange vs origin/main

ruff

Total: 0 on HEAD, 0 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 0 pre-existing issues carried over.

ty (type checker)

Total: 8787 on HEAD, 8787 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 4617 pre-existing issues carried over.

Diagnostics are surfaced as warnings — this check never fails the build.

@alt-glitch alt-glitch added type/bug Something isn't working P3 Low — cosmetic, nice to have comp/plugins Plugin system and bundled plugins labels May 18, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator

Supersedes #24547 — fixes the same 3 Select sites (bulk-reassign, workspace-kind, parent picker) plus 2 additional OrchestrationPanel selects (orchestrator_profile, default_assignee) added in #27572 that #24547 doesn't cover.

@BoardJames-Bot

Copy link
Copy Markdown

Board James triage pass: the failing test check was cancelled late in the suite (~95% progress); I did not find a branch-local assertion/error in the CI log. While triaging this batch I found a shared kanban-dashboard diagnostics fixture drift and opened #27931 with the central test fix. After #27931 lands, please rebase/rerun checks.

The dashboard SDK's <Select> is a shadcn-style popup that fires
onValueChange(value), not native onChange({target:{value}}). The file
even has a selectChangeHandler() helper at L213 documenting this:
"Older plugin code calls onChange({target:{value}}) which silently
never fires."

#24547 already fixed the bulk-reassign, workspace-kind, and new-task
parent selects. This patch covers the two OrchestrationPanel selects
introduced later in #27572 that regressed onto the same broken pattern:

  - OrchestrationPanel orchestrator_profile picker
  - OrchestrationPanel default_assignee picker

Users opened the popup, picked an option, and the popup closed without
firing a PUT to /orchestration — so the orchestrator profile and
default assignee dropdowns appeared totally inert.

Uses the same selectChangeHandler helper as the other working Selects
in the file for consistency.

Reported by Exaario.
@teknium1 teknium1 force-pushed the fix/kanban-dashboard-select-onchange branch from de14942 to 472a15c Compare May 18, 2026 16:30
@teknium1 teknium1 changed the title fix(kanban-dashboard): wire onValueChange on shadcn Select so dropdowns save fix(kanban-dashboard): wire onValueChange on OrchestrationPanel Selects May 18, 2026
@teknium1 teknium1 merged commit a86d2ad into main May 18, 2026
11 of 12 checks passed
@teknium1 teknium1 deleted the fix/kanban-dashboard-select-onchange branch May 18, 2026 16:31
Lillard01 pushed a commit to Lillard01/hermes-agent that referenced this pull request May 21, 2026
…ts (NousResearch#27893)

The dashboard SDK's <Select> is a shadcn-style popup that fires
onValueChange(value), not native onChange({target:{value}}). The file
even has a selectChangeHandler() helper at L213 documenting this:
"Older plugin code calls onChange({target:{value}}) which silently
never fires."

NousResearch#24547 already fixed the bulk-reassign, workspace-kind, and new-task
parent selects. This patch covers the two OrchestrationPanel selects
introduced later in NousResearch#27572 that regressed onto the same broken pattern:

  - OrchestrationPanel orchestrator_profile picker
  - OrchestrationPanel default_assignee picker

Users opened the popup, picked an option, and the popup closed without
firing a PUT to /orchestration — so the orchestrator profile and
default assignee dropdowns appeared totally inert.

Uses the same selectChangeHandler helper as the other working Selects
in the file for consistency.

Reported by Exaario.
Mucky010 pushed a commit to Mucky010/hermes-agent that referenced this pull request May 24, 2026
…ts (NousResearch#27893)

The dashboard SDK's <Select> is a shadcn-style popup that fires
onValueChange(value), not native onChange({target:{value}}). The file
even has a selectChangeHandler() helper at L213 documenting this:
"Older plugin code calls onChange({target:{value}}) which silently
never fires."

NousResearch#24547 already fixed the bulk-reassign, workspace-kind, and new-task
parent selects. This patch covers the two OrchestrationPanel selects
introduced later in NousResearch#27572 that regressed onto the same broken pattern:

  - OrchestrationPanel orchestrator_profile picker
  - OrchestrationPanel default_assignee picker

Users opened the popup, picked an option, and the popup closed without
firing a PUT to /orchestration — so the orchestrator profile and
default assignee dropdowns appeared totally inert.

Uses the same selectChangeHandler helper as the other working Selects
in the file for consistency.

Reported by Exaario.
gweeteve pushed a commit to gweeteve/hermes-agent that referenced this pull request Jun 2, 2026
…ts (NousResearch#27893)

The dashboard SDK's <Select> is a shadcn-style popup that fires
onValueChange(value), not native onChange({target:{value}}). The file
even has a selectChangeHandler() helper at L213 documenting this:
"Older plugin code calls onChange({target:{value}}) which silently
never fires."

NousResearch#24547 already fixed the bulk-reassign, workspace-kind, and new-task
parent selects. This patch covers the two OrchestrationPanel selects
introduced later in NousResearch#27572 that regressed onto the same broken pattern:

  - OrchestrationPanel orchestrator_profile picker
  - OrchestrationPanel default_assignee picker

Users opened the popup, picked an option, and the popup closed without
firing a PUT to /orchestration — so the orchestrator profile and
default assignee dropdowns appeared totally inert.

Uses the same selectChangeHandler helper as the other working Selects
in the file for consistency.

Reported by Exaario.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/plugins Plugin system and bundled plugins P3 Low — cosmetic, nice to have type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants