Data model

Each governance document is a post of the hierarchical lh_governance_doc post type, shown at /governance/{slug}/. There is no archive, so a site can put its own page with the index block at /governance/.

Parents and types

A parent means only that a document implements its parent, for example a Child Safety Procedure under the Child Safety Policy. Documents are grouped by the lh_governance_type taxonomy, never by parent. Each site is seeded with Constitution, Policy, Procedure, Code of conduct and Terms of reference.

Fields

All fields are protected post meta (prefix _lh_governance_) registered with show_in_rest, so they can be read and written through the REST API and the LH MCP General Abilities create-post and update-post abilities.

Who can see a document is its post status. Private works as usual, and LH Membership’s restricted and confidential statuses apply to it like any other public post type.

Type defaults

When a document gets its type, any field that has never been set is filled in from that type: constitutions go to a general meeting with no review cycle; policies, codes of conduct and terms of reference go to committee every two years; procedures go to committee and take their parent’s cycle (two years without a parent). Every type defaults its owner role to administrator. A value set on purpose, including an empty one, is never overwritten.