1. Inspect the exact Actions and accounts
gmail_fetch_emails currently accepts a Gmail query, user_id, max_results, and payload controls. Its results can be unsorted or empty, and a nextPageToken means more pages remain. slack_send_message requires channel and one visible content mode. For an ordinary digest, use markdown_text, not blocks.
If either account is disconnected, run aident vault connect --integrationId <id> --json and have the owner complete the returned browser flow.
2. Fetch the inbox window
Save this asgmail-input.json, replacing the dates with the desired UTC calendar-day window:
nextPageToken for additional pages, then sort messages by their returned time before summarizing. Keep private email content out of shared logs.
3. Review the outgoing digest
Show the lead the exact Slack channel and message before posting. Save the approved content asslack-input.json:
4. Validate, post, and verify
ok, channel, and message timestamp or link, then confirm the message is visible in Slack. Slack message posting is not idempotent: if the CLI response is interrupted, inspect Audit and the channel before retrying.
Your scheduler can run the read and draft steps each weekday. Keep the review and post gate in the orchestration until the lead authorizes a defined automatic publishing policy. Loadout handles Action access and Audit; your scheduler owns timing and its own failure alerts.