Runbooks
Written to be followed at 2am by someone who did not build the thing.
Pam is not answering
- Check credits first. Most often this is a board at zero, which is correct behaviour rather than an incident.
/api/settings/ai-diagas a secretary or chair — it exercises the real chat shape, not just credentials.- If it reports a Bedrock error, the hint names the cause. The five we have
actually hit are covered in
bedrockErrorHint, and each names its own fix.
Bedrock model access is an AWS Marketplace subscription. If the error names
aws-marketplace:Subscribe, do NOT grant that to the runtime credential —
attach AWSMarketplaceManageSubscriptions to an admin temporarily, invoke the
model once, then detach. The subscription is account-wide and outlives the
permission.
Nothing is happening on schedule
The scheduler runs from the ops host, not Vercel.
crontab -l # expect */5
/opt/ai4boards/src/scripts/scheduler.sh # run it by hand
A 401 means CRON_SECRET on the box and in Vercel disagree.
A customer cannot pay
node scripts/stripe-verify.mjs
Most likely a catalogue row pointing at an archived Price. That happens when a repricing archives the old Price and fails to write the new id.
A board is out of credits mid-month
Not an incident. Confirm from ai_credit_ledger which feature consumed them —
usually daily briefs for a large board — and advise a top-up or a plan change.