# report URL: /api/health/report/ Section: health -------------------------------------------------------------------------------- report - Bengal window.BENGAL_THEME_DEFAULTS = { appearance: 'dark', palette: 'snow-lynx' }; // Progressive Enhancement System Configuration window.Bengal = window.Bengal || {}; window.Bengal.enhanceBaseUrl = '/bengal/assets/js/enhancements'; window.Bengal.watchDom = true; window.Bengal.debug = false; (function () { try { var defaults = window.BENGAL_THEME_DEFAULTS || { appearance: 'system', palette: '' }; var defaultAppearance = defaults.appearance; if (defaultAppearance === 'system') { defaultAppearance = (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) ? 'dark' : 'light'; } var storedTheme = localStorage.getItem('bengal-theme'); var storedPalette = localStorage.getItem('bengal-palette'); var theme = storedTheme ? (storedTheme === 'system' ? defaultAppearance : storedTheme) : defaultAppearance; var palette = storedPalette ?? defaults.palette; document.documentElement.setAttribute('data-theme', theme); if (palette) { document.documentElement.setAttribute('data-palette', palette); } } catch (e) { document.documentElement.setAttribute('data-theme', 'light'); } })(); Skip to main content Magnifying Glass ESC Recent Clear Magnifying Glass No results for "" Try different keywords or check your spelling Start typing to search... ↑↓ Navigate ↵ Open ESC Close Powered by Lunr ᓚᘏᗢ Documentation Info About Arrow Clockwise Get Started Note Tutorials File Text Content Palette Theming Settings Building Starburst Extending Bookmark Reference Learning Tracks Releases Dev GitHub API Reference bengal CLI Magnifying Glass Search ⌘K Palette Appearance Chevron Down Mode Monitor System Sun Light Moon Dark Palette Snow Lynx Brown Bengal Silver Bengal Charcoal Bengal Blue Bengal List ᓚᘏᗢ Magnifying Glass Search X Close Documentation Info About Arrow Clockwise Get Started Note Tutorials File Text Content Palette Theming Settings Building Starburst Extending Bookmark Reference Learning Tracks Releases Dev GitHub API Reference bengal CLI Palette Appearance Chevron Down Mode Monitor System Sun Light Moon Dark Palette Snow Lynx Brown Bengal Silver Bengal Charcoal Bengal Blue Bengal API Reference __main__ bengal Caret Right Folder Analysis community_detection graph_analysis graph_reporting graph_visualizer knowledge_graph link_suggestions link_types page_rank path_analysis performance_advisor results Caret Right Folder Assets manifest pipeline Caret Right Folder Autodoc base config docstring_parser utils virtual_orchestrator Caret Right Folder Extractors cli openapi python Caret Right Folder Models cli common openapi python Caret Right Folder Cache asset_dependency_map cache_store cacheable compression dependency_tracker page_discovery_cache query_index query_index_registry taxonomy_index utils Caret Right Folder Build Cache autodoc_tracking core file_tracking fingerprint parsed_content_cache rendered_output_cache taxonomy_index_mixin validation_cache Caret Right Folder Indexes author_index category_index date_range_index section_index Caret Right Folder Cli __main__ base site_templates utils Caret Right Folder Commands assets build clean collections config debug explain fix health init perf project serve site skeleton sources theme utils validate Caret Right Folder Graph __main__ bridges communities orphans pagerank report suggest Caret Right Folder New config presets scaffolds site wizard Caret Right Folder Helpers cli_app_loader cli_output config_validation error_handling menu_config metadata progress site_loader traceback validation Caret Right Folder Skeleton hydrator schema Caret Right Folder Templates base registry Caret Right Folder Blog template Caret Right Folder Changelog template Caret Right Folder Default template Caret Right Folder Docs template Caret Right Folder Landing template Caret Right Folder Portfolio template Caret Right Folder Resume template Caret Right Folder Collections errors loader schemas validator Caret Right Folder Config defaults deprecation directory_loader env_overrides environment feature_mappings hash loader merge origin_tracker validators Caret Right Folder Content Layer entry loaders manager source Caret Right Folder Sources github local notion rest Caret Right Folder Content Types base registry strategies Caret Right Folder Core build_context cascade_engine menu section theme Caret Right Folder Asset asset_core css_transforms Caret Right Folder Page computed content metadata navigation operations page_core proxy relationships utils Caret Right Folder Site core data discovery factories page_caches properties section_registry theme Caret Right Folder Debug base config_inspector content_migrator delta_analyzer dependency_visualizer explainer incremental_debugger models reporter shortcode_sandbox Caret Right Folder Discovery asset_discovery content_discovery Caret Right Folder Fonts downloader generator Caret Right Folder Health autofix base health_check report Caret Right Folder Linkcheck async_checker ignore_policy internal_checker models orchestrator Caret Right Folder Validators anchors assets cache config connectivity cross_ref fonts links menu navigation output performance rendering rss sitemap taxonomy tracks Caret Right Folder Directives analysis checkers constants Caret Right Folder Orchestration asset content full_to_incremental incremental menu postprocess related_posts render section static streaming taxonomy Caret Right Folder Postprocess html_output redirects rss sitemap special_pages Caret Right Folder Output Formats index_generator json_generator llm_generator lunr_index_generator txt_generator utils Caret Right Folder Rendering api_doc_enhancer asset_extractor errors jinja_utils link_transformer link_validator pygments_cache renderer template_context template_profiler validator Caret Right Folder Parsers base factory mistune native_html pygments_patch python_markdown Caret Right Folder Pipeline core output thread_local toc transforms Caret Right Folder Plugins badges cross_references inline_icon term variable_substitution Caret Right Folder Directives _icons admonitions badge base button cache cards checklist code_tabs container contracts data_table dropdown embed errors example_label fenced figure glossary icon include list_table literalinclude marimo navigation options rubric steps tabs target term terminal tokens utils validator video Caret Right Folder Template Engine asset_url core environment manifest menu url_helpers Caret Right Folder Template Functions advanced_collections advanced_strings autodoc collections content crossref data dates debug files get_page i18n icons images math_functions navigation pagination_helpers seo strings tables taxonomies theme urls Caret Right Folder Server build_handler component_preview constants dev_server live_reload pid_manager reload_controller request_handler request_logger resource_manager utils Caret Right Folder Services validation Caret Right Folder Themes config Caret Right Folder Utils atomic_write autodoc build_context build_stats build_summary cli_output css_minifier dates dotdict error_handlers file_io file_lock hashing incremental_constants js_bundler live_progress logger metadata observability page_initializer pagination path_resolver paths performance_collector performance_report profile progress retry rich_console sections swizzle text theme_registry theme_resolution thread_local traceback_config traceback_renderer url_normalization url_strategy API Reference Health ᗢ Caret Down Link Copy URL External Open LLM text Copy Copy LLM text Share with AI Ask Claude Ask ChatGPT Ask Gemini Ask Copilot Module health.report Health check report formatting and data structures. Provides structured reporting of health check results with multiple output formats. View source 5 Classes Classes CheckStatus Status of a health check. Severity levels (from most to least critical): - ERROR: Blocks builds, m… 0 Caret Right Status of a health check. Severity levels (from most to least critical): ERROR: Blocks builds, must fix WARNING: Don't block, but should fix SUGGESTION: Quality improvements (collapsed by default) INFO: Contextual information (hidden unless verbose) SUCCESS: Check passed Inherits from Enum CheckResult dataclass Result of a single health check. 9 Caret Right Result of a single health check. Attributes Name Type Description status CheckStatus Status level (success, info, warning, error) message str Human-readable description of the check result recommendation str | None Optional suggestion for how to fix/improve (shown for warnings/errors) details list[str] | None Optional additional context (list of strings) validator str Name of validator that produced this result metadata dict[str, Any] | None Methods 9 success classmethod Create a success result. 2 CheckResult Caret Right def success(cls, message: str, validator: str = '') -> CheckResult Create a success result. Parameters 2 message str validator str Returns CheckResult info classmethod Create an info result. 5 CheckResult Caret Right def info(cls, message: str, recommendation: str | None = None, details: list[str] | None = None, validator: str = '', metadata: dict[str, Any] | None = None) -> CheckResult Create an info result. Parameters 5 message str recommendation str | None details list[str] | None validator str metadata dict[str, Any] | None Returns CheckResult suggestion classmethod Create a suggestion result (quality improvement, not a problem). 5 CheckResult Caret Right def suggestion(cls, message: str, recommendation: str | None = None, details: list[str] | None = None, validator: str = '', metadata: dict[str, Any] | None = None) -> CheckResult Create a suggestion result (quality improvement, not a problem). Parameters 5 message str recommendation str | None details list[str] | None validator str metadata dict[str, Any] | None Returns CheckResult warning classmethod Create a warning result. 5 CheckResult Caret Right def warning(cls, message: str, recommendation: str | None = None, details: list[str] | None = None, validator: str = '', metadata: dict[str, Any] | None = None) -> CheckResult Create a warning result. Parameters 5 message str recommendation str | None details list[str] | None validator str metadata dict[str, Any] | None Returns CheckResult error classmethod Create an error result. 5 CheckResult Caret Right def error(cls, message: str, recommendation: str | None = None, details: list[str] | None = None, validator: str = '', metadata: dict[str, Any] | None = None) -> CheckResult Create an error result. Parameters 5 message str recommendation str | None details list[str] | None validator str metadata dict[str, Any] | None Returns CheckResult is_problem Check if this is a warning or error (vs success/info/suggestion). 0 bool Caret Right def is_problem(self) -> bool Check if this is a warning or error (vs success/info/suggestion). Returns bool is_actionable Check if this requires action (error, warning, or suggestion). 0 bool Caret Right def is_actionable(self) -> bool Check if this requires action (error, warning, or suggestion). Returns bool to_cache_dict Serialize CheckResult to JSON-serializable dict for caching. 0 dict[str, Any] Caret Right def to_cache_dict(self) -> dict[str, Any] Serialize CheckResult to JSON-serializable dict for caching. Returns dict[str, Any] — Dictionary with all fields as JSON-serializable types from_cache_dict classmethod Deserialize CheckResult from cached dict. 1 CheckResult Caret Right def from_cache_dict(cls, data: dict[str, Any]) -> CheckResult Deserialize CheckResult from cached dict. Parameters 1 data dict[str, Any] Dictionary from cache Returns CheckResult — CheckResult instance ValidatorStats dataclass Observability metrics for a validator run. These stats help diagnose performance issues and valida… 5 Caret Right Observability metrics for a validator run. These stats help diagnose performance issues and validate that optimizations (like caching) are working correctly. This class follows the ComponentStats pattern from bengal.utils.observability but maintains page-specific naming for validator contexts. Attributes Name Type Description pages_total int Total pages in site pages_processed int Pages actually validated pages_skipped dict[str, int] Dict of skip reasons and counts cache_hits int Number of cache hits (if applicable) cache_misses int Number of cache misses (if applicable) sub_timings dict[str, float] Dict of sub-operation names to duration_ms metrics dict[str, int | float | str] Custom metrics (component-specific) Methods 5 Tag cache_hit_rate property Cache hit rate as percentage (0-100). float Caret Right def cache_hit_rate(self) -> float Cache hit rate as percentage (0-100). Returns float Tag skip_rate property Skip rate as percentage (0-100). float Caret Right def skip_rate(self) -> float Skip rate as percentage (0-100). Returns float Tag total_skipped property Total number of skipped items across all reasons. int Caret Right def total_skipped(self) -> int Total number of skipped items across all reasons. Returns int format_summary Format stats for debug output. 0 str Caret Right def format_summary(self) -> str Format stats for debug output. Returns str to_log_context Convert to flat dict for structured logging. 0 dict[str, int | flo… Caret Right def to_log_context(self) -> dict[str, int | float | str] Convert to flat dict for structured logging. Returns dict[str, int | float | str] — Flat dictionary suitable for structured logging kwargs. ValidatorReport dataclass Report for a single validator's checks. 7 Caret Right Report for a single validator's checks. Attributes Name Type Description validator_name str Name of the validator results list[CheckResult] List of check results from this validator duration_ms float How long the validator took to run stats ValidatorStats | None Optional observability metrics Methods 7 Tag passed_count property Count of successful checks. int Caret Right def passed_count(self) -> int Count of successful checks. Returns int Tag info_count property Count of info messages. int Caret Right def info_count(self) -> int Count of info messages. Returns int Tag warning_count property Count of warnings. int Caret Right def warning_count(self) -> int Count of warnings. Returns int Tag suggestion_count property Count of suggestions (quality improvements). int Caret Right def suggestion_count(self) -> int Count of suggestions (quality improvements). Returns int Tag error_count property Count of errors. int Caret Right def error_count(self) -> int Count of errors. Returns int Tag has_problems property Check if this validator found any warnings or errors. bool Caret Right def has_problems(self) -> bool Check if this validator found any warnings or errors. Returns bool Tag status_emoji property Get emoji representing overall status. str Caret Right def status_emoji(self) -> str Get emoji representing overall status. Returns str HealthReport dataclass Complete health check report for a build. 16 Caret Right Complete health check report for a build. Attributes Name Type Description validator_reports list[ValidatorReport] Reports from each validator timestamp datetime When the health check was run build_stats dict[str, Any] | None Optional build statistics Methods 13 Tag total_passed property Total successful checks across all validators. int Caret Right def total_passed(self) -> int Total successful checks across all validators. Returns int Tag total_info property Total info messages across all validators. int Caret Right def total_info(self) -> int Total info messages across all validators. Returns int Tag total_warnings property Total warnings across all validators. int Caret Right def total_warnings(self) -> int Total warnings across all validators. Returns int Tag total_suggestions property Total suggestions (quality improvements) across all validators. int Caret Right def total_suggestions(self) -> int Total suggestions (quality improvements) across all validators. Returns int Tag total_errors property Total errors across all validators. int Caret Right def total_errors(self) -> int Total errors across all validators. Returns int Tag total_checks property Total number of checks run. int Caret Right def total_checks(self) -> int Total number of checks run. Returns int has_errors Check if any errors were found. 0 bool Caret Right def has_errors(self) -> bool Check if any errors were found. Returns bool has_warnings Check if any warnings were found. 0 bool Caret Right def has_warnings(self) -> bool Check if any warnings were found. Returns bool has_problems Check if any errors or warnings were found. 0 bool Caret Right def has_problems(self) -> bool Check if any errors or warnings were found. Returns bool build_quality_score Calculate build quality score (0-100). Uses a penalty-based system where: - Ba… 0 int Caret Right def build_quality_score(self) -> int Calculate build quality score (0-100). Uses a penalty-based system where: Base score is 100 (no problems = perfect) Errors subtract significantly (blockers) Warnings subtract moderately (should fix) Diminishing returns prevent extreme scores for many small issues This ensures same problems always give the same score, regardless of how many checks ran. Returns int — Score from 0-100 (100 = perfect) quality_rating Get quality rating based on score. Thresholds aligned with penalty-based scori… 0 str Caret Right def quality_rating(self) -> str Get quality rating based on score. Thresholds aligned with penalty-based scoring: Excellent (90+): No errors, 0-2 warnings Good (75-89): 1 error or 3-5 warnings Fair (50-74): 2-3 errors or many warnings Needs Improvement (<50): 4+ errors Returns str format_console Format report for console output. 3 str Caret Right def format_console(self, mode: str = 'auto', verbose: bool = False, show_suggestions: bool = False) -> str Format report for console output. Parameters 3 mode str Display mode - "auto", "quiet", "normal", "verbose" auto = quiet if no problems, normal if warnings/errors verbose bool Legacy parameter, sets mode to "verbose" show_suggestions bool Whether to show suggestions (quality improvements) Returns str — Formatted string ready to print format_json Format report as JSON-serializable dictionary. 0 dict[str, Any] Caret Right def format_json(self) -> dict[str, Any] Format report as JSON-serializable dictionary. Returns dict[str, Any] — Dictionary suitable for json.dumps() Internal Methods 3 Caret Right _format_quiet Minimal output - perfect builds get one line, problems shown clearly. 1 str Caret Right def _format_quiet(self, show_suggestions: bool = False) -> str Minimal output - perfect builds get one line, problems shown clearly. Parameters 1 show_suggestions bool Whether to show suggestions (ignored in quiet mode) Returns str _format_normal Balanced output with progressive disclosure - problems first, then successes. R… 1 str Caret Right def _format_normal(self, show_suggestions: bool = False) -> str Balanced output with progressive disclosure - problems first, then successes. Reduces cognitive load by prioritizing actionable information. Parameters 1 show_suggestions bool Whether to show suggestions (collapsed by default) Returns str _format_verbose Full audit trail with progressive disclosure - problems first, then all details. 1 str Caret Right def _format_verbose(self, show_suggestions: bool = True) -> str Full audit trail with progressive disclosure - problems first, then all details. Parameters 1 show_suggestions bool Whether to show suggestions (default True in verbose mode) Returns str ← Previous health_check List © 2025 Bengal ᓚᘏᗢ window.BENGAL_LAZY_ASSETS = { tabulator: '/bengal/assets/js/tabulator.min.js', dataTable: '/bengal/assets/js/data-table.js', mermaidToolbar: '/bengal/assets/js/mermaid-toolbar.9de5abba.js', mermaidTheme: '/bengal/assets/js/mermaid-theme.344822c5.js', graphMinimap: '/bengal/assets/js/graph-minimap.cc7e42e3.js', graphContextual: '/bengal/assets/js/graph-contextual.440e59c6.js' }; window.BENGAL_ICONS = { close: '/bengal/assets/icons/close.911d4fe1.svg', enlarge: '/bengal/assets/icons/enlarge.652035e5.svg', copy: '/bengal/assets/icons/copy.3d56e945.svg', 'download-svg': '/bengal/assets/icons/download.04f07e1b.svg', 'download-png': '/bengal/assets/icons/image.c34dfd40.svg', 'zoom-in': '/bengal/assets/icons/zoom-in.237b4a83.svg', 'zoom-out': '/bengal/assets/icons/zoom-out.38857c77.svg', reset: '/bengal/assets/icons/reset.d26dba29.svg' }; Arrow Up X -------------------------------------------------------------------------------- Metadata: - Author: lbliii - Word Count: 2632 - Reading Time: 13 minutes