feat(scouts): debug scripts + deliver_pending diagnostic logs

- scripts/trigger_gmail_scout.py: manually fire ScoutEngine.trigger_scout
- scripts/inspect_gmail_scout_token.py: decrypt + show stored OAuth scopes
- scripts/show_gmail_scout_state.py: print scout config + queue/log counts
- scripts/reset_triage_queue_to_queued.py: revert delivered → queued for re-delivery
- engine.py: info logs around deliver_pending (rows found, send_json roundtrip)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Roberto
2026-06-11 00:27:04 +02:00
parent f64ca11888
commit 79a926e4d8
5 changed files with 227 additions and 0 deletions

View File

@@ -144,6 +144,7 @@ class ScoutEngine:
ScoutTriageQueue.status == "queued",
)
)).scalars().all()
logger.info("deliver_pending: user=%s found %d queued rows", user_id, len(rows))
for row in rows:
try:
@@ -173,7 +174,9 @@ class ScoutEngine:
"payload": None,
},
}
logger.info("deliver_pending: sending proposal id=%s subject=%r", row.id, meta.subject)
await ws.send_json(payload)
logger.info("deliver_pending: send_json returned for proposal id=%s", row.id)
row.status = "delivered"
row.delivered_at = datetime.now(tz=timezone.utc)