3.1 KiB
3.1 KiB
Task-Log Relocation and Daily-Only Scope
Metadata
- Date: 2026-07-30
- Status: Historical before-state; superseded by the 2026-07-31 upload interaction update
- Scope: Desktop task-log information architecture, interaction and backend query boundary
- Confidence: Fact
- Source:
arr_web/static/,arr_web/repository.py, focused tests and live local browser verification - Last verified: 2026-07-30
- Stale trigger: The header utility, trace API/query, processing pipeline type, or task-console selection/polling lifecycle changes
User-Facing Outcome
- The desktop header position formerly occupied by
手机看板now contains a任务日志button. - The sole existing black task console moved out of the 日报处理 panel into a native modal dialog; no duplicate console or alternate trace implementation was introduced.
- Before the 2026-07-31 upload interaction update, starting an upload opened the dialog. Mouse or keyboard activation of a daily-history row still opens the selected job's trace.
- Closing the dialog returns focus to the opener. Trace polling runs only while the dialog is open and the selected job remains active.
- The
/h5route and assets remain intact, but the desktop header no longer links to them.
Scope Proof
JOBS_SQL,JOBS_COUNT_SQLandJOB_TRACE_RUN_SQLeach explicitly requirerun.pipeline_type = 'opera_daily'.GET /api/jobs/{job_id}/traceresolves exactly one validated job ID.get_job_tracereads that run's processing attempts, artifact deliveries or legacy direct submissions, linked Finance daily versions and processing-run outbox events, then sends those allowlisted facts tobuild_job_trace.- The console therefore represents one daily XML-processing job across upload, processor, validation, database and linked downstream-notification stages. It is not a global application/server log and does not enumerate other daily jobs, reporting monthly-run histories or company-report jobs.
Verification
node --check arr_web/static/app.js: passed.- Focused unit set: 12 passed across task-log UI contracts, repository SQL/privacy contracts and trace projection.
- At 1440×900, the live modal measured 1040×692, remained centered, had no page horizontal overflow and rendered a
current 13-event terminal. Closing returned focus to
#task-log-trigger. - Activating a different daily-history row selected the matching job and loaded
SUCCEEDED,13 eventsand anENDterminal line. - At 375×812, the modal measured 355×792 with 10-pixel margins. The header trigger remained displayed; document and dialog horizontal-overflow checks were both false, with long raw lines confined to the terminal scroller.
- Browser warning/error count was zero.
Known Verification Boundary
The broader tests.test_arr_web class currently issues anonymous requests while separate in-progress login work has
already changed the application to return redirects/401 responses. That class reported 13 authentication-boundary
failures/errors before reaching the relocation assertions. Authentication files were left untouched; task-specific
static contracts were isolated in tests/test_arr_web_task_log_ui.py.