fix: make daily task log header-only
This commit is contained in:
@@ -19,6 +19,17 @@ preserves its no-formula contract. Both publishers upload new workbook and `resu
|
||||
immutable OSS adapter, while download routing retains controlled-local compatibility for historical records and keeps
|
||||
`.web-jobs` queue state local.
|
||||
|
||||
## Daily Interaction Correction On 2026-08-11
|
||||
|
||||
- The local source now treats Daily Report rows as informational table rows rather than hidden log controls. It removes
|
||||
row click and Enter/Space activation, `role=button`, `tabindex`, selected-row decoration and pointer styling. The
|
||||
explicit needs-review button still focuses the manual-price panel, report downloads remain links, and only the
|
||||
top-right `任务日志` link opens the trace dialog.
|
||||
- JavaScript syntax, all 81 `test_arr_web*.py` regressions and an isolated browser interaction check pass. The browser
|
||||
proved an ordinary `0805.XML` row leaves the dialog closed, the `待人工处理` control focuses a populated review panel,
|
||||
and the header utility opens the dialog; there were no console errors. This source change has not been pushed or
|
||||
deployed to `8.138.234.141:8765`, so the reported production behavior remains until a controlled release.
|
||||
|
||||
## Implemented Locally On 2026-08-11
|
||||
|
||||
- Implemented Booking parser 2.1.0 exact-header compatibility for the user-confirmed July legacy and August bilingual
|
||||
@@ -31,6 +42,34 @@ immutable OSS adapter, while download routing retains controlled-local compatibi
|
||||
draft, Booking batch, Finance fact or runtime process was changed. Deployment and a controlled post-restart
|
||||
read-only replay remain pending; QBD pending items are existing room-type review work, not a header failure.
|
||||
|
||||
## Diagnosed On 2026-08-11
|
||||
|
||||
- The reported company-channel Booking Excel parse failure occurs before object storage and draft persistence; a
|
||||
read-only database snapshot shows no new draft/artifact/batch and accepted batch 7 `july-test.xlsx` remains current.
|
||||
Exact parser replay isolates two cases: generated Daily/channel report workbooks are correctly rejected as the wrong
|
||||
input type, while current Lian Tai/QBD raw workbooks expose a parser compatibility defect because bilingual
|
||||
`Tour Code / 主团号` and hotel-detail headers do not equal the narrow exact alias allowlist. Replacing only those two
|
||||
headers in memory makes both raw workbooks parse, with original files and all business state unchanged. At diagnosis,
|
||||
the controlled alias expansion plus regression fixtures remained unimplemented. The user has now explicitly confirmed that both
|
||||
supplied formats must be supported. An exact three-alias process-memory probe recognizes only the intended sheet in
|
||||
each file: Lian Tai yields 67 rows/100 items/16 pending, while QBD 2026-08-06 yields 104 rows/218 items/212 pending;
|
||||
Daily/channel output workbooks remain rejected. This parser-only plan needs no migration or upload-page redesign, but
|
||||
the existing one-file/full-replacement activation model still cannot append two separately uploaded files.
|
||||
- The exact desktop `0806.XML` deterministically fails processor 4.0.0 before any row or price processing with
|
||||
`XML_PARSE_ERROR` at line 1872, column 0. A `TRACE_TEXT` value contains one CESU-8 surrogate pair representing
|
||||
`U+1F389` even though the document declares UTF-8; the file is structurally closed and not truncated. This error is
|
||||
outside the pure-`PRICE_UNMATCHED` review boundary, so a formal failure with no manual-price panel is correct. The
|
||||
public deployment health endpoint remains 200. The source must be re-exported as valid UTF-8 and uploaded as a new
|
||||
task; no source, runtime, database, Finance, object-store or event state was changed during diagnosis.
|
||||
|
||||
## Artifact Conversion On 2026-08-11
|
||||
|
||||
- The user-supplied `8.6 修正.XML` was an XLSX package mislabeled with an XML extension. Its 181-row first sheet
|
||||
contains the flattened Opera fields needed by the ARR parser. A separate UTF-8 `RES_DETAIL` XML was reconstructed
|
||||
from those rows and passed strict XML/UTF-8 checks plus processor 4.0.0: 115 retained rows, 37 rate-code exclusions,
|
||||
29 duplicates and zero price-unmatched/review rows. The original workbook and malformed XML remain unchanged; no
|
||||
upload, Finance, database, object-store or event state was changed.
|
||||
|
||||
## Runtime Recovery On 2026-08-06
|
||||
|
||||
- Restored the local ARR login page after a reported opening failure. No Web process was listening and the retained
|
||||
@@ -315,8 +354,9 @@ immutable OSS adapter, while download routing retains controlled-local compatibi
|
||||
- Updated the daily XML upload surface so submitting ARR.XML stays on the daily page instead of opening the task-log
|
||||
dialog automatically. The upload card now shows a compact stage-based estimate for upload, fixed processing,
|
||||
validation and database commit, finalizing at 100% on success and retaining an inline error state on failure. The
|
||||
header task-log button and daily-history row actions still open the existing trace dialog on demand. JavaScript
|
||||
syntax and 15 focused Web/static/trace tests pass; no API or processing behavior changed.
|
||||
header task-log button remains the sole on-demand trace entry; the later 2026-08-11 interaction correction removed
|
||||
daily-history row log activation. JavaScript syntax and the original 15 focused Web/static/trace tests passed; no API
|
||||
or processing behavior changed.
|
||||
- Simplified the desktop monthly page into a single six-column download table. The redundant standard-monthly heading,
|
||||
`VERSION HISTORY`/version-record copy, visible monthly `版本` column and C/O-period footer note are removed; the
|
||||
navigation label is now `月报`; the list is identified by a compact `月报处理` heading. The visible `更新至` cell reads the explicit `max_arrival_date` API field, which is
|
||||
@@ -401,10 +441,10 @@ immutable OSS adapter, while download routing retains controlled-local compatibi
|
||||
- The desktop and H5 headers use the plain `ARR Report` identity with no decorative icon. The daily content heading is
|
||||
`Daily Report`; the duplicated daily/monthly explanatory copy has been removed without changing automatic publishing.
|
||||
- The desktop header utility formerly labeled `手机看板` is now `任务日志` and opens the existing black task console in
|
||||
a native modal. The console no longer occupies the daily-processing layout; upload completion and daily-history row
|
||||
activation open the selected job directly. `/h5` remains available by direct URL. Both history and trace SQL are
|
||||
explicitly limited to `pipeline_type = 'opera_daily'`, so this is a one-daily-job processing trace rather than a
|
||||
global server, monthly-run or company-report log.
|
||||
a native modal. The console no longer occupies the daily-processing layout, and the 2026-08-11 interaction correction
|
||||
makes this header utility its only opener; upload completion and Daily rows do not open it. `/h5` remains available
|
||||
by direct URL. Both history and trace SQL are explicitly limited to `pipeline_type = 'opera_daily'`, so this is a
|
||||
one-daily-job processing trace rather than a global server, monthly-run or company-report log.
|
||||
- Refined the daily desktop surface after visual review. `ARR Report` remains the dominant workspace title while
|
||||
`Daily Report` is smaller; `任务日志` is a compact outlined button at the adjacent status-label size; the upload
|
||||
station is centered and responsive; decorative `01 / UPLOAD` and `本月留痕` labels are gone; and `开始处理` is a
|
||||
|
||||
Reference in New Issue
Block a user