payments-dashboard/src
Adam Moussa 5330c3f88a
Some checks failed
Deploy / deploy (push) Has been cancelled
Merge expense-approval-bot into payments-dashboard (#28)
* Merge expense-approval-bot into payments-dashboard

Port the Slack reaction-driven expense routing workflow (receiver +
processor) from expense-approval-bot into this stack as JavaScript ESM.
Secrets copied to payments-dashboard/ prefix in Secrets Manager.

* Fix review findings from PR #28

- Add length check before timingSafeEqual to prevent RangeError on
  malformed signatures (returns 401 instead of 500)
- Check event.type === reaction_added to prevent reaction_removed
  from advancing expenses
- Move getPermalink call behind isOrigin check to skip unnecessary
  API call on non-origin stage transitions
2026-05-12 13:08:42 -04:00
..
expenseProcessor.js Merge expense-approval-bot into payments-dashboard (#28) 2026-05-12 13:08:42 -04:00
expenseReceiver.js Merge expense-approval-bot into payments-dashboard (#28) 2026-05-12 13:08:42 -04:00
fetchBoaTransactions.js Fix BoA transaction matching, add status progression protection, enable daily schedule 2026-04-14 17:43:13 -04:00
processPaymentCsv.js Fix BoA CashPro batch limit for large CSV exports (#21) 2026-05-07 20:44:14 -04:00
processPayrollEmail.js Fix Lambda compliance and rename SQS queue 2026-04-30 14:15:05 -04:00
slackAppHome.js Collapsible dashboard sections and clean up BoA audit log (#22) 2026-05-08 11:24:32 -04:00