refactor: 测试出力结果从runtime迁移到output,实现入力(test-data)与出力(output)分离
This commit is contained in:
@@ -39,7 +39,7 @@ python test-data/s30_db_e2e.py
|
||||
python -m cobol_testgen ../cobol-tna-system/src/KIN01INP.cbl
|
||||
|
||||
# 带 gcov 覆盖率的单程序运行
|
||||
python -m cobol_testgen --gcov <cobol_src> runtime/
|
||||
python -m cobol_testgen --gcov <cobol_src> output/
|
||||
|
||||
# 诊断脚本
|
||||
python diagnose_db2.py # DB 全流程
|
||||
|
||||
@@ -332,7 +332,7 @@ python test-data/s25_per_program_report.py
|
||||
python test-data/s30_db_e2e.py
|
||||
|
||||
# 带 gcov 覆盖率的单程序运行
|
||||
python -m cobol_testgen --gcov <cobol_src> runtime/
|
||||
python -m cobol_testgen --gcov <cobol_src> output/
|
||||
|
||||
# 诊断脚本
|
||||
python diagnose_db2.py # DB 全流程
|
||||
|
||||
@@ -178,7 +178,7 @@ cobol-java-v3/
|
||||
├── diagnose_kind8dbrun.py # DB 单步诊断 (仅编译运行)
|
||||
├── SETUP.md # 本文件
|
||||
└── docs/ # 设计文档
|
||||
└── runtime/ # 运行产物(测试数据、输入文件、覆盖率报告,已 gitignore)
|
||||
└── output/ # 运行产物(测试数据、输入文件、覆盖率报告,已 gitignore)
|
||||
```
|
||||
|
||||
---
|
||||
@@ -262,7 +262,7 @@ COVERAGE: DB pipeline E2E PASSED
|
||||
python -m cobol_testgen ..\cobol-tna-system\src\ZAN06UPD.cbl
|
||||
|
||||
# 带 gcov 覆盖率收集 (编译带 -g --coverage,生成 HTML 报告)
|
||||
python -m cobol_testgen --gcov ..\cobol-tna-system\src\KIN08DBU.cbl runtime\
|
||||
python -m cobol_testgen --gcov ..\cobol-tna-system\src\KIN08DBU.cbl output\
|
||||
```
|
||||
|
||||
DB 管道会自动加载 `config/programs/<PROGRAM_ID>.yaml` 中的表定义、子程序列表、运行场景(normal/collision/abnormal),多场景运行的 gcov 覆盖率会被合并输出。
|
||||
|
||||
@@ -13,6 +13,12 @@
|
||||
|
||||
---
|
||||
|
||||
### 2026-08-29 14:31:25 - AI编码实现
|
||||
- **范式步骤:** AI编码实现
|
||||
- **修改摘要:** 整合测试入力资源与出力结果:将 cobol-tna-system 的代码/文档资源复制到 test-data/cobol-tna-system/(src/sub/cpy/ddl/设计书);将 runtime/ 中的测试出力结果(42个程序目录、测试报告、日志、gcov)迁移到 output/(保持目录结构不变);代码输出路径从 runtime/ 改为 output/(orchestrator_db.py runtime_dir、cobol_testgen 默认 outdir、gixsql_runner 诊断目录、诊断脚本),black-box-data-create/ 路径保持不变
|
||||
- **涉及文件:** `orchestrator_db.py`, `cobol_testgen/__init__.py`, `runners/gixsql_runner.py`, `diagnose_sqlcode_override.py`, `diagnose_kind8dbrun.py`, `AGENTS.md`, `README.md`, `SETUP.md`, `docs/output-directory-rules.md`, `docs/detailed-design/02-orchestrator-db.md`, `docs/detailed-design/08-data-flow.md`, `docs/superpowers/specs/2026-07-12-design-data-generator.md`, `_AI_USAGE_LOG.md`
|
||||
- **使用模型:** deepseek/deepseek-v4-flash
|
||||
|
||||
### 2026-08-29 14:00:00 - 交付归档
|
||||
- **范式步骤:** 交付归档
|
||||
- **修改摘要:** 检索 opencode 历史会话记录,将 black-box-data-create(原 jcl-cobol-data-create)从生成到修改的全部 AI 使用日志合并整理进本文件,路径统一改写为 `D:\cobol-java-v3\black-box-data-create`
|
||||
|
||||
@@ -1440,7 +1440,7 @@ def main():
|
||||
if outdir is None:
|
||||
from pathlib import Path as _Path
|
||||
_v3_root = _Path(__file__).parent.parent
|
||||
outdir = _v3_root / "runtime"
|
||||
outdir = _v3_root / "output"
|
||||
user_specified_outdir = False
|
||||
|
||||
outdir.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
@@ -547,7 +547,7 @@ recs = generate_all_data(..., llm_client=llm, ...)
|
||||
## 8. 目录结构
|
||||
|
||||
```
|
||||
runtime/{program_id}/
|
||||
output/{program_id}/
|
||||
+-- main/
|
||||
| +-- input/ <- 平面输入文件
|
||||
| +-- output/ <- COBOL 输出文件
|
||||
|
||||
@@ -413,7 +413,7 @@
|
||||
exe_path + schema + scenario
|
||||
|
|
||||
v 环境准备
|
||||
+-- 创建 runtime/run_{id}/main/{input,output}/ 目录
|
||||
+-- 创建 output/run_{id}/main/{input,output}/ 目录
|
||||
+-- 复制生成的平面文件 -> input/
|
||||
+-- 复制 JSON -> json/
|
||||
|
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
# 出力目录规则
|
||||
# 出力目录规则
|
||||
|
||||
## 单轮(runs: [] 或 YAML 不存在)
|
||||
|
||||
```text
|
||||
runtime/{program_id}/
|
||||
output/{program_id}/
|
||||
input/KIN08R01, KIN08S01 ← COBOL 入力平面文件
|
||||
json/{program_id}.json ← JSON(input/working_storage/termination)
|
||||
output/KIN08W01 ← COBOL 出力平面文件
|
||||
@@ -13,7 +13,7 @@ runtime/{program_id}/
|
||||
## 多轮(runs: 定义在 config/programs/{program_id}.yaml 中)
|
||||
|
||||
```text
|
||||
runtime/{program_id}/
|
||||
output/{program_id}/
|
||||
run_{scenario_id}/
|
||||
input/KIN08R01, KIN08S01 ← 該当场景の入力
|
||||
json/{program_id}.json ← 該当场景の JSON
|
||||
|
||||
@@ -239,7 +239,7 @@ merge_strategy: merge_to_normal # 默认值
|
||||
### `as_separate_scenes` 时的目录
|
||||
|
||||
```
|
||||
runtime/{pid}/
|
||||
output/{pid}/
|
||||
run_normal/ ← 白盒数据(MC/DC 路径)
|
||||
input/ json/ output/
|
||||
run_func/ ← 机能数据(式样书驱动)
|
||||
|
||||
+1
-1
@@ -100,7 +100,7 @@ class GixsqlOrchestrator:
|
||||
self.work_dir = Path(work_dir)
|
||||
|
||||
# Runtime data under V3 (DB, flat files, CWD)
|
||||
self.runtime_dir = v3_root / "runtime" / program_id
|
||||
self.runtime_dir = v3_root / "output" / program_id
|
||||
|
||||
self.schema: ProgramSchema = load_schema(program_id)
|
||||
|
||||
|
||||
@@ -305,7 +305,7 @@ class GixsqlCobolRunner:
|
||||
norm_path.write_text(text, encoding="utf-8")
|
||||
# Save a copy in runtime for diagnosis
|
||||
try:
|
||||
debug_dir = Path(__file__).parent.parent / "runtime" / src_path.stem / "pre_src"
|
||||
debug_dir = Path(__file__).parent.parent / "output" / src_path.stem / "pre_src"
|
||||
debug_dir.mkdir(parents=True, exist_ok=True)
|
||||
(debug_dir / f"{src_path.stem}_norm.cbl").write_text(text, encoding="utf-8")
|
||||
(debug_dir / f"{src_path.stem}_pre.cbl").write_text(
|
||||
|
||||
Reference in New Issue
Block a user