Last active
July 25, 2025 04:53
-
-
Save vedang/86d66cbf0687beb52e65ffda3dd9eb31 to your computer and use it in GitHub Desktop.
FastAPI Server Lifecycle
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| FastAPI Server Lifecycle | |
| Idle | |
| start server -> Starting | |
| Starting | |
| initialize observability -> Observability Setup | |
| startup error -> Error | |
| Observability Setup | |
| observability ready -> Database Setup | |
| observability error -> Error | |
| Database Setup | |
| create db connection -> Temporal Setup | |
| database error -> Error | |
| Temporal Setup | |
| temporal client ready -> Listening | |
| temporal error -> Error | |
| Listening | |
| shutdown signal -> Shutting Down | |
| new request -> Request Router | |
| Shutting Down | |
| cleanup complete -> Stopped | |
| Error | |
| log error -> Stopped | |
| Stopped | |
| restart command -> Starting | |
| Request Handling | |
| Request Router | |
| health route -> Health Check | |
| session routes -> Session Management | |
| conversation routes -> Conversation Management | |
| message routes -> Message Processing | |
| invalid route -> Route Error | |
| Session Management | |
| not authenticated -> Auth Error | |
| POST sessions -> Start UserSession Workflow | |
| GET sessions-id -> Get UserSession Status | |
| Conversation Management | |
| not authenticated -> Auth Error | |
| GET conversations -> List Conversations | |
| POST conversations -> Start Conversation Workflow | |
| GET conversations-id -> Get Conversation Metadata | |
| PUT conversations-id -> Update Conversation Metadata | |
| DELETE conversations-id -> Delete Conversation | |
| PUT conversation-id-end -> End Conversation Signal | |
| PUT conversation-id-resume -> Resume Conversation Signal | |
| List Conversations | |
| return conversations list -> Listening | |
| database error -> Database Error | |
| Get Conversation Metadata | |
| return conversation metadata -> Listening | |
| database error -> Database Error | |
| Update Conversation Metadata | |
| update conversation -> Get Conversation Metadata | |
| Delete Conversation | |
| delete conversation -> Get Conversation Metadata | |
| Message Processing | |
| not authenticated -> Auth Error | |
| GET conversations-id-messages -> Get Messages | |
| POST conversations-id-messages -> Send Message | |
| Get Messages | |
| query messages -> Messages Retrieved | |
| database error -> Database Error | |
| Messages Retrieved | |
| return messages -> Listening | |
| Send Message | |
| message stored -> Stream Message Response | |
| database error -> Database Error | |
| Stream Message Response | |
| end stream -> Listening | |
| Health and Monitoring | |
| Health Check | |
| check database -> Check Database | |
| check temporal -> Check Temporal | |
| return healthy -> Listening | |
| Check Database | |
| database healthy -> Health Check | |
| database unhealthy -> Database Error | |
| Check Temporal | |
| temporal healthy -> Health Check | |
| temporal unhealthy -> Error | |
| Error States | |
| Route Error | |
| return 404 -> Listening | |
| Auth Error | |
| return 401 -> Listening | |
| Validation Error | |
| return 400 -> Listening | |
| Not Implemented Error | |
| return 501 -> Listening | |
| Database Error | |
| return 500 -> Listening | |
| Workflow Error | |
| return 500 -> Listening | |
| Signal Error | |
| return 500 -> Listening | |
| Temporal Workflow Management | |
| User Session Workflow | |
| Start UserSession Workflow | |
| workflow started -> UserSession Workflow Running | |
| temporal error -> Workflow Error | |
| UserSession Workflow Running | |
| return workflow id session id -> Listening | |
| Get UserSession Status | |
| return workflow id session id -> Listening | |
| End UserSession Signal | |
| workflow not found -> Workflow Error | |
| send signal end-session -> Workflow Ended | |
| Conversation Workflow | |
| Start Conversation Workflow | |
| workflow started -> Conversation Workflow Running | |
| temporal error -> Workflow Error | |
| Conversation Workflow Running | |
| create conversation -> Get Conversation Metadata | |
| Resume Conversation Signal | |
| send-signal start-chat -> Workflow Resumed | |
| End Conversation Signal | |
| send signal end-chat -> Workflow Ended | |
| Workflow Ended | |
| return success -> Listening | |
| Workflow Resumed | |
| return success -> Listening |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| function render(model){ | |
| let current_state_name = model.active_states[0].name; | |
| return $("h1", | |
| {style: {color: "darkBlue"}}, | |
| `The current state is: ${current_state_name}`); | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment