Families

headings and infobox labels outside a declared family's layout, and members the parent does not link

A parent page opts in by declaring its family's layout in its front matter, and wiki check then refuses a member that strays from it.[1] How a layout is chosen is described on Skill, and the report that finds families not yet declared on wiki families.

[family]
headings = ["Usage", "Options", "Arguments", "Output", "Exit codes"]
labels = ["Command", "Arguments", "Options", "Output folder", "Files written"]
table = ["Arguments", "Options", "Files written"]

When the family names table, the build writes the parent's member table where {family-table} stands on its own line: one row per member, linked, with the member's infobox value for each label, and an empty cell where the member states none.[2]

Refusals

Headings

A member's second-level heading that headings does not list is refused, and so is a heading that comes before one the list puts first.[3]

wiki: commands/serve.md: the heading 'Flags' is not in the family layout on commands.md; rename it to one of Usage, Options, Arguments, Output, Exit codes, or add it to family.headings there
wiki: commands/sync.md: the heading 'Output' comes before 'Options', but family.headings on commands.md lists 'Options' first; order the headings as it lists them

Infobox labels

A member's infobox label that labels does not list is refused, whichever group holds it.[4]

wiki: commands/check.md: the infobox label 'Name' is not in the family layout on commands.md; rename it to one of Command, Arguments, Options, Output folder, Default port, Files written, Success, Problems, Misuse, or add it to family.labels there

Parent links

A member that the parent's text does not link is refused, so the parent lists every member.[5] A parent with both table and {family-table} links every member through the table the build writes.[5]

wiki: commands.md does not link commands/audit.md, a member of its family; link every member from the parent, such as in a table of the members

Table

A table label that labels does not list is refused, and so are a table with no {family-table} on the parent, and a {family-table} with no table or on a page with no family.[6]

wiki: commands.md: family.table lists 'Flags', which family.labels does not; add it to family.labels, or take it out of family.table
wiki: commands.md declares family.table but has no {family-table}; put {family-table} on its own line where the member table goes
wiki: commands.md has {family-table} but declares no family.table; add table = [...] under [family], naming the infobox labels the member table compares
wiki: brief.md has {family-table} but declares no [family]; declare the family's layout, with table naming the infobox labels its member table compares

A {family-table} the build cannot replace, such as one inside a list or an indented block, is refused, and so is a marker written more than once.[6]

wiki: commands.md has {family-table} where the build cannot write the table, such as in a list, a quote or an indented block; put it on a line of its own, with a blank line before and after
wiki: commands.md has {family-table} 2 times; keep one, where the member table goes

Declaration

A family that is not a table, and a headings, labels or table that is empty or is not a list of names, are refused, and the family's members are not checked until each is fixed.[1]

wiki: checks.md: family.headings must list the headings every member of the family may use, such as headings = ["Usage", "Output"], or leave family.headings out to check no headings

Scope

The check reads the direct children of each page that declares [family]: their second-level headings outside code samples, compared as the page shows them without a closing run of # or backticks, and every infobox label in every group.[7] A grandchild belongs to its own parent's family, when that parent declares one.[7]

Exceptions

A member may leave out any heading or label its family lists, so a section that does not apply is not written.[8] A key the family does not declare is not checked, and a parent that declares no family is not checked at all.[8]

Enforcement

Each problem is listed with every other problem wiki check finds, and never stops the build.[9]

Clearing

A refused member passes once its heading or label is renamed to one the family lists, or once the name is added to the list on the parent for every member.[10] A missing link is cleared by linking the member from the parent's text, such as from a table of the members.[5]

Categories: Refusals
Last updated 15 September 2026Last audited 15 September 2026442 wordsabout 2 minutes to read10 sources cited0 claims with no source