Logs
Live Cloud Logging query (nothing stored) · master ·
last 6h ·
newest first · page 1 (200/page) · 200 entries in 2895 ms
all
app
neo4j
weaviate
time
relative
absolute
58s ago2026-07-27 02:36:09 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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-27T02:36:09.593Z",
"version": "unknown"
}58s ago2026-07-27 02:36:09 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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-27T02:36:09.593Z",
"version": "unknown"
}58s ago2026-07-27 02:36:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": "25454837",
"pageFaults": 0.0,
"pageHits": 5.0,
"planning": 1.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.589Z",
"transactionId": 12279923.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": 2.0,
"elapsedTimeMs": 2.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25454836",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 2.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.579Z",
"transactionId": 12279922.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": 2.0,
"elapsedTimeMs": 2.0,
"executionPlanCacheKeyHash": "FA66F084",
"id": "25454835",
"pageFaults": 0.0,
"pageHits": 10.0,
"planning": 1.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.573Z",
"transactionId": 12279922.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": 2.0,
"elapsedTimeMs": 2.0,
"executionPlanCacheKeyHash": "4C51129A",
"id": "25454834",
"pageFaults": 0.0,
"pageHits": 14.0,
"planning": 1.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.563Z",
"transactionId": 12279921.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 2.0,
"elapsedTimeMs": 2.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25454833",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 1.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.550Z",
"transactionId": 12279920.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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-27T02:36:09.541Z",
"version": "unknown"
}58s ago2026-07-27 02:36:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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-27T02:36:09.540Z",
"version": "unknown"
}58s ago2026-07-27 02:36:09 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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-27T02:36:09.540Z",
"version": "unknown"
}58s ago2026-07-27 02:36:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": 2.0,
"elapsedTimeMs": 3.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25454832",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 1.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.535Z",
"transactionId": 12279919.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": "25454831",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.529Z",
"transactionId": 12279919.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": "25454829",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 1.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.519Z",
"transactionId": 12279917.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": 2.0,
"elapsedTimeMs": 2.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25454828",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.507Z",
"transactionId": 12279916.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": "25454826",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.501Z",
"transactionId": 12279916.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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": "25454825",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 1.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.492Z",
"transactionId": 12279915.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 1.0,
"elapsedTimeMs": 2.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25454824",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 1.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:36:09.481Z",
"transactionId": 12279914.0,
"waiting": 0.0
}58s ago2026-07-27 02:36:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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-27T02:36:09.474Z",
"version": "unknown"
}58s ago2026-07-27 02:36:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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-27T02:36:09.474Z",
"version": "unknown"
}58s ago2026-07-27 02:36:09 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=1ec66e96d28b949f…
open trace flow ›
time2026-07-27 02:36:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace1ec66e96d28b949f60a9c0222bd09388
span63624a35813c6a8b
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-27T02:36:09.474Z",
"version": "unknown"
}1m ago2026-07-27 02:35:09 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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-27T02:35:09.409Z",
"version": "unknown"
}1m ago2026-07-27 02:35:09 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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-27T02:35:09.409Z",
"version": "unknown"
}1m ago2026-07-27 02:35:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 724.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "25451848",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.406Z",
"transactionId": 12278219.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": "25451847",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.399Z",
"transactionId": 12278218.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": "25451846",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.396Z",
"transactionId": 12278218.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": "25451845",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.389Z",
"transactionId": 12278217.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25451844",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.382Z",
"transactionId": 12278216.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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-27T02:35:09.377Z",
"version": "unknown"
}1m ago2026-07-27 02:35:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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-27T02:35:09.377Z",
"version": "unknown"
}1m ago2026-07-27 02:35:09 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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-27T02:35:09.376Z",
"version": "unknown"
}1m ago2026-07-27 02:35:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": "25451843",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.373Z",
"transactionId": 12278215.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": "25451842",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.369Z",
"transactionId": 12278215.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": 0.0,
"executionPlanCacheKeyHash": "E5CF3BBC",
"id": "25451841",
"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: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.362Z",
"transactionId": 12278214.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": "25451840",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.355Z",
"transactionId": 12278213.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": "25451839",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.351Z",
"transactionId": 12278213.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": "25451838",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.344Z",
"transactionId": 12278212.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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": "25451837",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:35:09.335Z",
"transactionId": 12278211.0,
"waiting": 0.0
}1m ago2026-07-27 02:35:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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-27T02:35:09.331Z",
"version": "unknown"
}1m ago2026-07-27 02:35:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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-27T02:35:09.331Z",
"version": "unknown"
}1m ago2026-07-27 02:35:09 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=cadb2cdc7195234b…
open trace flow ›
time2026-07-27 02:35:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracecadb2cdc7195234bce31dea4ec848325
span7fc6974780f967ea
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-27T02:35:09.331Z",
"version": "unknown"
}2m ago2026-07-27 02:34:09 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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-27T02:34:09.197Z",
"version": "unknown"
}2m ago2026-07-27 02:34:09 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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-27T02:34:09.196Z",
"version": "unknown"
}2m ago2026-07-27 02:34:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 724.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "25447839",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.193Z",
"transactionId": 12276517.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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": "25447838",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.186Z",
"transactionId": 12276516.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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": "25447837",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.183Z",
"transactionId": 12276516.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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": "25447836",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.175Z",
"transactionId": 12276515.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25447835",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.168Z",
"transactionId": 12276514.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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-27T02:34:09.163Z",
"version": "unknown"
}2m ago2026-07-27 02:34:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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-27T02:34:09.163Z",
"version": "unknown"
}2m ago2026-07-27 02:34:09 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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-27T02:34:09.162Z",
"version": "unknown"
}2m ago2026-07-27 02:34:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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": "25447834",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.159Z",
"transactionId": 12276513.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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": "25447833",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.155Z",
"transactionId": 12276513.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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": 0.0,
"executionPlanCacheKeyHash": "E5CF3BBC",
"id": "25447832",
"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: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.148Z",
"transactionId": 12276512.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25447831",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.141Z",
"transactionId": 12276510.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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": "25447830",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.138Z",
"transactionId": 12276510.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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": "25447828",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.131Z",
"transactionId": 12276509.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25447827",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:34:09.122Z",
"transactionId": 12276508.0,
"waiting": 0.0
}2m ago2026-07-27 02:34:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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-27T02:34:09.118Z",
"version": "unknown"
}2m ago2026-07-27 02:34:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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-27T02:34:09.118Z",
"version": "unknown"
}2m ago2026-07-27 02:34:09 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=5c1a6b3287cf44f0…
open trace flow ›
time2026-07-27 02:34:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace5c1a6b3287cf44f0b45ccd1f65221d6e
span4f4750f01cde9cd2
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-27T02:34:09.118Z",
"version": "unknown"
}3m ago2026-07-27 02:33:09 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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-27T02:33:09.594Z",
"version": "unknown"
}3m ago2026-07-27 02:33:09 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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-27T02:33:09.594Z",
"version": "unknown"
}3m ago2026-07-27 02:33:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 724.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "25444476",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.591Z",
"transactionId": 12274817.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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": "25444475",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.584Z",
"transactionId": 12274816.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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": "25444474",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.582Z",
"transactionId": 12274816.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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": "25444473",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.575Z",
"transactionId": 12274815.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25444472",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.567Z",
"transactionId": 12274814.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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-27T02:33:09.562Z",
"version": "unknown"
}3m ago2026-07-27 02:33:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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-27T02:33:09.562Z",
"version": "unknown"
}3m ago2026-07-27 02:33:09 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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-27T02:33:09.562Z",
"version": "unknown"
}3m ago2026-07-27 02:33:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25444471",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.558Z",
"transactionId": 12274813.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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": "25444470",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.555Z",
"transactionId": 12274813.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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": 0.0,
"executionPlanCacheKeyHash": "E5CF3BBC",
"id": "25444469",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.548Z",
"transactionId": 12274812.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25444468",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.541Z",
"transactionId": 12274811.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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": "25444467",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.538Z",
"transactionId": 12274811.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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": "25444466",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.531Z",
"transactionId": 12274810.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25444464",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:33:09.524Z",
"transactionId": 12274808.0,
"waiting": 0.0
}3m ago2026-07-27 02:33:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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-27T02:33:09.520Z",
"version": "unknown"
}3m ago2026-07-27 02:33:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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-27T02:33:09.519Z",
"version": "unknown"
}3m ago2026-07-27 02:33:09 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=fdc328dcb7b2b36f…
open trace flow ›
time2026-07-27 02:33:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracefdc328dcb7b2b36f10b15f478af27833
span0e1786a7dbc35797
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-27T02:33:09.519Z",
"version": "unknown"
}4m ago2026-07-27 02:32:09 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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-27T02:32:09.688Z",
"version": "unknown"
}4m ago2026-07-27 02:32:09 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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-27T02:32:09.688Z",
"version": "unknown"
}4m ago2026-07-27 02:32:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 724.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "25441628",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.685Z",
"transactionId": 12273116.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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": "25441627",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.678Z",
"transactionId": 12273115.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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": "25441626",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.675Z",
"transactionId": 12273115.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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": "25441625",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.667Z",
"transactionId": 12273114.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25441624",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.659Z",
"transactionId": 12273113.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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-27T02:32:09.655Z",
"version": "unknown"
}4m ago2026-07-27 02:32:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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-27T02:32:09.655Z",
"version": "unknown"
}4m ago2026-07-27 02:32:09 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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-27T02:32:09.654Z",
"version": "unknown"
}4m ago2026-07-27 02:32:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25441623",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.651Z",
"transactionId": 12273112.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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": "25441622",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.648Z",
"transactionId": 12273112.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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": 0.0,
"executionPlanCacheKeyHash": "E5CF3BBC",
"id": "25441621",
"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: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.641Z",
"transactionId": 12273111.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25441620",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.634Z",
"transactionId": 12273110.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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": "25441619",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.631Z",
"transactionId": 12273110.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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": "25441618",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.624Z",
"transactionId": 12273109.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25441617",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:32:09.616Z",
"transactionId": 12273108.0,
"waiting": 0.0
}4m ago2026-07-27 02:32:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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-27T02:32:09.612Z",
"version": "unknown"
}4m ago2026-07-27 02:32:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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-27T02:32:09.612Z",
"version": "unknown"
}4m ago2026-07-27 02:32:09 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=a6e22725c95095a4…
open trace flow ›
time2026-07-27 02:32:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracea6e22725c95095a4c64fbb11c4c4bd87
spancf5b874f21efe789
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-27T02:32:09.612Z",
"version": "unknown"
}5m ago2026-07-27 02:31:08 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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-27T02:31:08.990Z",
"version": "unknown"
}5m ago2026-07-27 02:31:08 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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-27T02:31:08.990Z",
"version": "unknown"
}5m ago2026-07-27 02:31:08 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 724.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "25438527",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.987Z",
"transactionId": 12271413.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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": "25438526",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.981Z",
"transactionId": 12271412.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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": "25438525",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.978Z",
"transactionId": 12271412.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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": "25438524",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.971Z",
"transactionId": 12271411.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25438523",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.964Z",
"transactionId": 12271410.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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-27T02:31:08.960Z",
"version": "unknown"
}5m ago2026-07-27 02:31:08 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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-27T02:31:08.960Z",
"version": "unknown"
}5m ago2026-07-27 02:31:08 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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-27T02:31:08.960Z",
"version": "unknown"
}5m ago2026-07-27 02:31:08 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25438522",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.957Z",
"transactionId": 12271409.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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": "25438521",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.953Z",
"transactionId": 12271409.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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": 0.0,
"executionPlanCacheKeyHash": "E5CF3BBC",
"id": "25438520",
"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: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.946Z",
"transactionId": 12271408.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25438519",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.939Z",
"transactionId": 12271407.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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": "25438518",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.935Z",
"transactionId": 12271407.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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": "25438517",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.928Z",
"transactionId": 12271406.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25438516",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:31:08.921Z",
"transactionId": 12271405.0,
"waiting": 0.0
}5m ago2026-07-27 02:31:08 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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-27T02:31:08.916Z",
"version": "unknown"
}5m ago2026-07-27 02:31:08 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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-27T02:31:08.916Z",
"version": "unknown"
}5m ago2026-07-27 02:31:08 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=f6339cec3f63e276…
open trace flow ›
time2026-07-27 02:31:08 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracef6339cec3f63e2766397c91a6c8c8bc7
span00acc2e6ee9037c1
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-27T02:31:08.916Z",
"version": "unknown"
}6m ago2026-07-27 02:30:09 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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-27T02:30:09.771Z",
"version": "unknown"
}6m ago2026-07-27 02:30:09 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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-27T02:30:09.771Z",
"version": "unknown"
}6m ago2026-07-27 02:30:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 724.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "25435433",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.768Z",
"transactionId": 12269711.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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": "25435432",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.761Z",
"transactionId": 12269710.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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": "25435431",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.757Z",
"transactionId": 12269710.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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": "25435430",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.750Z",
"transactionId": 12269709.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25435429",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.742Z",
"transactionId": 12269708.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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-27T02:30:09.737Z",
"version": "unknown"
}6m ago2026-07-27 02:30:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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-27T02:30:09.737Z",
"version": "unknown"
}6m ago2026-07-27 02:30:09 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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-27T02:30:09.737Z",
"version": "unknown"
}6m ago2026-07-27 02:30:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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": "25435428",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.733Z",
"transactionId": 12269707.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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": "25435427",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.729Z",
"transactionId": 12269707.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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": "25435426",
"pageFaults": 0.0,
"pageHits": 30.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.722Z",
"transactionId": 12269706.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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": "25435425",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.714Z",
"transactionId": 12269705.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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": "25435424",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.711Z",
"transactionId": 12269705.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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": "25435423",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.703Z",
"transactionId": 12269704.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25435422",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:30:09.695Z",
"transactionId": 12269703.0,
"waiting": 0.0
}6m ago2026-07-27 02:30:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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-27T02:30:09.691Z",
"version": "unknown"
}6m ago2026-07-27 02:30:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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-27T02:30:09.691Z",
"version": "unknown"
}6m ago2026-07-27 02:30:09 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=11295e01ef2cc7e8…
open trace flow ›
time2026-07-27 02:30:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace11295e01ef2cc7e86c294e639f944aee
spanfe20e38e7bcf9b94
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-27T02:30:09.691Z",
"version": "unknown"
}7m ago2026-07-27 02:29:09 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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-27T02:29:09.644Z",
"version": "unknown"
}7m ago2026-07-27 02:29:09 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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-27T02:29:09.643Z",
"version": "unknown"
}7m ago2026-07-27 02:29:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 724.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "25431126",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.640Z",
"transactionId": 12267984.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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": "25431125",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.634Z",
"transactionId": 12267983.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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": "25431124",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.630Z",
"transactionId": 12267983.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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": "25431123",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.623Z",
"transactionId": 12267982.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25431122",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.614Z",
"transactionId": 12267981.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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-27T02:29:09.611Z",
"version": "unknown"
}7m ago2026-07-27 02:29:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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-27T02:29:09.610Z",
"version": "unknown"
}7m ago2026-07-27 02:29:09 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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-27T02:29:09.610Z",
"version": "unknown"
}7m ago2026-07-27 02:29:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25431121",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.607Z",
"transactionId": 12267980.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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": "25431120",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.603Z",
"transactionId": 12267980.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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": 0.0,
"executionPlanCacheKeyHash": "E5CF3BBC",
"id": "25431119",
"pageFaults": 0.0,
"pageHits": 8.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.597Z",
"transactionId": 12267979.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25431118",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.590Z",
"transactionId": 12267978.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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": "25431117",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.586Z",
"transactionId": 12267978.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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": "25431116",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.580Z",
"transactionId": 12267977.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25431115",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:29:09.573Z",
"transactionId": 12267976.0,
"waiting": 0.0
}7m ago2026-07-27 02:29:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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-27T02:29:09.568Z",
"version": "unknown"
}7m ago2026-07-27 02:29:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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-27T02:29:09.568Z",
"version": "unknown"
}7m ago2026-07-27 02:29:09 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=3dade72b224fb1d7…
open trace flow ›
time2026-07-27 02:29:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace3dade72b224fb1d7e51acb8ec441abad
spanc8dd47304184f437
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-27T02:29:09.568Z",
"version": "unknown"
}8m ago2026-07-27 02:28:09 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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-27T02:28:09.893Z",
"version": "unknown"
}8m ago2026-07-27 02:28:09 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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-27T02:28:09.893Z",
"version": "unknown"
}8m ago2026-07-27 02:28:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 724.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "25427836",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.890Z",
"transactionId": 12266283.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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": "25427835",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.884Z",
"transactionId": 12266282.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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": "25427834",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.880Z",
"transactionId": 12266282.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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": "25427833",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.873Z",
"transactionId": 12266281.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25427832",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.865Z",
"transactionId": 12266280.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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-27T02:28:09.861Z",
"version": "unknown"
}8m ago2026-07-27 02:28:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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-27T02:28:09.861Z",
"version": "unknown"
}8m ago2026-07-27 02:28:09 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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-27T02:28:09.861Z",
"version": "unknown"
}8m ago2026-07-27 02:28:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25427831",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.857Z",
"transactionId": 12266279.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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": "25427830",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.854Z",
"transactionId": 12266279.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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": 0.0,
"executionPlanCacheKeyHash": "E5CF3BBC",
"id": "25427829",
"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: \u0027d4a889a1-a6b0-4bdd-9ede-fae571005b67\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.847Z",
"transactionId": 12266278.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "25427828",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.840Z",
"transactionId": 12266277.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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": "25427827",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.837Z",
"transactionId": 12266277.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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": "25427826",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.830Z",
"transactionId": 12266276.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25427825",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:28:09.822Z",
"transactionId": 12266275.0,
"waiting": 0.0
}8m ago2026-07-27 02:28:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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-27T02:28:09.818Z",
"version": "unknown"
}8m ago2026-07-27 02:28:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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-27T02:28:09.818Z",
"version": "unknown"
}8m ago2026-07-27 02:28:09 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=384299f28513acf5…
open trace flow ›
time2026-07-27 02:28:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
trace384299f28513acf552759326e581897d
span0325ea4b39ebaa63
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-27T02:28:09.818Z",
"version": "unknown"
}9m ago2026-07-27 02:27:09 UTC DEBUG virtual-assistant ✅ Org 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 summary: processed=2, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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-27T02:27:09.100Z",
"version": "unknown"
}9m ago2026-07-27 02:27:09 UTC DEBUG virtual-assistant [reminder] wo=57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e no reminder policy (NONE) — nothing to do
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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-27T02:27:09.099Z",
"version": "unknown"
}9m ago2026-07-27 02:27:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 724.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "25423565",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.096Z",
"transactionId": 12264577.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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": "25423564",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.089Z",
"transactionId": 12264576.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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": "25423563",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.086Z",
"transactionId": 12264576.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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": "25423562",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.079Z",
"transactionId": 12264575.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25423561",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.072Z",
"transactionId": 12264574.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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-27T02:27:09.068Z",
"version": "unknown"
}9m ago2026-07-27 02:27:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 57c957cb-a23f-4f3a-8bf1-bb9e566a2b6e
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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-27T02:27:09.068Z",
"version": "unknown"
}9m ago2026-07-27 02:27:09 UTC DEBUG virtual-assistant [reminder] wo=d4a889a1-a6b0-4bdd-9ede-fae571005b67 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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-27T02:27:09.067Z",
"version": "unknown"
}9m ago2026-07-27 02:27:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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": "25423560",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.064Z",
"transactionId": 12264573.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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": "25423559",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.061Z",
"transactionId": 12264573.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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": 0.0,
"executionPlanCacheKeyHash": "E5CF3BBC",
"id": "25423558",
"pageFaults": 0.0,
"pageHits": 8.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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.054Z",
"transactionId": 12264572.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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": "25423557",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.046Z",
"transactionId": 12264571.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 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...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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": "25423556",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.042Z",
"transactionId": 12264571.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 UTC neo4j virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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": "25423555",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.035Z",
"transactionId": 12264570.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥INFO
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "25423554",
"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-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:51512\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T02:27:09.028Z",
"transactionId": 12264569.0,
"waiting": 0.0
}9m ago2026-07-27 02:27:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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-27T02:27:09.023Z",
"version": "unknown"
}9m ago2026-07-27 02:27:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d4a889a1-a6b0-4bdd-9ede-fae571005b67
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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-27T02:27:09.023Z",
"version": "unknown"
}9m ago2026-07-27 02:27:09 UTC DEBUG virtual-assistant 🏢 Processing organization 8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30 (2 work orders)
filter by:
service=virtual-assistant
org=8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
severity≥DEBUG
trace=e9fe1eac8f95352d…
open trace flow ›
time2026-07-27 02:27:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org8a8c3a76-7bd6-45d4-9ca3-c9330f4aba30
versionunknown
tracee9fe1eac8f95352d4e284afe8d42f77d
span50a7c2572d8f23fa
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-27T02:27:09.023Z",
"version": "unknown"
}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.