Menu โ–พ โ–ด

#110 site(insights): fix breadcrumb hierarchy on 20 pages; add nav.breadcrumb check

closed
nobody
None
2026-05-18
2026-05-18
Anonymous
No

Originally created by: TheoV823

Summary

  • Removes bogus Concepts / Architecture intermediate items from 20 insight article breadcrumbs โ€” correct hierarchy is Home > Insights > Title
  • One page (why-observability-is-not-governance) had Concepts only, also fixed
  • Adds rule_breadcrumb_html to seo_check.py as nav.breadcrumb โ€” validates visible <ol class="breadcrumb"> parent hrefs match the page's actual URL hierarchy; deploy pre-flight will FAIL on any future regression

Test plan

  • [ ] 107 unit tests pass
  • [ ] seo_check.py --only insights --json shows 0 nav.breadcrumb failures
  • [ ] Visual spot-check: breadcrumb reads Home / Insights / [title] on any insight article

๐Ÿค– Generated with Claude Code

Related

Tickets: #124

Discussion

  • Anonymous

    Anonymous - 2026-05-18

    Ticket changed by: TheoV823

    • status: open --> closed
     
  • Anonymous

    Anonymous - 2026-05-18

    Originally posted by: github-actions[bot]

    mneme self-governance check

    Mode: warn - verdicts are visible but do not block merge. Rollout plan: .mneme/README.md.

    Summary: 0 pass, 0 warn, 0 fail, 21 unknown

    [!WARNING]
    Mneme returned one or more UNKNOWN verdicts. Governance output could not be trusted for those files. See the raw CLI output in the Details section below.

    verdict file
    โ” UNKNOWN scripts/seo_check.py
    โ” UNKNOWN site/insights/agents-of-chaos-and-the-governance-gap/index.html
    โ” UNKNOWN site/insights/ai-code-review-does-not-scale-linearly/index.html
    โ” UNKNOWN site/insights/ai-coding-governance-should-be-reviewable/index.html
    โ” UNKNOWN site/insights/architectural-governance-across-heterogeneous-ai-coding-agents/index.html
    โ” UNKNOWN site/insights/deployment-quality-will-define-the-ai-era/index.html
    โ” UNKNOWN site/insights/generative-ai-software-engineering-stack/index.html
    โ” UNKNOWN site/insights/github-copilot-space-framework/index.html
    โ” UNKNOWN site/insights/memory-is-not-governance/index.html
    โ” UNKNOWN site/insights/mneme-vs-cursor-rules/index.html
    โ” UNKNOWN site/insights/openai-compatible-apis-are-commoditizing-models/index.html
    โ” UNKNOWN site/insights/openclaw-and-the-limits-of-autonomous-coding/index.html
    โ” UNKNOWN site/insights/prompt-engineering-is-not-governance/index.html
    โ” UNKNOWN site/insights/review-is-not-governance/index.html
    โ” UNKNOWN site/insights/rise-of-agentic-engineering-education/index.html
    โ” UNKNOWN site/insights/what-is-the-ai-sdlc/index.html
    โ” UNKNOWN site/insights/why-architectural-governance-needs-precedence-semantics/index.html
    โ” UNKNOWN site/insights/why-code-review-cannot-scale-with-ai-output/index.html
    โ” UNKNOWN site/insights/why-observability-is-not-governance/index.html
    โ” UNKNOWN site/insights/why-prompt-memory-fails-at-scale/index.html
    โ” UNKNOWN site/insights/why-rag-fails-for-architectural-governance/index.html

    Details

    scripts/seo_check.py โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/agents-of-chaos-and-the-governance-gap/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/ai-code-review-does-not-scale-linearly/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/ai-coding-governance-should-be-reviewable/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/architectural-governance-across-heterogeneous-ai-coding-agents/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/deployment-quality-will-define-the-ai-era/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/generative-ai-software-engineering-stack/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/github-copilot-space-framework/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/memory-is-not-governance/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/mneme-vs-cursor-rules/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/openai-compatible-apis-are-commoditizing-models/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/openclaw-and-the-limits-of-autonomous-coding/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/prompt-engineering-is-not-governance/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/review-is-not-governance/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/rise-of-agentic-engineering-education/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/what-is-the-ai-sdlc/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/why-architectural-governance-needs-precedence-semantics/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/why-code-review-cannot-scale-with-ai-output/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/why-observability-is-not-governance/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/why-prompt-memory-fails-at-scale/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>
    site/insights/why-rag-fails-for-architectural-governance/index.html โ€” UNKNOWN Traceback (most recent call last): File "<frozen runpy="">", line 198, in _run_module_as_main File "<frozen runpy="">", line 88, in _run_code File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/cli.py", line 33, in <module> from mneme.adr_import import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_import.py", line 26, in <module> from mneme.adr_compiler import ( File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_compiler.py", line 19, in <module> from mneme.adr_parser import parse_adr_directory File "/home/runner/work/mneme/mneme/mneme-project-memory/mneme/adr_parser.py", line 16, in <module> import yaml ModuleNotFoundError: No module named 'yaml' </module></module></module></module></frozen></frozen>

    Generated by .github/workflows/mneme-check.yml ยท query = PR title + file path ยท scope = repo-governance paths.

     

Log in to post a comment.

Auth0 Logo