Skip to content

Admin & Maintenance App: bot fleet CRUD#82

Open
CarsonL15 wants to merge 5 commits into
mainfrom
admin-and-maintenance-app
Open

Admin & Maintenance App: bot fleet CRUD#82
CarsonL15 wants to merge 5 commits into
mainfrom
admin-and-maintenance-app

Conversation

@CarsonL15
Copy link
Copy Markdown

@CarsonL15 CarsonL15 commented May 26, 2026

Summary

Adds the Admin & Maintenance App: a React SPA at admin-webapp/ for staff to manage the delivery bot fleet. Closes #48, #49, #50, #52. Tracks parent issue #18 (still open: Orders,
Configuration, sign-in, and telemetry stories remain).

Every create / edit / delete double-writes to BotNet API (registry of record) and the Robot Simulator (runtime state), using the bot's name as the bridge key. Partial failures surface in
the UI as a yellow banner so the operator can see when the two systems disagree.

What's included

  • React 19 + Vite 8 SPA with Bot Management page, add/edit dialog, delete confirmation, row-level actions
  • API clients for BotNet (src/api/bots.js) and Simulator (src/api/simulator.js) plus an orchestrator (src/api/admin.js)
  • 13 Vitest unit tests covering the double-write scenarios and slugifier
  • Terraform module at Iac/admin-webapp/ that provisions WA-DeliveryBot-Admin-dev (reuses the existing App Service Plan)
  • GitHub Actions workflow AdminWebpage-Deploy-WF.yml that auths via OIDC, runs Terraform, builds, and deploys

Resources Used

  • Azure App Service (WA-DeliveryBot-Admin-dev, Canada Central, Linux Node 22)
  • Azure App Service Plan (ASP-RGDeliveryBotdev-8b82, reused)
  • Azure Storage Account (dbstfstate01, reused for Terraform state)
  • Container Apps (BotNet API + Simulator, consumed)
  • GitHub Actions OIDC federated identity
  • Terraform 1.9 + AzureRM Provider 4.x
  • React 19, Vite 8, Vitest 2, Node 22

Known gaps

@CarsonL15 CarsonL15 changed the title Admin and maintenance app CRUD Admin & Maintenance App: bot fleet CRUD May 26, 2026
@philspokas philspokas requested a review from a team May 27, 2026 18:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

View the bot fleet

1 participant