ruumica documentation

Watch for waiting work

Find the field work that is stuck, held or refused, and the projects whose replays are slow.

Most waiting ops sort themselves out: a missing reference arrives, a file finishes uploading. Some need a person. asbuilt sync pending lists them, so nothing waits unnoticed.

Before you start

  • DATABASE_URL is set.

Steps

  1. List what is waiting:

    $ asbuilt sync pending
    0 op(s) stuck in the edge inbox (never reached PostgreSQL)
    0 op(s) rejected because of their user
    0 op(s) pending for more than 7 day(s)
    0 project(s) whose last replay took more than 1000 ms
    0 finding(s)
    
  2. Read each group:

    Group Means Do
    Stuck in the edge inbox Ops the edge accepted that never reached the database, after repeated attempts. Check the queue and the sync worker.
    Rejected because of their user Ops from a user outside the project’s organisation, or a disabled one (USER_NOT_IN_ORG, USER_DISABLED). Check the user’s account.
    Pending for more than N days Ops waiting for a missing reference or held for a reason (Hold reasons). Follow the hold reason; a missing reference usually means a device has not synced.
    Slow replays Projects whose last full replay took longer than the limit. Report it; it is a capacity warning.
    Findings Notes about ops, such as TRACE_SUMMARY_MISMATCH. Check the trace in the office.
  3. Adjust the limits with --older-than-days and --slow-replay-ms, or add --json for a machine-readable list.

Check

Run it regularly, for example every morning. Every group is 0, or each entry has an owner.

Last changed 2026-11-15