From 5fe72c8ececf4e49aa06fdb4da83d64b537bd575 Mon Sep 17 00:00:00 2001 From: hangshuo652 Date: Sat, 29 Aug 2026 14:33:59 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E6=B5=8B=E8=AF=95=E5=87=BA?= =?UTF-8?q?=E5=8A=9B=E7=BB=93=E6=9E=9C=E4=BB=8Eruntime=E8=BF=81=E7=A7=BB?= =?UTF-8?q?=E5=88=B0output=EF=BC=8C=E5=AE=9E=E7=8E=B0=E5=85=A5=E5=8A=9B(te?= =?UTF-8?q?st-data)=E4=B8=8E=E5=87=BA=E5=8A=9B(output)=E5=88=86=E7=A6=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AGENTS.md | 2 +- README.md | 2 +- SETUP.md | 4 ++-- _AI_USAGE_LOG.md | 6 ++++++ cobol_testgen/__init__.py | 2 +- docs/detailed-design/02-orchestrator-db.md | 2 +- docs/detailed-design/08-data-flow.md | 2 +- docs/output-directory-rules.md | 6 +++--- docs/superpowers/specs/2026-07-12-design-data-generator.md | 2 +- orchestrator_db.py | 2 +- runners/gixsql_runner.py | 2 +- 11 files changed, 19 insertions(+), 13 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index fc83e0c..7a53d9d 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -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 runtime/ +python -m cobol_testgen --gcov output/ # 诊断脚本 python diagnose_db2.py # DB 全流程 diff --git a/README.md b/README.md index 4ab8e23..d8b809a 100644 --- a/README.md +++ b/README.md @@ -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 runtime/ +python -m cobol_testgen --gcov output/ # 诊断脚本 python diagnose_db2.py # DB 全流程 diff --git a/SETUP.md b/SETUP.md index 0fd6847..5cc9242 100644 --- a/SETUP.md +++ b/SETUP.md @@ -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/.yaml` 中的表定义、子程序列表、运行场景(normal/collision/abnormal),多场景运行的 gcov 覆盖率会被合并输出。 diff --git a/_AI_USAGE_LOG.md b/_AI_USAGE_LOG.md index 386f63c..0a71036 100644 --- a/_AI_USAGE_LOG.md +++ b/_AI_USAGE_LOG.md @@ -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` diff --git a/cobol_testgen/__init__.py b/cobol_testgen/__init__.py index d03bf79..e524e26 100644 --- a/cobol_testgen/__init__.py +++ b/cobol_testgen/__init__.py @@ -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) diff --git a/docs/detailed-design/02-orchestrator-db.md b/docs/detailed-design/02-orchestrator-db.md index 741c9ab..da1aa00 100644 --- a/docs/detailed-design/02-orchestrator-db.md +++ b/docs/detailed-design/02-orchestrator-db.md @@ -547,7 +547,7 @@ recs = generate_all_data(..., llm_client=llm, ...) ## 8. 目录结构 ``` -runtime/{program_id}/ +output/{program_id}/ +-- main/ | +-- input/ <- 平面输入文件 | +-- output/ <- COBOL 输出文件 diff --git a/docs/detailed-design/08-data-flow.md b/docs/detailed-design/08-data-flow.md index 07fb5dc..120b2da 100644 --- a/docs/detailed-design/08-data-flow.md +++ b/docs/detailed-design/08-data-flow.md @@ -413,7 +413,7 @@ exe_path + schema + scenario | v 环境准备 - +-- 创建 runtime/run_{id}/main/{input,output}/ 目录 + +-- 创建 output/run_{id}/main/{input,output}/ 目录 +-- 复制生成的平面文件 -> input/ +-- 复制 JSON -> json/ | diff --git a/docs/output-directory-rules.md b/docs/output-directory-rules.md index 0769f82..ee7770c 100644 --- a/docs/output-directory-rules.md +++ b/docs/output-directory-rules.md @@ -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 diff --git a/docs/superpowers/specs/2026-07-12-design-data-generator.md b/docs/superpowers/specs/2026-07-12-design-data-generator.md index 98d45b2..c191d7e 100644 --- a/docs/superpowers/specs/2026-07-12-design-data-generator.md +++ b/docs/superpowers/specs/2026-07-12-design-data-generator.md @@ -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/ ← 机能数据(式样书驱动) diff --git a/orchestrator_db.py b/orchestrator_db.py index c0d0be1..701ad4a 100644 --- a/orchestrator_db.py +++ b/orchestrator_db.py @@ -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) diff --git a/runners/gixsql_runner.py b/runners/gixsql_runner.py index de38a98..2674a54 100644 --- a/runners/gixsql_runner.py +++ b/runners/gixsql_runner.py @@ -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(