调度固定流水线
koharu-pipeline 以一页的一个阶段为执行单元:
页面按项目顺序进入。某页检测完成后,其依赖分支立即可运行,不等待整项目检测完毕。
阶段返回语义补丁,应用立即提交、同步画布,并把一次调用的修订合为一个撤销步骤。
驻留与停止
加速器推理采用单准入通道,因为代表性异构推理重叠会争用计算与内存带宽,降低吞吐。纯 CPU 执行可保持各模型独立通道。 模型按需加载并保留复用。驻留管理跟踪常驻和峰值工作内存,预留安全余量,按最近最少使用顺序驱逐空闲模型,并在清理后对一个已学习的内存不足场景重试一次。 停止是协作式的:请求后不启动新阶段,活动原生推理安全返回,未提交结果被丢弃。准备保留帧
koharu-renderer::Renderer 从场景快照和页面 ID 创建不可变 Frame,包含有序图层、实体查找、呈现元数据、依赖、诊断和矢量场景,并准备供浏览器显示与原生回读使用的 koharu-rasterizer 资源包。
译文是唯一可见文字来源。排字、适配关系、字体、图片、可见性和不透明度来自场景;调用方不提供第二套文档模型。
WebGPU、PNG、图层裁切和 PSD 消费相同预备帧。增量复用必须与完整渲染产生相同结果。
浏览器呈现
Tauri CEF WebView 拥有可见表面。React 绘制界面,编译为 WASM 的koharu-canvas 通过 WebGPU 在 HTMLCanvasElement 上呈现。相机、变换预览、笔画和取色留在浏览器瞬时状态中,只有完成的编辑跨越 Tauri 命令边界。
1
发布代次
切页先发布代次,再请求轻量清单。
2
获取缺失资源
画布报告缺少的内容 ID,异步接收资源包。
3
激活完整帧
新代次准备完前保留旧页面。过期准备或请求不能覆盖更新代次。
检查最终桌面结果
适配器可用性、设备丢失、尺寸和显示缩放依赖 WebView,因此视觉改动要在最终 Tauri 窗口中检查。原生 PNG 和 PSD 检查覆盖共享回读路径。 debug 构建在http://127.0.0.1:4000 暴露 CEF 调试端点。DOM 和画布生命周期使用语义 CDP 检查;最终像素使用原生窗口捕获。