Files
app/README.md
T

115 lines
5.0 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.
# LineUp App
这里是 LineUp App 的客户端工作区;LineUp Runtime 是其中向 MiniApp 提供通信、可靠性、
调度与安全能力的核心运行环境。
## 当前实现基线
LineUp 不只是一个聊天客户端,而是用户设备上的协作 Runtime:它连接
AppServer 与 Remote Agent,维护会话、消息、Store、outbox、App Inbox、权限与恢复;
当前 `chat` 兼容实现是其上的第一个系统级 MiniAppInteract 的 IM Mode。
当前唯一的客户端实现与验收基线是:
```text
Tauri 2 Desktop Host + Web Reference Host
```
这里的 **Host(运行外壳)** 指的是把同一套 LineUp 程序放进不同运行环境的方式,
并不表示有两套客户端或两套聊天逻辑。它们共用同一份 TypeScript
`LineUpRuntime` 和 Chat Core App
- **Tauri Desktop Host** 是正式桌面应用的外壳。它负责创建桌面窗口,并在 Runtime
授权后提供文件、通知等操作系统能力。
- **Web Reference Host** 是浏览器中的同代码开发和验证入口。它用于 Vite 开发、
Tailscale 联调与自动化回归,不能替代桌面版的系统能力。
无论运行在哪个 Host 中,连接、同步、消息存储和 Agent 协议都只能由 Runtime 管理,
不能各自实现一套。
不再规划、实现或维护独立 Android/Kotlin 客户端,也不再维护 Wails Host。旧实验设计仅在
Git 历史中保留,不是当前产品、协议或交付路线。
## MVP-R1Runtime 托管 Chat
当前 MVP 已验证以下边界:
```text
Chat Core App
└── ChatRuntimeSDK
└── LineUpRuntime
├── Transport / sync loop / outbox
├── Conversation Store / App Inbox
├── app_scope + conversation_id 路由
└── lineup.v1 Compatibility Adapter
```
- `LineUpRuntime` 是网络连接、消息存储、同步循环和待发送队列的唯一管理者;
- Runtime 从本地 Core App Registry(内置应用清单)加载默认 `chat`,而不是由
`main.ts` 直接拼出聊天页面;
- Chat 只能通过 Runtime SDK 接收已筛选的消息和状态、恢复并确认已处理的 Inbox 消息,
再向 Runtime 提交用户动作;
- Runtime 拒绝非法或不匹配的 `app_scope` / `conversation_id`,并在内部兼容既有
`lineup.v1`
- 登录、同步、发送、本地回显、Markdown、Agent 状态和刷新恢复保持回归通过;
- 当前 Tauri/Web 回归为 23 个测试文件、99 个测试,`npm run build` 通过。
完整边界、MiniApp SDK 路线和发布安全约束见 [APP架构设计.md](APP架构设计.md)。
## 开发与验证
客户端工作区使用独立仓库,远端为 `ssh://git@100.121.118.116:2222/lineup/app.git`
Linux 开发机通过 Vite 启动 Web Reference HostMac 或其他设备可经 Tailscale 用浏览器
直接打开它,看到的就是 Linux 工作区中正在修改的同一份前端,无须每次改动都同步或重新
clone 源码。
```bash
cd lineup-app/tauri
npm run web:dev
```
当前开发地址:
```text
http://100.121.118.116:1420/
```
常用命令:
```bash
# Runtime / SDK / Renderer 自动化回归
npm test -- --run
# TypeScript 检查与 Web production build
npm run build
# Tauri 桌面 Host 开发
npm run desktop:dev
```
`tauri/node_modules/``tauri/dist/``tauri/src-tauri/target/` 都是可再生本机构建产物,
已被忽略。
## 文档入口
- [APP架构设计.md](APP架构设计.md)LineUp App、Runtime、MiniApp SDK、Surface/Capability 安全与后续迭代的权威架构设计;
- [程序文件清单与功能说明.md](程序文件清单与功能说明.md):客户端 Runtime、Chat Core App、Tauri/Web Host 与测试的文件清单;
- [tauri/src/README.md](tauri/src/README.md):源码目录、依赖方向与模块放置规则;
- [tauri/README.md](tauri/README.md)Tauri/Web Host 的运行、构建、行为回归和历史里程碑;
- [迭代/](迭代/00.base.md):按迭代记录当前基线和后续 Runtime Kernel / 应用编排目标;
- [LineUp App 最终设计方案](../设计/02.正式方案/app_final_design.md):当前架构的唯一汇总入口;
- [LineUp App 层架构方案](../设计/02.正式方案/lineup-app-layer-architecture.md):M0~M4 历史实施记录与迁移基础;
- [LineUp Runtime 与 App SDK 架构方案](../设计/02.正式方案/lineup-runtime-sdk-architecture.md)Runtime / SDK 的详细契约来源;
- [LineUp UI Surface 与 App Capability 协议](../设计/02.正式方案/lineup-ui-surface-protocol.md)Surface sandbox 和 Capability Gateway 协议;
## 工作区目录
```text
lineup-app/
├── README.md # LineUp App 工作区入口
├── APP架构设计.md # 当前权威架构、SDK 与发布安全设计
└── tauri/ # Tauri Desktop + Web Reference Host
├── src/ # Runtime、Core App 与 Host 组合入口
└── src-tauri/ # Tauri Rust Host
```