You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
wake-lambda: wake token comparison is not constant-time #123
👻 Andromeda is on this · Kiro Crew Issue Radar
awaiting-merge · PR #125 · updated 11:15 UTC
The fix adds tokensMatch() to wake-lambda/index.mjs. It compares the UTF-8 byte lengths first and then calls crypto.timingSafeEqual, because timingSafeEqual throws when the lengths are not equal. Byte length is used, not string length, so a token with a multi-byte character cannot cause an exception. Wrong tokens still get 403. The new tests/test-wake-token.sh runs the real handler with stub AWS SDK modules: 4 of 5 checks pass on main (the source check fails), 5 of 5 pass after the fix on Node 22 and Node 26.
11:15 CI 20/20 green. Codex asks to start pack-tests on bootstraps/** changes; that is CI config, so it is left to a maintainer. The repo does not allow auto-merge, so the PR waits for a human merge
Activity
royosherove commentedon Oct 11, 2026
👻 Andromeda is on this · Kiro Crew Issue Radar
awaiting-merge · PR #125 · updated 11:15 UTC
The fix adds
tokensMatch()towake-lambda/index.mjs. It compares the UTF-8 byte lengths first and then callscrypto.timingSafeEqual, becausetimingSafeEqualthrows when the lengths are not equal. Byte length is used, not string length, so a token with a multi-byte character cannot cause an exception. Wrong tokens still get 403. The newtests/test-wake-token.shruns the real handler with stub AWS SDK modules: 4 of 5 checks pass onmain(the source check fails), 5 of 5 pass after the fix on Node 22 and Node 26.progress
11:11claimed -- the token check is atwake-lambda/index.mjsline 55 on main (token !== stored). No other copy of the check exists. Open PR docs: wake-on-text architecture for idle-shutdown bootstrap #71 addswebhook.pyand does not changeindex.mjs.11:13opened PR fix(idle-shutdown): compare the wake token in constant time #125 -- constant-time compare plus a regression test that fails before the fix11:15CI 20/20 green. Codex asks to start pack-tests onbootstraps/**changes; that is CI config, so it is left to a maintainer. The repo does not allow auto-merge, so the PR waits for a human merge