Files
leaudit-platform-backend/rules/contract_construction/rules.test.yaml
T
wren 535d97a70c chore: initial commit — leaudit-platform project skeleton
17-table PostgreSQL schema with full Chinese column comments,
FastAPI project structure (admin/common/modules),
DSL rule files, and schema migration scripts.
2026-04-27 16:48:22 +08:00

284 lines
12 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ═════════════════════════════════════════════════════════════════
# 建设工程合同 · 回归测试用例
# ═════════════════════════════════════════════════════════════════
# 配套文件:contract_construction.yaml
target: contract_construction.yaml
fixtures:
# ═════════════════════════════════════════════════════════════
# GC-000 · 基础信息完整性
# ═════════════════════════════════════════════════════════════
GC-000:
- name: 完整合规
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园小区 A 区建设工程
合同金额: 50000000
expected: pass
- name: 缺工程名称
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: null
合同金额: 50000000
expected: fail
# ═════════════════════════════════════════════════════════════
# GC-001 · 承包人资质合法性
# ═════════════════════════════════════════════════════════════
GC-001:
- name: 资质完整
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园小区 A 区建设工程
合同金额: 50000000
承包人统一信用代码: "91310000MA1K3H5K8L"
承包人资质等级: 一级
承包人资质证书编号: 建总包字 001234
expected: pass
- name: USCC 校验失败
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园小区 A 区建设工程
合同金额: 50000000
承包人统一信用代码: "91310000MA1K3H5K80"
承包人资质等级: 一级
承包人资质证书编号: 建总包字 001234
expected: fail
- name: GC-000 失败时本规则跳过
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: null # GC-000 会失败
工程名称: 某某花园小区 A 区建设工程
合同金额: 50000000
承包人统一信用代码: "91310000MA1K3H5K8L"
承包人资质等级: 一级
承包人资质证书编号: 建总包字 001234
expected: skipped_dependency
# ═════════════════════════════════════════════════════════════
# GC-002 · 金额三处一致性(核心规则)
# ═════════════════════════════════════════════════════════════
GC-002:
- name: 三处完全一致
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 50000000
投标价: 50000000
中标价: 50000000
expected: pass
- name: 合同金额高于中标价(阴阳合同嫌疑)
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 55000000
投标价: 50000000
中标价: 50000000
expected: fail
- name: 中标价与投标价不一致
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 50000000
投标价: 48000000 # ← 差了 200 万
中标价: 50000000
expected: fail
# ═════════════════════════════════════════════════════════════
# GC-003 · 质量标准明确性
# ═════════════════════════════════════════════════════════════
GC-003:
- name: 有国标引用
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 50000000
质量标准: 本工程质量应符合现行国家标准 GB 50300-2013《建筑工程施工质量验收统一标准》的合格等级要求
expected: pass
- name: 质量标准过短
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 50000000
质量标准: 符合国标
expected: fail
- name: 长度够但无标准引用
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 50000000
质量标准: 本工程质量应符合发包人要求,达到完工条件,承包人应严格按照图纸和规范施工
expected: fail
# ═════════════════════════════════════════════════════════════
# GC-004 · 安全文明施工条款完备性
# ⭐ has_all_keywords 必须全部命中
# ═════════════════════════════════════════════════════════════
GC-004:
- name: 安全条款完备
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 50000000
安全文明施工要求: |
承包人应严格执行安全生产规定:
(1) 严格落实三宝四口五临边防护措施;
(2) 所有施工人员必须佩戴安全帽;
(3) 严格控制扬尘,采取洒水降尘等措施;
(4) 严格控制噪音,夜间禁止施工。
expected: pass
- name: 缺"三宝四口五临边"
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 50000000
安全文明施工要求: |
承包人应执行安全生产规定:佩戴安全帽,控制扬尘,降低噪音。
expected: fail # 缺"三宝四口五临边"关键词
# ═════════════════════════════════════════════════════════════
# GC-005 · 工期合理性
# ═════════════════════════════════════════════════════════════
GC-005:
- name: 正常工期
phase: executed
extract:
开工日期: "2024-06-01"
竣工日期: "2025-12-31"
# derived.工期天数 = 578
expected: pass
- name: 竣工早于开工
phase: executed
extract:
开工日期: "2024-12-01"
竣工日期: "2024-06-01" # ← 颠倒
expected: fail
# ═════════════════════════════════════════════════════════════
# GC-006 · 质保金比例
# ═════════════════════════════════════════════════════════════
GC-006:
- name: 比例 2%
phase: executed
extract:
质保金比例: 0.02
expected: pass
- name: 比例 5%(超限)
phase: executed
extract:
质保金比例: 0.05
expected: fail
- name: 比例 3%(恰好到上限)
phase: executed
extract:
质保金比例: 0.03
expected: fail # money.lt 严格小于
# ═════════════════════════════════════════════════════════════
# GC-SEAL-001 · 双方签章齐全
# ═════════════════════════════════════════════════════════════
GC-SEAL-001:
- name: 双方签章且文字匹配
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
visual_manifest:
seals:
- id: 发包人公章
detection_score: 0.95
ocr_text: 某某开发建设有限公司
- id: 承包人公章
detection_score: 0.94
ocr_text: 某某建工集团有限公司合同专用章
expected: pass
- name: 承包人印章文字不符
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
visual_manifest:
seals:
- id: 发包人公章
detection_score: 0.95
ocr_text: 某某开发建设有限公司
- id: 承包人公章
detection_score: 0.94
ocr_text: 其他不相关单位公章 # ← 不符
expected: fail
- name: 草稿阶段无印章(skipped
phase: draft
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
visual_manifest:
seals: []
expected: skipped_phase
# ═════════════════════════════════════════════════════════════
# GC-GROUP-QUALITY · 质量综合规则组
# ═════════════════════════════════════════════════════════════
GC-GROUP-QUALITY:
- name: 质量与安全全部合规
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 50000000
质量标准: 本工程质量应符合现行国家标准 GB 50300-2013 合格要求
安全文明施工要求: |
严格落实三宝四口五临边,佩戴安全帽,控制扬尘和噪音。
expected: pass
- name: 质量不合格导致组失败
phase: executed
extract:
发包人名称: 某某开发建设有限公司
承包人名称: 某某建工集团有限公司
工程名称: 某某花园
合同金额: 50000000
质量标准: 符合国标 # 过于简略
安全文明施工要求: 严格落实三宝四口五临边,佩戴安全帽,控制扬尘和噪音。
expected: fail