Preflight
What happened?
What happened?
OpenKnowledge authenticates to GitHub using the OAuth device flow (the "open github.com/login/device and enter this code" dialog). The resulting gho_ user token is short-lived — it expires roughly every 8 hours. When it expires, the app surfaces a red "sign in" state and requires the user to complete the entire device-code flow again, rather than silently refreshing the session in the background.
The underlying GitHub authorization is fine — a fresh token mints correctly every time and validates against the GitHub API with the expected scopes (read:user, repo, user:email). The problem is purely that the session is not being kept alive: there is no silent refresh, so an interactive re-auth is forced on a roughly daily cadence.
Expected: once signed in, the session should persist (silent token refresh, or a longer-lived token), so users are not re-authenticating every several hours during normal use.
Additional observation (possibly related)
While a document is left open, the renderer logs ok-provider-server-driven-close-reauth on a fixed ~60-second interval, continuously, for each open document (thousands of entries over a session). The token re-send on each of these succeeds (no reauth-failed, no auth-rejection, no lineage-mismatch), so it appears benign, but it is very noisy and may be related to session/token churn. Happy to file this separately if preferred.
Platform
macOS (Apple Silicon)
How did you install OpenKnowledge?
Desktop app (DMG)
Version
0.39.4
Logs, errors, or screenshots
Representative renderer log line (repeats ~every 60s per open document):
{"level":30,"runtime":"desktop","subsystem":"renderer","event":"ok-provider-server-driven-close-reauth","reason":"","sourceId":".../assets/DocumentContext-.js"}
Token behaviour observed: the stored credential is a gho_ GitHub OAuth user token; on expiry the app returns to the device-code sign-in screen instead of refreshing.
Steps to reproduce
Steps to reproduce
Sign in to OpenKnowledge via the GitHub device flow.
Use the app normally, keeping it open.
After roughly 8 hours, the account shows a red "sign in" state.
Signing in again requires re-entering a fresh device code at github.com/login/device — there is no silent refresh.
Platform
macOS (Apple Silicon)
How did you install OpenKnowledge?
Desktop app (DMG)
Version
0.39.4
Logs, errors, or screenshots
Preflight
What happened?
What happened?
OpenKnowledge authenticates to GitHub using the OAuth device flow (the "open github.com/login/device and enter this code" dialog). The resulting gho_ user token is short-lived — it expires roughly every 8 hours. When it expires, the app surfaces a red "sign in" state and requires the user to complete the entire device-code flow again, rather than silently refreshing the session in the background.
The underlying GitHub authorization is fine — a fresh token mints correctly every time and validates against the GitHub API with the expected scopes (read:user, repo, user:email). The problem is purely that the session is not being kept alive: there is no silent refresh, so an interactive re-auth is forced on a roughly daily cadence.
Expected: once signed in, the session should persist (silent token refresh, or a longer-lived token), so users are not re-authenticating every several hours during normal use.
Additional observation (possibly related)
While a document is left open, the renderer logs ok-provider-server-driven-close-reauth on a fixed ~60-second interval, continuously, for each open document (thousands of entries over a session). The token re-send on each of these succeeds (no reauth-failed, no auth-rejection, no lineage-mismatch), so it appears benign, but it is very noisy and may be related to session/token churn. Happy to file this separately if preferred.
Platform
macOS (Apple Silicon)
How did you install OpenKnowledge?
Desktop app (DMG)
Version
0.39.4
Logs, errors, or screenshots
Representative renderer log line (repeats ~every 60s per open document):
{"level":30,"runtime":"desktop","subsystem":"renderer","event":"ok-provider-server-driven-close-reauth","reason":"","sourceId":".../assets/DocumentContext-.js"}
Token behaviour observed: the stored credential is a gho_ GitHub OAuth user token; on expiry the app returns to the device-code sign-in screen instead of refreshing.
Steps to reproduce
Steps to reproduce
Sign in to OpenKnowledge via the GitHub device flow.
Use the app normally, keeping it open.
After roughly 8 hours, the account shows a red "sign in" state.
Signing in again requires re-entering a fresh device code at github.com/login/device — there is no silent refresh.
Platform
macOS (Apple Silicon)
How did you install OpenKnowledge?
Desktop app (DMG)
Version
0.39.4
Logs, errors, or screenshots