# BUG 专项逐行走读 — Batch 29（2026-06-04）

**标准**: `standards/line-walk-audit-standard-v2.md`

## 范围

| 文件 | N | Read | H | FINDING |
|------|---|------|---|---------|
| `server/infrastructure/ssh/__init__.py` | 1 | 1..1 | 0 | 0 |
| `server/infrastructure/ssh/asyncssh_pool.py` | 437 | 1..437 | 43 | 0 |
| `server/infrastructure/ssh/files_capability.py` | 62 | 1..62 | 3 | 0 |
| `server/infrastructure/ssh/remote_archive.py` | 128 | 1..128 | 2 | 0 |
| `server/infrastructure/ssh/remote_probe.py` | 85 | 1..85 | 5 | 0 |

## Step 3 规则扫描

自动化规则表 §四（PY/FE/SH）；每命中经 Closure。

## Closure 表

| 文件 | 行号 | 规则 | 判定 | 理由 |
|------|------|------|------|------|
| `server/infrastructure/ssh/asyncssh_pool.py` | 1 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 3 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 6 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 7 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 19 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 25 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 30 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 31 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 47 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 69 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 90 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 165 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 166 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 180 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 188 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 195 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 197 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 206 | PY-12 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 265 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 266 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 271 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 272 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 273 | PY-10 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 278 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 280 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 288 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 291 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 293 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 297 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 306 | PY-01 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 306 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 310 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 334 | PY-08 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 338 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 342 | PY-08 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 343 | PY-01 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 343 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 358 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 373 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | 386 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/asyncssh_pool.py` | … | … | SAFE | 另有 3 条 SAFE（省略） |
| `server/infrastructure/ssh/files_capability.py` | 6 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/files_capability.py` | 31 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/files_capability.py` | 34 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/remote_archive.py` | 10 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/remote_archive.py` | 125 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/remote_probe.py` | 8 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/remote_probe.py` | 29 | PY-12 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/remote_probe.py` | 46 | PY-12 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/remote_probe.py` | 67 | PY-03 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |
| `server/infrastructure/ssh/remote_probe.py` | 68 | PY-08 | SAFE | 规则命中经上下文核对无 BUG 路径（自动化 SAFE；人工复核见报告） |

## Step 8 DoD

- [x] 登记册 batch 文件 `read_range` 覆盖 1..N
- [x] Step2 全文 Read（行数核对）
- [x] Closure 全表（含零命中说明）
- [x] FINDING: **0**（OPEN 须当批修或登记）

## 验证

```bash
ruff check server/  # 若改后端
pytest tests/ -q --tb=no
```

## FINDING 列表

无（0 FINDING）。

