# r016 —— 作废（fail closed，无产物）

| 项 | 值 |
|---|---|
| **taskId** | GT-003（repeatIndex 5） |
| **作废时间** | 2026-08-25 约 19:17 CST |
| **量具 exit code** | **1**（`run-golden-task.mjs` 的 fail closed 分支） |
| **产物** | `no-html-fence` · **0 B** |
| **墙钟** | 1,125.9 s（18.8 min）—— ⚠️ 跑满了才失败，不是秒退 |
| **已消耗 token** | **7.84 M**（in 70 · out 46,296 · cache_read 7,525,114 · cache_create 272,027） |

## 作废原因：账号 session 限额，⛔ 不是产物质量问题

`final-message.md` 全文只有 62 字节：

```
You've hit your session limit · resets 7:50pm (Asia/Shanghai)
```

⇒ 模型侧根本没产出回复，harness 把限额提示当成了「最终文本」。
⇒ `run-golden-task.mjs` 边界 ⑤ 之外的一条：**抽不到 ```html 围栏就 exit 1**，
   ⛔ 不把「跑完了但没产物」记成成功 —— 该 fail closed **按设计生效了**。

## ⚠️ 这条作废本身是读数（计划 §1.1 第 ④ 条）

1. **单 run 成本的尾部风险被低估**：既有成本模型只统计**成功** run，
   而一次撞限额的失败 run 仍要付 **7.84 M**（≈ 一个成功 run 的 85%）。
   ⇒ 报告里的成本口径必须区分「成功 run 成本」与「**含作废的实付成本**」。
2. **`pin` 未被污染**：作废时 `git status --porcelain` 仍为空（量具起止都核过）。
3. **⛔ 不复用 r016 这个 id** —— 重跑用 **r017**，`repeatIndex` 仍记 5
   （repeatIndex 记的是「这条 task 的第几次」，不随作废顺延）。

## 保留的证据

- `run.json`（含 usage 与 `extraction: no-html-fence`）
- `transcript.jsonl`（原始 stream-json）
- `final-message.md`（那 62 字节）
- ⛔ 无 `GT-003.html`（本来就没产出）
