feat: implement the production HTTP API

This commit is contained in:
2026-08-28 23:20:07 +03:00
parent 97bebfd8fb
commit 95b3450317
12 changed files with 872 additions and 546 deletions
+8
View File
@@ -8,5 +8,13 @@
/* The application task is the sole owner of lifecycle and game mutations. */
typedef struct { command_queue_t command_queue; game_lifecycle_t lifecycle; } application_t;
void application_init(application_t *application, random_source_t random);
bool application_enqueue(application_t *application, const app_command_t *command);
bool application_take_next_command(application_t *application, app_command_t *command);
lifecycle_result_t application_join(application_t *application, role_t requested_role, const char *name,
uint8_t *session_index);
lifecycle_result_t application_resume(application_t *application,
const uint8_t token[kSessionTokenBytes], uint8_t *session_index);
bool application_session_for_token(const application_t *application,
const uint8_t token[kSessionTokenBytes], uint8_t *session_index);
lifecycle_result_t application_submit(application_t *application, const app_command_t *command);