Skip to content

Consume the per-column sortability signal: no sort affordance on columns the platform declares unsortable — downstream leg of objectstack#10235's ruling #5729

Description

@os-zhuang

Filed by the triage seat as the ruled consumer leg of objectstack-ai/objectstack#10235 (maintainer 2026-08-23, ruling A: the platform serves an explicit per-column sortability signal; the grid reads it and never re-derives "virtual ⇒ unsortable" from field type).

Blocked-by: objectstack-ai/objectstack#10235

Scope (after the upstream signal lands and the spec pin covers it)

  1. Grid/table headers drop the sort affordance on any column the served metadata marks unsortable — the click ceases to exist, so neither the silent-unordered behavior (today) nor the 422 refusal (post-#9313) is reachable from the UI.
  2. The personalization PUT is never issued for such a column.
  3. ⛔ No local "formula ⇒ unsortable" fallback derivation — if the signal is absent on the pinned spec version, this card is not ready (that is what the Blocked-by: is for), not a license to shadow-derive.

Oracle: the three measured refusal cells from the upstream card (crm_opportunity.expected_revenue ×2 views, showcase_project.budget_remaining) must become unofferable clicks; a sortable control column on the same grids keeps its affordance (both directions pinned).

Refs: objectstack-ai/objectstack#10235 (ruling + spec leg) · objectstack#9313 / PR #10234 (the widening that makes today's click loud).

Metadata

Metadata

Assignees

Labels

domain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seatpm:dispatched

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions