.claude/skills/data-validator/SKILL.md
验证车险CSV数据的完整性和正确性,检查26个必需字段,验证数据类型、枚举值和业务规则。当用户提到"验证数据"、"检查数据"、"数据导入"、"CSV"时使用。
npx skillsauth add alongor666/chexianduoweifenxi data-validatorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
自动验证车险业务CSV数据的完整性、格式正确性和业务规则合规性,确保数据符合 InsuranceRecord 26字段标准。
首先阅读项目的数据架构规范:
Read 开发文档/03_technical_design/data_architecture.md
Read src/types/insurance.ts
基础格式检查:
,)时间维度(3个字段):
snapshot_date - 快照日期 (YYYY-MM-DD)policy_start_year - 保单年度 (2024-2025)week_number - 周序号 (28-105)组织维度(2个字段):
chengdu_branch - 地域属性 (成都 或 中支)third_level_organization - 三级机构 (13种机构之一)客户维度(1个字段):
customer_category_3 - 客户类型 (11种类型之一)产品维度(3个字段):
insurance_type - 保险类型 (商业险 或 交强险)business_type_category - 业务类型 (16种类型之一)coverage_type - 险别组合 (主全, 交三, 单交)业务属性(3个字段):
renewal_status - 新续转状态 (新保, 续保, 转保)is_new_energy_vehicle - 是否新能源 (True 或 False)is_transferred_vehicle - 是否过户车 (True 或 False)评级维度(4个字段,可选):
vehicle_insurance_grade - 车险评级 (A-G/X,可为空)highway_risk_grade - 高速风险等级 (A-F/X,可为空)large_truck_score - 大货车评分 (A-E/X,可为空)small_truck_score - 小货车评分 (A-E/X,可为空)渠道维度(1个字段):
terminal_source - 终端来源 (8种来源之一)业务指标(9个字段):
signed_premium_yuan - 签单保费 (≥0,单位:元)matured_premium_yuan - 满期保费 (≥0,单位:元)policy_count - 保单件数 (≥0,整数)claim_case_count - 赔案件数 (≥0,整数)reported_claim_payment_yuan - 已报告赔款 (≥0,单位:元)expense_amount_yuan - 费用金额 (≥0,单位:元)commercial_premium_before_discount_yuan - 商业险折前保费 (≥0,单位:元)premium_plan_yuan - 保费计划 (可为空,单位:元)marginal_contribution_amount_yuan - 边际贡献额 (可为负,单位:元)YYYY-MM-DD 格式True 或 False (首字母大写)""policy_start_year 范围: 2024-2025week_number 范围: 28-105marginal_contribution_amount_yuan 外,所有金额和数量字段 ≥ 0True 或 False生成清晰的验证报告,包括:
验证报告模板:
# CSV 数据验证报告
## 📊 概览
- 总记录数: 1,234
- 验证通过: 1,200 条
- 验证失败: 34 条
- 错误率: 2.75%
- 文件名: `2024保单第28周变动成本明细表.csv`
## ✅ 通过的验证
- 所有26个必需字段存在
- 日期格式符合 YYYY-MM-DD 标准
- 枚举值在允许范围内
- 数值字段类型正确
## ❌ 失败的验证
### 数据类型错误
1. **第 45 行**: `signed_premium_yuan` 为负数 (-1000),违反业务规则(必须 ≥0)
2. **第 78 行**: `snapshot_date` 格式错误,应为 `YYYY-MM-DD`
### 必填字段缺失
3. **第 156 行**: 缺少必填字段 `third_level_organization`
### 枚举值错误
4. **第 203 行**: `insurance_type` 值为 `意外险`,应为 `商业险` 或 `交强险`
### 数值范围错误
5. **第 301 行**: `week_number` 值为 150,超出允许范围(28-105)
## ⚠️ 警告
### 数据异常(不阻止导入,但需人工确认)
- **12 条记录**: `marginal_contribution_amount_yuan` 为负值(合法但需关注)
- **5 条记录**: `claim_case_count` 大于 `policy_count`(不合理但可能是聚合数据)
- **3 条记录**: 评级字段全部为 `X`(未评级)
## 📋 建议操作
1. **必须修复**: 修复所有数据类型错误和必填字段缺失
2. **建议检查**: 确认枚举值错误的数据来源
3. **可选优化**: 填充评级字段的空值
## 📁 相关文档
- 数据架构规范: `开发文档/03_technical_design/data_architecture.md`
- TypeScript 类型定义: `src/types/insurance.ts`
原因: CSV 文件缺少必需字段或字段顺序错误 检查点:
Read 读取 CSV 文件首行原因: CSV 文件不是 UTF-8 编码 检查点:
file -I your_file.csv # 检查文件编码
原因: 使用了 true/false 而非 True/False
检查点:
is_new_energy_vehicle 和 is_transferred_vehicle 字段True 或 False(首字母大写)原因: 包含千分位分隔符或使用逗号作为小数点 检查点:
2958.49 而非 2,958.49 或 2958,49Read your_data_file.csv
Read 开发文档/03_technical_design/data_architecture.md
# 搜索负数保费
Grep pattern="-\d+" glob="*.csv"
# 搜索格式错误的日期
Grep pattern="\d{4}/\d{2}/\d{2}" glob="*.csv"
# 如果项目有验证脚本
pnpm run validate-data
development
华安保险车险周报HTML可视化生成器。将车险周报数据(Excel/CSV/JSON/DuckDB)转化为交互式网页仪表盘,支持标签页切换(经营概览、保费进度、变动成本、损失暴露、费用支出)和下钻分析(机构/客户类别双维度)。采用ECharts图表、响应式布局、麦肯锡配色方案。触发场景:用户上传车险周报数据文件,要求生成HTML可视化网页、交互式仪表盘或网页版报告。
data-ai
Generate McKinsey-style board presentation PPTs from weekly auto insurance data. Automatically calculates 16+ KPIs, creates executive-level slides with actionable insights, and supports week-over-week comparisons. Use when user uploads insurance cost data (Excel/CSV) and requests board report, weekly presentation, executive briefing, or mentions keywords like 董事会汇报, 周报PPT, 经营分析演示, McKinsey-style reports.
testing
Claude技能质量检查器,自动验证技能是否符合官方最佳实践标准。Use when 创建新技能需要验证规范、 修改现有技能需要质量检查、从他人处获取技能需要评估质量、批量检查多个技能的合规性。 适用于: (1) 新技能开发后的质量验证 (2) 技能更新后的合规检查 (3) 第三方技能的质量评估 (4) 团队技能库的标准化管理 (5) 技能打包前的最终审核
tools
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.