Xray · see through your fleet
1h 6h 24h 48h 3d
custom ▾
live

Logs

Live Cloud Logging query (nothing stored) · master · trace 79c1b1d449c514f7792f (2-day window) · newest first · page 1 (200/page) · 34 entries in 1114 ms all app neo4j weaviate time relative absolute

reset
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant ✅ Org 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e summary: processed=4, reminders_sent=0, moved_to_need_attention=0
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
✅ Org 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e summary: processed=4, reminders_sent=0, moved_to_need_attention=0
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:377",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "\u2705 Org 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e summary: processed=4, reminders_sent=0, moved_to_need_attention=0",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.930Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [reminder] wo=5fda6743-4617-464f-9598-5ffebf341fa6 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=5fda6743-4617-464f-9598-5ffebf341fa6 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=830m < step=1440m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=5fda6743-4617-464f-9598-5ffebf341fa6 mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=830m \u003c step=1440m\u0027",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.930Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
            WHERE f.delpending = false
            RETURN f
            ORDER BY f.createdat ASC
raw payload (15 fields)
{
  "allocatedBytes": 724.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24652298",
  "pageFaults": 0.0,
  "pageHits": 6.0,
  "planning": 0.0,
  "query": "\n            MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n            WHERE f.delpending = false\n            RETURN f\n            ORDER BY f.createdat ASC\n            ",
  "queryParameters": "{work_order_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.927Z",
  "transactionId": 12030439.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses 
        OPTIONAL MATCH (d:Document)
        WHERE d.tildaid IN COALESCE(a.docIds, [])
        WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents
        // Compute latest AI_MSG draft id per work order for gating REGENERATE
        OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]->(ai:WorkOrderActivity)
        WHERE ai.activity_type = 'AI_MSG'  // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck
        WITH w, a, documents,
             max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,
             collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs
        WITH a, documents,
             CASE
               WHEN size(ai_msgs) = 0 THEN false
               ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)
             END AS is_latest_draft
        RETURN a,
               CASE WHEN size(documents) > 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,
               is_latest_draft
        ORDER BY a.createdat DESC
        SKIP $skip
        LIMIT $limit
raw payload (15 fields)
{
  "allocatedBytes": 3272.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24652297",
  "pageFaults": 0.0,
  "pageHits": 12.0,
  "planning": 0.0,
  "query": "\n        MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n        OPTIONAL MATCH (d:Document)\n        WHERE d.tildaid IN COALESCE(a.docIds, [])\n        WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n        // Compute latest AI_MSG draft id per work order for gating REGENERATE\n        OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n        WHERE ai.activity_type = \u0027AI_MSG\u0027  // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n        WITH w, a, documents,\n             max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n             collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n        WITH a, documents,\n             CASE\n               WHEN size(ai_msgs) = 0 THEN false\n               ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n             END AS is_latest_draft\n        RETURN a,\n               CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n               is_latest_draft\n        ORDER BY a.createdat DESC\n        SKIP $skip\n        LIMIT $limit\n        ",
  "queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.920Z",
  "transactionId": 12030438.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses 
        RETURN count(a) as total
raw payload (15 fields)
{
  "allocatedBytes": 488.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24652296",
  "pageFaults": 0.0,
  "pageHits": 13.0,
  "planning": 0.0,
  "query": "\n        MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n        RETURN count(a) as total\n        ",
  "queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.917Z",
  "transactionId": 12030438.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (wo:WorkOrder {tildaid: $wo_id})
        OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type: 'U_REPLY'})
        RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts
