2.8 KiB
2.8 KiB
Daily commit waiting for monthly worker
User question
The operator reported that a Daily Report upload appeared complete but the monthly report did not update.
Read-only checks
- Port 8766 returned
ready; the active process list showed the ARR Web service but no independentmonthly_reports.worker/arr-monthly-workerprocess. - The newest
opera_dailyprocessing run is run 39. It finished at 2026-08-03 10:49:01 +08 withacceptedstatus and no failure code. - Finance daily version 14 is
activefor business date 2026-08-01 and contains 111 retained rows. Its retainedARRIVALscope is 2026-08-01, so the automatic worker would derive an August 2026 monthly request. - Outbox event 20 (
processing-run:39:accepted,arr.daily_version_committed) is stillpending, has zero publish attempts and no error code, and has been available since 2026-08-03 10:49:01 +08. reporting.monthly_runscontains only July versions. July V04 is active withas_of_date=2026-07-27; no August version is present.- A second read-only check found a backlog of five daily-commit events, IDs 16–20, all
pendingwith zero attempts and no error. Events 16–19 derive the July request through 2026-07-27; event 20 derives the August request through 2026-08-01. Recovery should let the worker consume them in order and retain its idempotent publication behavior. - The controlled database file, Python runtime, Node binary and artifact-tool module pass preflight checks. The focused monthly suite passes 27 tests with two optional skips. No worker was started and no monthly publication or database write was performed.
- The monthly page polls every four seconds only while its tab is visible. That can delay page display, but it cannot explain the missing database row because event 20 has not been consumed.
Recovery
- The user authorized recovery. A detached
arr2-monthly-workerScreen session was started with the controlledbooking_testconfiguration and the verified Node/artifact-tool paths. - The worker consumed outbox events 15–20 in order. Each is now
publishedwith one attempt and no error code. - July V05 is
activeatas_of_date=2026-07-27with 987 rows; older July V04 issuperseded. August V01 isactiveatas_of_date=2026-08-01with 111 rows. - The August registered workbook/result pair exists under the controlled project output, the XLSX passes ZIP
integrity, the result JSON reports
success, and Web/healthzremainsready.
Conclusion
The Daily Report was correct; the missing monthly update was caused by the absent worker process. The report is now updated without re-uploading the source. The remaining operational gap is reboot-persistent supervision of the detached worker, which is intentionally separate from this recovery and from the later logging work.