fix: ignore non-import roster columns

This commit is contained in:
inman
2026-09-07 19:21:32 +08:00
parent 8f70cbae4d
commit 9d1a6b4379
27 changed files with 169 additions and 136 deletions

View File

@@ -205,8 +205,8 @@
"first_import may fill blank rows or accept idempotent rows but cannot change occupied rows",
"full_replace requires confirmed=true and forces a native overwrite of every supplied sequence even when its current persisted projection is equal; the plugin must not downgrade confirmed user intent to no_changes",
"passenger_list.marker is exactly TEST-202609 only for an explicit historical test context",
"every source row has 证件类型 exactly 护照",
"exactly one workbook row within the first 100 rows maps to the required ERP passenger fields; the header may be row 1 or follow metadata rows, source order is arbitrary, approved source/ERP aliases map to one semantic field each, and unknown or unheaded data columns are rejected; contiguous roster data is read below the detected header",
"every canonical row has implicit 证件类型 exactly 护照; any source 证件类型 column is ignored",
"exactly one workbook row within the first 100 rows maps to the required ERP passenger fields; the header may be row 1 or follow metadata rows, source order is arbitrary, approved source/ERP aliases map to one semantic field each, and ordinary non-import columns are ignored and excluded from canonical output; contiguous roster data is read below the detected header",
"at most one row has trimmed 备注 exactly 领队; that row requires nonblank 姓名 and 电话 and must match passenger_list.leader_contact"
],
"native_defects": [
@@ -228,7 +228,7 @@
"correct traveler phones within tr[id^=youke]",
"restore jj_lianxiren/jj_dianhua and sj_lianxiren/sj_dianhua after native parsing; when a validated leader_contact exists, intentionally overwrite only jj_lianxiren/jj_dianhua with the marked row name/phone",
"project document number through independent-order zjhaoma or shared-child haoma, with pinyinxm/fazhengri/youxiaori for the remaining native fields",
"normalize every persisted source value by removing whitespace and report implicit_document_type=护照 plus non_persisted_source_fields=[证件类型]",
"select only required source fields before canonicalization, ignore non-import columns including 身份证号码/年龄/证件类型, normalize every persisted source value by removing whitespace, and report implicit_document_type=护照",
"treat the exact parent-form native success response as terminal success for passenger_list_import after every pre-save projection and native blocker has passed",
"do not perform a post-save row requery or automatic hydrated reconciliation for a newly submitted passenger list"
],