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

Logs

Live Cloud Logging query (nothing stored) · master · last 6h · newest first · page 2 (200/page) · 200 entries in 2992 ms all app neo4j weaviate time relative absolute

reset
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant 🏢 Processing organization 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e (4 work orders)
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace7751642196c75bf207c5321afefa0df9
spanc655af7278df3d88
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-27T01:11:19.349Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podvirtual-assistant-65b975d66b-l8wpw
message
✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, 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 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0",
  "org_alias": "8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.348Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e 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=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) \u2014 nothing to do",
  "org_alias": "8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.348Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935231",
  "pageFaults": 0.0,
  "pageHits": 5.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: \u002757c957cb-a23f-4f3a-8bf1-bb9e566a2b6e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.342Z",
  "transactionId": 12134244.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935230",
  "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        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: \u002757c957cb-a23f-4f3a-8bf1-bb9e566a2b6e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.329Z",
  "transactionId": 12134243.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
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": "24935229",
  "pageFaults": 0.0,
  "pageHits": 10.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: \u002757c957cb-a23f-4f3a-8bf1-bb9e566a2b6e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.324Z",
  "transactionId": 12134243.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935228",
  "pageFaults": 0.0,
  "pageHits": 14.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: \u002757c957cb-a23f-4f3a-8bf1-bb9e566a2b6e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.311Z",
  "transactionId": 12134242.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935227",
  "pageFaults": 0.0,
  "pageHits": 11.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u002757c957cb-a23f-4f3a-8bf1-bb9e566a2b6e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.298Z",
  "transactionId": 12134241.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e",
  "org_alias": "8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.291Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e",
  "org_alias": "8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.291Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:200",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending \u2014 skipping reminder (no send, no draft) to preserve user intent",
  "org_alias": "8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.290Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
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": 7656.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935226",
  "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: 25, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.284Z",
  "transactionId": 12134240.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
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": "24935225",
  "pageFaults": 0.0,
  "pageHits": 7.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: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.279Z",
  "transactionId": 12134240.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC ERROR observability: level watcher could not stat config file /etc/config/observability.yaml: stat /etc/config/observability.yaml: no such file or directory
filter by: severity≥ERROR
time2026-07-27 01:11:19 UTC
severityERROR
clustermaster
poddocsvc-5698bb997f-pc9ql
message
observability: level watcher could not stat config file /etc/config/observability.yaml: stat /etc/config/observability.yaml: no such file or directory
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization)
            RETURN COALESCE(o.reminderApprovalRequired, true) AS approval_required
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E5CF3BBC",
  "id": "24935223",
  "pageFaults": 0.0,
  "pageHits": 28.0,
  "planning": 0.0,
  "query": "\n            MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]-\u003e(o:Organization)\n            RETURN COALESCE(o.reminderApprovalRequired, true) AS approval_required\n            ",
  "queryParameters": "{wo: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.267Z",
  "transactionId": 12134239.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
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": 7560.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935222",
  "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: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.254Z",
  "transactionId": 12134238.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24935221",
  "pageFaults": 0.0,
  "pageHits": 7.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: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.248Z",
  "transactionId": 12134238.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
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": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935220",
  "pageFaults": 0.0,
  "pageHits": 9.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: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.235Z",
  "transactionId": 12134237.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935219",
  "pageFaults": 0.0,
  "pageHits": 9.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.222Z",
  "transactionId": 12134236.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67",
  "org_alias": "8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.215Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67",
  "org_alias": "8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.215Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace74c3ea16c1265dafd3e2915fdc83331a
spanf2f04cd3a324fad2
podvirtual-assistant-65b975d66b-l8wpw
message
🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:362",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "\ud83c\udfe2 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)",
  "org_alias": "8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.215Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant ✅ Org 9f996610-f74a-4cd5-9052-cb5405d78c6f summary: processed=12, reminders_sent=0, moved_to_need_attention=0
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
✅ Org 9f996610-f74a-4cd5-9052-cb5405d78c6f summary: processed=12, 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 9f996610-f74a-4cd5-9052-cb5405d78c6f summary: processed=12, reminders_sent=0, moved_to_need_attention=0",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.214Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [reminder] wo=485f1414-f260-45ca-806c-a1c7843624bc mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=485f1414-f260-45ca-806c-a1c7843624bc mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=2295m < step=2880m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=485f1414-f260-45ca-806c-a1c7843624bc mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=2295m \u003c step=2880m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.214Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 776.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935218",
  "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: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.208Z",
  "transactionId": 12134235.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935217",
  "pageFaults": 0.0,
  "pageHits": 4.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: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.195Z",
  "transactionId": 12134234.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24935216",
  "pageFaults": 0.0,
  "pageHits": 6.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: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.189Z",
  "transactionId": 12134234.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935215",
  "pageFaults": 0.0,
  "pageHits": 7.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: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.177Z",
  "transactionId": 12134233.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935214",
  "pageFaults": 0.0,
  "pageHits": 9.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.163Z",
  "transactionId": 12134232.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 485f1414-f260-45ca-806c-a1c7843624bc
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 485f1414-f260-45ca-806c-a1c7843624bc
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 485f1414-f260-45ca-806c-a1c7843624bc",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.156Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] About to process work order 485f1414-f260-45ca-806c-a1c7843624bc
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 485f1414-f260-45ca-806c-a1c7843624bc
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 485f1414-f260-45ca-806c-a1c7843624bc",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.155Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [reminder] wo=88f04d6a-d740-47c4-bc29-a959b502598e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=88f04d6a-d740-47c4-bc29-a959b502598e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=3272m < step=2880m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=88f04d6a-d740-47c4-bc29-a959b502598e mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=3272m \u003c step=2880m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.155Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935213",
  "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: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.149Z",
  "transactionId": 12134231.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935212",
  "pageFaults": 0.0,
  "pageHits": 4.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: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.136Z",
  "transactionId": 12134230.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24935211",
  "pageFaults": 0.0,
  "pageHits": 6.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: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.131Z",
  "transactionId": 12134230.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935210",
  "pageFaults": 0.0,
  "pageHits": 7.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: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.117Z",
  "transactionId": 12134229.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935209",
  "pageFaults": 0.0,
  "pageHits": 10.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.103Z",
  "transactionId": 12134228.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 88f04d6a-d740-47c4-bc29-a959b502598e
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 88f04d6a-d740-47c4-bc29-a959b502598e
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 88f04d6a-d740-47c4-bc29-a959b502598e",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.095Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] About to process work order 88f04d6a-d740-47c4-bc29-a959b502598e
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 88f04d6a-d740-47c4-bc29-a959b502598e
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 88f04d6a-d740-47c4-bc29-a959b502598e",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.095Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [reminder] wo=8b2449c7-0c34-47c4-b4b9-ae5867fb2d45 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=8b2449c7-0c34-47c4-b4b9-ae5867fb2d45 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=3292m < step=2880m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=8b2449c7-0c34-47c4-b4b9-ae5867fb2d45 mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=3292m \u003c step=2880m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.095Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 828.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935208",
  "pageFaults": 0.0,
  "pageHits": 9.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: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.088Z",
  "transactionId": 12134227.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935207",
  "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: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.074Z",
  "transactionId": 12134226.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935206",
  "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: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.069Z",
  "transactionId": 12134226.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935205",
  "pageFaults": 0.0,
  "pageHits": 17.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: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.057Z",
  "transactionId": 12134225.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935204",
  "pageFaults": 0.0,
  "pageHits": 11.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.044Z",
  "transactionId": 12134224.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.036Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [daily_cron] About to process work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.036Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC DEBUG virtual-assistant [reminder] wo=c6b45988-3afb-4efc-843d-efe22819df8a mode=RECURRING should_send=False escalate=False override=set reason='override pending: eligible...
