Skip to content

[finding] 3 singular section: form-section examples in layout-dsl.mdx have no name — outside both arms of check-docs-section-name #13759

Description

@os-project-manager

Found while implementing #11887 (the YAML-fence arm on scripts/check-docs-section-name.mjs).
Filing separately rather than widening that PR: this is a different selector, not a
different spelling of the same one, so it carries its own verification surface.

The observation

check-docs-section-name.mjs now has two arms, and both judge a sections: sequence:

content/docs/protocol/objectui/layout-dsl.mdx also teaches form sections through a
singular section: mapping — one section on its own, not in a list. Three fences do
this, each marked for the os:check-yaml gate as FormSectionSchema key=section, and
all three are nameless:

content/docs/protocol/objectui/layout-dsl.mdx:234  label: Contact Information   keys=label|columns|fields
content/docs/protocol/objectui/layout-dsl.mdx:262  label: Product Details       keys=label|columns|fields
content/docs/protocol/objectui/layout-dsl.mdx:294  (no label key)               keys=columns|fields

Measured with the same yaml parser and the same classifyYamlFence the #11887 arm uses,
on af01080e3; the singular population across all of content/docs/** is exactly these 3.

Why it is the same defect class

Identical to #11887 and #10830: a nameless section has no i18n anchor, so its heading
resolves through objects.OBJECT._sections.NAME.label and renders its authored label in
every locale. These are teaching pages, so the example contradicts the convention it
teaches. FormSectionSchema declares name as .optional() and that stays settled
(#10709, reaffirmed #10830) — this is about examples, ⛔ not a schema change.

Why it was not folded into #11887

The triage ruling on #11887 scoped the sweep to the sections: sequence population its
census measured. Judging a bare singular section: mapping means deciding which YAML
keys introduce a form section at all
— a population question neither #10830 nor #11887
answered, and one that has to be answered before a gate can rule on it. The three
key=section fences are also the shape the os:check-yaml markers already name, so the
decision probably wants to be taken together with how that marker vocabulary is read.

Possible shapes (not a recommendation — needs triage)

Back-links: #11887, #10830, #10709

Activity

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

Metadata

Metadata

Labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions