Add keep_open_until to /allowed for hold-door; fix 9 bugs

/allowed returns keep_open_until from the newest approved hold in
doorlog; /longpoll skips hold events to avoid spurious open pulses.

Fixes: assert->raise for SECRET check, text() on 403, remove dead
/logs code, flatten auth decorator, by_slackid None fallback, load
kube config once, guard missing slack command, backoff on PyMongoError,
mongo->mongosh.
This commit is contained in:
Mykhailo Yermolenko
2026-06-17 16:42:54 +03:00
parent 1e93eabf0e
commit e6fc5cb85f
5 changed files with 75 additions and 80 deletions

View File

@@ -18,7 +18,7 @@ When updating doorboy proxy, members site or kdoorpi verify follwing:
* Card enable/disable on members site works and has effect
* Opening door via buttons at https://members.k-space.ee/m/doorboy works and has effect
* Opening door via `/open-ground-door`, `/open-front-door` and `/open-back-door` commands in Slack channel #members works
* TODO: Keep door open via members site works and has effect
* Keep door open via members site works and has effect: submit a hold, verify `/allowed` returns `keep_open_until`, then verify cancel/expiry returns `null`.
When testing changes prefer using the *back* door and
use a brick or something to keep it open to prevent