100 lines
4.9 KiB
Markdown
100 lines
4.9 KiB
Markdown
# 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: 605fef417fe2e7a5d23d4994fbd109cdfb38efcb
|
|
- Owner: codex
|
|
- Status: Blocked
|
|
|
|
## Scope
|
|
|
|
- Merge verified source commit `cce7722` into local `main` with 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` / `/model` on 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-5d7e3a1c` and
|
|
adopted the known dirty `main` worktree without modifying its separately
|
|
owned untracked packaging task record.
|
|
- Merged source commit `cce7722` into the local `main` integration 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 `id` wire 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
|
|
earlier `pnpm exec playwright` attempt selected the separate `playwright` CLI
|
|
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.md`
|
|
is 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 `/model` switching 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.
|