Skip to content

fix(catalog): generate search index, footer version, and standards grid from source#81

Merged
TMHSDigital merged 1 commit into
mainfrom
fix/catalog-data-sync
Jun 17, 2026
Merged

fix(catalog): generate search index, footer version, and standards grid from source#81
TMHSDigital merged 1 commit into
mainfrom
fix/catalog-data-sync

Conversation

@TMHSDigital

Copy link
Copy Markdown
Owner

Summary

Fixes the four catalog data-integrity findings from the presentation audit (site-audit.md): D1, D2, F2, F3, P1n. No VERSION bump (site/data change, [skip version]).

Three hand-maintained regions of docs/index.html had drifted and were not covered by sync-check. sync_from_registry.py now owns them so they cannot drift again.

Findings addressed

  • D1 Inline search-index was frozen at 9 of 14 tools; the 5 newest (developer-tools-mcp, cfx-mcp, blender, local-ai, screencast) were unsearchable on the live site.
  • D2 Footer version hardcoded v1.9.5 vs real latest tag v1.17.0; now sourced from VERSION.
  • F2 Standards grid was missing born-green-contract; count read 18 for 19 standards. Grid + count now generated from the standards/*.md listing.
  • F3 docs/search-index.json was generated but never fetched. setupSearch now fetches it at runtime with the inline block as the offline/file:// fallback.
  • P1n The inline fallback and the file are generated together so they agree; aggregate_search.py merges with the existing index so a partial-checkout refresh no longer discards scanned names.

Verification

  • python scripts/sync_from_registry.py --check passes.
  • Search simulation: all 5 previously-missing tools now match queries (screencast/ffmpeg, blender, ollama, cfx mcp, registry).
  • Existing rich skill/rule/MCP names preserved for the 8 plugins + steam-mcp.
  • Full test suite: 238 passed, 1 skipped (born-green fixture updated to copy the newly-managed artifacts).
  • Headless re-render confirms standards badge reads 19 and the footer reads v1.17.0.

🤖 Generated with Claude Code

…id from source [skip version]

Three hand-maintained regions of docs/index.html had silently drifted and
were not covered by sync-check:

- The inline search-index block was frozen at 9 of 14 tools, so the five
  newest tools (developer-tools-mcp, cfx-mcp, blender, local-ai, screencast)
  were unsearchable on the live site (D1).
- The footer version was hardcoded v1.9.5 against a real latest tag of
  v1.17.0 (D2).
- The standards grid was missing born-green-contract and its count read 18
  for 19 standards (F2).
- docs/search-index.json was generated by aggregate_search.py but never
  fetched by the page; the page read only the inline block (F3).

sync_from_registry.py now owns all four: it reconciles docs/search-index.json
from the registry (preserving the scanned skill/rule/MCP-tool name arrays),
mirrors it into the inline fallback block, sets the footer from VERSION, and
generates the standards grid and count from the standards/*.md listing. Each
new region is best-effort so a minimal catalog without a VERSION file or
standards directory is left untouched. All four are covered by --check.

setupSearch now fetches search-index.json at runtime with the inline block as
the offline/file:// fallback, so the file and the embedded copy agree (P1n).
aggregate_search.py merges with the existing index so refreshing without a
full fleet checkout no longer discards previously scanned names.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: TMHSDigital <TMHospitalityStrategies@gmail.com>
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Jun 17, 2026
@github-actions

Copy link
Copy Markdown

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

@TMHSDigital TMHSDigital merged commit 8775ae0 into main Jun 17, 2026
14 checks passed
@TMHSDigital TMHSDigital deleted the fix/catalog-data-sync branch June 17, 2026 20:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant