Commit bb41868
docs: correct the
objectui#6010 bound the host predicate scope on the five authored-predicate
call sites in objectui's form renderer, so `current_user` (plus the ADR-0068
`user` / `ctx.user` / `os.user` aliases) now resolves on a runtime form FIELD
`visibleWhen` / `visibleOn` the way it already did on the page/app-nav node gate
and per-option `visibleWhen`. The two hand-written pages that documented the
old asymmetry are corrected to the measured binding.
Measured per claim rather than swept: the FIELD half moved, the SECTION half
did not. `FormSection.visibleWhen` is read by exactly one runtime evaluator in
objectui — the console's second form renderer — which still passes `undefined`
for the scope, and the object-view chain (ObjectForm / ModalForm / DrawerForm /
SplitForm) drops the key onto a `section-divider` pseudo-field that carries no
predicate at all. So the binding table's one form row becomes two, and the
section row keeps the claim it still earns.
Two renderer caveats are stated where the binding is, because promising a
binding a live surface does not honour is the failure this page keeps hitting:
the console's standalone form routes (`/forms/:name`, public `/f/:slug`)
evaluate field predicates unbound (objectui#6110), and section predicates are
inert on the object-view chain (objectui#6111).
The position-gated example moves to the canonical `{ dialect: 'cel' }` envelope
via `P`. A bare string carrying the CEL membership operator is normalized by
spec parse for authored metadata, but a schema handed straight to the renderer
keeps the bare string, which objectui routes to its legacy evaluator — no `in`
operator, rejected, then fail-open (objectui#2661 keeps that routing).
Claude-Session: https://claude.ai/code/session_015ahemw8RcTgqtxrj15PEZx
Co-authored-by: Claude <noreply@anthropic.com>visibleWhen binding claims per surface, not in bulk (#11816)1 parent ce2b9d2 commit bb41868
2 files changed
Lines changed: 38 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
804 | 804 | | |
805 | 805 | | |
806 | 806 | | |
807 | | - | |
| 807 | + | |
| 808 | + | |
808 | 809 | | |
809 | 810 | | |
810 | 811 | | |
| |||
813 | 814 | | |
814 | 815 | | |
815 | 816 | | |
816 | | - | |
| 817 | + | |
| 818 | + | |
817 | 819 | | |
818 | 820 | | |
| 821 | + | |
| 822 | + | |
| 823 | + | |
| 824 | + | |
| 825 | + | |
| 826 | + | |
| 827 | + | |
| 828 | + | |
| 829 | + | |
819 | 830 | | |
820 | 831 | | |
821 | 832 | | |
| |||
844 | 855 | | |
845 | 856 | | |
846 | 857 | | |
847 | | - | |
848 | | - | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
| 861 | + | |
| 862 | + | |
849 | 863 | | |
850 | 864 | | |
851 | | - | |
852 | | - | |
853 | | - | |
854 | | - | |
855 | | - | |
| 865 | + | |
| 866 | + | |
| 867 | + | |
| 868 | + | |
| 869 | + | |
| 870 | + | |
| 871 | + | |
| 872 | + | |
| 873 | + | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
| 878 | + | |
| 879 | + | |
| 880 | + | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
856 | 884 | | |
857 | 885 | | |
858 | 886 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
430 | 430 | | |
431 | 431 | | |
432 | 432 | | |
433 | | - | |
| 433 | + | |
434 | 434 | | |
435 | 435 | | |
436 | 436 | | |
| |||
0 commit comments