变更问题修复
This commit is contained in:
1 parent
6de4422733
commit
9625110f44
62 files changed
+18116
-95
No files matched your search
@@ -0,0 +1,36 @@
|
||||
# Arrangement original-date year resolution
|
||||
|
||||
## Scope and gate
|
||||
- User approved preserving omitted years and resolving the original arrangement from ERP by group and month/day, exact full-year matching when supplied, and no automatic guess on missing/ambiguous rows.
|
||||
- Branch main; worktree /Users/andy/IdeaProjects/LWLT-AIBOT; base 6de44227330f53a7d86db1d1257ed7266f98607f; one worktree. Only pre-existing .idea metadata and the known 0.5.180 ZIP are untracked. Overlap: Clear. Prior conversation changes are now committed. Preserve metadata and prior release.
|
||||
- Feature mode, task-local memory only. No .env reads, production access/writes, deployments, restarts or external sending. No subagents under user constraint.
|
||||
|
||||
## Initial 0.5.181 implementation (superseded by the correction below)
|
||||
- Completed the user-approved implementation and local verification. No live ERP action or deployment performed.
|
||||
- Program parser v1.0.12 preserves omitted years as canonical MM-DD for hotel/vehicle/transport/other original-date selectors; explicit years remain YYYY-MM-DD. Creation and legacy target-date changes retain their existing semantics.
|
||||
- Shared parsed/dispatch date validation and parsed JSON Schema accept selectors. The plugin resolves month/day only inside the already exact-selected group, requires one persisted matching row, then freezes its native ID and full-year business snapshot. Execution schema stays full-year only; original dates are not written as new values.
|
||||
- Both endpoints match independently for cross-year/mixed-year ranges; actual ERP date order is checked. Multiple original matches produce up to five full-date/resource candidates with resubmission instructions; zero/multiple matches stop before mutation. New-resource lookup never selects the old record. Guide remains single-person without date input.
|
||||
- Updated Docker runtime file copy for shared validator, minimum plugin version, mapping, registry, tests, current release gate and versioned ZIP/DOCX/manifest. No migration added. Archived previous releases unchanged.
|
||||
- Validation: check/build PASS; control-plane 231/231, legacy 353/353, focused 34/34; clean source copy repository 10/10. Current directory remains 8/10 solely due to pre-existing .idea/.DS_Store metadata, which was preserved. Plugin 20 entries and 7 artifact hashes verified; DOCX all 16 pages visually inspected. Final main-thread read-only review PASS; no independent-agent review claimed.
|
||||
- [Immutable verification evidence](../../../archive/evidence/2026-09-14/arrangement-original-date-year-01a0858b/README.md).
|
||||
- Deployment/real ERP acceptance remains for the operator. Service and plugin must update together; submit a new task using the original input after upgrade. No automatic rewriting or replay of existing failed operations.
|
||||
|
||||
## Promotion candidates
|
||||
- Accept original-date selectors as MM-DD or explicit YYYY-MM-DD; derive missing year only from a uniquely matching ERP row inside the exact selected group, never current date or group-number digits. Canonical memory promotion deferred to integration.
|
||||
|
||||
## Reopened after user regression report
|
||||
- Gate rechecked on the same main worktree and base: all runtime/release edits are known prior work from this task; .idea and .DS_Store metadata remain untouched; no other worktrees.
|
||||
- The user reports candidate_count:0 after upgrading to the previous fix. Inspection found operation-plans.js missing from DEFAULT_PAGE_ACTION_FILES although inpage original-date matching depends on its global export. The service worker loaded it, but the ERP MAIN world did not. Missing dependency silently returned an empty match list.
|
||||
- The earlier focused fixtures manually injected operation-plans.js, masking the actual browser injection failure. Previous local PASS did not validate deployed script wiring. Correct this wiring and distinguish missing dependencies from true zero matches, then test fresh page realms using the actual action-file manifest. No ERP access/write, deployment or restart.
|
||||
|
||||
## Corrective release 0.5.182 — complete locally
|
||||
- Reproduced the reported failure using the real production script injection list in a fresh MAIN realm; a known 2027 hotel row incorrectly returned candidate_count:0 before the fix.
|
||||
- Added operation-plans.js to page injection before inpage.js; missing matcher now returns arrangement_date_matcher_unavailable with a plugin refresh message. No business matching or ERP save guard weakened. Singleton guide remains independent of date matching.
|
||||
- Removed manual shared-module preloading from hotel and unified-arrangement fixtures. They now execute the real action script list in order, with isolated worker/page globals. Added reported-input and missing-dependency regressions.
|
||||
- Plugin/minimum version/mapping/tests/release ZIP now 0.5.182. Parser remains v1.0.12; DOCX 0.5.133 and five Skill 0.5.126 packages unchanged. Archived 0.5.181 ZIP/manifest without byte changes.
|
||||
- Validation: focused 33/33, control-plane 231/231, legacy 356/356, typecheck/build PASS; source copy repository 10/10. Original repository 8/10 due to preserved local metadata and eight Git-ignored prior evidence logs; these historical files were not modified. Clean copy excluded them, generated output and all non-example .env files before reads. No actual ERP or external service accessed.
|
||||
- Main-thread final read-only review PASS. Reviewed precise runtime delta against archived 0.5.181 and all date-helper callers. All 20 plugin files and seven artifact hashes verified. Real ERP acceptance remains pending; operator updates plugin and refreshes ERP, then resubmits original input. No automatic replay.
|
||||
- [Corrective immutable evidence](../../../archive/evidence/2026-09-14/arrangement-page-injection-01a0858b/README.md). The earlier PASS was insufficient to establish actual injection wiring; it remains historical evidence, not proof against this regression.
|
||||
|
||||
## Prevention
|
||||
- A cross-realm dependency must be verified using the actual injected file list, not test-only manual imports. Dependency failures must be reported separately from valid empty business results.
|
||||
Reference in new issue
Block a user