fix(web): align arm/disarm 202 response shape with {"ok": true} convention

Follow-up to efd5c4a. The plan invented {"accepted": True, ...} for
the new 202 responses, but every other 2xx endpoint in the Flask app
returns {"ok": True, ...} — including cameras.py:108 which is direct
prior art for a 202 with the same convention. The shared JS helper
at static/js/settings.js:54 does 'if (resp.ok && result.ok)' and was
falling into the error branch on our success responses, showing a
bogus "Save failed" toast after every arm/disarm click.

Keep the 202 status. Swap the body key from 'accepted' to 'ok'.
No JS change needed.
This commit is contained in:
adlee-was-taken
2026-04-05 12:03:05 -04:00
parent 4b0d547322
commit 7b33cb7bb4
2 changed files with 3 additions and 3 deletions

View File

@@ -110,7 +110,7 @@ def test_arm_publishes_arm_request_on_mqtt(app_with_pin):
json={"mode": "ARMED_AWAY", "pin": "1234"},
)
assert rv.status_code == 202
assert rv.get_json()["accepted"] is True
assert rv.get_json()["ok"] is True
pub.assert_called_once()
call_args = pub.call_args