Commit Graph

3 Commits

Author SHA1 Message Date
zzhyyyyy 4b8ec7c539 feat(wx-poc): 会话存档按小程序卡区分源平台,支持京东
原 poller 把所有 weapp 卡片写死成 source="meituan",分享京东也会让手机弹/开
美团。现按 weapp 结构判源:
- poller 新增 _resolve_source(): 按 weapp username/appid/title 关键词判平台
  (jingdong/京东 → jd, meituan/美团 → meituan);认不出默认 meituan + 打
  WARNING 并日志全量 weapp 结构,便于照真实 username/appid 精确补规则。
- app-server _SOURCE_PACKAGES 加 jd → com.jingdong.app.mall。

客户端无需改动(只认 source_package 反查平台名 + launch),纯服务端可热部署。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-18 16:38:34 +08:00
zzhyyyyy c97fbbad0e feat(wx-finance): 会话存档轮询间隔 3s→0.5s(支持亚秒, int→float)
mentor 要求把会话存档轮询从 3s 提到 0.5s。WX_FINANCE_POLL_INTERVAL_SEC 由 int 改 float
(默认 0.5), poller 的可打断 sleep 从 range(int) 改为按 ≤0.5s 分片的 while 循环(原 range()
不吃 float、无法支持亚秒间隔), 启动日志 %d→%s。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 23:03:13 +08:00
zzhyyyyy ac8935c641 refactor(wx-finance): 会话存档轮询拆独立进程(Go .so 嵌 app-server 会 core-dump)
WeWorkFinanceSdk 是 Go c-shared 库、自带 Go runtime, 嵌进 app-server(uvicorn)后台线程跑会
segfault 把主进程带崩(2026-07-17 实测:开 worker 后 app-server core-dump 每 5s 循环)。改成
轮询搬到【独立进程】(Go runtime 独占进程+主线程, 崩了 systemd 只重启本进程、不动 app-server),
拉到卡片/图后 POST app-server 内部端点打信号(set_pending 在 app-server 进程内存, 心跳才 pop 得到)。

- 删 app/core/wx_finance_worker.py(进程内 worker), main lifespan 不再起它
- 新增内部端点 POST /internal/wx-finance/pending(X-Internal-Secret)→ set_pending(复用现有内部端点范式)
- 新增 scripts/wx_finance_poller.py(独立 poller:GetChatData 轮询→解密→weapp/image→POST 内部端点)
- 新增 deploy/wx-finance-poller.service(独立 systemd 单元, 与 app-server 隔离)
- config 加 WX_FINANCE_INTERNAL_URL(poller→app-server 内部地址, 默认 127.0.0.1:8770)
- SDK 封装 wx_finance_sdk.py 原样复用(探针已验证 Init/GetChatData 通)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 22:32:07 +08:00