2.0 KiB
2.0 KiB
ARR Job Trace Semantics for Internet Deployment
Question
Whether the ARR task trace is understandable when ARR is deployed on a server reachable through the internet, rather than being interpreted as if processing occurred on the operator's computer.
Findings
- The current
artifact_callbackpath is owned by ARR's fixed processor. It does not create a remote Agent/MCP run, soremote_run_id=nullis expected and is not a failure. - Persisted delivery keys such as
local-arrjob-...-a1are delivery/idempotency identities. They are retained for compatibility and are not a claim about the user's machine or the server's geographic location. - A successful job with
current_stage=downstreamandDOWNSTREAM_EVENT_QUEUEDhas already committed the Finance version.publish_status=pendingmeans the durable outbox event is waiting for its downstream consumer.
Change
The trace job summary now adds:
| Field | artifact_callback |
legacy direct_mcp |
|---|---|---|
execution_scope |
arr_runtime |
remote_agent |
processor_mode |
fixed_processor |
legacy_direct_mcp |
remote_dispatch |
none |
mcp |
User-visible messages now say ARR 固定处理器输出 and explicitly state Finance 数据库提交已完成 before the
outbox wait. Existing delivery_mode, remote_run_id, trace version, persisted delivery IDs and privacy allowlist
remain compatible.
Verification
python3 -m unittest tests.test_arr_web_job_trace tests.test_arr_web_task_log_ui tests.test_arr_web— 27 passed.python3 -m py_compile arr_web/job_trace.py— passed.node --check arr_web/static/app.js— passed.git diff --check— passed.- No live task was rerun, no service was restarted and no Finance/report/Booking business data was changed.
Follow-up
After deployment, inspect one successful artifact_callback trace and confirm the additive header fields appear in the
deployed CLI/API/UI. This is a display/observability acceptance step; it is separate from rerunning the historical
2026-07 company-report 11-20 publication.