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
Settings: View preferences (viewingPreference) and link previews (showPreviews) #33
Part of #31 — Settings & preferences parity — most of PATCH /api/user/update is unreachable from Android
viewingPreference — All / My / Following / Followers, consumed by the feed (see the
composer & feed epic; this issue owns the Settings half).
showPreviews — whether link-preview cards render at all. Today the app always renders them.
Tests: PATCH round-trip; previews suppressed when off.
Filed from the parity review of feature/parity-wip @ 14d7795 against interlinedlist.com (OpenAPI /api/openapi.json, 233 paths) and the public help centre.
Implemented in #93 (branch issue/33-settings-view-preferences). Closing here — review and any follow-up happens on the PR.
Two facts this settled for the rest of the epic:
viewingPreference wire values are my_messages, all_messages, followers_only, following_only — confirmed live (the server returns the allow-list in its 400). The first implementation pass guessed all/mine/following/followers, which would have been rejected on every write; the tests now pin the real literals.
All fifteen PATCH /api/user/update fields are modelled, nullable and omitted-when-null, with a reusable SettingsGroup/SettingsRadioRow/SettingsSwitchRow kit — so #32, #34, #35, #36 and #37 are now UI-only work on top of this.
One decision left open for #19: :feature:messages cannot read SettingsRepository without either implementation(project(":feature:profile")) (no feature module depends on another today) or promoting the repository to a shared module.
Activity
PATCH /api/user/updateis unreachable from Android #31Adron commentedon Sep 16, 2026
Implemented in #93 (branch
issue/33-settings-view-preferences). Closing here — review and any follow-up happens on the PR.Two facts this settled for the rest of the epic:
viewingPreferencewire values aremy_messages,all_messages,followers_only,following_only— confirmed live (the server returns the allow-list in its 400). The first implementation pass guessedall/mine/following/followers, which would have been rejected on every write; the tests now pin the real literals.All fifteen
PATCH /api/user/updatefields are modelled, nullable and omitted-when-null, with a reusableSettingsGroup/SettingsRadioRow/SettingsSwitchRowkit — so #32, #34, #35, #36 and #37 are now UI-only work on top of this.One decision left open for #19:
:feature:messagescannot readSettingsRepositorywithout eitherimplementation(project(":feature:profile"))(no feature module depends on another today) or promoting the repository to a shared module.merge: #33 Settings surface + view preferences (PR #93)