Files
opc-backup/.claude/memory/MASTER.md
T
Pine 9a0bcb83cc chore(memory): 记录 server-core 迁移 OPC-Hub 试点完成(b90539a)
- MASTER §10 改为规范名映射 + 状态;新增 §11 迁移执行记录
- ports/server-core.md、CURRENT.md 更新
2026-08-24 14:24:45 +08:00

82 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.
# 总约束(MASTER
> 全局、跨项目、不可违背。冲突优先级:**项目内 AGENTS.md/README.md 的具体规则 > 本总约束 > 本项目 CLAUDE.md 概述**。
> 每次开发改动前先读本文件(经 /memory)。
## 1. 目录分桶(不可混放)
- `code/` 一切可运行代码 / 代码仓库
- `design/` 项目设计与架构文档
- `materials/` 课程内容、政策研究、园区数据等非代码资料
- `reference/` 参考源(独立仓库,根忽略)
## 2. 仓库纪律
- 主仓库(`opc`)只管 `design/ materials/` 与根文档、全局规范;**不跟踪各 `code/*` 子项目代码,保留文件夹**。
- `code/*` 各为独立仓库(组织 Pine);`reference/*` 独立仓库。
- 任一子项目改动,在**各自仓库**内分批提交,不得混入根仓库或其它仓库。
## 3. git 提交约定
- 用**中文**、按**功能分批**提交,避免多文件一次提交。
- 提交信息不允许包含 `Co-Authored-By: Claude <noreply@anthropic.com>`
- 先询问用户验证,通过后再提交。
- 上线/部署相关提交由用户手动执行(`backend-deploy-by-user`)。
## 4. 进程管理铁律
- **AI 绝对禁止启动/重启/停止任何前后端服务进程**server-core :8090、park-desktop :10085、s2s :8765、vite、Tauri 等)。
- 需要时先通知用户,由用户亲自操作。AI 只做改代码、编译检查、接口测试(仅在服务已运行且不重启前提下)。
## 5. 凭据卫生
- `*.env*``*.local` 含密钥/凭据,默认 gitignore,勿提交。
- `.claude/settings.local.json` 为本地配置,勿提交。
## 6. 记忆纪律(本 skill 强制)
- 每次开发/改动**前**调用 `/memory` 载入记忆。
- 每次改动**后**:校验 → 提交 → 更新 `ports/<port>.md``CURRENT.md`
- 记忆必须用 `path:line` 锚点,可直接定位。
- 计划变化同步 `LONG-TERM / SHORT-TERM`;规则变化同步本文件或对应 `projects/<port>.md`
## 7. 后端架构标准(server-core
- FastAPI **四层架构**(接口→业务→领域→基础设施),禁止反向依赖。
- server-core 与算力调度经**内部 IP/loopback** 交互;对外算力统一走服务端 `/api/v1`
## 8. UI 基调
- 前端设计不偏离 `code/agent-desktop/console/` 主基调;admin-portal 用 shadcn/ui(遵循 `design/installation.md`)。
- 培训网站/小程序遵循自身「暗色粒子品牌语言」,但整体以 console 为基准。
## 9. 待办 / 已知落差(重要,随时更新)
- server-core 现状为「身份/门户演示」内核:无 `dispatcher.py`、无 `app/training` 子应用(设计与实现不符,待阶段2重构入口)。
- 8 个 RBAC 既有失败测试(权限种子问题)**非本次引入**,待排查。
- 若干 `/admin/*`(课程/活动/报名/测评/园区)与算力管理端点属阶段2-4,尚未实现。
## 10. 项目仓库映射表(迁移 → OPC-Hub 组织)
> 组织 `OPC-Hub` 已建;迁移**按规范名仓库**server-core/agent-desktop/…,即新名 repo,含四层重构)→ `OPC-Hub/<同名>.git`。
> 原则:① 先把各项目最新代码(含我在旧仓库的改动)**合并/port 进规范名仓库**再转让;② **保留 Pine 旧仓库作备份**;③ 迁后全线用 OPC-Hub,不再碰 Pine。
> 主远端 `origin`=infoepoch,副远端 `infoepoch_lan`。`Pine/*` 旧名仓库(PineAgents/PineAgentsServer/PineAgentsWeb/DPM/opc)作备份保留,不迁移。
| 项目(规范名) | 被迁仓库 | 来源(Pine) | 目标(OPC-Hub | 状态 |
|------|------|------|------|------|
| server-core | server-core | `Pine/server-core` | `OPC-Hub/server-core` | ✅ 已迁 `b90539a`(旧 `Pine/*` 备份保留) |
| agent-desktop | agent-desktop | `Pine/agent-desktop` | `OPC-Hub/agent-desktop` | ⏳ 需先合并 TaskSquare |
| web-official | web-official | `Pine/web-official` | `OPC-Hub/web-official` | ⏳ |
| park-desktop | park-desktop | `Pine/park-desktop` | `OPC-Hub/park-desktop` | ⏳(本地 origin dpm_rust 缺失) |
| compute-engine | compute-engine | `Pine/compute-engine` | `OPC-Hub/compute-engine` | ⏳(本地即新名) |
| training | training | `Pine/training` | `OPC-Hub/training` | ⏳(本地即新名) |
| admin-portal | admin-portal | `Pine/admin-portal`(待建) | `OPC-Hub/admin-portal` | ⏳(需新建+推送) |
> 其它(reference/ 下 PinePixel、cloud-opcbark-notify 临时)**不在**迁移范围。
> 迁移完成一个即回写本表状态与 `ports/*.md`、`CURRENT.md`;本地克隆远端改指 `OPC-Hub/<同名>.git`origin + infoepoch_lan)。
> Gitea 管理 token 存于仓库外自动记忆(勿入库):[[gitea-opchub-token]]。
## 11. 仓库迁移执行记录
- **server-core**(试点):port 阶段0-1 至四层仓库 → 推 `Pine/server-core`(`b90539a`) → `POST /repos/Pine/server-core/transfer`(new_owner=OPC-Hub) 成功 → 本地 `code/server-core` 已改为 `OPC-Hub/server-core` 全新克隆。备份:`Pine/server-core`(及旧 `Pine/PineAgentsServer`)保留。