raw payload (15 fields)
{
  "allocatedBytes": 928.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24652295",
  "pageFaults": 0.0,
  "pageHits": 15.0,
  "planning": 0.0,
  "query": "\n        MATCH (wo:WorkOrder {tildaid: $wo_id})\n        OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n        RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n        ",
  "queryParameters": "{wo_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.910Z",
  "transactionId": 12030437.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24652294",
  "pageFaults": 0.0,
  "pageHits": 8.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.902Z",
  "transactionId": 12030436.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 5fda6743-4617-464f-9598-5ffebf341fa6
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 5fda6743-4617-464f-9598-5ffebf341fa6
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 5fda6743-4617-464f-9598-5ffebf341fa6",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.897Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [daily_cron] About to process work order 5fda6743-4617-464f-9598-5ffebf341fa6
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 5fda6743-4617-464f-9598-5ffebf341fa6
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 5fda6743-4617-464f-9598-5ffebf341fa6",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.897Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [reminder] wo=322547e7-b0fd-4d98-963d-afb231950377 no reminder policy (NONE) — nothing to do
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=322547e7-b0fd-4d98-963d-afb231950377 no reminder policy (NONE) — nothing to do
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:220",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=322547e7-b0fd-4d98-963d-afb231950377 no reminder policy (NONE) \u2014 nothing to do",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.897Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
            WHERE f.delpending = false
            RETURN f
            ORDER BY f.createdat ASC
raw payload (15 fields)
{
  "allocatedBytes": 724.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24652293",
  "pageFaults": 0.0,
  "pageHits": 7.0,
  "planning": 0.0,
  "query": "\n            MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n            WHERE f.delpending = false\n            RETURN f\n            ORDER BY f.createdat ASC\n            ",
  "queryParameters": "{work_order_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.894Z",
  "transactionId": 12030435.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses 
        OPTIONAL MATCH (d:Document)
        WHERE d.tildaid IN COALESCE(a.docIds, [])
        WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents
        // Compute latest AI_MSG draft id per work order for gating REGENERATE
        OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]->(ai:WorkOrderActivity)
        WHERE ai.activity_type = 'AI_MSG'  // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck
        WITH w, a, documents,
             max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,
             collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs
        WITH a, documents,
             CASE
               WHEN size(ai_msgs) = 0 THEN false
               ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)
             END AS is_latest_draft
        RETURN a,
               CASE WHEN size(documents) > 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,
               is_latest_draft
        ORDER BY a.createdat DESC
        SKIP $skip
        LIMIT $limit
raw payload (15 fields)
{
  "allocatedBytes": 3272.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24652292",
  "pageFaults": 0.0,
  "pageHits": 8.0,
  "planning": 0.0,
  "query": "\n        MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n        OPTIONAL MATCH (d:Document)\n        WHERE d.tildaid IN COALESCE(a.docIds, [])\n        WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n        // Compute latest AI_MSG draft id per work order for gating REGENERATE\n        OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n        WHERE ai.activity_type = \u0027AI_MSG\u0027  // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n        WITH w, a, documents,\n             max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n             collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n        WITH a, documents,\n             CASE\n               WHEN size(ai_msgs) = 0 THEN false\n               ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n             END AS is_latest_draft\n        RETURN a,\n               CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n               is_latest_draft\n        ORDER BY a.createdat DESC\n        SKIP $skip\n        LIMIT $limit\n        ",
  "queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.887Z",
  "transactionId": 12030434.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses 
        RETURN count(a) as total
raw payload (15 fields)
{
  "allocatedBytes": 488.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24652291",
  "pageFaults": 0.0,
  "pageHits": 9.0,
  "planning": 0.0,
  "query": "\n        MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n        RETURN count(a) as total\n        ",
  "queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.883Z",
  "transactionId": 12030434.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (wo:WorkOrder {tildaid: $wo_id})
        OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type: 'U_REPLY'})
        RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts
