feat(ui): gate WIP settings behind wip-settings cargo feature#111
Merged
iduartgomez merged 2 commits intomainfrom May 5, 2026
Merged
feat(ui): gate WIP settings behind wip-settings cargo feature#111iduartgomez merged 2 commits intomainfrom
wip-settings cargo feature#111iduartgomez merged 2 commits intomainfrom
Conversation
Several Settings controls have a UI but no working backend: - AFT screen (entire screen + nav entry) — recipient-side tier and max_age aren't configurable via InboxParams yet (#85). The picker, allow_known/allow_anon toggles, and bounce_message field all write to local-state but no contract/delegate code reads them. - Privacy → Share read receipts — feature not implemented (#69). - Privacy → Pad message length — no implementation; designed but un-built. - Account → Display name — the `display_name` field is persisted but never read by any rendering code (Sent, Inbox, detail header all show `alias` only). Off-by-default `wip-settings` feature surfaces them so dev/preview builds keep the UI shape visible while the backends catch up. Default released builds hide them so users don't toggle no-op switches. Wired controls (verify_on_send, hide_unsigned, drafts_in_inbox, quarantine_unknown, auto_sign + signature, theme, density, serif_subjects, custom_relay) stay visible regardless of the flag. CI parity: clippy + tests verified clean on three configs: - default (`use-node`) - offline (`example-data,no-sync`) - wip (`use-node,wip-settings`)
- Skill gains a "WIP settings gating" section: when to gate, how to verify, and the three-config build check before pushing. - Inventory's Settings section is rewritten to match the new wired vs. gated split: real consumers stay as `manual` rows, WIP rows flip to `blocked` with the issue link.
51f5590 to
9b87575
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Settings UI shipped controls whose backends aren't wired yet. They write to local-state but nothing reads. Hide them in default builds.
Hidden behind new `wip-settings` cargo feature (off by default):
Wired controls keep showing: `verify_on_send`, `hide_unsigned`, `drafts_in_inbox`, `quarantine_unknown`, `auto_sign` + `signature`, theme, density, `serif_subjects`, `custom_relay`.
Test plan
Follow-up
Once #85 / #69 land, drop the gate per affected control and surface them by default again.