contracts.rules_layout

Page actions AI-ready formats and sharing
Open LLM text
Share with AI
Ask Claude Ask ChatGPT Ask Gemini Ask Copilot

Layout chain checks for page-convention templates.

Layout chain checks for page-convention templates.

contracts.rules_layout

Name Type Default Description
type
qualified_name
element_type
description
source_file
line_number
is_autodoc
autodoc_element
_autodoc_template
_autodoc_url_path
_autodoc_page_type
title
doc_content_hash

Symbols on this page

_all_dom_ids
function
def _all_dom_ids(template_sources: dict[str, str]) -> frozenset[str]

Collect everyid="..."value across all template sources.

Parameters

Name Type Default Description
template_sources dict[str, str]
_template_source_chain
function
def _template_source_chain(template_name: str, template_sources: dict[str, str]) -> tuple[tuple[str, str], ...]

Return a literalextendschain, child first, without cycles.

Parameters

Name Type Default Description
template_name str
template_sources dict[str, str]
_effective_hx_target_select
function
def _effective_hx_target_select(template_name: str, template_sources: dict[str, str]) -> tuple[str, str, str] | None

Find the first literal target/select pair in a layout inheritance chain.

Parameters

Name Type Default Description
template_name str
template_sources dict[str, str]
_check_omitted_outlet_selections
function
def _check_omitted_outlet_selections(discovered_routes: list[Any], template_sources: dict[str, str], fragment_target_registry: FragmentTargetRegistry | None) -> list[ContractIssue]

Error when an omitted outlet owns an hx-select absent from page HTML.

Parameters

Name Type Default Description
discovered_routes list[Any]
template_sources dict[str, str]
fragment_target_registry FragmentTargetRegistry | None
check_layout_chains
function
def check_layout_chains(layout_chains: list[Any], template_sources: dict[str, str], fragment_target_registry: FragmentTargetRegistry | None = None, discovered_routes: list[Any] | None = None) -> list[ContractIssue]

Validate layout chains: targets, scopes, outlets, frames, extends conflict.

Parameters

Name Type Default Description
layout_chains list[Any]
template_sources dict[str, str]
fragment_target_registry FragmentTargetRegistry | None None
discovered_routes list[Any] | None None

View source · /home/runner/work/chirp/chirp/site/../src/chirp/contracts/rules_layout.py:1