raw payload (15 fields)
{
  "allocatedBytes": 928.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24652290",
  "pageFaults": 0.0,
  "pageHits": 13.0,
  "planning": 0.0,
  "query": "\n        MATCH (wo:WorkOrder {tildaid: $wo_id})\n        OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n        RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n        ",
  "queryParameters": "{wo_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.876Z",
  "transactionId": 12030433.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24652289",
  "pageFaults": 0.0,
  "pageHits": 7.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.868Z",
  "transactionId": 12030432.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 322547e7-b0fd-4d98-963d-afb231950377
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 322547e7-b0fd-4d98-963d-afb231950377
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 322547e7-b0fd-4d98-963d-afb231950377",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.864Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [daily_cron] About to process work order 322547e7-b0fd-4d98-963d-afb231950377
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 322547e7-b0fd-4d98-963d-afb231950377
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 322547e7-b0fd-4d98-963d-afb231950377",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.863Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [reminder] wo=6ff3918b-05db-4310-bde3-9019341f582a no reminder policy (NONE) — nothing to do
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=6ff3918b-05db-4310-bde3-9019341f582a no reminder policy (NONE) — nothing to do
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:220",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=6ff3918b-05db-4310-bde3-9019341f582a no reminder policy (NONE) \u2014 nothing to do",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.863Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
            WHERE f.delpending = false
            RETURN f
            ORDER BY f.createdat ASC
raw payload (15 fields)
{
  "allocatedBytes": 724.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24652287",
  "pageFaults": 0.0,
  "pageHits": 7.0,
  "planning": 0.0,
  "query": "\n            MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n            WHERE f.delpending = false\n            RETURN f\n            ORDER BY f.createdat ASC\n            ",
  "queryParameters": "{work_order_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.860Z",
  "transactionId": 12030431.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses 
        OPTIONAL MATCH (d:Document)
        WHERE d.tildaid IN COALESCE(a.docIds, [])
        WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents
        // Compute latest AI_MSG draft id per work order for gating REGENERATE
        OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]->(ai:WorkOrderActivity)
        WHERE ai.activity_type = 'AI_MSG'  // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck
        WITH w, a, documents,
             max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,
             collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs
        WITH a, documents,
             CASE
               WHEN size(ai_msgs) = 0 THEN false
               ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)
             END AS is_latest_draft
        RETURN a,
               CASE WHEN size(documents) > 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,
               is_latest_draft
        ORDER BY a.createdat DESC
        SKIP $skip
        LIMIT $limit
raw payload (15 fields)
{
  "allocatedBytes": 3272.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24652286",
  "pageFaults": 0.0,
  "pageHits": 11.0,
  "planning": 0.0,
  "query": "\n        MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n        OPTIONAL MATCH (d:Document)\n        WHERE d.tildaid IN COALESCE(a.docIds, [])\n        WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n        // Compute latest AI_MSG draft id per work order for gating REGENERATE\n        OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n        WHERE ai.activity_type = \u0027AI_MSG\u0027  // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n        WITH w, a, documents,\n             max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n             collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n        WITH a, documents,\n             CASE\n               WHEN size(ai_msgs) = 0 THEN false\n               ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n             END AS is_latest_draft\n        RETURN a,\n               CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n               is_latest_draft\n        ORDER BY a.createdat DESC\n        SKIP $skip\n        LIMIT $limit\n        ",
  "queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.853Z",
  "transactionId": 12030430.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses 
        RETURN count(a) as total
raw payload (15 fields)
{
  "allocatedBytes": 488.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24652284",
  "pageFaults": 0.0,
  "pageHits": 12.0,
  "planning": 0.0,
  "query": "\n        MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n        RETURN count(a) as total\n        ",
  "queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.850Z",
  "transactionId": 12030430.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (wo:WorkOrder {tildaid: $wo_id})
        OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type: 'U_REPLY'})
        RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts
raw payload (15 fields)
{
  "allocatedBytes": 928.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24652283",
  "pageFaults": 0.0,
  "pageHits": 16.0,
  "planning": 0.0,
  "query": "\n        MATCH (wo:WorkOrder {tildaid: $wo_id})\n        OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n        RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n        ",
  "queryParameters": "{wo_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.843Z",
  "transactionId": 12030429.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24652281",
  "pageFaults": 0.0,
  "pageHits": 8.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.835Z",
  "transactionId": 12030428.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 6ff3918b-05db-4310-bde3-9019341f582a
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 6ff3918b-05db-4310-bde3-9019341f582a
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 6ff3918b-05db-4310-bde3-9019341f582a",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.831Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [daily_cron] About to process work order 6ff3918b-05db-4310-bde3-9019341f582a
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 6ff3918b-05db-4310-bde3-9019341f582a
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 6ff3918b-05db-4310-bde3-9019341f582a",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.831Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [reminder] wo=c10303ac-4c50-40fa-9713-4e535108f3b7 no reminder policy (NONE) — nothing to do
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=c10303ac-4c50-40fa-9713-4e535108f3b7 no reminder policy (NONE) — nothing to do
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:220",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=c10303ac-4c50-40fa-9713-4e535108f3b7 no reminder policy (NONE) \u2014 nothing to do",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.830Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
            WHERE f.delpending = false
            RETURN f
            ORDER BY f.createdat ASC
raw payload (15 fields)
{
  "allocatedBytes": 724.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24652279",
  "pageFaults": 0.0,
  "pageHits": 6.0,
  "planning": 0.0,
  "query": "\n            MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n            WHERE f.delpending = false\n            RETURN f\n            ORDER BY f.createdat ASC\n            ",
  "queryParameters": "{work_order_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.827Z",
  "transactionId": 12030427.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses 
        OPTIONAL MATCH (d:Document)
        WHERE d.tildaid IN COALESCE(a.docIds, [])
        WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents
        // Compute latest AI_MSG draft id per work order for gating REGENERATE
        OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]->(ai:WorkOrderActivity)
        WHERE ai.activity_type = 'AI_MSG'  // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck
        WITH w, a, documents,
             max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,
             collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs
        WITH a, documents,
             CASE
               WHEN size(ai_msgs) = 0 THEN false
               ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)
             END AS is_latest_draft
        RETURN a,
               CASE WHEN size(documents) > 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,
               is_latest_draft
        ORDER BY a.createdat DESC
        SKIP $skip
        LIMIT $limit
