导入问题修复

This commit is contained in:
andy committed 2026-09-15 11:34:59 +08:00
1 parent 0282c30a2a
commit ede1d47c47
26 files changed
+934 -45

No files matched your search

@@ -0,0 +1,12 @@
# Dispatch/readiness fix validation — 2026-09-15
Immutable local validation summary for [the feature task](../../../../.project-docs/30-worklog/tasks/20260915-dispatch-readiness-01a0858b.md). This is historical evidence, not the current release or business-rule authority. No private runtime input or customer records are stored here.
- Base: `0282c30a2aa66435a193b96b17c0022420d881b3`; previous extension 0.5.183, new extension 0.5.184.
- Two actual-adapter tests reproduce same-path Document replacement failures on the committed old source and pass on the new source. Native search remains blocked for incomplete/wrong/inaccessible pages, absent loaders/buttons and changed documents; readiness failures carry explicit no-write page proof.
- 16 native readiness/worker tests, 8 platform dispatch/result tests and 8 control-plane recovery tests, including actual result-ingestion transaction logic with a synthetic database client. Five-second acceptance, timeout/no redispatch, missing or conflicting proof, original actor/connection/execution, duplicate idempotency and opposite arrival orders are covered.
- Full suites: 239 control-plane + 402 legacy = 641 passing tests. Typecheck/build PASS; isolated repository hygiene 10/10 PASS. Initial sandboxed legacy run could not bind loopback for two HTTP tests; permitted loopback rerun passed. Original worktree hygiene 8/10 reflects only pre-existing IDE/OS/historical-log residue, preserved unchanged.
- Extension ZIP has 20 source files and was verified byte-for-byte. Original ZIP 0.5.183 SHA-256: `95e838dbed02f7892eb1ee6c57c32f5fc363bf7887276475209d78c685867433`.
- Main-thread final review PASS; no subagents. No real ERP execution, deployment, restart, extension reload or task retry was performed. Specific historical page condition and acknowledgement-delay cause remain unknown; production validation is pending.
Machine-readable verification: [summary.json](summary.json).
@@ -0,0 +1,35 @@
{
"base": "0282c30a2aa66435a193b96b17c0022420d881b3",
"extension": "0.5.184",
"artifact": "dist/ltjt-order-assistant-0.5.184.zip",
"sha256": "f8053808553c6fe1b75161225058447e8fbb13386b36a2048fd3599dfd7d120b",
"source_files": 20,
"zip_matches_source": true,
"previous_release_preserved": true,
"control_plane": {
"pass": 239,
"fail": 0
},
"legacy": {
"pass": 402,
"fail": 0
},
"check": "PASS",
"build": "PASS",
"isolated_repo": {
"pass": 10,
"fail": 0
},
"original_repo": {
"pass": 8,
"fail": 2,
"reason": "pre-existing IDE/OS files and ignored historical log residue"
},
"review": {
"reviewer": "main thread",
"result": "PASS"
},
"production_validation": "pending",
"erp_accessed": false,
"redispatched_task": false
}
@@ -0,0 +1,13 @@
# 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.
+5
View File
@@ -0,0 +1,5 @@
# Releases archived on 2026-09-15
Historical material, not current business rules or release instructions.
- [0.5.183 before dispatch/readiness fix](dispatch-readiness-01a0858b/README.md)
@@ -0,0 +1,3 @@
# Historical release before dispatch/readiness fix
This is a read-only historical copy, not the current release. Extension 0.5.183 and its original release manifest are preserved byte-for-byte. Current deliverables are defined by `dist/release-manifest.json`.
@@ -0,0 +1,69 @@
{
"manifest_version": 1,
"generated_on": "2026-09-14",
"baselines": {
"chrome_extension": "0.5.183",
"skills": "0.5.126",
"business_instruction_docx": "0.5.133",
"agent_prompt": "ltjt-agent-prompt-v1.8-independent-headcount-categories"
},
"artifacts": [
{
"kind": "chrome_extension",
"version": "0.5.183",
"path": "dist/ltjt-order-assistant-0.5.183.zip",
"source": "chrome-extension/ltjt-order-assistant",
"sha256": "95e838dbed02f7892eb1ee6c57c32f5fc363bf7887276475209d78c685867433"
},
{
"kind": "skill",
"name": "lwlt-arrangement",
"version": "0.5.126",
"path": "dist/lwlt-arrangement-0.5.126.skill",
"source": "agent设计规范/skills/lwlt-arrangement",
"sha256": "83770befe3a8e4048eacaeacb567c5139bf8a0b3a49f2b1513c26383422f2a9c"
},
{
"kind": "skill",
"name": "lwlt-confirmation",
"version": "0.5.126",
"path": "dist/lwlt-confirmation-0.5.126.skill",
"source": "agent设计规范/skills/lwlt-confirmation",
"sha256": "543507ed8b68c183d2df6722061b0e927ebb728de4bf254d15f83311c9264018"
},
{
"kind": "skill",
"name": "lwlt-lifecycle",
"version": "0.5.126",
"path": "dist/lwlt-lifecycle-0.5.126.skill",
"source": "agent设计规范/skills/lwlt-lifecycle",
"sha256": "fff3879d9a4143c34ae51e091b91411e55382ad3f5d77c99d6202a005b1ddbd9"
},
{
"kind": "skill",
"name": "lwlt-newbooking",
"version": "0.5.126",
"path": "dist/lwlt-newbooking-0.5.126.skill",
"source": "agent设计规范/skills/lwlt-newbooking",
"sha256": "5eb6a7bf5649a0fcee3fbee488a124e1b1d018a642a3a49ebb5439ccf20ccc2f"
},
{
"kind": "skill",
"name": "lwlt-updating",
"version": "0.5.126",
"path": "dist/lwlt-updating-0.5.126.skill",
"source": "agent设计规范/skills/lwlt-updating",
"sha256": "3bd665207649cbb8e0e5ebb012c916720201fe160eea62bccdf1c3a1f0275d1d"
},
{
"kind": "business_instruction_docx",
"version": "0.5.133",
"path": "dist/老挝联泰AI指令表-0.5.133.docx",
"source": "agent设计规范/templates/business-input-templates.md",
"builder": "tools/build_business_instruction_docx.py",
"sha256": "879f1acc3a6a60842e59ae8396f72d39504ea1f3a4110a9f305d94553b38848c",
"source_sha256": "37b6b689c5c6a80683dd1deeff52a90ac8b4bd3ac0380e6b771dcb557c0918f7",
"builder_sha256": "c162884210da22e3b78368749b66f1f177df5e9fc6155f4fd9954bd516d187f1"
}
]
}