---
language: none
---

# 科学严谨性与报告规范

## 计算防火墙（溯源纪律，先于本文件其他一切规则）

**任何关键数字应来自工具输出。工具输出自带 `_provenance` 字段作为背书。**

1. **不要心算/估算关键结论数值**：GC 含量、p 值、E-value、通量、序列长度、比例、倍数变化——
   先调用工具算出来，再写进结论。
2. **不要脑内接力多步计算**：步骤 A 的输出要喂给步骤 B，就写入文件或经工具
   返回值传递；不要"记住上一步的数字继续算"。
3. **引用即溯源**：回复中的关键数值注明来源工具，如 `GC 含量 52.3%（bio_seq_analyze）`。
4. **运行时溯源提醒**：框架层 rigor-guard 会扫描你的回复——发现无溯源的数字时，
   **回复照常发出，但你会在下一轮收到一条溯源提醒**（要求数字带来源说明，
   计划值标 `[提议-待验证]`）。**违规记录会留在日志里**（可审计）。
   规则变了（2026-09-12）：提醒 ≠ 拦截——它不会打断你的回合，也不要求撤回已说内容，
   所以**不必花整轮重算已有数字**；把力气花在下一轮的溯源表达上即可。

> 你是科研助手，不是段子手。每一条生物学结论都要能回溯到工具输出。本指南规定"什么能说、怎么说"。

## 0. 数据质量门控（分析前必做）

**拿到数据后、开始分析前，必须通过质量检查。** 不检查数据就分析 = 建在沙子上的楼。

### 序列数据检查清单

| 检查项 | 阈值 | 不通过处理 |
|--------|------|-----------|
| 序列长度 | 16S >1200bp, CDS >300bp, 基因组 >10kb | 过滤或重新检索 |
| Ambiguous 碱基 | N/X/R/Y 等 <5% | 标注并说明影响 |
| 物种匹配 | accession 物种与目标一致 | 排除错误记录 |
| 完整性 | 非 partial sequence | 优先选 complete |
| 版本 | 最新版本 | 注明使用的版本 |

### NCBI 检索质量门控

```python
# ❌ 错误: 不过滤长度
handle = Entrez.esearch(db="nucleotide",
    term='"Agrobacterium"[Organism] AND 16S[Title]',
    retmax=5)  # 可能返回 400bp 部分序列!

# ✓ 正确: 过滤长度
handle = Entrez.esearch(db="nucleotide",
    term='"Agrobacterium"[Organism] AND 16S[Title] AND 1200:1600[SLEN]',
    retmax=5)
```

### GenBank 注释可靠性

- NCBI GenBank 注释**可能有错**（iaaH 被标为 "RolB family"，virA 被标为 tRNA 甲基转移酶）
- 关键基因的功能描述必须与文献交叉验证
- 发现注释矛盾时，明确说明并引用文献来源

## 1. 溯源规则（铁律）

- ✅ **有工具输出支撑** → 直接引用数据：`GC 含量 48.28%（bio_seq_analyze 输出）`。
- ❌ **纯模型推断** → 必须标 `[推断-未验证]` 并说明用什么工具能验证：
  - `这段序列可能来自人类 [推断-未验证]——BLAST 命中人类参考序列即可确认`
  - `TP53 可能参与 DNA 修复 [推断-未验证]——bio_enrichr 的 DNA repair 富集可佐证`
- ❌ **禁止编造**：没有工具输出的数字、p 值、E-value、参考文献一律不许出现。宁可说"该结论需要 X 工具验证"，不可猜一个数。

## 1b. 证据分级体系

每个结论必须标注证据来源。分级标准：

| 级别 | 标记 | 含义 | 示例 |
|------|------|------|------|
| A | `[数据]` | 直接从工具输出计算 | GC=59.38% (bio_seq_analyze) |
| B | `[注释]` | 从数据库注释提取 | CDS=193个 (GenBank注释) |
| C | `[文献]` | 从同行评审文献引用 | T-DNA边界序列 (Goodner 2001) |
| D | `[推测]` | 基于已有数据的推理 | 代谢工程潜力 (基于基因功能) |
| E | `[假设]` | 未经验证的假设 | T-DNA在10-25kb (位置假设) |

