Changelog
ci(github): default workflows to ubuntu-latest
April 21, 2026Branch ci/ubuntu-hosted-runners-defaultPR #4122 min readAI Generated
ci(github): default workflows to ubuntu-latest
Automated summary for branch ci/ubuntu-hosted-runners-default. This post is generated on push; commit it with your changes.
Commits
- d9fa7788 chore(webapp): sync PR blog post (ai version)
- 07f592ef chore(webapp): sync PR blog post for ci/ubuntu-hosted-runners-default
- 1190c9a1 feat(auth,admin): superadmin batch flows, magic-link BFF, transactional email
- dee985f0 Merge remote-tracking branch 'origin/main' into ci/ubuntu-hosted-runners-default
- af08a219 chore(webapp): sync PR blog post (final commit list)
- 274ba40c chore(webapp): refresh PR blog post ai.md
- 1d5118c7 chore(webapp): sync PR blog post for ci/ubuntu-hosted-runners-default
- 89c19de7 ci(github): default workflows to ubuntu-latest
Files changed
services/rust-api/src/api/v1/admin_console.rs | 230 ++++++++++++++++++++-
services/rust-api/src/api/v1/agent_applications.rs | 2 +-
services/rust-api/src/api/v1/agent_invitations.rs | 21 +-
services/rust-api/src/api/v1/auth.rs | 6 +-
services/rust-api/src/config.rs | 39 +++-
services/rust-api/src/services/email.rs | 43 ++--
services/rust-api/src/services/mod.rs | 1 +
services/rust-api/src/services/notifications.rs | 107 ++++++----
.../rust-api/src/services/transactional_email.rs | 147 +++++++++++++
.../ci-ubuntu-hosted-runners-default/manifest.json | 6 +-
.../versions/ai.md | 56 +++--
webapp/e2e/email-auth-local.spec.ts | 8 +-
webapp/e2e/email-transactional-adversarial.spec.ts | 195 +++++++++++++++++
.../(authenticated)/account/agent/invite/page.tsx | 72 +------
.../admin/batch-candidate-invite-form.tsx | 98 +++++++++
.../src/app/(authenticated)/admin/invite-form.tsx | 25 ++-
.../src/app/(authenticated)/admin/super/page.tsx | 6 +-
.../super/superadmin-agent-signup-invites.tsx | 119 +++++++++++
.../admin/super/superadmin-roster.tsx | 122 ++++++++---
webapp/src/app/(signup)/auth/magic-link/page.tsx | 5 +-
.../app/api/admin/console/grant-admins/route.ts | 22 ++
.../admin/console/invite-agent-signups/route.ts | 22 ++
.../src/app/api/auth/magic-link/callback/route.ts | 5 +-
webapp/src/app/api/auth/magic-link/route.ts | 43 ++++
webapp/src/app/api/auth/verify-email/route.ts | 5 +-
webapp/src/app/layout.tsx | 2 +
webapp/src/components/app-toast-container.tsx | 18 ++
webapp/src/lib/sanitize-post-auth-redirect.ts | 23 +++
webapp/src/lib/superadmin-console.ts | 13 +-
webapp/test/sanitize-post-auth-redirect.test.ts | 41 ++++
30 files changed, 1285 insertions(+), 217 deletions(-)
How this works
This file is produced by webapp/tools/sync-pr-blog-post.ts. Add a versions/human.md file in the same folder to publish a human-written alternative; the site will show tabs for AI Draft and Human when both exist.