Files
santifer--career-ops/modes/reply-watch.md
T
wehub-resource-sync d083df1fdb
CodeQL Analysis / Analyze (javascript-typescript) (push) Failing after 2s
Web CI / web typecheck + build (push) Failing after 1s
Release Please / release-please (push) Failing after 1s
CodeQL Analysis / Analyze (go) (push) Failing after 16s
chore: import upstream snapshot with attribution
2026-07-13 12:02:43 +08:00

70 lines
2.5 KiB
Markdown

# Mode: reply-watch — Classify Replies & Reconcile Tracker
Classify employer replies and generate an action digest to reconcile the application tracker. This workflow separates real application progress (e.g. interviews, offers, rejections) from recruiting noise and marketing alerts, and recommends tracker status updates.
Local-first, human-in-the-loop: **nothing here auto-updates without user confirmation.** Recommended status updates are displayed as recommendations and require explicit user approval before modifying the tracker.
## Purpose
- Classify reply candidates into candidate-facing categories (`Interview`, `Responded`, `Need Action`, `Rejected`, `Offer`, `Auto-confirmation`, `Noise`, `Unknown`).
- Match candidates to active tracker rows in `data/applications.md` based on company names, role titles, and domain matching.
- Generate a concise review digest highlighting updates, signals, and evidence.
- Prompt for human-in-the-loop tracker status updates.
## Inputs
- `data/reply-candidates.json` — Normalized reply candidates (subject, body, sender, signal)
- `data/applications.md` — Application tracker (source of truth)
- `data/follow-ups.md` — Follow-up history (for contact matching)
## Invocation
Run the reply-watch command:
```bash
node reply-watch.mjs
```
Or pass a custom candidates file path:
```bash
node reply-watch.mjs path/to/candidates.json
```
## Step 1 — Review the Digest
The script will analyze candidate replies and output a structured digest:
```text
Today: 3 application updates need review
1. 杭州赢云贸易有限公司 — PY01_python开发工程师
Type: Interview
Signal: resume passed + AI WeChat mini-program interview
Evidence: 简历通过; 邀您面试; AI微信小程序面试
Suggested tracker update: Interview
2. Example Labs — Full-stack Engineer
Type: Rejected
Evidence: 很遗憾; 暂不匹配
Suggested tracker update: Rejected
3. Zhaopin job alert
Type: Noise
Evidence: 邀请投递; 立即投递
Suggested tracker update: none
```
## Step 2 — Confirm Tracker Updates
If the script identifies recommended updates (e.g. `Applied``Interview`), it lists the changes and prompts for confirmation:
```text
Suggested status updates to apply:
#2 Example Labs (Full-stack Engineer): Applied → Rejected
Apply recommended status updates to data/applications.md? (y/N):
```
Type `y` or `yes` to apply the changes. The script will rewrite the matched rows in `data/applications.md` and rebuild the derived SQLite index.