← services
Trace flow
14bbcbfe7f63c11ae0bf0c158f861aad · live fetch 2219 ms · tilda-trial-automation
Waterfall
Request span + Neo4j queries by start offset (reconstructed from log timestamps — approximate)
readwrite
Queries in this trace 20
| Query | Offset | Elapsed | R/W |
|---|---|---|---|
MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n |
— | 0 ms | read |
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
|
— | 0 ms | read |
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
|
— | 0 ms | read |
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
|
— | 0 ms | read |
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
|
— | 0 ms | read |
MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n |
— | 0 ms | read |
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
|
— | 0 ms | read |
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
|
— | 0 ms | read |
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
|
— | 0 ms | read |
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
|
— | 0 ms | read |
MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n |
— | 0 ms | read |
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
|
— | 0 ms | read |
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
|
— | 0 ms | read |
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
|
— | 0 ms | read |
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
|
— | 0 ms | read |
MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n |
— | 0 ms | read |
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
|
— | 0 ms | read |
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
|
— | 0 ms | read |
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
|
— | 0 ms | read |
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
|
— | 0 ms | read |
Logs in this trace 34
3h ago DEBUG virtual-assistant ✅ Org 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e summary: processed=4, reminders_sent=0, moved_to_need_attention=0
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
✅ Org 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e summary: processed=4, reminders_sent=0, moved_to_need_attention=0
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:377",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "\u2705 Org 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e summary: processed=4, reminders_sent=0, moved_to_need_attention=0",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.269Z",
"version": "unknown"
}3h ago DEBUG virtual-assistant [reminder] wo=5fda6743-4617-464f-9598-5ffebf341fa6 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=5fda6743-4617-464f-9598-5ffebf341fa6 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=743m < step=1440m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=5fda6743-4617-464f-9598-5ffebf341fa6 mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=743m \u003c step=1440m\u0027",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.269Z",
"version": "unknown"
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394531",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.266Z",
"transactionId": 11882058.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394530",
"pageFaults": 0.0,
"pageHits": 12.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.259Z",
"transactionId": 11882057.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394529",
"pageFaults": 0.0,
"pageHits": 13.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.256Z",
"transactionId": 11882057.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394528",
"pageFaults": 0.0,
"pageHits": 15.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.249Z",
"transactionId": 11882056.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394527",
"pageFaults": 0.0,
"pageHits": 8.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u00275fda6743-4617-464f-9598-5ffebf341fa6\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.241Z",
"transactionId": 11882055.0,
"waiting": 0.0
}3h ago DEBUG virtual-assistant [daily_cron] Starting processing for work order 5fda6743-4617-464f-9598-5ffebf341fa6
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 5fda6743-4617-464f-9598-5ffebf341fa6
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order 5fda6743-4617-464f-9598-5ffebf341fa6",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.237Z",
"version": "unknown"
}3h ago DEBUG virtual-assistant [daily_cron] About to process work order 5fda6743-4617-464f-9598-5ffebf341fa6
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 5fda6743-4617-464f-9598-5ffebf341fa6
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order 5fda6743-4617-464f-9598-5ffebf341fa6",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.237Z",
"version": "unknown"
}3h ago DEBUG virtual-assistant [reminder] wo=322547e7-b0fd-4d98-963d-afb231950377 no reminder policy (NONE) — nothing to do
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=322547e7-b0fd-4d98-963d-afb231950377 no reminder policy (NONE) — nothing to do
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:220",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=322547e7-b0fd-4d98-963d-afb231950377 no reminder policy (NONE) \u2014 nothing to do",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.236Z",
"version": "unknown"
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394526",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.233Z",
"transactionId": 11882054.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394525",
"pageFaults": 0.0,
"pageHits": 8.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.226Z",
"transactionId": 11882053.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394524",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.223Z",
"transactionId": 11882053.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394523",
"pageFaults": 0.0,
"pageHits": 13.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.216Z",
"transactionId": 11882052.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394522",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027322547e7-b0fd-4d98-963d-afb231950377\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.208Z",
"transactionId": 11882051.0,
"waiting": 0.0
}3h ago DEBUG virtual-assistant [daily_cron] Starting processing for work order 322547e7-b0fd-4d98-963d-afb231950377
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 322547e7-b0fd-4d98-963d-afb231950377
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order 322547e7-b0fd-4d98-963d-afb231950377",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.204Z",
"version": "unknown"
}3h ago DEBUG virtual-assistant [daily_cron] About to process work order 322547e7-b0fd-4d98-963d-afb231950377
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 322547e7-b0fd-4d98-963d-afb231950377
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order 322547e7-b0fd-4d98-963d-afb231950377",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.204Z",
"version": "unknown"
}3h ago DEBUG virtual-assistant [reminder] wo=6ff3918b-05db-4310-bde3-9019341f582a no reminder policy (NONE) — nothing to do
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=6ff3918b-05db-4310-bde3-9019341f582a no reminder policy (NONE) — nothing to do
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:220",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=6ff3918b-05db-4310-bde3-9019341f582a no reminder policy (NONE) \u2014 nothing to do",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.204Z",
"version": "unknown"
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394521",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.201Z",
"transactionId": 11882050.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394520",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.194Z",
"transactionId": 11882049.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394519",
"pageFaults": 0.0,
"pageHits": 12.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.191Z",
"transactionId": 11882049.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394518",
"pageFaults": 0.0,
"pageHits": 16.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.183Z",
"transactionId": 11882048.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394517",
"pageFaults": 0.0,
"pageHits": 8.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u00276ff3918b-05db-4310-bde3-9019341f582a\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.174Z",
"transactionId": 11882047.0,
"waiting": 0.0
}3h ago DEBUG virtual-assistant [daily_cron] Starting processing for work order 6ff3918b-05db-4310-bde3-9019341f582a
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 6ff3918b-05db-4310-bde3-9019341f582a
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order 6ff3918b-05db-4310-bde3-9019341f582a",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.170Z",
"version": "unknown"
}3h ago DEBUG virtual-assistant [daily_cron] About to process work order 6ff3918b-05db-4310-bde3-9019341f582a
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 6ff3918b-05db-4310-bde3-9019341f582a
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order 6ff3918b-05db-4310-bde3-9019341f582a",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.169Z",
"version": "unknown"
}3h ago DEBUG virtual-assistant [reminder] wo=c10303ac-4c50-40fa-9713-4e535108f3b7 no reminder policy (NONE) — nothing to do
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:220
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=c10303ac-4c50-40fa-9713-4e535108f3b7 no reminder policy (NONE) — nothing to do
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:220",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=c10303ac-4c50-40fa-9713-4e535108f3b7 no reminder policy (NONE) \u2014 nothing to do",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.169Z",
"version": "unknown"
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact) WHERE f.delpending = false ...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394516",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.166Z",
"transactionId": 11882046.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394515",
"pageFaults": 0.0,
"pageHits": 17.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.159Z",
"transactionId": 11882045.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity) WHERE 1=1 AND a.activity_type IN...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394514",
"pageFaults": 0.0,
"pageHits": 18.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.156Z",
"transactionId": 11882045.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (wo:WorkOrder {tildaid: $wo_id}) OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type:...
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394513",
"pageFaults": 0.0,
"pageHits": 26.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.148Z",
"transactionId": 11882044.0,
"waiting": 0.0
}3h ago INFO virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
time2026-07-26 22:43:10 UTC
severityINFO
servicevirtual-assistant
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
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": "24394512",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027c10303ac-4c50-40fa-9713-4e535108f3b7\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:43384\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-26T22:43:10.140Z",
"transactionId": 11882043.0,
"waiting": 0.0
}3h ago DEBUG virtual-assistant [daily_cron] Starting processing for work order c10303ac-4c50-40fa-9713-4e535108f3b7
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order c10303ac-4c50-40fa-9713-4e535108f3b7
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order c10303ac-4c50-40fa-9713-4e535108f3b7",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.135Z",
"version": "unknown"
}3h ago DEBUG virtual-assistant [daily_cron] About to process work order c10303ac-4c50-40fa-9713-4e535108f3b7
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order c10303ac-4c50-40fa-9713-4e535108f3b7
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order c10303ac-4c50-40fa-9713-4e535108f3b7",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.135Z",
"version": "unknown"
}3h ago DEBUG virtual-assistant 🏢 Processing organization 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e (4 work orders)
time2026-07-26 22:43:10 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org4510cbf5-af86-40c7-ba81-1e7aa0df8c2e
versionunknown
trace14bbcbfe7f63c11ae0bf0c158f861aad
spanb26b95a49ca6525e
podvirtual-assistant-65b975d66b-l8wpw
message
🏢 Processing organization 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e (4 work orders)
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:362",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "\ud83c\udfe2 Processing organization 4510cbf5-af86-40c7-ba81-1e7aa0df8c2e (4 work orders)",
"org_alias": "4510cbf5-af86-40c7-ba81-1e7aa0df8c2e",
"service": "virtual-assistant",
"timestamp": "2026-07-26T22:43:10.135Z",
"version": "unknown"
}
Every log line sharing this trace id, across all services — fetched live from Cloud Logging
(tilda-trial-automation), never stored. Open the Logs Explorer
for the same view with field filters.