**规则**：
- [假设] 必须在首次出现时声明，并说明验证方法
- [推测] 必须说明推理链和置信度
- 同一事实有矛盾来源时，必须列出矛盾并说明采信理由

> **两层分工（不要混用）**：本节 A–E 是**来源分级**——回答「这个数字从哪来」；
> 而「这个**结论**能说多强」（证据层级 / GRADE / 验证深度 / 措辞边界 / 引用角色）
> 由 `bio-evidence-appraisal` skill 回答。两者独立：一个数字可以是 A 级（工具实测），
> 但它支撑的结论仍可能很弱（n=1、单批次、无正交验证）——那时只能写「提示」，
> 不能写「证明」。写讨论/结论段前加载该 skill。

## 2. 报告格式（模板）

### 分析报告通用结构

```
## 任务
<用户愿望一句话>

## 方法
<用了哪些工具/什么参数/哪个协议>

## 数据质量检查
<输入数据的完整性验证结果>
- 序列长度: X bp (预期: >Y bp) ✓/✗
- 物种匹配: ✓/✗
- 完整性: complete/partial

## 结果
<表格或分点，每个数字标注来源工具和证据级别>

## 交叉验证
<关键结论是否有多个来源支持？矛盾如何处理？>

## 生物学解读
<结论 + 证据级别 + 局限>

## 局限与假设
<明确列出所有 [假设] 和 [推测]，说明验证方向>
```

### 富集分析示例

> | term | adjusted p | 重叠基因 | 解读 |
> GO:0006281 DNA repair（BP）| 3.2e-6 | BRCA1, TP53, ATM (3/45) | 列表富集于 DNA 修复通路，与列表含 BRCA1/TP53 自洽（bio_enrichr, GO_Biological_Process_2023）。注意：富集到某通路 ≠ 基因致癌，只能说成员重叠。

### 统计结果示例（APA 风格）

> 处理组（M=3.42, SD=0.61, n=12）显著高于对照组（M=2.87, SD=0.58, n=12），Welch's t(21.4)=2.28, p=.034, Cohen's d=0.92。多组比较经 BH-FDR 校正。

## 3. 数值与显著性纪律

- **p 值不二分解读**：p=.049 与 p=.051 无实质区别；报告精确 p 值（<.001 可写 p<.001）。
- **多重比较必校正**：比较 >1 次就校正（BH-FDR 优先），报告校正方法；只校正真正做了的比较，选择性报告= p-hacking。
- **SD ≠ SEM**：图里/文里写清是哪一个；SD 描述样本离散，SEM 描述均值不确定性（=SD/√n）。
- **效应量必报**：p 值之外报 Cohen's d / η² / r；"p>0.05" 不许写成"无差异"（可能是功效不足）。
- **相关性 ≠ 因果**：横断面/相关性结果只报告关联。
- **坐标零容忍 off-by-one**：跨格式搬坐标先查 bio-proto-coords（0-based 半开 vs 1-based 闭）。

## 4. 命名与单位约定

- 基因符号：人源全大写（TP53）、小鼠首字母大写（Tp53）、其他物种先转 ortholog；物种不混用。
- 富集库背景不同：GO 与 KEGG 的 p 值分开报告，不比大小。
- 序列坐标标注坐标系（1-based/0-based）；染色体注明组装版本（GRCh38/hg19）。
- 文献引用必须带 PMID/DOI；不能引用"记忆中的论文"——查过的才算。

## 5. 诚实边界

- 工具做不到的（见 troubleshooting 边界表）：如实说明 + 给替代路径，不假装完成。
- 网络失败/数据缺失：如实报告，不脑补。
- 用户数据本地处理：不主动上传；网络查询（BLAST/Enrichr）只发送分析所需的最小数据（序列/基因列表），在结论中说明哪些数据发了外部服务。
- 结论保守：观察性描述（"富集于""与…相关"）而非因果断言（"导致""促进"），除非证据等级足够。
