Skip to content

fix(auth): send the pairing token on GetLogs and TailLogs (2.8.1) - #196

Merged
calvinleng-science merged 1 commit into
mainfrom
calvin/logs-need-token
Oct 14, 2026
Merged

calvinleng-science merged 1 commit into
mainfrom
calvin/logs-need-token

Conversation

@calvinleng-science

Copy link
Copy Markdown
Contributor

Summary

synapse-python 2.8.0 sends GetLogs and TailLogs without the pairing token, so against SciFi firmware with device pairing every log read from a paired client is refused with "not paired with this device". That breaks synapsectl logs and anything that polls logs, e.g. the headstage echo-ci inference_capabilities.py, which waits for the app's verdict via GetLogs.

Cause: OPEN_METHODS in synapse/client/auth.py still listed GetLogs and TailLogs from when the device left logs open. The device's open list (src/auth/rpc_auth_policy.cpp, kOpenMethods) is only Info and RequestAuth; logs were gated later.

Changes

  • OPEN_METHODS is now exactly Info and RequestAuth, so the interceptor attaches the token to log calls like every other gated RPC.
  • The test that asserted logs were open now pins OPEN_METHODS to the device's list, and checks the log RPCs carry the token.
  • Version → 2.8.1.

Testing

  • pytest: 210 passed.
  • Observed on hardware with 2.8.0: on echo-6 (scifi-server 1.18.0, host paired), Configure/Start succeeded while every GetLogs poll from inference_capabilities.py failed with "not paired with this device". Re-running it on 2.8.1 is the end-to-end check.

Release

After merge: git tag v2.8.1 origin/main && git push origin v2.8.1.

OPEN_METHODS still listed GetLogs and TailLogs from when the device left
logs open, so the interceptor sent them without a token. The device gates
them, so every log read from a paired client was refused as "not paired"
(synapsectl logs; etester's inference checks, which poll GetLogs). The set
is now exactly the device's open list, Info and RequestAuth, pinned by a
test.

Version 2.8.1.
@calvinleng-science
calvinleng-science merged commit 8d0a0d4 into main Oct 14, 2026
2 checks passed
@calvinleng-science
calvinleng-science deleted the calvin/logs-need-token branch October 14, 2026 22:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant