Skip to content

[18.0][FIX] vault: do not present exhausted inboxes as writable - #989

Open
jans23 wants to merge 1 commit into
OCA:18.0from
Nitrokey:18.0-fix-vault-inbox-ux
Open

[18.0][FIX] vault: do not present exhausted inboxes as writable#989
jans23 wants to merge 1 commit into
OCA:18.0from
Nitrokey:18.0-fix-vault-inbox-ux

Conversation

@jans23

@jans23 jans23 commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

An inbox that can no longer be written to (access counter at 0 or expired) still showed its writable inbox link, and submitting to it silently did nothing while the form reported 'Successfully stored'. This is misleading for received/delivered secrets which are created with accesses = 0.

  • Add a computed 'writable' flag (accesses left and not expired) and hide the inbox link in the list and form views when it is not writable.
  • Make the controller report 'This link is no longer active' when store_in_inbox performs no write instead of a false success message.

This depends on #987

@jans23
jans23 force-pushed the 18.0-fix-vault-inbox-ux branch 2 times, most recently from 8130bb6 to 9e9f671 Compare August 24, 2026 13:56
@jans23
jans23 marked this pull request as ready for review August 24, 2026 14:01

@fkantelberg fkantelberg left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This includes additional changes from another PR. Still some notes.

Comment thread vault/views/vault_inbox_views.xml Outdated
name="inbox_link"
widget="url"
invisible="not writable"
/>

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can increase the access again or set a different expiration to make it writable again. Highlighting it that it's not writable is good but maybe better done with a ribbon.

<widget name="web_ribbon" title="Readonly" bg_color="text-bg-danger" invisible="not writable"/>

For the list view it might be better to use a decoration.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changed accordingly.

@jans23
jans23 force-pushed the 18.0-fix-vault-inbox-ux branch from 9e9f671 to 947b394 Compare September 2, 2026 11:59
An inbox that can no longer be written to (access counter at 0 or
expired) still showed its writable inbox link, and submitting to it
silently did nothing while the form reported 'Successfully stored'.
This is misleading for received/delivered secrets which are created
with accesses = 0.

- Add a computed 'writable' flag (accesses left and not expired) and
  hide the inbox link in the list and form views when it is not
  writable.
- Make the controller report 'This link is no longer active' when
  store_in_inbox performs no write instead of a false success message.
- Cover the exhausted-inbox submit path in the controller test.
@jans23
jans23 force-pushed the 18.0-fix-vault-inbox-ux branch from 947b394 to 2d2fbe1 Compare September 2, 2026 12:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants