feat(teacher): 连接 Yuxi 老师并提供项目与会话只读工具
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# Task: Connect coding teachers to Yuxi with local project tools
|
||||
|
||||
## Identity
|
||||
|
||||
- Task ID: 20260923-yuxi-teachers-client-53ba33e2
|
||||
- Mode: Feature
|
||||
- Branch: codex/20260923-yuxi-teachers-client-53ba33e2-yuxi-teachers-client
|
||||
- Worktree: D:\Datas\OthersProjects\.codex-worktrees\makelore\20260923-yuxi-teachers-client-53ba33e2
|
||||
- Base commit: 1f2ad3fb3a71b8b35fabb5b319cd3b54b4c2ebbe
|
||||
- Owner: codex
|
||||
- Status: Ready for Integration
|
||||
|
||||
## Scope
|
||||
|
||||
- Implement the accepted Yuxi coding-teacher design across Yuxi runtime, Works Square distribution and MakeLore Main/local context. This record owns the ml repository changes only. User explicitly confirmed student-account billing on 2026-09-23.
|
||||
|
||||
## Intent And Constraints
|
||||
|
||||
- Official check/start/status passed in this isolated managed feature worktree, with matching identity/base/branch. Planning Gate passed after required entry/task/memory/architecture/decision and peer scope reads. Primary checkouts, foreign documents and canonical project memory remain untouched.
|
||||
- Peer task-record scope reads: WS 268, Yuxi 43, MakeLore 105, all readable. Incomplete historical scopes remain unknown; no concrete conflicting dependency found. Yuxi template positioning is supplemented by ARCHITECTURE and current code. WS teacher no-tools text is stale relative to the merged Main read tools.
|
||||
- No subagents without user consent. No production deployment, source push, or real paid model requests. Ordinary personal agents keep creator billing. Teacher guidance remains read-only, user-initiated and bound to the selected local project/Pi conversation; no proactive monitoring or local command execution.
|
||||
- Implementation sequence: establish native cloud client-tool wait/results/continuation with focused unit plus real HTTP/PG/worker evidence; connect published Yuxi teachers to Operations distribution and student entitlement/billing; connect Main context/read dispatch and teacher UI; finish three-end regression, builds, documentation and review. Existing local teacher histories retain a supported read path.
|
||||
|
||||
## Outcome
|
||||
|
||||
- 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.
|
||||
|
||||
## 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.
|
||||
|
||||
## 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.
|
||||
|
||||
## Promotion Candidates
|
||||
|
||||
- Target: accepted teacher/cloud-agent architecture and domain documents. Proposal: Yuxi teacher definition/runtime, WS selection/authorization, Main project/Pi read tools; teacher payer is the student while other personal agents keep creator payer. Evidence: user accepted design/implementation and explicitly selected student billing. Future impact: removes duplicate teacher configuration ownership and changes teacher cloud history boundary. Conflicts: old teacher Main-only/no-cloud-history decision is intentionally superseded by accepted scope; feature task records facts, Integration Gate promotes after delivery. No additional product confirmation needed for the accepted scope.
|
||||
Reference in New Issue
Block a user