time2026-07-27 01:11:19 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=c6b45988-3afb-4efc-843d-efe22819df8a mode=RECURRING should_send=False escalate=False override=set reason='override pending: eligible in 1016m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=c6b45988-3afb-4efc-843d-efe22819df8a mode=RECURRING should_send=False escalate=False override=set reason=\u0027override pending: eligible in 1016m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:19.036Z",
  "version": "unknown"
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 828.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935203",
  "pageFaults": 0.0,
  "pageHits": 11.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: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.029Z",
  "transactionId": 12134223.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935202",
  "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: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.017Z",
  "transactionId": 12134222.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 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 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24935201",
  "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: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:19.012Z",
  "transactionId": 12134222.0,
  "waiting": 0.0
}
36s ago2026-07-27 01:11:19 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:19 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935200",
  "pageFaults": 0.0,
  "pageHits": 30.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: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.999Z",
  "transactionId": 12134221.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935199",
  "pageFaults": 0.0,
  "pageHits": 11.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.987Z",
  "transactionId": 12134220.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order c6b45988-3afb-4efc-843d-efe22819df8a
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order c6b45988-3afb-4efc-843d-efe22819df8a
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order c6b45988-3afb-4efc-843d-efe22819df8a",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.979Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order c6b45988-3afb-4efc-843d-efe22819df8a
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order c6b45988-3afb-4efc-843d-efe22819df8a
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order c6b45988-3afb-4efc-843d-efe22819df8a",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.979Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=d74db13c-677a-4fd3-89f6-02349b34abfb mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=d74db13c-677a-4fd3-89f6-02349b34abfb mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=3371m < step=2880m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=d74db13c-677a-4fd3-89f6-02349b34abfb mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=3371m \u003c step=2880m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.979Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 776.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935198",
  "pageFaults": 0.0,
  "pageHits": 8.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: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.972Z",
  "transactionId": 12134219.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935197",
  "pageFaults": 0.0,
  "pageHits": 6.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: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.960Z",
  "transactionId": 12134218.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24935196",
  "pageFaults": 0.0,
  "pageHits": 7.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: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.954Z",
  "transactionId": 12134218.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935195",
  "pageFaults": 0.0,
  "pageHits": 9.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: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.941Z",
  "transactionId": 12134217.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935194",
  "pageFaults": 0.0,
  "pageHits": 10.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.928Z",
  "transactionId": 12134216.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d74db13c-677a-4fd3-89f6-02349b34abfb
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order d74db13c-677a-4fd3-89f6-02349b34abfb
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order d74db13c-677a-4fd3-89f6-02349b34abfb",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.921Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order d74db13c-677a-4fd3-89f6-02349b34abfb
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order d74db13c-677a-4fd3-89f6-02349b34abfb
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order d74db13c-677a-4fd3-89f6-02349b34abfb",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.921Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=8c5c5785-bead-41a8-8002-3d05b949c13d draft already pending — skipping reminder (no send, no draft) to preserve user intent
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=8c5c5785-bead-41a8-8002-3d05b949c13d draft already pending — skipping reminder (no send, no draft) to preserve user intent
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:200",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=8c5c5785-bead-41a8-8002-3d05b949c13d draft already pending \u2014 skipping reminder (no send, no draft) to preserve user intent",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.921Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 7656.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935193",
  "pageFaults": 0.0,
  "pageHits": 37.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: 25, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.914Z",
  "transactionId": 12134215.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24935192",
  "pageFaults": 0.0,
  "pageHits": 20.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: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.908Z",
  "transactionId": 12134215.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization)
            RETURN COALESCE(o.reminderApprovalRequired, true) AS approval_required
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E5CF3BBC",
  "id": "24935191",
  "pageFaults": 0.0,
  "pageHits": 6.0,
  "planning": 0.0,
  "query": "\n            MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]-\u003e(o:Organization)\n            RETURN COALESCE(o.reminderApprovalRequired, true) AS approval_required\n            ",
  "queryParameters": "{wo: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.895Z",
  "transactionId": 12134214.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 7560.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935190",
  "pageFaults": 0.0,
  "pageHits": 37.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: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.882Z",
  "transactionId": 12134213.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935189",
  "pageFaults": 0.0,
  "pageHits": 20.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: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.876Z",
  "transactionId": 12134213.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935188",
  "pageFaults": 0.0,
  "pageHits": 28.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: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.862Z",
  "transactionId": 12134212.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935187",
  "pageFaults": 0.0,
  "pageHits": 12.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.810Z",
  "transactionId": 12134211.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 8c5c5785-bead-41a8-8002-3d05b949c13d
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 8c5c5785-bead-41a8-8002-3d05b949c13d
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 8c5c5785-bead-41a8-8002-3d05b949c13d",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.803Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order 8c5c5785-bead-41a8-8002-3d05b949c13d
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 8c5c5785-bead-41a8-8002-3d05b949c13d
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 8c5c5785-bead-41a8-8002-3d05b949c13d",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.802Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=27504fe1-a00e-459f-af03-ba243eb31670 draft already pending — skipping reminder (no send, no draft) to preserve user intent
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=27504fe1-a00e-459f-af03-ba243eb31670 draft already pending — skipping reminder (no send, no draft) to preserve user intent
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:200",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=27504fe1-a00e-459f-af03-ba243eb31670 draft already pending \u2014 skipping reminder (no send, no draft) to preserve user intent",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.802Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 7656.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935186",
  "pageFaults": 0.0,
  "pageHits": 53.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: 25, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.795Z",
  "transactionId": 12134210.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935185",
  "pageFaults": 0.0,
  "pageHits": 28.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: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.790Z",
  "transactionId": 12134210.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization)
            RETURN COALESCE(o.reminderApprovalRequired, true) AS approval_required
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E5CF3BBC",
  "id": "24935184",
  "pageFaults": 0.0,
  "pageHits": 6.0,
  "planning": 0.0,
  "query": "\n            MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]-\u003e(o:Organization)\n            RETURN COALESCE(o.reminderApprovalRequired, true) AS approval_required\n            ",
  "queryParameters": "{wo: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.777Z",
  "transactionId": 12134209.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 7560.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935183",
  "pageFaults": 0.0,
  "pageHits": 53.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: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.762Z",
  "transactionId": 12134208.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24935182",
  "pageFaults": 0.0,
  "pageHits": 28.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: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.756Z",
  "transactionId": 12134208.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935181",
  "pageFaults": 0.0,
  "pageHits": 34.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: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.741Z",
  "transactionId": 12134207.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc TransactionID commit
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcetildadb/api.go:2575
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
TransactionID commit
raw payload (8 fields)
{
  "caller": "tildadb/api.go:2575",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "TransactionID commit",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.729Z",
  "transactionID": "FB:kcwQc8qrjECqRtOxBB1HjVmAmsoAPphmkA==",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc TransactionID commit
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcetildadb/api.go:2575
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
TransactionID commit
raw payload (8 fields)
{
  "caller": "tildadb/api.go:2575",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "TransactionID commit",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.728Z",
  "transactionID": "FB:kcwQc8qrjECqRtOxBB1HjVmAmsoAPphlkA==",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935180",
  "pageFaults": 0.0,
  "pageHits": 11.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.727Z",
  "transactionId": 12134206.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 27504fe1-a00e-459f-af03-ba243eb31670
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 27504fe1-a00e-459f-af03-ba243eb31670
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 27504fe1-a00e-459f-af03-ba243eb31670",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.720Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order 27504fe1-a00e-459f-af03-ba243eb31670
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 27504fe1-a00e-459f-af03-ba243eb31670
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 27504fe1-a00e-459f-af03-ba243eb31670",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.720Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=f42328f2-c28d-44dd-9ba7-0b43ac19af6d mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=f42328f2-c28d-44dd-9ba7-0b43ac19af6d mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=5401m < step=2880m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=f42328f2-c28d-44dd-9ba7-0b43ac19af6d mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=5401m \u003c step=2880m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.720Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc CREATE (a:WorkplanInstanceEvent{deltimestamp:0}) SET a.createdat = timestamp(), a.updatedat = timestamp(), a.tildaid = randomUUID(),...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-2-dev-0
query
CREATE (a:WorkplanInstanceEvent{deltimestamp:0}) 
SET a.createdat = timestamp(), a.updatedat = timestamp(), a.tildaid = randomUUID(), a.holdbitmap=0,a.holdbitmap=0,a.delpending=false,a.instanceId="8cb2d38c-046c-4910-bb36-a02d9b856938",a.orgId="aa59151d-6c89-4c13-811b-0dffb1ed1693",a.eventType="sweeper_send_blocked",a.requestId="",a.summary="Sweeper skipped send: 1 unlinked work order(s)",a.payloadJson='{"reason":"unlinked_work_orders","unlinkedWorkOrderCount":1}' 
RETURN a.tildaid, a.createdat
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "C23BE7B4",
  "id": "24935179",
  "pageFaults": 0.0,
  "pageHits": 0.0,
  "planning": 0.0,
  "query": "CREATE (a:WorkplanInstanceEvent{deltimestamp:0}) SET a.createdat = timestamp(), a.updatedat = timestamp(), a.tildaid = randomUUID(), a.holdbitmap=0,a.holdbitmap=0,a.delpending=false,a.instanceId=\"8cb2d38c-046c-4910-bb36-a02d9b856938\",a.orgId=\"aa59151d-6c89-4c13-811b-0dffb1ed1693\",a.eventType=\"sweeper_send_blocked\",a.requestId=\"\",a.summary=\"Sweeper skipped send: 1 unlinked work order(s)\",a.payloadJson=\u0027{\"reason\":\"unlinked_work_orders\",\"unlinkedWorkOrderCount\":1}\u0027 RETURN a.tildaid, a.createdat",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tGo Driver/5.20.0\t\tclient/10.129.4.159:50690\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T01:11:18.715Z",
  "transactionId": 12134205.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 828.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935178",
  "pageFaults": 0.0,
  "pageHits": 10.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: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.713Z",
  "transactionId": 12134204.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (org:Organization)-[:ORGANIZATION_TO_WORKPLAN_INSTANCE]->(wp:WorkPlanInstance{tildaid:"8cb2d38c-046c-4910-bb36-a02d9b856938"}) RETURN...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-2-dev-0
query
MATCH (org:Organization)-[:ORGANIZATION_TO_WORKPLAN_INSTANCE]->(wp:WorkPlanInstance{tildaid:"8cb2d38c-046c-4910-bb36-a02d9b856938"})
		RETURN org.tildaid as oid
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "CB2C51F3",
  "id": "24935177",
  "pageFaults": 0.0,
  "pageHits": 414.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (org:Organization)-[:ORGANIZATION_TO_WORKPLAN_INSTANCE]-\u003e(wp:WorkPlanInstance{tildaid:\"8cb2d38c-046c-4910-bb36-a02d9b856938\"})\n\t\tRETURN org.tildaid as oid\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tGo Driver/5.20.0\t\tclient/10.129.4.159:50690\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T01:11:18.713Z",
  "transactionId": 12134205.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc TransactionID
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcetildadb/api.go:2482
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
TransactionID
raw payload (8 fields)
{
  "caller": "tildadb/api.go:2482",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "TransactionID",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.710Z",
  "transactionID": "",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc workplan periodic sweep
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourceworkplan/summarization_sweep_ticker.go:90
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
workplan periodic sweep
raw payload (15 fields)
{
  "activates_published": 0.0,
  "autosend_catchups": 0.0,
  "caller": "workplan/summarization_sweep_ticker.go:90",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "workplan periodic sweep",
  "progress_summarized": 0.0,
  "ready_det_repaired_desync": 0.0,
  "ready_det_send_published": 0.0,
  "ready_det_skipped_blocked": 2.0,
  "recipient_retries": 0.0,
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.709Z",
  "trigger": "tick",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc ready determination sweep: skip pending (unlinked work orders)
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcepubsub/instance_ready_determination.go:352
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
ready determination sweep: skip pending (unlinked work orders)
raw payload (9 fields)
{
  "caller": "pubsub/instance_ready_determination.go:352",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "instance_id": "8cb2d38c-046c-4910-bb36-a02d9b856938",
  "message": "ready determination sweep: skip pending (unlinked work orders)",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.708Z",
  "unlinked_work_order_count": 1.0,
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc CREATE (a:WorkplanInstanceEvent{deltimestamp:0}) SET a.createdat = timestamp(), a.updatedat = timestamp(), a.tildaid = randomUUID(),...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-2-dev-0
query
CREATE (a:WorkplanInstanceEvent{deltimestamp:0}) 
SET a.createdat = timestamp(), a.updatedat = timestamp(), a.tildaid = randomUUID(), a.holdbitmap=0,a.holdbitmap=0,a.delpending=false,a.instanceId="4f4a2dc3-117b-4b69-a1c1-8944eb009099",a.orgId="a5fb9821-522a-4061-823f-b0a66173a204",a.eventType="sweeper_send_blocked",a.requestId="",a.summary="Sweeper skipped send: 1 unlinked work order(s)",a.payloadJson='{"reason":"unlinked_work_orders","unlinkedWorkOrderCount":1}' 
RETURN a.tildaid, a.createdat
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "C23BE7B4",
  "id": "24935176",
  "pageFaults": 0.0,
  "pageHits": 0.0,
  "planning": 0.0,
  "query": "CREATE (a:WorkplanInstanceEvent{deltimestamp:0}) SET a.createdat = timestamp(), a.updatedat = timestamp(), a.tildaid = randomUUID(), a.holdbitmap=0,a.holdbitmap=0,a.delpending=false,a.instanceId=\"4f4a2dc3-117b-4b69-a1c1-8944eb009099\",a.orgId=\"a5fb9821-522a-4061-823f-b0a66173a204\",a.eventType=\"sweeper_send_blocked\",a.requestId=\"\",a.summary=\"Sweeper skipped send: 1 unlinked work order(s)\",a.payloadJson=\u0027{\"reason\":\"unlinked_work_orders\",\"unlinkedWorkOrderCount\":1}\u0027 RETURN a.tildaid, a.createdat",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tGo Driver/5.20.0\t\tclient/10.129.4.159:55506\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T01:11:18.705Z",
  "transactionId": 12134203.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (wp:WorkPlanInstance{tildaid:"8cb2d38c-046c-4910-bb36-a02d9b856938"})-[:WORKPLAN_INSTANCE_TO_MILESTONE]->(:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]->(item:WorkplanInstanceMilestoneItem)
		WHERE item.itemType = "Workorder"
		  AND coalesce(item.skippedAt, 0) = 0
		  AND coalesce(item.notApplicableAt, 0) = 0
		  AND coalesce(item.workOrderCompletedAt, 0) = 0
		  AND coalesce(item.workOrderId, "") = ""
		RETURN count(item) AS n
raw payload (15 fields)
{
  "allocatedBytes": 488.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "0CD31179",
  "id": "17458443",
  "pageFaults": 0.0,
  "pageHits": 454.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (wp:WorkPlanInstance{tildaid:\"8cb2d38c-046c-4910-bb36-a02d9b856938\"})-[:WORKPLAN_INSTANCE_TO_MILESTONE]-\u003e(:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]-\u003e(item:WorkplanInstanceMilestoneItem)\n\t\tWHERE item.itemType = \"Workorder\"\n\t\t  AND coalesce(item.skippedAt, 0) = 0\n\t\t  AND coalesce(item.notApplicableAt, 0) = 0\n\t\t  AND coalesce(item.workOrderCompletedAt, 0) = 0\n\t\t  AND coalesce(item.workOrderId, \"\") = \"\"\n\t\tRETURN count(item) AS n\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.704Z",
  "transactionId": 1773659.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (org:Organization)-[:ORGANIZATION_TO_WORKPLAN_INSTANCE]->(wp:WorkPlanInstance{tildaid:"4f4a2dc3-117b-4b69-a1c1-8944eb009099"}) RETURN...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-2-dev-0
query
MATCH (org:Organization)-[:ORGANIZATION_TO_WORKPLAN_INSTANCE]->(wp:WorkPlanInstance{tildaid:"4f4a2dc3-117b-4b69-a1c1-8944eb009099"})
		RETURN org.tildaid as oid
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "CB2C51F3",
  "id": "24935174",
  "pageFaults": 0.0,
  "pageHits": 414.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (org:Organization)-[:ORGANIZATION_TO_WORKPLAN_INSTANCE]-\u003e(wp:WorkPlanInstance{tildaid:\"4f4a2dc3-117b-4b69-a1c1-8944eb009099\"})\n\t\tRETURN org.tildaid as oid\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tGo Driver/5.20.0\t\tclient/10.129.4.159:55506\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T01:11:18.702Z",
  "transactionId": 12134203.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935173",
  "pageFaults": 0.0,
  "pageHits": 23.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: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.701Z",
  "transactionId": 12134202.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc TransactionID
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcetildadb/api.go:2482
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
TransactionID
raw payload (8 fields)
{
  "caller": "tildadb/api.go:2482",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "TransactionID",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.700Z",
  "transactionID": "",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc ready determination sweep: skip pending (unlinked work orders)
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcepubsub/instance_ready_determination.go:352
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
ready determination sweep: skip pending (unlinked work orders)
raw payload (9 fields)
{
  "caller": "pubsub/instance_ready_determination.go:352",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "instance_id": "4f4a2dc3-117b-4b69-a1c1-8944eb009099",
  "message": "ready determination sweep: skip pending (unlinked work orders)",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.697Z",
  "unlinked_work_order_count": 1.0,
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935172",
  "pageFaults": 0.0,
  "pageHits": 24.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: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.696Z",
  "transactionId": 12134202.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (wp:WorkPlanInstance{tildaid:"4f4a2dc3-117b-4b69-a1c1-8944eb009099"})-[:WORKPLAN_INSTANCE_TO_MILESTONE]->(:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]->(item:WorkplanInstanceMilestoneItem)
		WHERE item.itemType = "Workorder"
		  AND coalesce(item.skippedAt, 0) = 0
		  AND coalesce(item.notApplicableAt, 0) = 0
		  AND coalesce(item.workOrderCompletedAt, 0) = 0
		  AND coalesce(item.workOrderId, "") = ""
		RETURN count(item) AS n
raw payload (15 fields)
{
  "allocatedBytes": 488.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "0CD31179",
  "id": "13452021",
  "pageFaults": 0.0,
  "pageHits": 418.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (wp:WorkPlanInstance{tildaid:\"4f4a2dc3-117b-4b69-a1c1-8944eb009099\"})-[:WORKPLAN_INSTANCE_TO_MILESTONE]-\u003e(:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]-\u003e(item:WorkplanInstanceMilestoneItem)\n\t\tWHERE item.itemType = \"Workorder\"\n\t\t  AND coalesce(item.skippedAt, 0) = 0\n\t\t  AND coalesce(item.notApplicableAt, 0) = 0\n\t\t  AND coalesce(item.workOrderCompletedAt, 0) = 0\n\t\t  AND coalesce(item.workOrderId, \"\") = \"\"\n\t\tRETURN count(item) AS n\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.693Z",
  "transactionId": 1753478.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc TransactionID commit
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcetildadb/api.go:2575
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
TransactionID commit
raw payload (8 fields)
{
  "caller": "tildadb/api.go:2575",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "TransactionID commit",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.687Z",
  "transactionID": "FB:kcwQc8qrjECqRtOxBB1HjVmAmsoAPphkkA==",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (wp:WorkPlanInstance) WHERE wp.instanceReadyDeterminationState = "pending" AND wp.state <> "archived" RETURN wp.tildaid AS...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-2-dev-0
query
MATCH (wp:WorkPlanInstance)
		WHERE wp.instanceReadyDeterminationState = "pending"
		  AND wp.state <> "archived"
		RETURN wp.tildaid AS id
		ORDER BY coalesce(wp.instanceReadyDeterminationUpdatedAt, 0) ASC
		LIMIT 50
raw payload (15 fields)
{
  "allocatedBytes": 832.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "81C085B2",
  "id": "24935170",
  "pageFaults": 0.0,
  "pageHits": 415.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (wp:WorkPlanInstance)\n\t\tWHERE wp.instanceReadyDeterminationState = \"pending\"\n\t\t  AND wp.state \u003c\u003e \"archived\"\n\t\tRETURN wp.tildaid AS id\n\t\tORDER BY coalesce(wp.instanceReadyDeterminationUpdatedAt, 0) ASC\n\t\tLIMIT 50\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tGo Driver/5.20.0\t\tclient/10.129.4.159:50690\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T01:11:18.684Z",
  "transactionId": 12134200.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935169",
  "pageFaults": 0.0,
  "pageHits": 44.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: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.683Z",
  "transactionId": 12134201.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (wp:WorkPlanInstance) WHERE wp.instanceReadyDeterminationState IN ["in_progress", "in_progress_and_pending"] AND wp.state <>...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-2-dev-0
query
MATCH (wp:WorkPlanInstance)
		WHERE wp.instanceReadyDeterminationState IN ["in_progress", "in_progress_and_pending"]
		  AND wp.state <> "archived"
		OPTIONAL MATCH (wp)<-[:WORKPLAN_JOB_TO_OBJ]-(job:WorkplanJob)
		WITH wp, count(job) AS jobN
		WHERE jobN = 0
		RETURN wp.tildaid AS id
		LIMIT 50
raw payload (15 fields)
{
  "allocatedBytes": 1888.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "9B9F9D65",
  "id": "24935168",
  "pageFaults": 0.0,
  "pageHits": 417.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (wp:WorkPlanInstance)\n\t\tWHERE wp.instanceReadyDeterminationState IN [\"in_progress\", \"in_progress_and_pending\"]\n\t\t  AND wp.state \u003c\u003e \"archived\"\n\t\tOPTIONAL MATCH (wp)\u003c-[:WORKPLAN_JOB_TO_OBJ]-(job:WorkplanJob)\n\t\tWITH wp, count(job) AS jobN\n\t\tWHERE jobN = 0\n\t\tRETURN wp.tildaid AS id\n\t\tLIMIT 50\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tGo Driver/5.20.0\t\tclient/10.129.4.159:50690\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T01:11:18.681Z",
  "transactionId": 12134200.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc TransactionID
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcetildadb/api.go:2482
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
TransactionID
raw payload (8 fields)
{
  "caller": "tildadb/api.go:2482",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "TransactionID",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.679Z",
  "transactionID": "",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "97FB2855",
  "id": "17458442",
  "pageFaults": 0.0,
  "pageHits": 17.0,
  "planning": 0.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u00276ef91479-dbf6-4a3b-82b9-4c07b66b8eb4\u0027], study_id: \u002716ffa942-94ca-4e1c-88f7-e0d87180dfe8\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.672Z",
  "transactionId": 1773658.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935166",
  "pageFaults": 0.0,
  "pageHits": 11.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.671Z",
  "transactionId": 12134199.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.664Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.664Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=b26f2eda-ea91-4a98-b778-0a7db67a2b6a mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=b26f2eda-ea91-4a98-b778-0a7db67a2b6a mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=5166m < step=2880m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=b26f2eda-ea91-4a98-b778-0a7db67a2b6a mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=5166m \u003c step=2880m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.663Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"a1492aa6-ba07-49a9-aa99-0758bbdd18d3"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"a1492aa6-ba07-49a9-aa99-0758bbdd18d3"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "13452018",
  "pageFaults": 0.0,
  "pageHits": 414.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"a1492aa6-ba07-49a9-aa99-0758bbdd18d3\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.661Z",
  "transactionId": 1753477.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 776.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935164",
  "pageFaults": 0.0,
  "pageHits": 10.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: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.657Z",
  "transactionId": 12134198.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"92f49070-1232-4531-bb13-73157a75b154"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"92f49070-1232-4531-bb13-73157a75b154"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "17458441",
  "pageFaults": 0.0,
  "pageHits": 329.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"92f49070-1232-4531-bb13-73157a75b154\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.650Z",
  "transactionId": 1773657.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935162",
  "pageFaults": 0.0,
  "pageHits": 6.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: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.645Z",
  "transactionId": 12134197.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935161",
  "pageFaults": 0.0,
  "pageHits": 7.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: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.640Z",
  "transactionId": 12134197.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "3832EC22",
  "id": "13452015",
  "pageFaults": 0.0,
  "pageHits": 46.0,
  "planning": 0.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u0027f17cfa1f-97b5-4f9f-9b7b-a7d3cb0420a4\u0027], study_id: \u0027e47593bd-8d16-45f9-bda7-6875606eecc7\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.640Z",
  "transactionId": 1753476.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"a947c13c-168f-4975-a246-376dd9402562"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"a947c13c-168f-4975-a246-376dd9402562"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "17458440",
  "pageFaults": 0.0,
  "pageHits": 414.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"a947c13c-168f-4975-a246-376dd9402562\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.629Z",
  "transactionId": 1773656.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935159",
  "pageFaults": 0.0,
  "pageHits": 9.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: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.628Z",
  "transactionId": 12134196.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"b63053ca-d6b2-47b2-9dbb-effaf732dd75"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"b63053ca-d6b2-47b2-9dbb-effaf732dd75"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "13452012",
  "pageFaults": 0.0,
  "pageHits": 329.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"b63053ca-d6b2-47b2-9dbb-effaf732dd75\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.619Z",
  "transactionId": 1753475.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935156",
  "pageFaults": 0.0,
  "pageHits": 8.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.616Z",
  "transactionId": 12134195.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC ERROR observability: level watcher could not stat config file /etc/config/observability.yaml: stat /etc/config/observability.yaml: no such file or directory
filter by: severity≥ERROR
time2026-07-27 01:11:18 UTC
severityERROR
clustermaster
podenrollsvc-5fc97ccf8b-sc8q5
message
observability: level watcher could not stat config file /etc/config/observability.yaml: stat /etc/config/observability.yaml: no such file or directory
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.609Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.609Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=a90625ed-5354-473f-8665-840a4b8ff106 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=a90625ed-5354-473f-8665-840a4b8ff106 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=9533m < step=17280m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=a90625ed-5354-473f-8665-840a4b8ff106 mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=9533m \u003c step=17280m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.608Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "97FB2855",
  "id": "17458439",
  "pageFaults": 0.0,
  "pageHits": 29.0,
  "planning": 0.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u0027a6259678-9d0f-4311-8051-d1dca2333297\u0027], study_id: \u002716ffa942-94ca-4e1c-88f7-e0d87180dfe8\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.608Z",
  "transactionId": 1773655.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 828.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935154",
  "pageFaults": 0.0,
  "pageHits": 11.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: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.602Z",
  "transactionId": 12134194.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"344bb43b-c114-414a-9ede-3024085e25ec"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"344bb43b-c114-414a-9ede-3024085e25ec"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "13452009",
  "pageFaults": 0.0,
  "pageHits": 414.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"344bb43b-c114-414a-9ede-3024085e25ec\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.597Z",
  "transactionId": 1753474.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935152",
  "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        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: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.590Z",
  "transactionId": 12134193.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"aa651aca-e3b1-437b-91c0-1a782428010b"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"aa651aca-e3b1-437b-91c0-1a782428010b"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "17458438",
  "pageFaults": 0.0,
  "pageHits": 329.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"aa651aca-e3b1-437b-91c0-1a782428010b\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.587Z",
  "transactionId": 1773654.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935150",
  "pageFaults": 0.0,
  "pageHits": 10.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: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.585Z",
  "transactionId": 12134193.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "3832EC22",
  "id": "13452006",
  "pageFaults": 0.0,
  "pageHits": 28.0,
  "planning": 0.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u0027a6259678-9d0f-4311-8051-d1dca2333297\u0027], study_id: \u00270a62f219-a803-482f-8973-ab67b1a3baf7\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.576Z",
  "transactionId": 1753473.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935147",
  "pageFaults": 0.0,
  "pageHits": 12.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: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.572Z",
  "transactionId": 12134192.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"272b7c49-648b-454b-b9e4-34bbc9c082cc"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"272b7c49-648b-454b-b9e4-34bbc9c082cc"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 2.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "17458436",
  "pageFaults": 0.0,
  "pageHits": 416.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"272b7c49-648b-454b-b9e4-34bbc9c082cc\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.565Z",
  "transactionId": 1773653.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935145",
  "pageFaults": 0.0,
  "pageHits": 10.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.558Z",
  "transactionId": 12134191.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"a546762b-b73b-495c-b06f-543822164be1"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"a546762b-b73b-495c-b06f-543822164be1"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "13452003",
  "pageFaults": 0.0,
  "pageHits": 329.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"a546762b-b73b-495c-b06f-543822164be1\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.553Z",
  "transactionId": 1753472.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order a90625ed-5354-473f-8665-840a4b8ff106
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order a90625ed-5354-473f-8665-840a4b8ff106
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order a90625ed-5354-473f-8665-840a4b8ff106",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.551Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order a90625ed-5354-473f-8665-840a4b8ff106
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order a90625ed-5354-473f-8665-840a4b8ff106
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order a90625ed-5354-473f-8665-840a4b8ff106",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.551Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=e358167a-298a-4e2e-bd17-401ab034115e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=e358167a-298a-4e2e-bd17-401ab034115e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=9566m < step=17280m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=e358167a-298a-4e2e-bd17-401ab034115e mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=9566m \u003c step=17280m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.551Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 828.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935143",
  "pageFaults": 0.0,
  "pageHits": 10.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: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.545Z",
  "transactionId": 12134190.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "97FB2855",
  "id": "17458435",
  "pageFaults": 0.0,
  "pageHits": 22.0,
  "planning": 0.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u0027cec6713e-0087-4942-91db-316352bbca2c\u0027], study_id: \u00275b971f19-ded8-4c5d-8649-5b2a96841d67\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.542Z",
  "transactionId": 1773652.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935141",
  "pageFaults": 0.0,
  "pageHits": 7.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: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.532Z",
  "transactionId": 12134189.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"bad745ed-c7c6-496e-bd2b-1cbc61040198"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"bad745ed-c7c6-496e-bd2b-1cbc61040198"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "13452000",
  "pageFaults": 0.0,
  "pageHits": 415.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"bad745ed-c7c6-496e-bd2b-1cbc61040198\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.531Z",
  "transactionId": 1753471.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "FA66F084",
  "id": "24935139",
  "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        RETURN count(a) as total\n        ",
  "queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.527Z",
  "transactionId": 12134189.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"cb82212d-9ee3-4739-9c4f-bec323411efb"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"cb82212d-9ee3-4739-9c4f-bec323411efb"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "17458434",
  "pageFaults": 0.0,
  "pageHits": 329.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"cb82212d-9ee3-4739-9c4f-bec323411efb\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.521Z",
  "transactionId": 1773651.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935137",
  "pageFaults": 0.0,
  "pageHits": 10.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: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.514Z",
  "transactionId": 12134188.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "3832EC22",
  "id": "13451997",
  "pageFaults": 0.0,
  "pageHits": 28.0,
  "planning": 0.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u0027a6259678-9d0f-4311-8051-d1dca2333297\u0027], study_id: \u00270a62f219-a803-482f-8973-ab67b1a3baf7\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.510Z",
  "transactionId": 1753470.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935135",
  "pageFaults": 0.0,
  "pageHits": 9.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.501Z",
  "transactionId": 12134187.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"5ca8bb00-38a6-4d01-b31b-20cbe6b1a878"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"5ca8bb00-38a6-4d01-b31b-20cbe6b1a878"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "17458433",
  "pageFaults": 0.0,
  "pageHits": 414.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"5ca8bb00-38a6-4d01-b31b-20cbe6b1a878\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.500Z",
  "transactionId": 1773650.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order e358167a-298a-4e2e-bd17-401ab034115e
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order e358167a-298a-4e2e-bd17-401ab034115e
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order e358167a-298a-4e2e-bd17-401ab034115e",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.494Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order e358167a-298a-4e2e-bd17-401ab034115e
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order e358167a-298a-4e2e-bd17-401ab034115e
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order e358167a-298a-4e2e-bd17-401ab034115e",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.494Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=513b7315-882c-48fb-a126-ffc4e06834ec mode=RECURRING should_send=False escalate=False override=set reason='override pending: eligible in 938m'
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=513b7315-882c-48fb-a126-ffc4e06834ec mode=RECURRING should_send=False escalate=False override=set reason='override pending: eligible in 938m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=513b7315-882c-48fb-a126-ffc4e06834ec mode=RECURRING should_send=False escalate=False override=set reason=\u0027override pending: eligible in 938m\u0027",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.494Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"37e5546c-d37f-4d97-a4ac-f5ebcc616248"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"37e5546c-d37f-4d97-a4ac-f5ebcc616248"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "13451995",
  "pageFaults": 0.0,
  "pageHits": 329.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"37e5546c-d37f-4d97-a4ac-f5ebcc616248\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.489Z",
  "transactionId": 1753469.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 776.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935133",
  "pageFaults": 0.0,
  "pageHits": 11.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: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.488Z",
  "transactionId": 12134186.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 2.0,
  "elapsedTimeMs": 2.0,
  "executionPlanCacheKeyHash": "97FB2855",
  "id": "17458432",
  "pageFaults": 0.0,
  "pageHits": 38.0,
  "planning": 1.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u00279c081cd2-085b-4c6e-851e-abf432f301b4\u0027], study_id: \u00270a62f219-a803-482f-8973-ab67b1a3baf7\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.479Z",
  "transactionId": 1773649.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935131",
  "pageFaults": 0.0,
  "pageHits": 25.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: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.476Z",
  "transactionId": 12134185.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": "24935129",
  "pageFaults": 0.0,
  "pageHits": 26.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: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.470Z",
  "transactionId": 12134185.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"e6c6652d-3cd8-4b9e-ac36-9df330acb222"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"e6c6652d-3cd8-4b9e-ac36-9df330acb222"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "13451991",
  "pageFaults": 0.0,
  "pageHits": 414.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"e6c6652d-3cd8-4b9e-ac36-9df330acb222\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.466Z",
  "transactionId": 1753468.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
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": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935126",
  "pageFaults": 0.0,
  "pageHits": 38.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: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.457Z",
  "transactionId": 12134184.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"37e5546c-d37f-4d97-a4ac-f5ebcc616248"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"37e5546c-d37f-4d97-a4ac-f5ebcc616248"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "17458430",
  "pageFaults": 0.0,
  "pageHits": 329.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"37e5546c-d37f-4d97-a4ac-f5ebcc616248\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.455Z",
  "transactionId": 1773648.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935124",
  "pageFaults": 0.0,
  "pageHits": 12.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.443Z",
  "transactionId": 12134183.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "3832EC22",
  "id": "13451988",
  "pageFaults": 0.0,
  "pageHits": 28.0,
  "planning": 0.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u0027a6259678-9d0f-4311-8051-d1dca2333297\u0027], study_id: \u00270a62f219-a803-482f-8973-ab67b1a3baf7\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.442Z",
  "transactionId": 1753467.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 513b7315-882c-48fb-a126-ffc4e06834ec
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 513b7315-882c-48fb-a126-ffc4e06834ec
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 513b7315-882c-48fb-a126-ffc4e06834ec",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.436Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order 513b7315-882c-48fb-a126-ffc4e06834ec
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 513b7315-882c-48fb-a126-ffc4e06834ec
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 513b7315-882c-48fb-a126-ffc4e06834ec",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.435Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant 🏢 Processing organization 9f996610-f74a-4cd5-9052-cb5405d78c6f (12 work orders)
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace67b5a6506fc06422f0df09f2770ec271
spanb4a8c2170514a9eb
podvirtual-assistant-65b975d66b-l8wpw
message
🏢 Processing organization 9f996610-f74a-4cd5-9052-cb5405d78c6f (12 work orders)
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:362",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "\ud83c\udfe2 Processing organization 9f996610-f74a-4cd5-9052-cb5405d78c6f (12 work orders)",
  "org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.435Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant ✅ Org 2d88eda5-bcfa-4565-af90-db111ea04aa3 summary: processed=1, reminders_sent=0, moved_to_need_attention=0
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
versionunknown
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
podvirtual-assistant-65b975d66b-l8wpw
message
✅ Org 2d88eda5-bcfa-4565-af90-db111ea04aa3 summary: processed=1, 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 2d88eda5-bcfa-4565-af90-db111ea04aa3 summary: processed=1, reminders_sent=0, moved_to_need_attention=0",
  "org_alias": "2d88eda5-bcfa-4565-af90-db111ea04aa3",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.435Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=442a7419-9334-4479-aa7e-c607afaee462 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
versionunknown
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=442a7419-9334-4479-aa7e-c607afaee462 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=985m < step=1440m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=442a7419-9334-4479-aa7e-c607afaee462 mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=985m \u003c step=1440m\u0027",
  "org_alias": "2d88eda5-bcfa-4565-af90-db111ea04aa3",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.434Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"3dde6deb-a932-4d03-8c71-ce3a8e26bef7"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"3dde6deb-a932-4d03-8c71-ce3a8e26bef7"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "17458429",
  "pageFaults": 0.0,
  "pageHits": 432.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"3dde6deb-a932-4d03-8c71-ce3a8e26bef7\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.431Z",
  "transactionId": 1773647.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
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": 776.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935121",
  "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: \u0027442a7419-9334-4479-aa7e-c607afaee462\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.428Z",
  "transactionId": 12134182.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"a9f727b2-f56d-4267-b30f-8859577d46a9"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"a9f727b2-f56d-4267-b30f-8859577d46a9"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "13451986",
  "pageFaults": 0.0,
  "pageHits": 329.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"a9f727b2-f56d-4267-b30f-8859577d46a9\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.420Z",
  "transactionId": 1753466.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
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": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935118",
  "pageFaults": 0.0,
  "pageHits": 10.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: \u0027442a7419-9334-4479-aa7e-c607afaee462\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.416Z",
  "transactionId": 12134181.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
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": "24935116",
  "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        RETURN count(a) as total\n        ",
  "queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027442a7419-9334-4479-aa7e-c607afaee462\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.411Z",
  "transactionId": 12134181.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "97FB2855",
  "id": "17458426",
  "pageFaults": 0.0,
  "pageHits": 134.0,
  "planning": 0.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u00279c081cd2-085b-4c6e-851e-abf432f301b4\u0027], study_id: \u00270a62f219-a803-482f-8973-ab67b1a3baf7\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.409Z",
  "transactionId": 1773646.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
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": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935114",
  "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: \u0027442a7419-9334-4479-aa7e-c607afaee462\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.399Z",
  "transactionId": 12134180.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"4102804a-71a2-48ef-8acf-e1d9a4321996"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"4102804a-71a2-48ef-8acf-e1d9a4321996"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "13451982",
  "pageFaults": 0.0,
  "pageHits": 416.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"4102804a-71a2-48ef-8acf-e1d9a4321996\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.398Z",
  "transactionId": 1753465.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"a9f727b2-f56d-4267-b30f-8859577d46a9"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"a9f727b2-f56d-4267-b30f-8859577d46a9"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 2.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "17458424",
  "pageFaults": 0.0,
  "pageHits": 347.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"a9f727b2-f56d-4267-b30f-8859577d46a9\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.386Z",
  "transactionId": 1773645.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935112",
  "pageFaults": 0.0,
  "pageHits": 10.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027442a7419-9334-4479-aa7e-c607afaee462\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.385Z",
  "transactionId": 12134179.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 442a7419-9334-4479-aa7e-c607afaee462
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
versionunknown
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 442a7419-9334-4479-aa7e-c607afaee462
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 442a7419-9334-4479-aa7e-c607afaee462",
  "org_alias": "2d88eda5-bcfa-4565-af90-db111ea04aa3",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.378Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order 442a7419-9334-4479-aa7e-c607afaee462
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
versionunknown
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 442a7419-9334-4479-aa7e-c607afaee462
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 442a7419-9334-4479-aa7e-c607afaee462",
  "org_alias": "2d88eda5-bcfa-4565-af90-db111ea04aa3",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.378Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant 🏢 Processing organization 2d88eda5-bcfa-4565-af90-db111ea04aa3 (1 work orders)
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org2d88eda5-bcfa-4565-af90-db111ea04aa3
versionunknown
trace345d2ed6d3209bc0ee479558a802be78
span98f377255456599e
podvirtual-assistant-65b975d66b-l8wpw
message
🏢 Processing organization 2d88eda5-bcfa-4565-af90-db111ea04aa3 (1 work orders)
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:362",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "\ud83c\udfe2 Processing organization 2d88eda5-bcfa-4565-af90-db111ea04aa3 (1 work orders)",
  "org_alias": "2d88eda5-bcfa-4565-af90-db111ea04aa3",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.377Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant ✅ Org 5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf summary: processed=11, reminders_sent=0, moved_to_need_attention=0
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
versionunknown
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
podvirtual-assistant-65b975d66b-l8wpw
message
✅ Org 5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf summary: processed=11, 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 5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf summary: processed=11, reminders_sent=0, moved_to_need_attention=0",
  "org_alias": "5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.377Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=437c18c3-6691-461a-b3ce-742e84b88f69 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
versionunknown
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=437c18c3-6691-461a-b3ce-742e84b88f69 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=865m < step=1440m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=437c18c3-6691-461a-b3ce-742e84b88f69 mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=865m \u003c step=1440m\u0027",
  "org_alias": "5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.377Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc UNWIND $site_ids AS sid OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false}) OPTIONAL MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
UNWIND $site_ids AS sid
OPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})
OPTIONAL MATCH (s)<-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]->(st:Study {tildaid: $study_id, delpending: false})
OPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]->(actor:Actor {delpending: false})-[:FOR_USER]->(u:User)
OPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]->(co:ClinOp {deltimestamp: 0})-[:FOR_USER]->(cou:User)
WITH sid, s,
  collect(DISTINCT CASE
    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status <> $deleted_status) THEN {
    t: pdc.type,
    p: coalesce(pdc.isPrimary, false),
    e: coalesce(u.email, "")
  } END) AS actorContactRows,
  collect(DISTINCT CASE
    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status <> $deleted_status) THEN {
    t: copdc.type,
    p: coalesce(copdc.isPrimary, false),
    e: coalesce(cou.email, "")
  } END) AS clinopContactRows
WITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw
WITH sid, s,
  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e <> ""] AS pd_rows
RETURN sid AS site_id, coalesce(s.name, "") AS site_name, pd_rows
raw payload (15 fields)
{
  "allocatedBytes": 19512.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "3832EC22",
  "id": "13451980",
  "pageFaults": 0.0,
  "pageHits": 22.0,
  "planning": 0.0,
  "query": "\nUNWIND $site_ids AS sid\nOPTIONAL MATCH (s:Site {tildaid: sid, delpending: false})\nOPTIONAL MATCH (s)\u003c-[:PLAN_DEFINITION_TO_SITE]-(pd:DslPlanDefinition {delpending: false})-[:PLAN_DEFINITION_TO_STUDY]-\u003e(st:Study {tildaid: $study_id, delpending: false})\nOPTIONAL MATCH (pd)-[pdc:PLAN_DEFINITION_TO_CONTACT]-\u003e(actor:Actor {delpending: false})-[:FOR_USER]-\u003e(u:User)\nOPTIONAL MATCH (pd)-[copdc:PLAN_DEFINITION_TO_CLINOP_CONTACT]-\u003e(co:ClinOp {deltimestamp: 0})-[:FOR_USER]-\u003e(cou:User)\nWITH sid, s,\n  collect(DISTINCT CASE\n    WHEN pdc IS NOT NULL AND actor IS NOT NULL AND (u IS NULL OR u.status \u003c\u003e $deleted_status) THEN {\n    t: pdc.type,\n    p: coalesce(pdc.isPrimary, false),\n    e: coalesce(u.email, \"\")\n  } END) AS actorContactRows,\n  collect(DISTINCT CASE\n    WHEN copdc IS NOT NULL AND co IS NOT NULL AND (cou IS NULL OR cou.status \u003c\u003e $deleted_status) THEN {\n    t: copdc.type,\n    p: coalesce(copdc.isPrimary, false),\n    e: coalesce(cou.email, \"\")\n  } END) AS clinopContactRows\nWITH sid, s, actorContactRows + clinopContactRows AS pdContactRowsRaw\nWITH sid, s,\n  [row IN pdContactRowsRaw WHERE row IS NOT NULL AND row.t IS NOT NULL AND row.e IS NOT NULL AND row.e \u003c\u003e \"\"] AS pd_rows\nRETURN sid AS site_id, coalesce(s.name, \"\") AS site_name, pd_rows\n",
  "queryParameters": "{deleted_status: \u0027Deleted\u0027, site_ids: [\u0027cec6713e-0087-4942-91db-316352bbca2c\u0027], study_id: \u00275b971f19-ded8-4c5d-8649-5b2a96841d67\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.374Z",
  "transactionId": 1753464.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
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": 880.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935109",
  "pageFaults": 0.0,
  "pageHits": 11.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: \u0027437c18c3-6691-461a-b3ce-742e84b88f69\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.370Z",
  "transactionId": 12134178.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (instance:WorkPlanInstance{tildaid:"4104335e-49f9-4396-a635-7a4724b2c2cf"})-[:WORKPLAN_TO_SITE]->(site:Site) RETURN site.tildaid as siteId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (instance:WorkPlanInstance{tildaid:"4104335e-49f9-4396-a635-7a4724b2c2cf"})-[:WORKPLAN_TO_SITE]->(site:Site)
		RETURN site.tildaid as siteId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 2.0,
  "executionPlanCacheKeyHash": "9B774BFC",
  "id": "17458422",
  "pageFaults": 0.0,
  "pageHits": 415.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (instance:WorkPlanInstance{tildaid:\"4104335e-49f9-4396-a635-7a4724b2c2cf\"})-[:WORKPLAN_TO_SITE]-\u003e(site:Site)\n\t\tRETURN site.tildaid as siteId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.362Z",
  "transactionId": 1773644.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "2A13D7A9",
  "id": "24935107",
  "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        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: \u0027437c18c3-6691-461a-b3ce-742e84b88f69\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.357Z",
  "transactionId": 12134177.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
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": "24935106",
  "pageFaults": 0.0,
  "pageHits": 10.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: \u0027437c18c3-6691-461a-b3ce-742e84b88f69\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.351Z",
  "transactionId": 12134177.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH (cfg:WorkplanCfg{tildaid:"0590e24b-65f6-4c37-b293-8899478c233a"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study) RETURN study.tildaid as studyId
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (cfg:WorkplanCfg{tildaid:"0590e24b-65f6-4c37-b293-8899478c233a"})-[:WORKPLAN_CFG_TO_STUDY]->(study:Study)
		RETURN study.tildaid as studyId
raw payload (15 fields)
{
  "allocatedBytes": 328.0,
  "cpu": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "682A7B96",
  "id": "13451976",
  "pageFaults": 0.0,
  "pageHits": 329.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg{tildaid:\"0590e24b-65f6-4c37-b293-8899478c233a\"})-[:WORKPLAN_CFG_TO_STUDY]-\u003e(study:Study)\n\t\tRETURN study.tildaid as studyId\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.350Z",
  "transactionId": 1753463.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
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": 1.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "4C51129A",
  "id": "24935104",
  "pageFaults": 0.0,
  "pageHits": 12.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: \u0027437c18c3-6691-461a-b3ce-742e84b88f69\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.338Z",
  "transactionId": 12134176.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-1-dev-0
query
MATCH (cfg:WorkplanCfg)-[:WORKPLAN_CFG_TO_INSTANCE]->(wp:WorkPlanInstance)-[:WORKPLAN_INSTANCE_TO_MILESTONE]->(m:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]->(item:WorkplanInstanceMilestoneItem)
		WHERE item.itemType = "Workorder"
		  AND coalesce(item.workOrderActivationFailedAt, 0) > 0
		  AND coalesce(item.workOrderActivationErrorCode, "") = "NO_RECIPIENTS_FOR_SITE_CONTACT_CATEGORY"
		  AND coalesce(item.workOrderCompletedAt, 0) = 0
		  AND coalesce(item.workOrderResolvedAt, 0) = 0
		  AND coalesce(item.skippedAt, 0) = 0 AND coalesce(item.notApplicableAt, 0) = 0
		  AND coalesce(item.workOrderId, "") <> ""
		RETURN cfg.tildaid AS cfgId, wp.tildaid AS instanceId, item.tildaid AS itemId,
		       item.workOrderId AS workOrderId, coalesce(item.itemConfig, "") AS itemConfig
raw payload (15 fields)
{
  "allocatedBytes": 336.0,
  "cpu": 6.0,
  "elapsedTimeMs": 7.0,
  "executionPlanCacheKeyHash": "C9113EA6",
  "id": "17458421",
  "pageFaults": 0.0,
  "pageHits": 7311.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (cfg:WorkplanCfg)-[:WORKPLAN_CFG_TO_INSTANCE]-\u003e(wp:WorkPlanInstance)-[:WORKPLAN_INSTANCE_TO_MILESTONE]-\u003e(m:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]-\u003e(item:WorkplanInstanceMilestoneItem)\n\t\tWHERE item.itemType = \"Workorder\"\n\t\t  AND coalesce(item.workOrderActivationFailedAt, 0) \u003e 0\n\t\t  AND coalesce(item.workOrderActivationErrorCode, \"\") = \"NO_RECIPIENTS_FOR_SITE_CONTACT_CATEGORY\"\n\t\t  AND coalesce(item.workOrderCompletedAt, 0) = 0\n\t\t  AND coalesce(item.workOrderResolvedAt, 0) = 0\n\t\t  AND coalesce(item.skippedAt, 0) = 0 AND coalesce(item.notApplicableAt, 0) = 0\n\t\t  AND coalesce(item.workOrderId, \"\") \u003c\u003e \"\"\n\t\tRETURN cfg.tildaid AS cfgId, wp.tildaid AS instanceId, item.tildaid AS itemId,\n\t\t       item.workOrderId AS workOrderId, coalesce(item.itemConfig, \"\") AS itemConfig\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:49782\tserver/10.173.2.71:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.338Z",
  "transactionId": 1773643.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id}) 
RETURN n
raw payload (15 fields)
{
  "allocatedBytes": 312.0,
  "cpu": 0.0,
  "elapsedTimeMs": 1.0,
  "executionPlanCacheKeyHash": "E0146DD7",
  "id": "24935102",
  "pageFaults": 0.0,
  "pageHits": 11.0,
  "planning": 0.0,
  "query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
  "queryParameters": "{node_id: \u0027437c18c3-6691-461a-b3ce-742e84b88f69\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.325Z",
  "transactionId": 12134175.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc MATCH...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-3-dev-0
query
MATCH (wp:WorkPlanInstance)-[:WORKPLAN_INSTANCE_TO_MILESTONE]->(:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]->(item:WorkplanInstanceMilestoneItem)
		WHERE item.itemType = "Workorder"
		  AND wp.state <> "archived"
		  AND coalesce(item.workOrderId, "") <> ""
		  AND coalesce(item.activationPending, false) = true
		  AND coalesce(item.activationEligible, false) = true
		  AND coalesce(item.activateRequestedAt, 0) = 0
		RETURN item.tildaid AS id
		LIMIT 80
raw payload (15 fields)
{
  "allocatedBytes": 336.0,
  "cpu": 7.0,
  "elapsedTimeMs": 7.0,
  "executionPlanCacheKeyHash": "32028411",
  "id": "13451973",
  "pageFaults": 0.0,
  "pageHits": 7580.0,
  "planning": 0.0,
  "query": "\n\t\tMATCH (wp:WorkPlanInstance)-[:WORKPLAN_INSTANCE_TO_MILESTONE]-\u003e(:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]-\u003e(item:WorkplanInstanceMilestoneItem)\n\t\tWHERE item.itemType = \"Workorder\"\n\t\t  AND wp.state \u003c\u003e \"archived\"\n\t\t  AND coalesce(item.workOrderId, \"\") \u003c\u003e \"\"\n\t\t  AND coalesce(item.activationPending, false) = true\n\t\t  AND coalesce(item.activationEligible, false) = true\n\t\t  AND coalesce(item.activateRequestedAt, 0) = 0\n\t\tRETURN item.tildaid AS id\n\t\tLIMIT 80\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.8:56246\tserver/10.173.0.201:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.321Z",
  "transactionId": 1753462.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 437c18c3-6691-461a-b3ce-742e84b88f69
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
versionunknown
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 437c18c3-6691-461a-b3ce-742e84b88f69
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:135",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] Starting processing for work order 437c18c3-6691-461a-b3ce-742e84b88f69",
  "org_alias": "5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.319Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [daily_cron] About to process work order 437c18c3-6691-461a-b3ce-742e84b88f69
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
versionunknown
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 437c18c3-6691-461a-b3ce-742e84b88f69
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:368",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[daily_cron] About to process work order 437c18c3-6691-461a-b3ce-742e84b88f69",
  "org_alias": "5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.319Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC DEBUG virtual-assistant [reminder] wo=da057921-1a96-43f2-af14-37551103141e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-27 01:11:18 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
versionunknown
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=da057921-1a96-43f2-af14-37551103141e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=333m < step=1440m'
raw payload (8 fields)
{
  "caller": "jobs/daily_work_order_cron.py:244",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "[reminder] wo=da057921-1a96-43f2-af14-37551103141e mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=333m \u003c step=1440m\u0027",
  "org_alias": "5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf",
  "service": "virtual-assistant",
  "timestamp": "2026-07-27T01:11:18.319Z",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-27 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
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": 880.0,
  "cpu": 0.0,
  "elapsedTimeMs": 0.0,
  "executionPlanCacheKeyHash": "23A43F51",
  "id": "24935100",
  "pageFaults": 0.0,
  "pageHits": 10.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: \u0027da057921-1a96-43f2-af14-37551103141e\u0027}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.313Z",
  "transactionId": 12134174.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc TransactionID commit
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcetildadb/api.go:2575
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
TransactionID commit
raw payload (8 fields)
{
  "caller": "tildadb/api.go:2575",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "TransactionID commit",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.309Z",
  "transactionID": "FB:kcwQc8qrjECqRtOxBB1HjVmAmsoAPphkkA==",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 UTC neo4j workplansvc RETURN EXISTS { MATCH (inst:WorkPlanInstance) WHERE coalesce(inst.progressSummariesPending, false) = true } AS progressPending, ...
time2026-07-27 01:11:18 UTC
severityINFO
serviceworkplansvc
clustermaster
podserver-2-dev-0
query
RETURN EXISTS {
			MATCH (inst:WorkPlanInstance)
			WHERE coalesce(inst.progressSummariesPending, false) = true
		} AS progressPending,
		       EXISTS {
		           MATCH (item:WorkplanInstanceMilestoneItem)
		           WHERE item.itemType = "Workorder"
		             AND coalesce(item.workOrderId, "") <> ""
		             AND coalesce(item.activationPending, false) = true
		             AND coalesce(item.activationEligible, false) = true
		             AND coalesce(item.activateRequestedAt, 0) = 0
		       } AS activationPending,
		       EXISTS {
		           MATCH (cfg:WorkplanCfg)
		           WHERE coalesce(cfg.workOrderEmailAutoSendTransitionPending, false) = true
		       } AS autosendTransition,
		       EXISTS {
		           MATCH (cfg:WorkplanCfg)-[:WORKPLAN_CFG_TO_INSTANCE]->(wp:WorkPlanInstance)-[:WORKPLAN_INSTANCE_TO_MILESTONE]->(:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]->(item:WorkplanInstanceMilestoneItem)
		           WHERE item.itemType = "Workorder"
		             AND coalesce(item.workOrderActivationFailedAt, 0) > 0
		             AND coalesce(item.workOrderActivationErrorCode, "") = "NO_RECIPIENTS_FOR_SITE_CONTACT_CATEGORY"
		             AND coalesce(item.workOrderCompletedAt, 0) = 0
		             AND coalesce(item.workOrderResolvedAt, 0) = 0
		             AND coalesce(item.skippedAt, 0) = 0
		             AND coalesce(item.notApplicableAt, 0) = 0
		             AND coalesce(item.workOrderId, "") <> ""
		       } AS recipientRetry,
		       EXISTS {
		           MATCH (wp2:WorkPlanInstance)
		           WHERE wp2.instanceReadyDeterminationState = "pending"
		       } AS readyDetermination
raw payload (15 fields)
{
  "allocatedBytes": 102656.0,
  "cpu": 6.0,
  "elapsedTimeMs": 6.0,
  "executionPlanCacheKeyHash": "5CC92BFF",
  "id": "24935098",
  "pageFaults": 0.0,
  "pageHits": 2298.0,
  "planning": 0.0,
  "query": "\n\t\tRETURN EXISTS {\n\t\t\tMATCH (inst:WorkPlanInstance)\n\t\t\tWHERE coalesce(inst.progressSummariesPending, false) = true\n\t\t} AS progressPending,\n\t\t       EXISTS {\n\t\t           MATCH (item:WorkplanInstanceMilestoneItem)\n\t\t           WHERE item.itemType = \"Workorder\"\n\t\t             AND coalesce(item.workOrderId, \"\") \u003c\u003e \"\"\n\t\t             AND coalesce(item.activationPending, false) = true\n\t\t             AND coalesce(item.activationEligible, false) = true\n\t\t             AND coalesce(item.activateRequestedAt, 0) = 0\n\t\t       } AS activationPending,\n\t\t       EXISTS {\n\t\t           MATCH (cfg:WorkplanCfg)\n\t\t           WHERE coalesce(cfg.workOrderEmailAutoSendTransitionPending, false) = true\n\t\t       } AS autosendTransition,\n\t\t       EXISTS {\n\t\t           MATCH (cfg:WorkplanCfg)-[:WORKPLAN_CFG_TO_INSTANCE]-\u003e(wp:WorkPlanInstance)-[:WORKPLAN_INSTANCE_TO_MILESTONE]-\u003e(:WorkPlanMilestone)-[:REL_WORKPLAN_INSTANCE_MILESTONE_TO_ITEM]-\u003e(item:WorkplanInstanceMilestoneItem)\n\t\t           WHERE item.itemType = \"Workorder\"\n\t\t             AND coalesce(item.workOrderActivationFailedAt, 0) \u003e 0\n\t\t             AND coalesce(item.workOrderActivationErrorCode, \"\") = \"NO_RECIPIENTS_FOR_SITE_CONTACT_CATEGORY\"\n\t\t             AND coalesce(item.workOrderCompletedAt, 0) = 0\n\t\t             AND coalesce(item.workOrderResolvedAt, 0) = 0\n\t\t             AND coalesce(item.skippedAt, 0) = 0\n\t\t             AND coalesce(item.notApplicableAt, 0) = 0\n\t\t             AND coalesce(item.workOrderId, \"\") \u003c\u003e \"\"\n\t\t       } AS recipientRetry,\n\t\t       EXISTS {\n\t\t           MATCH (wp2:WorkPlanInstance)\n\t\t           WHERE wp2.instanceReadyDeterminationState = \"pending\"\n\t\t       } AS readyDetermination\n\t",
  "queryParameters": "{}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tGo Driver/5.20.0\t\tclient/10.129.4.159:50690\tserver/10.173.0.8:7687\u003e",
  "timestamp": "2026-07-27T01:11:18.306Z",
  "transactionId": 12134173.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
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": "24935099",
  "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: \u0027da057921-1a96-43f2-af14-37551103141e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.301Z",
  "transactionId": 12134172.0,
  "waiting": 0.0
}
37s ago2026-07-27 01:11:18 UTC DEBUG workplansvc TransactionID
time2026-07-27 01:11:18 UTC
severityDEBUG
serviceworkplansvc
sourcetildadb/api.go:2482
clustermaster
versionunknown
podworkplansvc-75f7d8dcb6-jxnsg
message
TransactionID
raw payload (8 fields)
{
  "caller": "tildadb/api.go:2482",
  "cluster": "master",
  "environment": "DEVELOPMENT",
  "message": "TransactionID",
  "service": "workplansvc",
  "timestamp": "2026-07-27T01:11:18.299Z",
  "transactionID": "",
  "version": "unknown"
}
37s ago2026-07-27 01:11:18 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 01:11:18 UTC
severityINFO
servicevirtual-assistant
clustermaster
org5026d3b4-4bc1-45e9-a366-b1d4fe1aabcf
tracef0e80a3d1bd88c42947178daa6f8d9ca
spancaf646304b31923e
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": "24935097",
  "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: \u0027da057921-1a96-43f2-af14-37551103141e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
  "runtime": "pipelined",
  "source": "bolt-session\tbolt\tneo4j-java/5.28.13-24cd0fecc64de123fd5711190246e8b0f1e16fd0\t\tclient/10.173.0.201:48790\tserver/10.173.0.8:7688\u003e",
  "timestamp": "2026-07-27T01:11:18.296Z",
  "transactionId": 12134172.0,
  "waiting": 0.0
}

Paginated with Cloud Logging page cursors, so you can walk the whole 6h 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.