autotrain/INDEX.md
xinxin6623 7a01ed4db9 feat: add invoice batch wrap-up (name extraction + roster annotation) and web ui automation improvements
- add scripts/annotate_roster_invoices.py: match passenger names to invoice PDFs, write status + relative encoded hyperlinks into roster xlsx
- add scripts/add_invoice_passenger_name.py, scripts/calibrate.py
- add .opencode/skills/invoice-wrapup skill
- improve invoice_tool.py / web_ui.py / vision_fallback.py automation
- add device/screen/windows adaptation docs
- ignore out/ (delivered invoice PDFs contain sensitive data)
2026-07-10 00:11:45 +08:00

3.2 KiB
Raw Blame History

铁路系统发票

铁路系统发票专项工作区,用于沉淀铁路系统相关发票资料、处理脚本、核对记录和衍生产出。

🤖 Agent 上手先读 AGENTS.md 的操作守则(通用协议在 ../docs/trio-protocol.md);改动后记得追加 CHANGELOG.md(强标签格式见文件顶部)。

当前接力点 (Handoff)

只保留最新一条,下一轮 wrap-up 直接覆盖。历史接力沉淀到 obwiki。

概述

换手机后开票报错的适配改造已完成,下一步需在 /calibrate 页生成 device_profile.json 并实测。

明细

2026-07-09跟踪 web_runner.log 定位换手机报错三根因(硬编码像素/滑动幅度绝对值/视觉 fallback 失败。Web UI 三处改造:① 首页状态栏加「设备校准」入口;② run-actions 排加「查缺补漏」toggle 按钮(final_retry_pass 可见可控);③ 总进度表按 progress 行序(开票处理顺序)排列。产出文档 docs/device-adaptation.md(截屏节点清单)+ docs/web-ui-adaptation-log.md(操作记录)。

待办

  1. http://127.0.0.1:8765/calibrate 点「保存设备配置」生成 work/device_profile.json
  2. 逐状态截图校准(重点:「确认」「继续开票」「开具」)
  3. 真换手机后实测滑动比例适配

项目结构

铁路系统发票/
├── AGENTS.md
├── CHANGELOG.md
├── CLAUDE.md -> AGENTS.md
├── INDEX.md
├── config.example.json
├── config.local.json本地自建忽略提交
├── data/
│   ├── attachments/
│   ├── input/开票码批次/
│   └── mail/
├── docs/
│   └── usage.md
├── output/
├── scripts/
│   ├── invoice_tool.py
│   ├── web_ui.py
│   ├── restart_web_ui.sh
│   ├── web_ui_watchdog.sh
│   ├── vision_fallback.py
│   └── record_step.py
├── templates/
│   └── android_flow.example.json
└── work/

子模块导航

(本项目暂无子目录)

常用操作

# 初始化目录和配置模板
python3 scripts/invoice_tool.py init
cp config.example.json config.local.json

# 导入二维码/手工码生成开票任务
python3 scripts/invoice_tool.py import-codes

# 导入名单并匹配身份证后 8 位
python3 scripts/invoice_tool.py import-roster --input /path/to/名单.xlsx
python3 scripts/invoice_tool.py match-roster --masked-name '张*岩'

# Android 页面读取和身份证后 8 位输入
python3 scripts/invoice_tool.py android-dump --output work/android_page.txt
python3 scripts/invoice_tool.py android-type-id --tap 500,1200

# 本地 Web UI上传名单、看进度、启动/停止批处理
./scripts/restart_web_ui.sh

# 生成网页辅助开票页
python3 scripts/invoice_tool.py rpa-plan

# 归集邮件/附件并导出汇总
python3 scripts/invoice_tool.py collect-mail
python3 scripts/invoice_tool.py collect-attachments
python3 scripts/invoice_tool.py export-summary

相关链接