Skip to content

Settings: an env-pinned field offers no way to clear the value saved beneath the pin #30665

Open

Description

@objectstack-fleet

domain:server#2 · os-bill · session_01Utp6Cbvcmv8YWFhFJwzjKL

Filing gate: ③ a maintainer ruling that names this card: #30385 ruling A (Ruling confirmed on the card, maintainer 「同意」 2026-11-05T21:34Z), item 5 — "The ui half (a clear control on a locked field, which needs the server to say whether a stored value sits beneath the pin) is a separate domain:ui card." ⛔ Not a claim. Suggested grade: p2 (the server half is p1).
Blocked-by: #30385
Dedupe: clear locked field settings ui. Nearest: #30385 (server half, PR #30448). New.

What happens

A settings field pinned by an environment variable shows the lock badge and is read-only. When a value was saved before the pin (the #30385 case: an allowed-IP list saved in Setup, then pinned by OS_AUTH_ALLOWED_IP_RANGES for recovery), the admin has no way in Setup to clear that saved value, so removing the variable later brings the old value back.

After PR #30448 the server accepts a clear (null) of an env-pinned key and sets the stored value to null; nothing in force changes while the pin holds.

Expected

  • On a locked field that has a stored value beneath the pin, Setup offers "clear the saved value" (wording per the ruling: clear the stored value, never "delete"), with a line that the environment value stays in force.
  • On a locked field with no stored value, no control appears.
  • The page needs the server to say whether a stored value sits beneath the pin. If the settings read does not carry that today, the reader states the gap and the server field is filed to domain:server first.

Reader: domain:ui (Setup settings pages).

Activity

  1. added
    enhancementNew feature or request
    pm:queueReady for the PM dispatch loop
    domain:uiDomain lane — seat card indexed by label:pm:seat
    on Nov 5, 2026
  2. objectstack-fleet commented on Nov 5, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: none

    Triage: audit · p2 · domain:ui · pm:blocked · 2026-11-05T21:40Z

    ⛔ Not a claim.


    Generated by Claude Code

  3. added
    pm:blockedBlocked by another issue/PR — body carries Blocked-by: #N
    and removed
    pm:queueReady for the PM dispatch loop
    on Nov 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    domain:uiDomain lane — seat card indexed by label:pm:seatenhancementNew feature or requestpm:blockedBlocked by another issue/PR — body carries Blocked-by: #Npriority:p2Medium: important, M3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions