Files

196 lines
6.1 KiB
Markdown
Raw Permalink 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.
# TPS 中台
> 央视《军事科技》栏目内部工作台
> 仓库:`tps-dashboard` · 内部团队可见
---
## 这是什么
一个面向《军事科技》栏目 8 人团队的内部工作台,核心模块包括:
- **TPS**(选题策划系统):查重 + 知识库参考 + 报题单一键生成
- **仪表盘**:近 9 期收视成绩 + 未来 6 期排期一目了然
- **知识库**:往期文稿、军报材料、专家库、外拍线索一站式检索
- **个人首页**:每位编导有自己的工作台 + 今日热点雷达
- **拍摄资源库**:外拍联系人 / 单位 / 线索来源结构化沉淀
详细模块说明见 `project_plan.md`
---
## 设计哲学
**辅助而不替代,AI 给方向不给答案,保护编导创作主权。**
任何让 AI 替编导拍板的功能都不要做;任何把编导逼向"按 AI 建议改"的设计都要重做。
---
## 项目宪法(必读,优先级从高到低)
| 文档 | 讲什么 | 受众 |
|---|---|---|
| `.clinerules` | Cline 协作规则 + 业务约定 + 已知避坑 | **AI 必读**,人类一并看 |
| `project_plan.md` | 产品 / 业务 / 用户(做什么、为谁做)| 全员 |
| `dev_plan.md` | 技术路线 / 阶段计划(怎么做、何时做)| 制片人 + AI |
| `docs/git_workflow.md` | Git 操作手册 | 制片人 + AI |
| `logs/phase{N}_log.md` | 各 Phase 进度档案 | 接力者 |
**新人 / 失忆接手时的标准动作**:依次读完上面五类文档,再做任何改动。
---
## 当前进度
> 详见 `logs/` 下最新一份日志。
| Phase | 状态 |
|---|---|
| Phase 0 环境 + Git | ✅ 已完成 |
| Phase 1 后端骨架 + 前端骨架 | ✅ 已完成 |
| Phase 2 仪表盘 + 批量导入 + 写权限收紧 | ✅ 已完成 |
| Phase 3 知识库基础设施 | 进行中 — 已完成至 Task 3(知识库树形视图按来源分组),语义搜索尚未做 |
| Phase 45 | 未开始 |
---
## 协作团队
| 角色 | 谁 / 什么 | 做什么 |
|---|---|---|
| 制片人 | 刘通(人) | 拍板、产品决策、领域知识 |
| 高级技术顾问 | Claude Opus 4.7(claude.ai 网页) | 架构指导、关键决策审核 |
| 架构师 | MiniMax M2.7 | Cline Plan 模式,出方案 |
| 执行者 | MiniMax M2.7 | Cline Act 模式,写代码 |
| 备选执行者 | DeepSeek v4 flash | 仅日常小改(改字段、加字段、改文案) |
详见 `.clinerules` 第二章。
---
## 角色权限表
> 数据来源:`.clinerules` 5.5 节 + `project_plan.md` 第四节
| 资源 / 操作 | zhipianren(制片人) | zebian(责编) | biandao(编导) |
|---|---|---|---|
| **yearly_targets** | | | |
| GET 列表/详情 | ✅ | ✅ | ✅ |
| POST 新增 | ✅ | ✅ | ❌ 403 |
| PATCH 修改 | ✅ | ✅ | ❌ 403 |
| DELETE 删除 | ✅ | ❌ 403 | ❌ 403 |
| **episodes** | | | |
| GET | ✅ | ✅ | ✅ |
| POST/PATCH/DELETE | ✅ | ✅ | 受限(见 API 文档) |
> 规则:.clinerules 5.5 角色枚举锁定拼音值(zhipianren / zebian / biandao),不许新增枚举。
---
## 技术栈速览
- 前端:React 18 + Vite + Ant Design 5 + Zustand(JavaScript,不用 TS)
- 后端:FastAPI + SQLModel(同步)
- 数据库:PostgreSQL 16 + pgvector(1536 维)
- 认证:Session + Cookie
- AI 嵌入:DeepSeek 或 OpenAI 兼容 embedding API
- Word 生成:docxtpl
- 部署:Nginx 反向代理 + 腾讯云 4核8G(待租)
详见 `dev_plan.md` 第五章。
---
## 服务整合架构
```
┌────────────────────┐
主域名访问 → │ 腾讯云 4核8G 新机 │ ← TPS 中台主体
│ (Nginx + FastAPI │
│ + PostgreSQL + │
│ React 前端) │
└─────────┬──────────┘
Nginx 反代
┌────────────────────┐
│ 老服务器 2核2G │ ← 蓝皓 TTS 2.0 + MMIM
│ 101.42.29.217 │
└────────────────────┘
```
详见 `project_plan.md` 第八章。
---
## 快速开始(Phase 1 后端验证)
> 假设你已完成 Phase 0(Python / Node / PG / Git 都装好,仓库已 clone)。
```bash
cd backend
# 1. 装依赖
pip install -r requirements.txt
# 2. 建库 + 建表
psql -U postgres -d milsci_dev -f sql/001_init.sql
# 3. 创建管理员账号(交互式)
python scripts/create_admin.py
# 4. 启动 FastAPI
uvicorn app.main:app --reload
# 5. 验证
# GET http://localhost:8000/docs ← FastAPI 自动文档
# POST http://localhost:8000/api/auth/login
# GET http://localhost:8000/api/auth/me
```
前端启动详见 `dev_plan.md` Phase 1 Day 5-7。
---
## 不在 1.0 范围内
明确不做、留到 2.0 或更远的:
- TypeScript 改造、Alembic、async SQLAlchemy
- AI 模型配置 UI(写死 .env)
- 模块 D 的 AI 预测(只展示原文)
- 文稿写作辅助系统
- Karpathy LLM Wiki 知识库形态(仅预埋接口)
- 移动端 App
- 多栏目复用
详见 `project_plan.md` 第十二章 + `dev_plan.md` 第八章。
---
## 联系与求助
| 状况 | 找谁 |
|---|---|
| 项目方向 / 产品决策 | 刘通(制片人) |
| 关键架构 / 风险 / 卡壳兜底 | Claude Opus 4.7(claude.ai 网页) |
| 日常方案 / 改动审查 | MiniMax M2.7(VS Code Cline Plan) |
| 写代码 | MiniMax M2.7(VS Code Cline Act) |
| Git 历史搞乱了 / 不小心 commit 了 .env | **立刻找 Claude Opus 4.7,不要自己瞎搞** |
---
## 版本演进
| 版本 | 日期 | 变化 |
|---|---|---|
| v1 | 2026-05-06 | 初版,作为单位机仓库门牌 |
| **v2** | **2026-05-14** | **家用机退役,唯一开发环境为单位 4090D;Phase 2 起 MiniMax M2.7 正式日常使用;更新版本演进记录** |
| **v3** | **2026-05-27** | **进度校准:Phase 1/2 标为完成;Phase 3 Task 3 知识库树形视图已完成;清理"家用机/路径B"历史表述,不再保留迁移叙事** |
---
*这是项目门牌号。详细内容请翻 `project_plan.md` / `dev_plan.md` / `.clinerules` / `docs/git_workflow.md`。*