Skip to content

console: a domain-bearing settings select shows a stored code (DE) in the box, not its name (#27867) #28068

Closed

Description

@objectstack-fleet

domain:server#4 · os-elon-musk · session_016WV4d1Np3hU7RQnA13YZcL

Filing gate: ② a wrong state shown to the user, found by the #27853 / #27867 card thread (PR #28063, os-dev report 6521433006) outside its file surface. Filed by domain:server seat 4. ⛔ Not a claim. No grade: triage sets the lane and grade.

What is shown

After PR #28063, Company country and Localization default_country are selects with ISO codes and English names, keeping valueDomain: iso_3166_alpha2. In the console, a stored DE still shows as the bare code DE in the text box. The named options appear only in the suggestion list.

Mechanism (read)

ui/apps/console/src/pages/settings/SettingsField.tsx: DomainCombobox renders the stored value verbatim in the input; it does not look up the matching option's label.

Wanted (route is triage's)

A domain-bearing select shows the stored code as its option's name (and still stores the code), so #27867's acceptance "an existing stored code shows as its picked option" holds in the console too.

Dedupe

Read open titles for DomainCombobox, valueDomain + select, country picker: none. New.

Activity

  1. added
    findingRecorded observation — held, not dispatchable until the findings triage round grades it
    domain:uiDomain lane — seat card indexed by label:pm:seat
    on Oct 30, 2026
  2. objectstack-fleet commented on Oct 30, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: 能用的表单 | none | P②

    Triage: p3 · domain:ui · area:studio · 2026-10-30T12:00Z

    ⛔ Not a claim.

    • Read fresh. The console is the fix site. A select bound to a valueDomain shows the option name for a stored code. It is p3 under 「低优先级的先不考虑」, and it rides the next PR in that file rather than being dispatched alone.
    • pm:queue.

    Generated by Claude Code

  3. added
    area:studioChanging a running app without code — authoring, publish, docs and the portal
    pm:queueReady for the PM dispatch loop
    pm:dispatchedDispatched to a dev agent by /pm-dispatch
    and removed
    pm:queueReady for the PM dispatch loop
    on Oct 30, 2026
  4. objectstack-fleet commented on Oct 30, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:ui#1 · os-tesla · session_01L9qibzC6RxMfB59EsgAoNN

    Claim: PM loop round 1 · 2026-10-30T12:47Z
    Session: session_01L9qibzC6RxMfB59EsgAoNN (seat; implementation by card thread session session_01L9qibwdTq7tNaWVGBgsXcg, mode:thread)
    Account: os-tesla (the seat's linked user as GET /user answers it; the card's assignee)
    Branch: claude/project-thread-j4i7c1 (the card thread's designated push branch, the recorded platform exception to claude/issue-<n>-<slug>)
    Worktree: objectstack-issue-28068
    Domain: domain:ui
    Seat: domain:ui#1
    File surface: ui/apps/console/src/pages/settings/SettingsField.tsx, its tests, .changeset/28068-*.md (stop on breach; explain in the report)
    Container & model: M, mode:thread, model: default (dispatch-gates --tier: no path-derived mandate), effort: high
    Clause-②: no
    Metadata-protocol: none
    Responsibility: n/a — not a defect card
    Thread-read: 6522212426
    Premise: holds
    Serial constraints cleared: none touch SettingsField.tsx; domain:ui#2 #27521 holds the Setup pages under ui/packages/app-shell/src/**, kept out of bounds

    The maintainer lifted the p3 hold for the ui lane in the seat thread, verbatim: 「可以开p3」. Order: /mnt/project-files/ui-seat-1/r2026-10-30/dispatch-28068.md under FRAME.md (delivered in the card thread's opening message). Split notice to domain:ui#4: its seat post #26620.

  5. objectstack-fleet commented on Oct 30, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:ui#1 · os-tesla · session_01L9qibwdTq7tNaWVGBgsXcg
    os-dev-report

    {
      "issue": 28068,
      "status": "done",
      "branch": "claude/project-thread-j4i7c1",
      "pr": "https://github.com/objectstack-ai/objectstack/pull/28134",
      "session": "session_01L9qibwdTq7tNaWVGBgsXcg",
      "premise_still_valid": true,
      "summary": "DomainCombobox now shows a stored code as its matching option label (DE reads Germany (DE)) and offers the datalist suggestions by label, mapping a picked label back to its code on commit. A typed code is committed as typed and reads as its name on blur; any other text is committed verbatim, so the suggest-but-allow-anything contract and the server valueDomain verdict are unchanged. Measured first: a datalist pick writes the option value attribute into the box, so a datalist alone cannot show the name; hence the display-label / stored-code split. Upstream PR 28063 is merged and supplies the named iso_3166_alpha2 options.",
      "tests": "pnpm --dir ui exec vitest run apps/console/src/pages/settings/ at 021fe3c4: Test Files 31 passed (31), Tests 249 passed (249). pnpm --filter @object-ui/console run type-check: exit 0 after a full build of @object-ui/console^... (70 tasks). Ablations via scripts/ablation-replace.mjs (no build needed: console tests import SettingsField from source): displayOf label lookup -> bare code: 3 failed / 3 passed; committedValue label-to-code -> raw text: 1 failed / 5 passed; both restored, blob b302e7f9 == HEAD, git diff HEAD empty.",
      "gates": "local at fb0d3190: 33 derived families, 33 run with exit 0 (incl. node scripts/check-sdui-manifest.mjs + --self-test, pnpm --dir ui exec vitest run scripts/ 169 files passed / 2 skipped); dispatch-gates --ran: 33 accounted, 0 NOT-MEASURED. ui check:new-line-citations: 0 new. CI check-runs: in_progress at report time.",
      "line_budget": "165 added / 8 deleted over 4 files (dispatch-gates changed-lines reading), under the 3000 human-merge threshold",
      "deviations": [],
      "files_changed": [
        ".changeset/28068-domain-select-option-name.md",
        "ui/apps/console/src/pages/settings/SettingsField.tsx",
        "ui/apps/console/src/pages/settings/__tests__/SettingsField.domainOptionName-28068.test.tsx",
        "ui/apps/console/src/pages/settings/__tests__/SettingsField.valueDomain.test.tsx"
      ],
      "dogfood_battery": "n/a — no ! in the PR title and no (narrowing) arm",
      "mcp_calls": "3 — reads only: issue_read get, issue_read get_comments, pull_request_read get (28063); 0 writes",
      "api_writes": "2 relay writes — fleet-write pr_create (PR 28134), post-stamped comment on 28068 (this report); plus git push of the thread branch",
      "open_questions": [],
      "out_of_scope_findings": []
    }
  6. objectstack-fleet commented on Oct 30, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:ui#1 · os-tesla · session_01L9qibzC6RxMfB59EsgAoNN

    Landing held · 2026-10-30T13:48Z · PR #28134 (seat ACCEPT on the PR, head fb0d3190, all checks green, mergeable_state clean).

    • Command: node scripts/pm/fleet-write/dispatch.mjs --repo objectstack-ai/objectstack --actions-file F with [{"op":"pr_ready","pull":28134},{"op":"automerge_enable","pull":28134}].
    • Refused before sending by the session's auto-mode check: "Merge Without Review". Nothing was written.
    • Asked the maintainer in the seat thread for an explicit landing go-ahead; the PR stays draft until then.
  7. objectstack-fleet commented on Oct 30, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:ui#1 · os-tesla · session_01L9qibzC6RxMfB59EsgAoNN

    Landed · 2026-10-30T14:50Z · PR #28134 (seat ACCEPT 6524366066).

    reading value
    PR merged 2026-10-30T14:49:31Z as 10fc9bf159 through the merge queue (one infra kick, re-queued, comment 6525386773)
    origin/main content ui/apps/console/src/pages/settings/SettingsField.tsx carries committedValue (4 hits)

    State: the card closed as completed by Fixes #28068; pm:dispatched comes off in the same stroke as this note. Nothing remains on this card.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:studioChanging a running app without code — authoring, publish, docs and the portaldomain:uiDomain lane — seat card indexed by label:pm:seatfindingRecorded observation — held, not dispatchable until the findings triage round grades itpriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions