procurement-ingest/lambdas/wo/email_processor
Adam Moussa b4e40d0304
Commit WO parser .eml fixtures for executable coverage
The parser test suite globbed for input .eml fixtures that the repo's
`*.eml` ignore rule kept uncommitted, so every parametrized golden and
fail-closed test collected zero cases and CI could not exercise the
deterministic parser that handles 100% of WO email volume.

Add a fixtures-only negation to .gitignore and commit the 55 scrubbed
positive samples (50 update-plaintext, 5 assign-html) plus 14
ai-fallback and 3 adversarial fixtures. The ai-fallback set covers each
fail-closed reason code (subject_no_match, single_space_work_order,
malformed_site_code, label_bleed, creation_time_unparseable,
wo_id_mismatch, missing_required_field) and the adversarial set proves
the parser is total and confines prompt-injection payloads to
comment_text without steering the structured fields.
2026-07-15 20:31:17 -04:00
..
tests Commit WO parser .eml fixtures for executable coverage 2026-07-15 20:31:17 -04:00
__init__.py Merge workorder-ingest into unified procurement repo (#22) 2026-05-12 15:21:06 -04:00
handler.py Emit ParseMethod-only EMF set so fallback alarm can fire 2026-07-15 20:30:53 -04:00
requirements.txt Migrate WO processor to Bedrock and fix comment_id collision 2026-07-15 20:09:58 -04:00
template_parser.py Add deterministic template parser for WO emails 2026-07-15 20:09:29 -04:00