broker-sync/tests/providers/parsers
Viktor Barzin abf9fa7cb5
Some checks are pending
CI / test (push) Waiting to run
CI / build (push) Blocked by required conditions
CI / deploy (push) Blocked by required conditions
ci/woodpecker/push/build Pipeline was successful
parsers/schwab: drop dead vest-release path
The _parse_vest_release path and _VEST_*_RE regexes never matched a
real email in 4 years of inbox history (2022-08 → 2026-05, 188 Schwab
emails surveyed). Schwab Stock Plan Services does not email release
confirmations to the employee address for the workplace account — only
the sell-to-cover trade-executed alert lands. Vest data must come from
the META payslip via payslip-ingest (tracked as code-fqgr).

Removed:
- _VEST_SUBJECT_RE + 5 _VEST_*_RE regexes (heuristic, never validated)
- _parse_vest_release function
- VestParseResult dataclass
- parse_schwab_email_full wrapper
- _search_group helper (only used by vest path)
- 3 dead tests + the _VEST_RELEASE fixture

Kept models.VestEvent — the payslip→Wealthfolio sink in code-fqgr will
need it.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 09:40:56 +00:00
..
__init__.py Add InvestEngine email parser — RFC 2822 v1/v2 line format 2026-04-17 21:55:01 +00:00
test_invest_engine.py Pin InvestEngine parser failure modes — empty-on-junk + partial-match 2026-04-17 22:02:48 +00:00
test_schwab.py parsers/schwab: drop dead vest-release path 2026-05-27 09:40:56 +00:00