raw payload (15 fields)
{
  "allocatedBytes": 3272.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24652278",
  "pageFaults": 0.0,
  "pageHits": 17.0,
  "planning": 0.0,
  "query": "\n        MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n        OPTIONAL MATCH (d:Document)\n        WHERE d.tildaid IN COALESCE(a.docIds, [])\n        WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n        // Compute latest AI_MSG draft id per work order for gating REGENERATE\n        OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n        WHERE ai.activity_type = \u0027AI_MSG\u0027  // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n        WITH w, a, documents,\n             max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n             collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n        WITH a, documents,\n             CASE\n               WHEN size(ai_msgs) = 0 THEN false\n               ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n             END AS is_latest_draft\n        RETURN a,\n               CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n               is_latest_draft\n        ORDER BY a.createdat DESC\n        SKIP $skip\n        LIMIT $limit\n        ",
  "queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.820Z",
  "transactionId": 12030426.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses 
        RETURN count(a) as total
raw payload (15 fields)
{
  "allocatedBytes": 488.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24652277",
  "pageFaults": 0.0,
  "pageHits": 18.0,
  "planning": 0.0,
  "query": "\n        MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n        WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n        RETURN count(a) as total\n        ",
  "queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.816Z",
  "transactionId": 12030426.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (wo:WorkOrder {tildaid: $wo_id})
        OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type: 'U_REPLY'})
        RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts
raw payload (15 fields)
{
  "allocatedBytes": 928.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24652276",
  "pageFaults": 0.0,
  "pageHits": 26.0,
  "planning": 0.0,
  "query": "\n        MATCH (wo:WorkOrder {tildaid: $wo_id})\n        OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n        RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n        ",
  "queryParameters": "{wo_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.809Z",
  "transactionId": 12030425.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 00:10:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24652275",
  "pageFaults": 0.0,
  "pageHits": 7.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T00:10:10.801Z",
  "transactionId": 12030424.0,
  "waiting": 0.0
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order c10303ac-4c50-40fa-9713-4e535108f3b7
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order c10303ac-4c50-40fa-9713-4e535108f3b7
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order c10303ac-4c50-40fa-9713-4e535108f3b7",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.796Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant [daily_cron] About to process work order c10303ac-4c50-40fa-9713-4e535108f3b7
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order c10303ac-4c50-40fa-9713-4e535108f3b7
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order c10303ac-4c50-40fa-9713-4e535108f3b7",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.796Z",
  "version": "unknown"
}
2h ago2026-07-27 00:10:10 UTC DEBUG virtual-assistant 🏢 Processing organization 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e (4 work orders)
time2026-07-27 00:10:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace79c1b1d449c514f7792ffede529968de
spancf681a063ffd9713
podvirtual-assistant-65b975d66b-l8wpw
message
🏢 Processing organization 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e (4 work orders)
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:362",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "\ud83c\udfe2 Processing organization 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e (4 work orders)",
  "org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T00:10:10.796Z",
  "version": "unknown"
}

Paginated with Cloud Logging page cursors, so you can walk the whole 2-day window — not just the newest page. Click any filter by value to scope the view (resets to page 1). Paste a trace id to see every log line across all services for that one request.