diff --git a/.project-docs/30-worklog/tasks/20260929-code-back-entry-33d87a81.md b/.project-docs/30-worklog/tasks/20260929-code-back-entry-33d87a81.md index 45540891..593ac19f 100644 --- a/.project-docs/30-worklog/tasks/20260929-code-back-entry-33d87a81.md +++ b/.project-docs/30-worklog/tasks/20260929-code-back-entry-33d87a81.md @@ -8,7 +8,7 @@ - Worktree: /Users/chillishark/Makelore 麦洛/.codex-worktrees/makelore/20260929-empty-work-merge-39c633d0 - Base commit: a77ddbd6813bb71d490544edfef6e1f35240070f - Owner: codex -- Status: Ready for Integration +- Status: Planning ## Scope @@ -82,3 +82,13 @@ - Reordered only the existing Sidebar brand/control blocks. Updated README and the existing Electron scenario to require brand-first positioning while keeping the same-row/right-edge, narrow-width, collapsed return and configuration-route checks. Typecheck, scoped lint, production build and the complete existing navigation scenario passed (1/1); inspected the actual default-width screenshot. No new behavior or dependency was introduced. - Updated the same live trial to `index-C-y4CmSj.js` / `index-CA1PKQZ_.css` from `code-brand-first-33d87a81/source`, preserving all published overlays. Independent source review confirms Sidebar is the sole product delta; composite typecheck/lint/build passed. Live DOM confirms brand-first at the top of the Sidebar, controls directly below, identical horizontal centers, no overlap and a 13px right inset. Current account, 14 drafts, messages, teacher panel/content and pre-refresh Operation Chat tab were restored and compare equal; all 34 recorded data hashes are unchanged and no alerts remain. Main PID 32583 is unchanged; refresh lease released and task-opened inspector closed. Launch/guidance metadata include ae646f6. No merge, remote push or formal-app changes. + + +## Follow-up: Group Navigation And Personal Projects + +- User confirmed the hierarchy: move the brand/navigation group upward, then Code return, Works Square, a group gap, New Project, My Projects and its list. Brand stays first; collapse remains aligned on the right of Code. Public discovery belongs with navigation; creation belongs directly with personal project management. +- Project Context Loaded / Planning Gate: Passed. Same-task ownership and recorded feature branch/worktree/base are verified. Previously read entry, positioning, decisions, integrated architecture/domain and commitments remain unchanged from 41901ee. Active record and peer scopes reread; the only new peer merged teacher controls into main without touching the app. The current trial remains our combined brand-first source and all overlays. No conflicting navigation work identified. +- Plan: reduce chat-only header/brand top padding, place the existing CommunityLink directly below the Code control row, keep New Project immediately above My Projects with a larger gap between the two groups, preserve other module/config layouts and behavior. Update the existing layout/navigation verification and README, build against the current live source, and refresh the same temporary Renderer/profile. + +- Implemented the public navigation group in the non-scrolling chat header (brand, Code/collapse, Works Square), followed by a 20px group gap before New Project and an 8px projects-section margin. Reduced the chat header top padding from 8px to 0 and the brand padding from 10px/12px to 0/8px, moving its visible content upward while retaining native chrome. Other routes retain their previous ordering/styles. +- Validation: typecheck, changed-file lint, full production build and 26 relevant unit tests passed. The existing Electron navigation scenario passed with brand-at-top, Code/Works adjacency, gap before creation, New Project/My Projects adjacency, 128px no-overflow, unchanged config routes and collapsed return. Inspected screenshot; independent source review passed. Composite live-source build also passed and differs only in Sidebar and scoped classroom CSS. diff --git a/README.md b/README.md index 8aded260..4e5e03dc 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ Makelore 是一个面向软件、视觉创作、智能机器人与个人云智 - macOS 窗口按钮:红色关闭当前窗口,全屏时先退出全屏再关闭;黄色最小化,绿色保留原生缩放/全屏行为。关窗后应用和进行中的后台任务继续运行,点击 Dock、托盘或菜单可重新打开窗口;`Cmd+Q` 退出应用。 - 桌面文本右键菜单:主 Renderer 窗口由 Electron Main 提供原生“剪切、复制、粘贴、全选”操作;菜单只在可编辑区域或已有文本选择时出现,普通空白区域不显示,也不向 Renderer 暴露剪贴板 IPC。 - AI 编程核心对话运行时:Electron Main 按需启动一个长驻 Pi Agent Server,同一进程内为每条 Conversation 建立独立的 Runtime、Session、凭证视图、扩展上下文和 JSONL 通道,同时复用 Pi 模块与进程启动成本;Server 异常退出时所有旧通道统一失效,下一次恢复只重启一个 Server。正式包中的 Agent Server 从明确传入的 `resources/pi-runtime` 根定位依赖清单与包入口,不从脚本所在目录或应用 `node_modules` 猜测解析。Renderer 不直接启动或调用 Pi,也不读取其 wire 类型。项目与 Conversation 元数据先从本地读取,选中对话后才按需准备对应逻辑线程;输入框不等待运行时准备完成。同一助手工具批次中,会取得项目写租约的 `bash`、`edit`、`write` 与动态产品工具按顺序执行,避免批次在命令启动前自锁;纯只读工具仍可并行。子 Agent 仍使用独立的短生命周期进程,以保留并发配额、故障和写入边界;macOS 上两类后台进程都使用 Electron 自带的 Helper,不在 Dock 中创建额外应用图标。 -- AI 编程默认入口:进入 Code 后保持在 `/chat`。左侧栏最顶部显示麦洛品牌区,其下提供同排导航:左侧“← 编程 Code”返回模块选择首页,右侧收起侧栏;窄侧栏仅省略溢出的文字,折叠后的展开入口保持在标题栏;项目配置及其资源子页不再重复显示此侧栏入口,保留配置页自身的返回操作。尚未选择本地项目时,页面以麦洛 M 标识和居中引导语建立焦点,下方提供独立的“新增项目”主操作以及可横向浏览、直接进入的已有项目卡片;项目创建和进入仍复用侧栏现有流程。已有项目的新 Conversation 在可编辑 Composer 上方沿用同一品牌引导,第一条消息出现后切换为正常时间线。 +- AI 编程默认入口:进入 Code 后保持在 `/chat`。左侧栏压缩顶部留白,最顶部显示麦洛品牌区,其下提供同排导航:左侧“← 编程 Code”返回模块选择首页,右侧收起侧栏;窄侧栏仅省略溢出的文字,折叠后的展开入口保持在标题栏。导航行下方紧接“作品广场”;与其留出分组间距后,依次为“新建项目”“我的项目”和项目列表,将公共导航与个人项目操作分组;项目配置及其资源子页不再重复显示此侧栏入口,保留配置页自身的返回操作。尚未选择本地项目时,页面以麦洛 M 标识和居中引导语建立焦点,下方提供独立的“新增项目”主操作以及可横向浏览、直接进入的已有项目卡片;项目创建和进入仍复用侧栏现有流程。已有项目的新 Conversation 在可编辑 Composer 上方沿用同一品牌引导,第一条消息出现后切换为正常时间线。 - AI 编程历史与配额反馈:Pi 上下文压缩不删除用户可见的 active-branch 历史,压缩摘要保持 Main-private;Renderer 首次渲染最近 120 个节点,向上滚动时按 100 个节点追加更早内容并保持阅读位置。Main 精确识别 `token_point_balance_exhausted` / `词元点数余额不足`,只向 Renderer 投影不可重试的稳定配额错误和安全中文提示,重开会话后仍可见且不暴露上游原始错误或 request id。 - 账号词元点数:左下角账户菜单显示本人永久余额和预占,提供充值、充值订单与分页收支记录。真正新注册赠送 100 点,1 元充值 50 点,永久有效;旧账户不补送,旧会员/订阅/周额度/重置卡入口已移除。家长充值始终进入自己的钱包,青少年可查看自己的精确余额;使用他人共享钱包时仅显示可用状态,不显示付款人的余额或记录。Main 持有凭据并转发充值请求;付款结果未知时沿用原请求并核查原订单,只有服务端确认才显示到账。扫码信息缺失时可到网页账户页继续原订单,付款来源也由网页账户页管理。需配套部署 Works Square 永久点数 API 与 0094 迁移;本地模拟验收不代表真实支付通过。 - 桌面性能策略:应用窗口使用不透明浅色表面并默认保留硬件合成;仅在显式安全模式或短时间内重复 GPU 进程崩溃时启用软件渲染,并把故障原因保存在用户数据目录。启动关键路径只创建本地应用壳,认证、代理、同步、更新和遥测在首帧后延迟初始化;开发版可通过 `app:performance` 快照观察 GPU、进程、WebContents、事件循环与 Renderer Long Task 聚合指标。 diff --git a/src/components/layout/Sidebar.tsx b/src/components/layout/Sidebar.tsx index 0d046c6c..c5228655 100644 --- a/src/components/layout/Sidebar.tsx +++ b/src/components/layout/Sidebar.tsx @@ -409,6 +409,7 @@ export function Sidebar({ {!isProjectConfigPage &&