OW
cd ..~/projects/pharma-control-tower

case study 03 / Backend & operations

Pharma Availability Control Tower

A working competition MVP that combines shortage forecasting, inbound prioritisation, candidate dispatch planning, planner approval, reports, and operational simulation.

status
Working MVP
ownership
Team of 4
stages
06
stack
06
  • FastAPI
  • Next.js
  • SQLAlchemy
  • MySQL
  • Docker
  • Render

Project overview

01

the problem

Pharma planners must coordinate shortage pressure, inbound clearance, fleet constraints, approvals, and physical stock movements without losing auditability.

02

my contribution

Built substantial FastAPI route groups for inputs, orchestration, planner workflows, reports, dashboard data, and demo operations; also added simulation scripts, deployment configuration, and responsive shell improvements.

03

key decision

Keep planner approval separate from physical execution so approval creates reservations and transfers while explicit business events change stock.

screenshot — pharma-control-towerfrom repository
Pharma Availability Control Tower dashboard showing planning stages and fleet status

Actual planner dashboard from the project repository.

04 / how it works

System flow

implemented — verified against source5
  1. Working FastAPI and Next.js MVP with database-backed planner state and audit records.

  2. Oshadha-authored endpoints for dashboard data, inputs, orchestration, plan review, demo operations, mock ETA, and reports remain substantially present in main.

  3. Oshadha-authored vessel and lorry arrival simulators exercise operational state transitions.

  4. Oshadha updated the Render deployment manifest and made the planner shell responsive on smaller screens.

  5. The team’s runtime includes mathematical prioritisation, XGBoost shortage forecasting, and OR-Tools candidate dispatch planning; those models are not claimed as Oshadha’s work.

What is implemented and what is not

known limitations3
  • The seeded scenario is a compact competition demonstration rather than a live supply-chain deployment.

  • The local documented database is MySQL; Oshadha’s PostgreSQL seed-compatibility commit remains outside main.

  • Model ownership belongs to the team and is intentionally not attributed to Oshadha.

hardest part

Exposing a multi-stage planning pipeline as coherent, database-backed operations with state transitions that remain reviewable and repeatable.

what I learned

Operational software needs explicit state boundaries and audit trails as much as it needs a correct model output.