Title: [API] setConfiguration/getConfiguration not synced through provider state, task controls unwired (vps2 F5; upstream #982)
Body:
Gap
At the base of record (upstream/main @ 0d937c0) plus the shipped F1-series and F2 heads, the extension API (src/extension/api.ts) is out of sync with the durable per-view state machinery:
- setConfiguration writes through contextProxy.setValues directly with no sidebar/extension-host view-targeting contract (view-local vs global routing is undefined); getConfiguration has no flatten / secret-strip.
- startNewTask has no preserveOpenTabs passthrough (the new-tab editor cleanup always runs).
- The API has no task registry: approveTaskAsk / denyAsk resolve against nothing, and no TaskCreated/TaskCompleted/TaskAborted lifecycle tracking.
- selectTaskFollowupSuggestion is absent (a follow-up suggestion cannot be applied to a task, including the mode-switch-failure path that must still deliver the answer).
- getGlobalState is absent.
Upstream provenance
Fix unit
vps2 F5 of the durable per-view state series (fork tracking issue easonLiangWorldedtech#41). Draft PR: #1557 (branch vps2/f5-api-wiring, stacked on the F2 head aa0f3b1). Tracking ledger: easonLiangWorldedtech#41.
Fix scope (5 files, a+d 557 measured vs the F2 head)
- packages/types/src/api.ts — the two documented doc fixes: the preserveOpenTabs @PARAM JSDoc on startNewTask; the stale setConfiguration JSDoc rewrite (writes target the extension-host (sidebar) view: view-local values pinned to the sidebar's per-view state, global values to the shared ContextProxy). Comment/type-level only.
- src/extension/api.ts — the wiring port (byte-identical to the vps2 CS blob): setConfiguration/getConfiguration through provider state, task registry, approveTaskAsk/denyAsk, selectTaskFollowupSuggestion (mode-switch failure still delivers the answer, logged to the output channel), preserveOpenTabs passthrough, getGlobalState.
- src/extension/tests/api-task-control.spec.ts (new, 320 lines; CS-verbatim + 2 coordinator-added mutation-kill tests).
- src/extension/tests/api-set-configuration.spec.ts (new, 55 lines; CS-verbatim).
- src/extension/tests/api-configuration.spec.ts (new, 38 lines; CS-verbatim).
Parked limitation (documented in the PR, not fixed)
Sidebar-only API targeting (#41 parked item 10, A4 major): the extension API always targets the sidebar/extension-host provider; a per-view API handle is the architectural fix and is out of scope for this series.
Title: [API] setConfiguration/getConfiguration not synced through provider state, task controls unwired (vps2 F5; upstream #982)
Body:
Gap
At the base of record (upstream/main @ 0d937c0) plus the shipped F1-series and F2 heads, the extension API (src/extension/api.ts) is out of sync with the durable per-view state machinery:
Upstream provenance
Fix unit
vps2 F5 of the durable per-view state series (fork tracking issue easonLiangWorldedtech#41). Draft PR: #1557 (branch vps2/f5-api-wiring, stacked on the F2 head aa0f3b1). Tracking ledger: easonLiangWorldedtech#41.
Fix scope (5 files, a+d 557 measured vs the F2 head)
Parked limitation (documented in the PR, not fixed)
Sidebar-only API targeting (#41 parked item 10, A4 major): the extension API always targets the sidebar/extension-host provider; a per-view API handle is the architectural fix and is out of scope for this series.