"This is the Meterbolic API! Our version is commit_branch: commit_and_branch_are:feat_push_FCM_push_delivery_register_unregister_service_only_send_Engagement_Engine_Phase_4_server_half_The_mobile_client_has_been_POSTing_v2_push_register_since_its_FCM_integration_shipped_these_are_the_missing_endpoints_matching_pushService_ts_s_exact_payload_POST_v2_push_register_DELETE_v2_push_unregister_JWT_only_personal_data_pattern_from_health_food_py_Token_upsert_is_keyed_on_the_device_token_so_a_shared_device_reassigns_on_login_never_dupes_POST_v2_push_send_service_X_API_Key_ONLY_chatbot_rag_s_engagement_worker_a_user_JWT_is_rejected_Honest_503_when_no_Firebase_service_account_is_configured_health_push_fcm_py_FCM_HTTP_v1_sender_with_no_new_dependencies_the_service_account_OAuth2_assertion_is_signed_with_python_jose_already_here_for_Cognito_and_cached_50min_per_worker_Message_carries_android_apns_sections_so_iOS_delivery_works_the_moment_the_app_binary_re_enables_Firebase_and_an_APNs_key_is_uploaded_to_the_Firebase_console_no_server_change_needed_then_Dead_tokens_404_UNREGISTERED_are_deleted_during_sends_sql_push_tokens_sql_applied_to_the_live_DB_2026_08_30_tests_test_push_py_auth_boundaries_both_directions_503_contract_dead_token_cleanup_FCM_data_stringification_All_HTTP_DB_mocked_Credentials_FIREBASE_SERVICE_ACCOUNT_PATH_api_env_api_credentials_firebase_service_account_json_on_the_box_chmod_600_gitignored_Co_Authored_By_Claude_Fable_5_noreply@anthropic_com_main"