afterhours-shift-manager/tests/slack_bot
Adam Moussa 1ccedff872 Add changelog-driven releases and App Home tab
Version the bot continuously from CHANGELOG.md (the single source of
truth for both the version and the staff-readable notes) and surface
changes to users in two ways:

- A new afterhours-release-notifier Lambda posts a "What's New" message
  to the shift channel on minor/major releases (patches stay silent).
- The bot gains an App Home "About" tab showing what it does, the
  command list, and the current version's notes.

release.yaml runs on Deploy success (not release:published — GITHUB_TOKEN
events don't start downstream workflows), checks out the deployed commit,
and tags + publishes a GitHub Release + invokes the notifier. It assumes a
dedicated, boundary-carrying OIDC role scoped to InvokeFunction on the
notifier; the account's cfn role gates role creation on that boundary.
The manual Version Bump workflow is retired. A CI guard enforces that a
CHANGELOG edit is a clean SemVer bump and that the in-package copy matches.
2026-06-11 19:15:20 -04:00
..
conftest.py Add pytest suite and wire it into CI (#85) (#86) 2026-06-01 19:07:08 -04:00
test_app_home.py Add changelog-driven releases and App Home tab 2026-06-11 19:15:20 -04:00
test_handle_admin.py Add pytest suite and wire it into CI (#85) (#86) 2026-06-01 19:07:08 -04:00
test_handle_drop.py Lock shift drops within 24h of start (#84) (#88) 2026-06-01 19:32:40 -04:00
test_handle_pick.py Add pytest suite and wire it into CI (#85) (#86) 2026-06-01 19:07:08 -04:00
test_handle_register_rate.py Add pytest suite and wire it into CI (#85) (#86) 2026-06-01 19:07:08 -04:00
test_handle_swap.py Add swap-acceptance (verified-swap) flow (#87) 2026-06-01 19:22:55 -04:00
test_helpers.py Lock shift drops within 24h of start (#84) (#88) 2026-06-01 19:32:40 -04:00
test_parse_date.py Add pytest suite and wire it into CI (#85) (#86) 2026-06-01 19:07:08 -04:00
test_pickup_button.py Add pytest suite and wire it into CI (#85) (#86) 2026-06-01 19:07:08 -04:00
test_swap_accept_decline.py Add swap-acceptance (verified-swap) flow (#87) 2026-06-01 19:22:55 -04:00