Files
group_fqcd_jr/开发文档/D8.1-项目语言规范.md
张胜宇 bc61d5c579 docs: 入库权威文档目录(客服agent/ 24 份 + 开发文档/ 50 份,替换旧命名的过期副本)
## 为什么做这一步

权威文档 74 份此前**只在本机**,评审者 clone 分支后看不到任何设计文档;而仓库里那两份同名目录
是 **2026-09-16 之前的过期副本,连文件名都是旧的**(无体系编号)。本次按「**权威覆盖过期**」入库。

## 入库内容

| 目录 | 文件数 | 体积 | 说明 |
|---|---|---|---|
| `客服agent/` | 24 | 0.77 MB | `D2.1`~`D2.6` 对外交付四件套 + 演示脚本/答辩报告 + `_build` 构建工具 |
| `开发文档/` | 50 | 2.16 MB | `D1.x` 索引与决策、`D3.x` 方案、`D4.x` 清除与重构留痕、`D5.x` 业务流程、`D6.x` 业务事实基座、`D7.x` 交付物、`D8.x` 规范 |

**旧的过期副本整体移除**(`客服Agent执行Todolist.md` → `D2.1-客服Agent执行Todolist.md` 之类
的改名 + 新增 `D2.5`/`D2.6`),入库后目录内容与权威副本**逐文件一致(零差异,已复核)**。

## 入库前的安全扫描(必须留痕)

- 扫描规则:`sk-` 类密钥 / `Bearer` 长串 / `password=`、`api_key=` 赋值 / 会话中出现过的两把明文 key 片段。
- 结论:**真实密钥只出现在 `.env`**(已被 `.gitignore` 命中,未入库);`.env.example` 与
  `config/risk.env.example` 只有**空占位**。
- 文档内唯一命中是 `D3.1` 里一处**截断的示例 JWT**(`Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...`),
  末尾带省略号,是接口文档的示意值,**不是可用凭据**。
2026-09-20 15:03:15 +08:00

66 lines
3.7 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.
# 项目语言规范
> **体系编号**:`D8.1` · 域:八、AI 协作规则 · 编号体系见 `D1.1` §4.0
> **日期**:2026-09-19 · **性质**:**强制规范**(人机协作与交付物的语言口径,开工前必读)
> **来源**:本文件原以「`D8.1` 项目语言规范」为题**内嵌在 `开发文档\CLAUDE.md` 顶部**(与英文本的 AI 入口协议同处一文件)。按 `乙-27` / `DEC-28` 裁定「做 `D8.1-项目语言规范.md` + 三行存根」,现拆分为独立文件;`CLAUDE.md` 只留指向本文件的存根。
## 1. 四条硬规则(对话与全部产出)
| # | 规则 | 适用面 |
|---|---|---|
| 1 | 所有对话、解释、建议必须使用**简体中文** | 人机对话、方案、评审意见 |
| 2 | 代码注释必须使用中文 | `app\`、`tools\`、`tests\` 全量源码 |
| 3 | 生成的 Commit Message 必须使用中文 | git 提交信息 |
| 4 | 严禁出现**大段未翻译的英文技术名词** | 全部交付文档与代码注释 |
> **术语例外(不构成违规)**:技术标识符与命令名(`Milvus`、`pytest`、`nffund.com`、`Idempotency-Key`)、行业标准缩写(`RAG`、`RBAC`、`Embedding`、`DoS`)、库名与字段名**一律保留原文**;判定标准是**成句的英文**——整句英文描述必须译为中文。
## 2. AI 协作入口协议(原 `CLAUDE.md` 正文,2026-09-19 迁入)
### 2.1 规则优先级
**P0 阅读规范 → P1 项目上下文 → P2 执行规范 → P3 测试规范 → P4 输出规范**;发生冲突时按同序裁决(前者优先)。
| 优先级 | 文件 |
|---|---|
| P0 阅读 | `开发文档\ai\D8.3-01_READING_RULES.md` |
| P1 上下文 | `开发文档\ai\D8.7-05_PROJECT_CONTEXT.md` |
| P2 执行 | `开发文档\ai\D8.4-02_EXECUTION_RULES.md` |
| P3 测试 | `开发文档\ai\D8.5-03_TESTING_RULES.md` |
| P4 输出 | `开发文档\ai\D8.6-04_OUTPUT_RULES.md` |
### 2.2 强制工作流(禁止跳过阅读阶段直接编码)
理解需求 → 阅读项目 → 建立上下文 → 分析影响面 → 输出方案 → 获得确认(如需) → 实现 → 测试 → 总结。
### 2.3 阅读完成闸门(八问,任一答不上就继续阅读)
① 当前需求属于哪个模块?② 当前调用链是什么?③ 当前数据从哪里来?④ 当前数据写到哪里去?
⑤ 当前权限在哪里校验?⑥ 当前影响哪些模块?⑦ 当前风险等级是什么?⑧ 最小修改方案是什么?
### 2.4 高风险区域(必须先完成风险分析,**禁止直接修改**)
`Docker` / `Docker Compose` / `Nginx` / 环境变量 / 数据库迁移 / 认证 / `RBAC` / 文件存储 / 后台 `Worker` / 部署脚本 / `CI`、`CD`。
### 2.5 编码准入条件
已完成:项目阅读 + 调用链分析 + 影响面分析 + 方案设计 + 明确验证方案。**缺任一项则继续阅读。**
### 2.6 项目哲学
AI 的首要职责不是写代码,而是**理解项目**:理解错误则后续全部错误,理解正确则编码只是执行。
**`Reading First. Coding Later.`**
## 3. 编号与落位(2026-09-19 起)
| 文件 | 编号 | 位置 | 性质 |
|---|---|---|---|
| 项目语言规范(本文件) | `D8.1` | `开发文档\D8.1-项目语言规范.md` | 强制规范(正文) |
| 用法说明 | `D8.2` | `开发文档\ai\D8.2-README.txt` | 说明〔`.txt` 例外,不注入编号行〕 |
| 阅读 / 上下文 / 执行 / 测试 / 输出 | `D8.3`—`D8.7` | `开发文档\ai\` | 分层规范 |
| 入口存根 | — | `开发文档\CLAUDE.md` | **仅三行**,指向本文件 |
---
**维护**:语言口径变更须改本文件并同步 `D1.1` §4.0 总表;`CLAUDE.md` 保持三行存根,**不得再在其内追加规则正文**(否则又回到「同一规范两处正文」)。