# Case: `council-report-rejects-before-tally`

## 用例意义

验证 `council report` 在还没有持久化 grouped recommendations 时会返回稳定的 `invalid_state` 契约，而不是生成空报告。

## 前置条件

- 使用隔离的临时目录 `TMPDIR`
- 当前数据库中尚未对该 council run 执行 `council tally`

## 输入

```bash
orch --db TMPDIR/coord.db --json council start \
  --run council_blog_report_010 \
  --target "Review the council reporting flow."

orch --db TMPDIR/coord.db --json council report \
  --run council_blog_report_010
```

## 预期输出

- 第二条 `council report` 命令退出码为 `30`
- JSON 错误码为 `invalid_state`
- 错误消息指出 grouped recommendations 尚不可用，需先执行 `council tally`

## 断言结论

- `council report` 不是“边读 reviewer 输出边临时汇总”的命令
- report 阶段依赖已持久化的 `council_groups`，因此 `tally -> report` 的顺序是稳定 CLI 契约
