Files
makelore/.project-docs/20-architecture/system-overview.md
brother7 2e737dee31
Some checks failed
Electron E2E / Electron E2E (macos-latest) (push) Has been cancelled
Electron E2E / Electron E2E (ubuntu-latest) (push) Has been cancelled
Electron E2E / Electron E2E (windows-latest) (push) Has been cancelled
晋升客户端项目类型文档
2026-08-09 13:41:51 +08:00

33 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# System Overview
## Current Architecture
Makelore 是 Electron 桌面客户端。Renderer 负责项目操作与状态展示Electron Main 持有认证、文件系统、安全打包、Works Square 网络访问和预览 URL 校验。
## Main Components
| Component | Responsibility | Notes |
|---|---|---|
| Renderer | 项目配置、一键提交状态、真机二维码 | 不接触账号 Token、ZIP、幂等键或本地绝对路径 |
| Host API | 校验本地项目请求并投影安全响应 | 只接受回环来源和 JSON mutation |
| Project Configuration & Template | 保存不可变 `ProjectType`,原子生成新项目骨架 | 小游戏/小程序生成受控 Vite 模板;自定义保持最小项目空间 |
| Project Packager | 确定性扫描、敏感文件排除与 ZIP 生成 | 限制文件数、包体和目录替换 |
| Works Session | 七天真实活动滑动续期 | 刷新凭据由 Main 安全持有 |
| Device Preview | 核对本地映射、远端版本和 Release | 待审使用短时 Owner preview已发布使用精确 Runtime |
## Important Boundaries
- 发布只有现有项目配置底部的一个入口,不新增发布工作台、侧栏或资源卡。
- `ProjectType` 由创建请求写入项目配置UI 与 Host API 不提供类型变更;缺少类型的旧配置归一为 `custom`
- 本地 `projectType` 只选择产品路径和内部构建 preset不是可信授权声明Main 仍需安全打包,服务端仍需独立校验清单和包体。
- 云端确认上传成功后,本地映射失败不能把请求改判为失败;否则会诱导重复提交。
- Renderer 只能获得安全状态字段和可展示的短时预览 URL。
## Related Decisions
- 当前长期边界记录于 README 与集成任务 `20260807-integrate-login-client-a4f8`;后续如改变入口或凭据所有权,应新增 ADR。
## Last Updated
2026-08-09