From 3fe98fc56515e882df3cef940b76e7bc8bf7d23d Mon Sep 17 00:00:00 2001 From: brother7 <7brother7@gmail.com> Date: Wed, 23 Sep 2026 10:14:22 +0800 Subject: [PATCH] =?UTF-8?q?docs(teacher):=20=E8=AE=B0=E5=BD=95=E8=A1=A5?= =?UTF-8?q?=E5=85=85=E5=AE=A1=E6=9F=A5=E4=B8=8E=E6=B5=81=E5=BC=8F=E6=B6=88?= =?UTF-8?q?=E6=81=AF=E8=B7=AF=E7=94=B1=E9=81=97=E6=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tasks/20260923-yuxi-teachers-client-53ba33e2.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.project-docs/30-worklog/tasks/20260923-yuxi-teachers-client-53ba33e2.md b/.project-docs/30-worklog/tasks/20260923-yuxi-teachers-client-53ba33e2.md index 76ba1a1e..717a4675 100644 --- a/.project-docs/30-worklog/tasks/20260923-yuxi-teachers-client-53ba33e2.md +++ b/.project-docs/30-worklog/tasks/20260923-yuxi-teachers-client-53ba33e2.md @@ -8,7 +8,7 @@ - Worktree: D:\Datas\OthersProjects\.codex-worktrees\makelore\20260923-yuxi-teachers-client-53ba33e2 - Base commit: 1f2ad3fb3a71b8b35fabb5b319cd3b54b4c2ebbe - Owner: codex -- Status: Ready for Integration +- Status: Planning ## Scope @@ -26,16 +26,19 @@ - Implemented teacher selection for new topics, Main-owned scoped Yuxi sessions/SSE, local project/Pi snapshot binding, complete structured read results and native cloud continuation. Reconnect follows persisted continuation and cursor; original question ID supports cancellation even if submission acknowledgment is lost. - Main enforces existing project read boundaries; frozen public Pi messages and current teacher topic texts can be read by ID. Legacy teacher histories retain their original path. Disabled teacher topics remain readable without borrowing another teacher's availability. Cloud topic headers reflect the selected teacher, including implicit topic creation on first send. - Updated README with runtime, configuration/version, local read, cancellation and billing behavior. Implementation and local evidence complete. The user-authorized fresh read-only reviewer independently reviewed all three repositories and returned PASS with no reproducible defects. Prepared for integration; no merge, push, deployment, installer release or paid-model calls. +- Follow-up review on 2026-09-23 reopened integration readiness: cloud-runner appends every message_delta without routing by the envelope's cloud thread_id. A supported Yuxi teacher using subagents can therefore mix child-agent text into the teacher response, saved history and brought-back draft. The previous review/test set did not exercise this case. No implementation changes were made during this review. ## Verification - Typecheck passed. All 50 relevant tests across coding-teacher, model, read-tools, UI and cloud runner passed. Cloud runner tests use real temporary project files and captured public messages, asserting all result IDs/content, stale-context rejection, saved continuation, lost acknowledgment cancellation and SSE replay/partial final-answer repair. Service integration also validates native Yuxi topics with no local prompt use cloud credentials, local reads and saved cloud request/response rather than the local model loop. - Electron E2E project teacher side chat passed against actual built window with explicit Host API fixtures, including choosing a non-default teacher and bringing its response back to the main draft without submitting. Production Renderer/Main/Preload build passed. Focused ESLint and git diff whitespace checks passed. - Yuxi real HTTP/PG/worker integration separately verifies cloud interruption/continuation; WS verifies student wallet. No real paid provider or deployed three-service topology call. +- A task-local regression probe under ignored node_modules/.cache/teacher-review supplies the real SSE envelope shape emitted by Yuxi ChunkedEventWriter: a child-thread message followed by a parent-thread reply. Command: pnpm exec vitest run --config node_modules/.cache/teacher-review/vitest.config.mjs -t 'keeps child-agent text'. Result: 1 failed / 5 not selected. Expected teacher-only text; actual output contains child text followed by teacher text. This is a confirmed routing defect, not a provider or timing failure. ## Follow-ups - Integrate the three paired task branches together when requested. Deployment, real provider billing, remote MCP and production three-service/one-api topology validation remain a separate release step. Retain task worktrees and branches for that handoff. +- Before integration, use the authoritative cloud thread ID to keep child stream messages out of the main teacher response, and add the reproduced case to the tracked cloud-runner regression suite. Keep cursor advancement for all observed stream events so reconnection does not replay ignored child events. ## Promotion Candidates