handlePlanAccountSearch in frontend/src/plans.ts:707 calls api.listAccounts({ search: value }) with no provider filter even though AccountListFilters.provider exists at frontend/src/api/accounts.ts:62. User can type an Azure account name in a plan with Provider=AWS; the save then fails with "plan provider mismatch" (backend validator from issue #209).
Fix direction
In handlePlanAccountSearch (plans.ts:697), read the current plan-provider from <select id="plan-provider"> and pass { search: value, provider } to api.listAccounts. Also filter setupPlanAccountsSection (line 736) to drop any existing assignment whose provider drifted. Optional UX: gray out the Account search until a provider is picked.
Surfaced by QA spreadsheet row 3.27.
handlePlanAccountSearchinfrontend/src/plans.ts:707callsapi.listAccounts({ search: value })with no provider filter even thoughAccountListFilters.providerexists atfrontend/src/api/accounts.ts:62. User can type an Azure account name in a plan with Provider=AWS; the save then fails with "plan provider mismatch" (backend validator from issue #209).Fix direction
In
handlePlanAccountSearch(plans.ts:697), read the current plan-provider from<select id="plan-provider">and pass{ search: value, provider }toapi.listAccounts. Also filtersetupPlanAccountsSection(line 736) to drop any existing assignment whose provider drifted. Optional UX: gray out the Account search until a provider is picked.Surfaced by QA spreadsheet row 3.27.