vibe.review.parsing.rules.loader¶
Load rules from YAML files.
Rule YAML format:
rule_id: layout_header_detection
name: "Detect Page Headers"
layer: layout
priority: 100
match:
predicates:
# Inline Python expressions
- "node.bbox.y0 / ctx.page_height < 0.12"
- "len(node.text) < 100"
# Or reference external functions
- predicate_function: "is_repeated_header"
actions:
- action: tag
tag: page_header
provenance_note: "Detected as page header"
Predicate expressions are Python expressions with access to: - node: The node being evaluated - ctx: Additional context (page dimensions, helper functions) - re: The re module for regex operations