Logs
Live Cloud Logging query (nothing stored) · master ·
trace 80a19a0e9b894447c405 (2-day window) ·
newest first · page 1 (200/page) · 102 entries in 2103 ms
all
app
neo4j
weaviate
time
relative
absolute
2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant ✅ Org 9f996610-f74a-4cd5-9052-cb5405d78c6f summary: processed=12, reminders_sent=0, moved_to_need_attention=0
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:377
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
✅ Org 9f996610-f74a-4cd5-9052-cb5405d78c6f summary: processed=12, reminders_sent=0, moved_to_need_attention=0
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:377",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "\u2705 Org 9f996610-f74a-4cd5-9052-cb5405d78c6f summary: processed=12, reminders_sent=0, moved_to_need_attention=0",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.935Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=485f1414-f260-45ca-806c-a1c7843624bc mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=485f1414-f260-45ca-806c-a1c7843624bc mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=2226m < step=2880m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=485f1414-f260-45ca-806c-a1c7843624bc mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=2226m \u003c step=2880m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.935Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 776.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628850",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.931Z",
"transactionId": 12016798.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628849",
"pageFaults": 0.0,
"pageHits": 4.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.924Z",
"transactionId": 12016797.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628848",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.921Z",
"transactionId": 12016797.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628847",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.913Z",
"transactionId": 12016796.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628846",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027485f1414-f260-45ca-806c-a1c7843624bc\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.905Z",
"transactionId": 12016795.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 485f1414-f260-45ca-806c-a1c7843624bc
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 485f1414-f260-45ca-806c-a1c7843624bc
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order 485f1414-f260-45ca-806c-a1c7843624bc",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.901Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 485f1414-f260-45ca-806c-a1c7843624bc
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 485f1414-f260-45ca-806c-a1c7843624bc
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order 485f1414-f260-45ca-806c-a1c7843624bc",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.901Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=88f04d6a-d740-47c4-bc29-a959b502598e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=88f04d6a-d740-47c4-bc29-a959b502598e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=3203m < step=2880m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=88f04d6a-d740-47c4-bc29-a959b502598e mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=3203m \u003c step=2880m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.900Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": 1.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628845",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.897Z",
"transactionId": 12016794.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628844",
"pageFaults": 0.0,
"pageHits": 4.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.890Z",
"transactionId": 12016793.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628843",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.886Z",
"transactionId": 12016793.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628842",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.879Z",
"transactionId": 12016792.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628841",
"pageFaults": 0.0,
"pageHits": 10.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u002788f04d6a-d740-47c4-bc29-a959b502598e\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.870Z",
"transactionId": 12016791.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 88f04d6a-d740-47c4-bc29-a959b502598e
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 88f04d6a-d740-47c4-bc29-a959b502598e
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order 88f04d6a-d740-47c4-bc29-a959b502598e",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.865Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 88f04d6a-d740-47c4-bc29-a959b502598e
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 88f04d6a-d740-47c4-bc29-a959b502598e
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order 88f04d6a-d740-47c4-bc29-a959b502598e",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.865Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=8b2449c7-0c34-47c4-b4b9-ae5867fb2d45 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=8b2449c7-0c34-47c4-b4b9-ae5867fb2d45 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=3223m < step=2880m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=8b2449c7-0c34-47c4-b4b9-ae5867fb2d45 mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=3223m \u003c step=2880m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.865Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 828.0,
"cpu": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628840",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.861Z",
"transactionId": 12016790.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses
OPTIONAL MATCH (d:Document)
WHERE d.tildaid IN COALESCE(a.docIds, [])
WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents
// Compute latest AI_MSG draft id per work order for gating REGENERATE
OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]->(ai:WorkOrderActivity)
WHERE ai.activity_type = 'AI_MSG' // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck
WITH w, a, documents,
max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,
collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs
WITH a, documents,
CASE
WHEN size(ai_msgs) = 0 THEN false
ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)
END AS is_latest_draft
RETURN a,
CASE WHEN size(documents) > 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,
is_latest_draft
ORDER BY a.createdat DESC
SKIP $skip
LIMIT $limit
raw payload (15 fields)
{
"allocatedBytes": 3272.0,
"cpu": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "24628839",
"pageFaults": 0.0,
"pageHits": 12.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.853Z",
"transactionId": 12016789.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628838",
"pageFaults": 0.0,
"pageHits": 13.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.849Z",
"transactionId": 12016789.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628837",
"pageFaults": 0.0,
"pageHits": 17.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.841Z",
"transactionId": 12016788.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628836",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u00278b2449c7-0c34-47c4-b4b9-ae5867fb2d45\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.832Z",
"transactionId": 12016787.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.826Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order 8b2449c7-0c34-47c4-b4b9-ae5867fb2d45",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.826Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=c6b45988-3afb-4efc-843d-efe22819df8a mode=RECURRING should_send=False escalate=False override=set reason='override pending: eligible...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=c6b45988-3afb-4efc-843d-efe22819df8a mode=RECURRING should_send=False escalate=False override=set reason='override pending: eligible in 1085m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=c6b45988-3afb-4efc-843d-efe22819df8a mode=RECURRING should_send=False escalate=False override=set reason=\u0027override pending: eligible in 1085m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.825Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 828.0,
"cpu": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628835",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.821Z",
"transactionId": 12016786.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628834",
"pageFaults": 0.0,
"pageHits": 17.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.813Z",
"transactionId": 12016785.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628833",
"pageFaults": 0.0,
"pageHits": 18.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.810Z",
"transactionId": 12016785.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628832",
"pageFaults": 0.0,
"pageHits": 30.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.803Z",
"transactionId": 12016784.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628831",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027c6b45988-3afb-4efc-843d-efe22819df8a\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.793Z",
"transactionId": 12016783.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order c6b45988-3afb-4efc-843d-efe22819df8a
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order c6b45988-3afb-4efc-843d-efe22819df8a
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order c6b45988-3afb-4efc-843d-efe22819df8a",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.788Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order c6b45988-3afb-4efc-843d-efe22819df8a
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order c6b45988-3afb-4efc-843d-efe22819df8a
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order c6b45988-3afb-4efc-843d-efe22819df8a",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.788Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=d74db13c-677a-4fd3-89f6-02349b34abfb mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=d74db13c-677a-4fd3-89f6-02349b34abfb mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=3301m < step=2880m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=d74db13c-677a-4fd3-89f6-02349b34abfb mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=3301m \u003c step=2880m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.788Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 776.0,
"cpu": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628830",
"pageFaults": 0.0,
"pageHits": 8.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.784Z",
"transactionId": 12016782.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses
OPTIONAL MATCH (d:Document)
WHERE d.tildaid IN COALESCE(a.docIds, [])
WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents
// Compute latest AI_MSG draft id per work order for gating REGENERATE
OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]->(ai:WorkOrderActivity)
WHERE ai.activity_type = 'AI_MSG' // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck
WITH w, a, documents,
max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,
collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs
WITH a, documents,
CASE
WHEN size(ai_msgs) = 0 THEN false
ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)
END AS is_latest_draft
RETURN a,
CASE WHEN size(documents) > 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,
is_latest_draft
ORDER BY a.createdat DESC
SKIP $skip
LIMIT $limit
raw payload (15 fields)
{
"allocatedBytes": 3272.0,
"cpu": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "24628829",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.776Z",
"transactionId": 12016781.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628828",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.772Z",
"transactionId": 12016781.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628827",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.763Z",
"transactionId": 12016780.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628826",
"pageFaults": 0.0,
"pageHits": 10.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027d74db13c-677a-4fd3-89f6-02349b34abfb\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.755Z",
"transactionId": 12016779.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order d74db13c-677a-4fd3-89f6-02349b34abfb
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order d74db13c-677a-4fd3-89f6-02349b34abfb
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order d74db13c-677a-4fd3-89f6-02349b34abfb",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.750Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order d74db13c-677a-4fd3-89f6-02349b34abfb
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order d74db13c-677a-4fd3-89f6-02349b34abfb
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order d74db13c-677a-4fd3-89f6-02349b34abfb",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.750Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=8c5c5785-bead-41a8-8002-3d05b949c13d draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=8c5c5785-bead-41a8-8002-3d05b949c13d draft already pending — skipping reminder (no send, no draft) to preserve user intent
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:200",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=8c5c5785-bead-41a8-8002-3d05b949c13d draft already pending \u2014 skipping reminder (no send, no draft) to preserve user intent",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.749Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628825",
"pageFaults": 0.0,
"pageHits": 37.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 25, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.745Z",
"transactionId": 12016778.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628824",
"pageFaults": 0.0,
"pageHits": 20.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.742Z",
"transactionId": 12016778.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628823",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]-\u003e(o:Organization)\n RETURN COALESCE(o.reminderApprovalRequired, true) AS approval_required\n ",
"queryParameters": "{wo: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.733Z",
"transactionId": 12016777.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628822",
"pageFaults": 0.0,
"pageHits": 37.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.725Z",
"transactionId": 12016776.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628821",
"pageFaults": 0.0,
"pageHits": 20.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.721Z",
"transactionId": 12016776.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628820",
"pageFaults": 0.0,
"pageHits": 28.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.714Z",
"transactionId": 12016775.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (n:WorkOrder {tildaid: $node_id})
RETURN n
raw payload (15 fields)
{
"allocatedBytes": 312.0,
"cpu": 1.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "E0146DD7",
"id": "24628819",
"pageFaults": 0.0,
"pageHits": 12.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u00278c5c5785-bead-41a8-8002-3d05b949c13d\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.706Z",
"transactionId": 12016774.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 8c5c5785-bead-41a8-8002-3d05b949c13d
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 8c5c5785-bead-41a8-8002-3d05b949c13d
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order 8c5c5785-bead-41a8-8002-3d05b949c13d",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.701Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 8c5c5785-bead-41a8-8002-3d05b949c13d
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 8c5c5785-bead-41a8-8002-3d05b949c13d
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order 8c5c5785-bead-41a8-8002-3d05b949c13d",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.701Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=27504fe1-a00e-459f-af03-ba243eb31670 draft already pending — skipping reminder (no send, no draft) to preserve user intent
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:200
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=27504fe1-a00e-459f-af03-ba243eb31670 draft already pending — skipping reminder (no send, no draft) to preserve user intent
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:200",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=27504fe1-a00e-459f-af03-ba243eb31670 draft already pending \u2014 skipping reminder (no send, no draft) to preserve user intent",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.700Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628818",
"pageFaults": 0.0,
"pageHits": 53.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 25, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.697Z",
"transactionId": 12016773.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628817",
"pageFaults": 0.0,
"pageHits": 28.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.693Z",
"transactionId": 12016773.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]->(o:Organization) RETURN...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628816",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $wo})-[:WORK_ORDER_TO_ORGANIZATION]-\u003e(o:Organization)\n RETURN COALESCE(o.reminderApprovalRequired, true) AS approval_required\n ",
"queryParameters": "{wo: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.685Z",
"transactionId": 12016772.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628815",
"pageFaults": 0.0,
"pageHits": 53.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.678Z",
"transactionId": 12016771.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628814",
"pageFaults": 0.0,
"pageHits": 28.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.674Z",
"transactionId": 12016771.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628813",
"pageFaults": 0.0,
"pageHits": 34.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.666Z",
"transactionId": 12016770.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628812",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u002727504fe1-a00e-459f-af03-ba243eb31670\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.657Z",
"transactionId": 12016769.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 27504fe1-a00e-459f-af03-ba243eb31670
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 27504fe1-a00e-459f-af03-ba243eb31670
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order 27504fe1-a00e-459f-af03-ba243eb31670",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.653Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 27504fe1-a00e-459f-af03-ba243eb31670
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 27504fe1-a00e-459f-af03-ba243eb31670
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order 27504fe1-a00e-459f-af03-ba243eb31670",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.653Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=f42328f2-c28d-44dd-9ba7-0b43ac19af6d mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=f42328f2-c28d-44dd-9ba7-0b43ac19af6d mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=5332m < step=2880m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=f42328f2-c28d-44dd-9ba7-0b43ac19af6d mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=5332m \u003c step=2880m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.652Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 828.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628811",
"pageFaults": 0.0,
"pageHits": 10.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.648Z",
"transactionId": 12016768.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628810",
"pageFaults": 0.0,
"pageHits": 23.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.641Z",
"transactionId": 12016767.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628809",
"pageFaults": 0.0,
"pageHits": 24.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.638Z",
"transactionId": 12016767.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628808",
"pageFaults": 0.0,
"pageHits": 44.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.631Z",
"transactionId": 12016766.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628807",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027f42328f2-c28d-44dd-9ba7-0b43ac19af6d\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.623Z",
"transactionId": 12016765.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.618Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order f42328f2-c28d-44dd-9ba7-0b43ac19af6d",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.618Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=b26f2eda-ea91-4a98-b778-0a7db67a2b6a mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=b26f2eda-ea91-4a98-b778-0a7db67a2b6a mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=5097m < step=2880m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=b26f2eda-ea91-4a98-b778-0a7db67a2b6a mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=5097m \u003c step=2880m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.618Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 776.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628806",
"pageFaults": 0.0,
"pageHits": 10.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.614Z",
"transactionId": 12016764.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628805",
"pageFaults": 0.0,
"pageHits": 6.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.607Z",
"transactionId": 12016763.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628804",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.604Z",
"transactionId": 12016763.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628803",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.597Z",
"transactionId": 12016762.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628802",
"pageFaults": 0.0,
"pageHits": 8.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027b26f2eda-ea91-4a98-b778-0a7db67a2b6a\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.590Z",
"transactionId": 12016761.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.585Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order b26f2eda-ea91-4a98-b778-0a7db67a2b6a",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.584Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=a90625ed-5354-473f-8665-840a4b8ff106 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=a90625ed-5354-473f-8665-840a4b8ff106 mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=9464m < step=17280m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=a90625ed-5354-473f-8665-840a4b8ff106 mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=9464m \u003c step=17280m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.584Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 828.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628801",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.581Z",
"transactionId": 12016760.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses
OPTIONAL MATCH (d:Document)
WHERE d.tildaid IN COALESCE(a.docIds, [])
WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents
// Compute latest AI_MSG draft id per work order for gating REGENERATE
OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]->(ai:WorkOrderActivity)
WHERE ai.activity_type = 'AI_MSG' // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck
WITH w, a, documents,
max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,
collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs
WITH a, documents,
CASE
WHEN size(ai_msgs) = 0 THEN false
ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)
END AS is_latest_draft
RETURN a,
CASE WHEN size(documents) > 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,
is_latest_draft
ORDER BY a.createdat DESC
SKIP $skip
LIMIT $limit
raw payload (15 fields)
{
"allocatedBytes": 3272.0,
"cpu": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "24628800",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.573Z",
"transactionId": 12016759.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628799",
"pageFaults": 0.0,
"pageHits": 10.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.570Z",
"transactionId": 12016759.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628798",
"pageFaults": 0.0,
"pageHits": 12.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.563Z",
"transactionId": 12016758.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628797",
"pageFaults": 0.0,
"pageHits": 10.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027a90625ed-5354-473f-8665-840a4b8ff106\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.555Z",
"transactionId": 12016757.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order a90625ed-5354-473f-8665-840a4b8ff106
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order a90625ed-5354-473f-8665-840a4b8ff106
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order a90625ed-5354-473f-8665-840a4b8ff106",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.550Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order a90625ed-5354-473f-8665-840a4b8ff106
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order a90625ed-5354-473f-8665-840a4b8ff106
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order a90625ed-5354-473f-8665-840a4b8ff106",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.550Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=e358167a-298a-4e2e-bd17-401ab034115e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due:...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=e358167a-298a-4e2e-bd17-401ab034115e mode=RECURRING should_send=False escalate=False override=none reason='RECURRING not due: now-base=9497m < step=17280m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=e358167a-298a-4e2e-bd17-401ab034115e mode=RECURRING should_send=False escalate=False override=none reason=\u0027RECURRING not due: now-base=9497m \u003c step=17280m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.550Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 828.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628796",
"pageFaults": 0.0,
"pageHits": 10.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.546Z",
"transactionId": 12016756.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628795",
"pageFaults": 0.0,
"pageHits": 7.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.539Z",
"transactionId": 12016755.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628794",
"pageFaults": 0.0,
"pageHits": 8.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.536Z",
"transactionId": 12016755.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628793",
"pageFaults": 0.0,
"pageHits": 10.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.529Z",
"transactionId": 12016754.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628791",
"pageFaults": 0.0,
"pageHits": 9.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027e358167a-298a-4e2e-bd17-401ab034115e\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.522Z",
"transactionId": 12016752.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order e358167a-298a-4e2e-bd17-401ab034115e
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order e358167a-298a-4e2e-bd17-401ab034115e
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order e358167a-298a-4e2e-bd17-401ab034115e",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.517Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order e358167a-298a-4e2e-bd17-401ab034115e
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order e358167a-298a-4e2e-bd17-401ab034115e
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order e358167a-298a-4e2e-bd17-401ab034115e",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.517Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [reminder] wo=513b7315-882c-48fb-a126-ffc4e06834ec mode=RECURRING should_send=False escalate=False override=set reason='override pending: eligible...
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:244
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[reminder] wo=513b7315-882c-48fb-a126-ffc4e06834ec mode=RECURRING should_send=False escalate=False override=set reason='override pending: eligible in 1007m'
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:244",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[reminder] wo=513b7315-882c-48fb-a126-ffc4e06834ec mode=RECURRING should_send=False escalate=False override=set reason=\u0027override pending: eligible in 1007m\u0027",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.517Z",
"version": "unknown"
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})<-[:FACT_TO_WORK_ORDER]-(f:Fact)
WHERE f.delpending = false
RETURN f
ORDER BY f.createdat ASC
raw payload (15 fields)
{
"allocatedBytes": 776.0,
"cpu": 0.0,
"elapsedTimeMs": 0.0,
"executionPlanCacheKeyHash": "23A43F51",
"id": "24628790",
"pageFaults": 0.0,
"pageHits": 11.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})\u003c-[:FACT_TO_WORK_ORDER]-(f:Fact)\n WHERE f.delpending = false\n RETURN f\n ORDER BY f.createdat ASC\n ",
"queryParameters": "{work_order_id: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.514Z",
"transactionId": 12016751.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity)
WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses
OPTIONAL MATCH (d:Document)
WHERE d.tildaid IN COALESCE(a.docIds, [])
WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents
// Compute latest AI_MSG draft id per work order for gating REGENERATE
OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]->(ai:WorkOrderActivity)
WHERE ai.activity_type = 'AI_MSG' // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck
WITH w, a, documents,
max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,
collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs
WITH a, documents,
CASE
WHEN size(ai_msgs) = 0 THEN false
ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)
END AS is_latest_draft
RETURN a,
CASE WHEN size(documents) > 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,
is_latest_draft
ORDER BY a.createdat DESC
SKIP $skip
LIMIT $limit
raw payload (15 fields)
{
"allocatedBytes": 3272.0,
"cpu": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "2A13D7A9",
"id": "24628789",
"pageFaults": 0.0,
"pageHits": 25.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n OPTIONAL MATCH (d:Document)\n WHERE d.tildaid IN COALESCE(a.docIds, [])\n WITH w, a, COLLECT(DISTINCT {tildaid: d.tildaid, fileName: d.fileName, contentType: d.contentType}) as documents\n // Compute latest AI_MSG draft id per work order for gating REGENERATE\n OPTIONAL MATCH (w)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(ai:WorkOrderActivity)\n WHERE ai.activity_type = \u0027AI_MSG\u0027 // any status: a newer SENT/QUEUED must supersede an older FindingsChanged draft, else REGENERATE stays stuck\n WITH w, a, documents,\n max(coalesce(ai.updatedat, ai.createdat)) AS latest_any_ts,\n collect({id: ai.tildaid, ts: coalesce(ai.updatedat, ai.createdat), status: ai.status, ignoreType: ai.ignoreType}) AS ai_msgs\n WITH a, documents,\n CASE\n WHEN size(ai_msgs) = 0 THEN false\n ELSE any(x IN ai_msgs WHERE x.id = a.tildaid AND x.ts = latest_any_ts)\n END AS is_latest_draft\n RETURN a,\n CASE WHEN size(documents) \u003e 0 AND documents[0].tildaid IS NOT NULL THEN documents ELSE [] END AS documents,\n is_latest_draft\n ORDER BY a.createdat DESC\n SKIP $skip\n LIMIT $limit\n ",
"queryParameters": "{limit: 1, statuses: [\u0027DRAFT\u0027], skip: 0, work_order_id: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.507Z",
"transactionId": 12016750.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628788",
"pageFaults": 0.0,
"pageHits": 26.0,
"planning": 0.0,
"query": "\n MATCH (w:WorkOrder {tildaid: $work_order_id})-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity)\n WHERE 1=1 AND a.activity_type IN $activity_types AND a.status IN $statuses \n RETURN count(a) as total\n ",
"queryParameters": "{statuses: [\u0027DRAFT\u0027], work_order_id: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027, activity_types: [\u0027AI_MSG\u0027]}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.504Z",
"transactionId": 12016750.0,
"waiting": 0.0
}2h ago2026-07-27 00:02: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=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podserver-2-dev-0
query
MATCH (wo:WorkOrder {tildaid: $wo_id})
OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]->(a:WorkOrderActivity {activity_type: 'U_REPLY'})
RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts
raw payload (15 fields)
{
"allocatedBytes": 928.0,
"cpu": 0.0,
"elapsedTimeMs": 1.0,
"executionPlanCacheKeyHash": "4C51129A",
"id": "24628787",
"pageFaults": 0.0,
"pageHits": 38.0,
"planning": 0.0,
"query": "\n MATCH (wo:WorkOrder {tildaid: $wo_id})\n OPTIONAL MATCH (wo)-[:WORK_ORDER_TO_ACTIVITY]-\u003e(a:WorkOrderActivity {activity_type: \u0027U_REPLY\u0027})\n RETURN wo.createdat AS created_at, max(a.timestamp) AS latest_reply_ts\n ",
"queryParameters": "{wo_id: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.496Z",
"transactionId": 12016749.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC neo4j virtual-assistant MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥INFO
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityINFO
servicevirtual-assistant
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
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": "24628786",
"pageFaults": 0.0,
"pageHits": 12.0,
"planning": 0.0,
"query": "MATCH (n:WorkOrder {tildaid: $node_id}) RETURN n",
"queryParameters": "{node_id: \u0027513b7315-882c-48fb-a126-ffc4e06834ec\u0027}",
"runtime": "pipelined",
"source": "bolt-session\tbolt\tneo4j-python/5.28.0 Python/3.12.13-final-0 (linux)\t\tclient/10.129.4.156:38312\tserver/10.173.0.8:7687\u003e",
"timestamp": "2026-07-27T00:02:09.487Z",
"transactionId": 12016748.0,
"waiting": 0.0
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] Starting processing for work order 513b7315-882c-48fb-a126-ffc4e06834ec
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:135
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] Starting processing for work order 513b7315-882c-48fb-a126-ffc4e06834ec
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:135",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] Starting processing for work order 513b7315-882c-48fb-a126-ffc4e06834ec",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.483Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant [daily_cron] About to process work order 513b7315-882c-48fb-a126-ffc4e06834ec
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:368
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
[daily_cron] About to process work order 513b7315-882c-48fb-a126-ffc4e06834ec
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:368",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "[daily_cron] About to process work order 513b7315-882c-48fb-a126-ffc4e06834ec",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.482Z",
"version": "unknown"
}2h ago2026-07-27 00:02:09 UTC DEBUG virtual-assistant 🏢 Processing organization 9f996610-f74a-4cd5-9052-cb5405d78c6f (12 work orders)
filter by:
service=virtual-assistant
org=9f996610-f74a-4cd5-9052-cb5405d78c6f
severity≥DEBUG
trace=80a19a0e9b894447…
open trace flow ›
time2026-07-27 00:02:09 UTC
severityDEBUG
servicevirtual-assistant
sourcejobs/daily_work_order_cron.py:362
clustermaster
org9f996610-f74a-4cd5-9052-cb5405d78c6f
versionunknown
trace80a19a0e9b894447c4057bea31429629
span53d4b3bb390e243f
podvirtual-assistant-65b975d66b-l8wpw
message
🏢 Processing organization 9f996610-f74a-4cd5-9052-cb5405d78c6f (12 work orders)
raw payload (8 fields)
{
"caller": "jobs/daily_work_order_cron.py:362",
"cluster": "master",
"environment": "DEVELOPMENT",
"message": "\ud83c\udfe2 Processing organization 9f996610-f74a-4cd5-9052-cb5405d78c6f (12 work orders)",
"org_alias": "9f996610-f74a-4cd5-9052-cb5405d78c6f",
"service": "virtual-assistant",
"timestamp": "2026-07-27T00:02:09.482Z",
"version": "unknown"
}Paginated with Cloud Logging page cursors, so you can walk the whole 2-day window — not just the newest page. Click any filter by value to scope the view (resets to page 1). Paste a trace id to see every log line across all services for that one request.