tasks.org: log device label and passphrase token tasks in milestone 6
This commit is contained in:
21
tasks.org
21
tasks.org
@@ -532,6 +532,27 @@ lifespan() in server/app/main.py now logs the token between === lines on every s
|
||||
- tests: manual — docker restart synq, docker logs synq | grep token
|
||||
- datetime: [2026-05-19 Mon]
|
||||
|
||||
** DONE default device label to Build.MODEL
|
||||
*** acceptance
|
||||
- fresh install shows the actual device model name, not "android".
|
||||
*** notes
|
||||
SettingsRepository.kt: changed deviceLabel fallback from hardcoded "android" to Build.MODEL. No permissions needed. Existing users who have already saved a label are unaffected — DataStore only uses the fallback when no value is stored.
|
||||
*** evidence
|
||||
- commit: 628a28a
|
||||
- tests: manual — fresh install, open settings, verify device label shows model name
|
||||
- datetime: [2026-05-19 Mon]
|
||||
|
||||
** DONE replace hex token with 3-word passphrase
|
||||
*** acceptance
|
||||
- generated token is human-readable and fits on one log line.
|
||||
- existing token.txt files are unaffected.
|
||||
*** notes
|
||||
secrets.token_hex(32) produced 64 chars — too long to read/verify visually. Replaced with _generate_passphrase() which picks 3 words from a 512-word embedded list using secrets.choice, hyphenated (e.g. "coral-drift-lamp"). ~27 bits entropy, sufficient for a LAN-only service. Existing token.txt files load unchanged — generation only runs when no token exists. To rotate: delete /data/token.txt and restart the container.
|
||||
*** evidence
|
||||
- commit: 628a28a
|
||||
- tests: manual — delete token.txt, restart container, docker logs synq shows short readable token
|
||||
- datetime: [2026-05-19 Mon]
|
||||
|
||||
* implementation notes for coding agents
|
||||
- keep the server small and testable.
|
||||
- keep org formatting in one pure function.
|
||||
|
||||
Reference in New Issue
Block a user