- Add concurrency groups to ci.yml and pr-check.yml to cancel redundant runs
- Fix pr-check.yml step IDs to kebab-case (invalid with spaces)
- Rename type-check step to style-check (ruff)
- WeChat Pay V3: real API calls with HMAC-SHA256 signing, AES-GCM callback decryption
- Alipay: real API calls with RSA2 signing, WAP payment support
- Both gateways fallback to MockGateway when unconfigured
- Attribution window configurable via ATTRIBUTION_WINDOW_DAYS env var (default 28)
- 30 platform-specific rule test cases (WeChat/Zhihu/Xiaohongshu/Baijiahao/Toutiao/Douyin)
- Fixed clickbait detection bug (character-level to word-level matching)
- E2E tests for diagnosis-strategy and content-monitoring flows
- CI: e2e-test job, bandit security scan, npm audit, performance baseline