40 lines
1.1 KiB
Markdown
40 lines
1.1 KiB
Markdown
|
|
# 审计 — 脚本执行 results 落库溢出(2026-06-08)
|
|||
|
|
|
|||
|
|
**Changelog**: `docs/changelog/2026-06-08-script-exec-results-mediumtext.md`
|
|||
|
|
|
|||
|
|
## 审计范围
|
|||
|
|
|
|||
|
|
| 模块 | 文件 |
|
|||
|
|
|------|------|
|
|||
|
|
| Redis flush | `server/infrastructure/redis/script_execution_store.py` |
|
|||
|
|
| ORM | `server/domain/models/__init__.py` |
|
|||
|
|
| 迁移 | `server/infrastructure/database/migrations.py` |
|
|||
|
|
| 单测 | `tests/test_script_execution_mysql_persist.py` |
|
|||
|
|
|
|||
|
|
## 安全
|
|||
|
|
|
|||
|
|
| 项 | 结论 |
|
|||
|
|
|----|------|
|
|||
|
|
| 数据完整性 | PASS — exit_code/status 保留;仅截断 stdout/stderr |
|
|||
|
|
| Redis 全量 | PASS — live 仍存完整 I/O,MySQL 为持久化摘要 |
|
|||
|
|
|
|||
|
|
## Step 3
|
|||
|
|
|
|||
|
|
| H | 规则 | 结论 |
|
|||
|
|
|---|------|------|
|
|||
|
|
| H1 | MEDIUMTEXT 迁移 | PASS — 启动时 ALTER |
|
|||
|
|
| H2 | 大批次 flush | PASS — 截断 stdout/stderr + 摘要降级 |
|
|||
|
|
| H3 | Redis 全量保留 | PASS — 仅 MySQL 持久化裁剪 |
|
|||
|
|
|
|||
|
|
## Closure
|
|||
|
|
|
|||
|
|
| H | 判定 |
|
|||
|
|
|---|------|
|
|||
|
|
| H1 MEDIUMTEXT 迁移 | PASS |
|
|||
|
|
| H2 366 台可 flush | PASS — 单测模拟生产体积 |
|
|||
|
|
|
|||
|
|
## DoD
|
|||
|
|
|
|||
|
|
- [x] pytest tests/test_script_execution_mysql_persist.py
|
|||
|
|
- [x] changelog
|