4.9 KiB
4.9 KiB
Task: Integrate model switch runtime fix into main
Identity
- Task ID: 20260821-integrate-model-switch-fix-8f2d6c41
- Mode: Integration
- Branch: main
- Worktree: D:\Datas\OthersProjects\makelore
- Base commit:
605fef417f - Owner: codex
- Status: Blocked
Scope
- Merge verified source commit
cce7722into localmainwith normal no-fast-forward history. - Integrate the OpenCode Session model wire correction and fresh-runtime local proxy Host API token binding without changing partner Agent hot-add behavior.
- Reconcile the source task's accepted promotion candidate into canonical current state, architecture/data flow, evidence, and the pending real-client smoke commitment.
- Preserve the separately owned untracked packaging task record unchanged.
Intent And Constraints
- Keep page selection and
/models//modelon OpenCode's native per-Session mutation and prevent false runtime-refresh requirements for an owned fresh runtime that already uses the current Main-owned proxy token. - Preserve attached/unknown fail-closed behavior, sticky timeout/partial-write uncertainty, true provider/model shape refreshes, and existing Agent runtime acceptance rules.
- Treat the source feature task record as read-only source history. Do not edit it; keep integration notes in this task record and canonical documents.
- Do not modify or commit
.project-docs/30-worklog/tasks/20260819-package-learning-off-115-9c4d.md. - Merge only into local
main; do not push, package, or claim a rebuilt-client smoke that has not been run.
Outcome
- With explicit user authorization, force-released the blocked legacy
integration ownership
20260820-integrate-remember-password-5d7e3a1cand adopted the known dirtymainworktree without modifying its separately owned untracked packaging task record. - Merged source commit
cce7722into the localmainintegration tree with normal no-fast-forward history and no code conflicts. The source task record remains read-only source history and was not added to the canonical tree. - Integrated the OpenCode 1.18.9 Session model
idwire mapping, current Host API token injection for a fresh managed local-proxy runtime, and the fresh/attached runtime acceptance distinction. Partner Agent hot-add and true provider/runtime refresh semantics are unchanged. - Promoted the accepted source candidate into current state, module ownership, data flow, evidence, and a pending rebuilt-client local smoke commitment.
- Kept the merge local. No push, package, paid-provider request, or claim of a real rebuilt-client smoke was made.
Verification
- Integrated focused OpenCode client/provider config/provider route/OpenCode route suite — 4 files, 171 tests passed.
corepack pnpm run typecheck— passed.corepack pnpm run lint:check— passed with 0 errors and 6 existing warnings in unrelated Renderer files.- The first parallel full-test/build attempt exhausted worker/V8 process resources: Vitest reported one unexpected worker exit after 176 files / 2047 tests passed, and the concurrent Vite process terminated with a V8 fatal check. Rerunning the commands independently resolved the execution failure.
- Sequential
corepack pnpm test— 177 files, 2074 tests passed. - Sequential
corepack pnpm run build:vite— passed for Renderer/Main/Preload/utility; only existing dynamic-import and large-chunk advisory warnings were reported. node ./node_modules/@playwright/test/cli.js test tests/e2e/opencode-multichat-runtime.spec.ts— 1 Electron E2E passed. An earlierpnpm exec playwrightattempt selected the separateplaywrightCLI and failed during collection because the fixture used@playwright/test; no test body ran in that attempt.git diff --check— passed with configured LF-to-CRLF notices only.- Task-aware documentation drift remains blocked solely because the explicitly
adopted, pre-existing untracked
.project-docs/30-worklog/tasks/20260819-package-learning-off-115-9c4d.mdis another task's owned record. It was not modified, staged, or committed. The checker also lists the expected nine merged source code/test files as non-document changes.
Follow-ups
- Build and relaunch a desktop application containing source
cce7722, then repeat page-selector and/modelswitching against the real local OpenCode runtime without a manual runtime restart. This is recorded in canonical commitments and remains outside this source-only integration. - Resolve the project-docs drift-check handling for the explicitly adopted pre-existing foreign task record before marking this integration complete or releasing its ownership. Do not delete, edit, move, or commit that record as part of this integration.
Promotion Candidates
- Applied the source task's Session model wire and fresh-runtime local-proxy token candidate; none remain pending for this integration.