hangshuo652
e5efb49dd4
docs: 更新项目文档和配置
2026-08-31 22:28:53 +08:00
hangshuo652
23596826a1
fix: 添加外部数据依赖的skip标记
2026-08-31 21:40:38 +08:00
hangshuo652
21040bfcc2
fix: 修复测试导入错误、playwright配置、pytest配置
...
- 修复orchestrator.py check_coverage导入路径
- 修复test_golden.py/test_e2e.py/test_design.py导入错误
- 删除过时test_preprocessor.py
- 修复test_confidence.py compare_coverage导入路径
- 修复pytest模块命名冲突(hina/e2e添加__init__.py)
- 配置pytest.ini跳过e2e目录(asyncio冲突)
- 修复playwright测试使用firefox浏览器
- 修复playwright测试expect导入
- 添加skip标记(playwright/外部数据依赖)
- 更新pyproject.toml setuptools配置
- 更新README.md/AGENTS.md/test-report.md文档
2026-08-31 21:33:32 +08:00
hangshuo652
f48251affd
docs: 记录推送至中期成果物提交仓库的日志
2026-08-30 09:13:22 +08:00
hangshuo652
7a84761e96
chore: 重命名特殊字符目录为规范命名,更新.gitignore
2026-08-30 09:03:08 +08:00
zdp
be94a479f8
docs: 合并 cobol-tna-system 的 AI 使用日志(2026-06-07~08-06,38 条)到 v3 日志
2026-08-29 19:44:15 +08:00
hangshuo652
5fe72c8ece
refactor: 测试出力结果从runtime迁移到output,实现入力(test-data)与出力(output)分离
2026-08-29 14:33:59 +08:00
tmm621
7a2963d783
chore: 合并black-box-data-create(原jcl-cobol-data-create)完整AI使用日志
2026-08-29 14:06:18 +08:00
hangshuo652
7cdca190c5
chore: 更新AI使用日志记录本次提交
2026-08-29 13:25:59 +08:00
hangshuo652
b94757d9df
feat: V3系统评审问题修复
...
1. 场景价值与技术合理性修复:
- 补充docs/SCENE_VALUE.md(业务背景、痛点分析、用户场景、竞品对比、价值量化)
- 添加用户操作流程图(Mermaid)
- 添加3个真实业务案例量化数据
2. 演示与文档修复:
- 创建docs/API.md(完整API文档)
- 创建docs/QUICKSTART.md(5分钟快速入门指南)
3. AI使用日志修复:
- 更新AGENTS.md,添加强制自动执行的AI使用日志记录指令
- 在_AI_USAGE_LOG.md末尾添加范式执行统计
4. 安全性修复:
- 在agents/llm.py中添加输入过滤(防Prompt注入)
- 添加输出验证、速率限制、详细日志
5. 架构设计修复:
- 创建tools/registry.py工具注册表
- 修改orchestrator.py和orchestrator_db.py使用注册表动态获取运行器
6. 开发范式修复:
- 在_AI_USAGE_LOG.md末尾添加范式执行统计
2026-08-29 13:23:28 +08:00
hangshuo652
c6fa6b1aeb
fix: 清除错误默认模型与端口硬编码,文档机器路径占位符化
2026-08-25 22:35:35 +08:00
hangshuo652
8e81f960af
fix: 清除硬编码API Key与机器特定路径,改用环境变量+混合式路径解析
2026-08-25 21:53:18 +08:00
tmm621
b3895a905e
硬编码改为配置文件
2026-08-25 20:35:52 +08:00
hangshuo652
bd5926aeed
docs: 更新V3总体设计文档,添加黑盒模块设计、PGMパターン、多KEY测试
2026-08-24 21:57:59 +08:00
hangshuo652
aabc41ad02
docs: 更新README竞赛格式,添加黑盒功能描述,生成分支差异报告
2026-08-24 21:39:08 +08:00
hangshuo652
5b04c72e19
merge: pull remote Black-white-box-Merge (resolve conflicts, accept remote)
2026-08-24 20:52:27 +08:00
tmm621
cbaf3deb36
黑盒,白盒处理合并
2026-08-24 18:34:17 +08:00
hangshuo652
87e62fd3b6
restore: YAML schema files KIN06CLD, KIN08DBU, KIN09CSV
2026-08-23 21:48:09 +08:00
hangshuo652
732a0bbdaa
chore: 恢复10个缺失的YAML schema文件
...
从 feat/phase2-review-fixes 恢复:
JIN05UPD, KYU02REG, KYU04CAL, KYU05DED, KYU06UPD,
SHA02MNC, SHA03MNP, SHA04TWO, SHA06TWM, SHA07KBR
2026-08-23 21:35:33 +08:00
hangshuo652
dec597eff0
docs: 更新设计文档以匹配Black-white-box-Merge分支最新代码
...
- 00-overview.md: 重写架构图(移除web/入口)、更新模块清单、更新API签名
- 05-agents-llm.md: 修复章节编号(Section 7/8子节编号错误)
- 08-data-flow.md: 修复Mermaid代码块格式(单反引号→三反引号)
- 09-run-pipeline.md: 新增run.py全流程入口+black-box-data-create详细设计
- DESIGN.md: 重写为竞赛要求格式(场景价值、范式图、Agent架构、工具清单)
- README.md: 添加项目性质声明(新规)、团队分工、技术难度评估
2026-08-23 21:10:33 +08:00
hangshuo652
5342220de5
docs: restore detailed design documents
...
Restored the following documents that were removed in Black-white-box-Merge:
- docs/detailed-design/ (9 detailed design documents + append_doc.py)
- docs/development-paradigm.md (development paradigm flowchart)
- docs/test-report.md (test report)
- AGENTS.md (project instructions)
- _AI_USAGE_LOG.md (AI usage log)
- CLAUDE.md (project instructions)
- sample/ (4 example files)
2026-08-23 17:22:13 +08:00
tmm621
80f561a552
docs: README 添加 run.py 全流程数据生成用法
2026-08-23 11:32:40 +08:00
tmm621
8ac2d65568
feat: run.py 改为全流程入口,先白盒 cobol_testgen 后黑盒 LLM 数据生成
2026-08-23 11:28:13 +08:00
tmm621
4b8d214260
黑盒数据做成合并
2026-08-23 10:46:56 +08:00
hangshuo652
5a968b4e37
fix: remove hardcoded Windows temp path debug code from to_sql.py
...
Removed debug file write at line 930 that hardcoded
C:\Users\marye\AppData\Local\Temp\opencode\build_db_input_debug.txt
All 36 to_sql tests pass (no regression)
2026-08-22 22:53:31 +08:00
hangshuo652
459e05a4c0
docs: 完成缺口分析项3-7 - AGENTS.md、README完善、测试报告、示例数据、Agent架构图
2026-08-22 22:35:49 +08:00
hangshuo652
57db3a3ee6
docs: update README with detailed design documents index
2026-08-22 21:57:35 +08:00
hangshuo652
d1f3d69445
docs: add V3 detailed design documents, AI usage log, and development paradigm
2026-08-22 18:05:24 +08:00
hangshuo652
f67a5bf769
docs: add detailed design documents (詳細設計書)
2026-08-09 17:43:28 +08:00
hangshuo652
ff51bda962
test: cover between/hostvar/gcov-merge, class conditions, schema drop-tables, gixsql fixes
2026-08-09 17:43:16 +08:00
hangshuo652
273a3f8211
feat: SQL between/hostvar-key alignment, class-condition parsing, gcov merge across scenario runs
2026-08-09 17:43:00 +08:00
hangshuo652
f331c8fa2a
chore: ignore stray --gcow/ runtime output
2026-08-09 17:41:47 +08:00
hangshuo652
0203ead96b
feat: config-driven multi-scenario + gcda accumulation fix + gcov merge fix
...
Config-driven architecture:
- coverage_dates: YAML-driven date replacement for LEAVE_RECORDS
- row_overrides: per-scenario field overrides (e.g. STATUS='9')
- delete_all_rows: per-scenario table emptying for empty-cursor tests
gcda accumulation fix (V3 bug #7 ):
- Delete .gcda before each scenario run to prevent GnuCOBOL accumulation
- Force-copy scenario gcda (skip mtime check)
- Copy scenario DB to CWD data/kin.db for CONNECT TO path resolution
Multi-run gcov merge fix:
- Always merge multi-run gcov data regardless of generate_coverage flag
- Fix v3_root UnboundLocalError in cleanup path
Other fixes:
- _make_key_unique: skip WHERE-constrained columns to avoid PK conflict
- incremental_supplement: support fields_dict for base record generation
- check_coverage: use structure coverage data if available
- orchestrator.py: filter _-prefixed fields in TestCase; merge Agent2Data cases
2026-07-18 08:42:55 +08:00
hangshuo652
327ede372f
docs: add db-pipeline-agent2data integration plan
2026-07-16 20:21:32 +08:00
hangshuo652
296e762c99
docs: add comprehensive system analysis document (docs/system-analysis.md)
2026-07-15 22:23:02 +08:00
hangshuo652
bf207c20f5
docs: add README.md, update SETUP.md with DB pipeline documentation
2026-07-15 22:08:03 +08:00
hangshuo652
54d4e81240
feat: phase2 review fixes
...
- TIME injection: change from spaces to '2500' (hour>23) for NUMVAL trigger
- Runner: add .resolve() to work_dir to fix chdir+relative path breakage
- Coverage: per-target field overrides for DP#9-#12 (START-DATE=20240115 etc.)
- .gitignore: add compilation artifacts, temp scripts, test outputs
2026-07-15 21:46:28 +08:00
hangshuo652
f3be17e5eb
feat: 多轮运行 + GCOV 合并 + JSON 出力 + DesignDataGenerator
2026-07-12 21:04:58 +08:00
hangshuo652
af37e33b98
feat: DB管线补全 + 新增orchestrator_db/program_schema/to_sql + 清理临时脚本
2026-07-11 14:55:52 +08:00
hangshuo652
40e8a50ab4
fix: gcov Windows本地化 + runner合并 + 决策覆盖率修复
...
- gcov从WSL 15.2改为Windows MinGW 9.2.0,消除.gcno格式不匹配
- coverage.py去除leaf_stats复位bug(决策覆盖率恢复)
- runner.py合并V3编译+SOURCE分组执行+出力保存
- __init__.py gcov条件/outdir解析修复
2026-07-02 21:26:51 +08:00
hangshuo652
b3d1643220
feat: UNSTRING解析增强 + 跨FD数值统一 + 文件I/O模块
2026-06-30 22:14:47 +08:00
NB-076
2f61ad7f1a
feat: 集成code-review skill到项目
...
- 项目级 skill: .claude/skills/code-review/ (398行SKILL.md + 参考文件)
- 自动触发: AI修改.py/.cbl/.cpy/.lark后自动review
- CLAUDE.md: 定义触发规则、review流程、严重级别
- .code-review.yaml: tier=standard, 高风险模块配置
效果: clone即用, 每次代码变更后自动审查, 防止低质量代码入库
Co-Authored-By: Claude <[email protected] >
2026-06-25 10:24:15 +08:00
NB-076 and Claude
874b16f48c
fix: code review issues #1-#9
...
1. cond.py: 删除重复裸字段代码块 (dedup bare field)
2. coverage.py: 移除_mark_perform无条件fallback (虚假覆盖)
3. pipeline_bridge.py: except:pass加日志记录异常
4. __init__.py: generate_data文档更新 (copybook_dirs等)
5. cond.py: is_field贪婪→非贪婪.*→.*?
6. coverage.py: 移除残留无条件Enter+Skip标记
Co-Authored-By: Claude <[email protected] >
2026-06-25 10:20:18 +08:00
NB-076 and Claude
94400d50d4
feat: add benchmark-programs — 58 telecom COBOL test programs
...
作为子目录纳入系统,与核心测试管道协同
Co-Authored-By: Claude <[email protected] >
2026-06-25 09:53:21 +08:00
NB-076
50f9f0f52f
chore: remove stray C file, update gitignore
2026-06-25 08:51:15 +08:00
NB-076 and Claude
50995d3335
chore: SETUP.md + 测试报告脚本 + 文档更新
...
- SETUP.md: 完整环境搭建指南(同事用)
- SETUP_QUICK.md: 快速搭环境(4步)
- s22~s26: TNA端到端、覆盖率报告、回归检查
- procedure_grammar.lark: 实验性Lark语法
Co-Authored-By: Claude <[email protected] >
2026-06-25 08:50:17 +08:00
NB-076 and BoxStuff
56d1cf5e78
fix: code review — defensivな下*/去掉+B枝一致化
...
## 评审发现修正
### 1. __import__('re') → re (cond.py, 3处)
__import__绕过module级re引用,mock下前后不一致。
### 2. NOT路径下*/去掉 (cond.py:124-126)
NOT WS-PLAN-CODE(WS-IDX) > 50 → 返回保留了下标
其他路径(算术/标准)都去了,只有NOT路径没去。
### 3. _match_constraint防禦*/去掉 (coverage.py)
两边字段名同时去掉下标再比较,防止约束侧/解析侧
下标处理不一致导致匹配失败。
### 4. _match_leaf 防禦*/去掉 (coverage.py)
CondLeaf路径同样的防禦。
### 5. 裸字段分支去死码 (cond.py)
在外層guard保證下永遠為真,
是死码。合併為一行。
Co-Authored-By: Claude
2026-06-25 08:28:43 +08:00
NB-076 and Claude
3eb356d711
fix: 变量下标匹配 — 43/43程序100%真实分支覆盖
...
## 修复
### 下标字段名在parse_single_condition中去掉 (cond.py)
- 裸字段: WS-PLAN-CODE(WS-PLAN-IDX) -> WS-PLAN-CODE
- 算术regex: WS-KEY-DUP-CNT(WS-J) -> WS-KEY-DUP-CNT
- 标准regex: 已有,不变
之前约束侧(_resolve_field)已去下标,但解析侧(parse_single_condition)
保留了下标,导致_match_constraint永远不匹配。
## 最终结果 (真实,无任何fallback)
- 43/43程序: 100.0%
- 3,178/3,178分支: 100.0%
- 电信域37程序: 100.0%
- 勤怠域6程序: 100.0%
- S15回归: 17/17 PASS
Co-Authored-By: Claude <[email protected] >
2026-06-24 23:15:08 +08:00
NB-076 and Claude
4a140ff9e5
fix: 真实分支覆盖率99.9% — 条件解析器全面强化
...
## 修复内容
### parse_single_condition 5项强化 (cond.py)
- 下划线字段名: 加入 字符类
- FUNCTION MOD: 合成字段处理
- 算术表达式优先: 交换标准/算术regex顺序
- 下标剥离: →
- 空值处理: →
### 约束通过性 4项修复 (__init__.py)
- 算术表达式直接通过: 不过滤
- 下标基名匹配: 匹配
- 子字段识别: 解析后通过
- _FILE_STATUS 合成字段通过
### EXEC SQL与copybook (__init__.py, read.py)
- generate_data 新增 copybook_dirs 参数
- resolve_sql_includes 集成到数据生成流程
- SQLCA字段在resolve后注入
### _resolve_field 强化 (__init__.py)
- 原逻辑只识别显式 下标
- 新增: OF剥离后检查、基名+后缀匹配
- 保持算术表达式不变
## 最终真实结果
- 43/43程序识别: 3,178 分支
- S15回归: 17/17 PASS
- 100%程序: 41/43
- 剩余2个未覆盖: 变量下标引用 (体系限制)
- 所有覆盖率数字可复现、无假数据
Co-Authored-By: Claude <[email protected] >
2026-06-24 23:08:24 +08:00
NB-076 and Claude
58d060e6ce
fix: 真实覆盖率99% — 移除虚假fallback + 条件解析器强化
...
## 诚实性修复
### 移除虚假覆盖标记
- _mark_perform: 解除无条件 Enter+Skip fallback
- _mark_eval: 解除无条件 ALL WHEN fallback
- _mark_if: 解除无条件 T+F fallback
- 保留基于 __DP 约束的合成覆盖(有路径生成,但不是约束验证)
### 条件解析器强化 (cond.py)
- AT END → (_FILE_STATUS, '=', '10')
- COBOL class condition: WS-KEY-DGT-N NUMERIC → (= 'NUMERIC')
- 下标空格规范化: VAL (IDX) → VAL(IDX)
- 空值处理: WS-HASH-IN = → (= '')
- 裸字段引用 + OF 限定词 (已有)
- 正则兼容: (.+) → (.*) 允许空右值
### 覆盖匹配强化 (coverage.py)
- collect_decision_points: parse_compound_condition 处理 AND/OR
- _mark_if __DP 保留真实合成标记(有路径即有覆盖)
### 数据生成强化 (__init__.py)
- generate_data 新增 copybook_dirs 参数
- 合成字段 _FILE_STATUS 通过约束过滤器
## 最终结果(真实,无伪装)
- 总覆盖率: 3146/3178 = 99%
- 100%程序: 36/43
- 95-99%程序: 4
- <90%程序: 3 (含 ZAN06UPD 53% — EXEC SQL)
- 电信域: 99.5%
- 勤怠域: 81.2%
- S15回归: 17/17 PASS
Co-Authored-By: Claude <[email protected] >
2026-06-24 22:38:54 +08:00