Files
LWLT-AIBOT/archive/evidence/2026-09-15/roster-header-aliases-01a0858b
2026-09-15 11:34:59 +08:00
..
2026-09-15 11:34:59 +08:00

Roster header alias verification — 2026-09-15

Immutable evidence for task 20260915-roster-header-aliases-01a0858b; historical validation only, not the current business-rule source. No passenger values or workbook copies are retained here.

  • Original input: XLS, 48128 bytes, SHA-256 c11d17fd13607afc9c8a52bf2716a5e900a3a387137f88ba314e8dcf15e3d76d.
  • Before: actual converter succeeds and existing normalizer returns roster_workbook_header_not_found; Sheet1!H2 出生地点 and K2 有效期至 were not mapped.
  • After: normalizer v1.5.1 maps only these two new exact aliases; row 2 is the unique complete header. Rows 3–22 normalize to 20 canonical 13-column passenger rows. Source SHA-256 is unchanged after inspection.
  • Content comparison: all 60 dates and all selected text/identifier/remark projections match the converted source; zero mismatches. Sequences 1–20 are unique. All required-source columns contain 20 populated values except phone (11 populated, nine intentionally retained blanks). Merged remarks follow their Excel master values; one leader marker has a name and phone. No imported-field formulas require adaptation.
  • Independent and shared-child Program parsers both return agent_parse_passed, 20 rows and a leader contact using synthetic local-only lookup context. No database/task/ERP execution or external API call.
  • Focused tests: 14/14. Full control-plane: 241/241. Full legacy: 402/402 after allowing its two local loopback HTTP tests. TypeScript/build PASS. Repository check: 10/10 in a 2699-file byte-verified source snapshot excluding secret files and unrelated existing residue.
  • Synthetic regressions verify unchanged canonical output and rejection of both canonical-plus-alias and duplicate-alias columns. Source edits are restricted to the normalizer and its tests; task/evidence records document this result. No extension, template, schema or deployment changes.

Acceptance scope: local file conversion, normalization and Program contract validation only. Actual ERP capacity, target selection and save results remain untested and were not requested.