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

90 lines
3.2 KiB
Markdown
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.

# 铁路系统发票
铁路系统发票专项工作区,用于沉淀铁路系统相关发票资料、处理脚本、核对记录和衍生产出。
> 🤖 Agent 上手先读 [`AGENTS.md`](./AGENTS.md) 的操作守则(通用协议在 [`../docs/trio-protocol.md`](../docs/trio-protocol.md));改动后记得追加 [`CHANGELOG.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. 真换手机后实测滑动比例适配
## 项目结构
```text
铁路系统发票/
├── 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/
```
## 子模块导航
(本项目暂无子目录)
## 常用操作
```bash
# 初始化目录和配置模板
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
```
## 相关链接
- 📓 演绎记录:[CHANGELOG.md](./CHANGELOG.md)
- 🤖 Agent 守则:[AGENTS.md](./AGENTS.md)
- 使用说明:[docs/usage.md](./docs/usage.md)