fix(cmd-panel): call api.initialize + migrate setKey/getKey to set/get (Cat 1)
Cat 1 of the v1-removal smoke regression analysis (docs/v1-removal-smoke-regressions.md).
When peek://ext/cmd/panel.html was given a tile-preload token in Phase 3.11b, app/cmd/panel.js was never updated for the Phase 4 strict settings API:
- never called await api.initialize(), so tokenValid stayed false and every api.settings/api.subscribe/api.publish call rejected or no-op-d.
- used api.settings.setKey(k, v) which Phase 4 removed and now throws.
- used api.settings.get() with no arg, which returned the whole settings blob in v1 but is no longer supported - the strict API requires a key.
Result: panel crashed during init, waitForPanelCommandsLoaded timed out, and all cmd-panel-dependent tests failed (14 tests across Cmd Palette, External URL Opening via cmd, tags page widget, Command Chaining, list-notes chains, Edit param mode, and api.commands.flush/batched).
Changes (panel.js only):
- Add await api.initialize() immediately after const api = window.app so the surface token is validated before any settings/subscribe call.
- Replace 5 api.settings.setKey(K, V) calls with api.settings.set(K, V).
- Refactor loadAdaptiveData() to fetch each key (adaptiveVersion, adaptiveFeedback, matchCounts) individually via api.settings.get(key) and inspect result.data.
- Refactor the prefs load to use api.settings.get(prefs) and read result.data.showUrlsInResults directly.
No internal logic changes beyond the api shape migration. The commands.flush gap (tests 3956, 4000) is tracked separately in the analysis doc as a preload-side missing method, not panel.js scope.
Validation: yarn test:grep Cmd Palette - test 142 (edit Tab-completion) now passes (was failing before). Test 93 (gallery command) still fails on a later assertion expecting the example extension command to register, likely Cat 3 cascade (cmd/background.js settings API breakage prevents example extension commands from loading).