feat(site): one header and a nine-link top bar on every page - #72
Merged
Merged
Conversation
Nine agentrust-io.com pages carried their own menu of in-page anchors, while the homepage and /community/ used Verify, Specs, Build, Community and GitHub. Every page now uses that header, stamped from tools/site_header.py by tools/build-header.py, with --check in the links job. /go/ and the catalog render it through the same function. The old section links move to an On this page row under each hero. supernav.js drops from 14 links to 9 in chain order. design-system.css keeps one .hub-header block in place of four sets of header rules, and every page loads stylesheet v=21. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013aK3gVWzNdcM3hZ2o2awK2
Every other page already loaded supernav.js; these two never did, so they showed the header without the bar above it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013aK3gVWzNdcM3hZ2o2awK2
imran-siddique
added a commit
that referenced
this pull request
Sep 14, 2026
After #72 every agentrust-io.com page loads supernav.js except these two, so they showed the header without the bar. The static catalog stays scriptless by design (check-discovery.py requires it). Claude-Session: https://claude.ai/code/session_013aK3gVWzNdcM3hZ2o2awK2 Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
imran-siddique
added a commit
that referenced
this pull request
Sep 14, 2026
…ag (#76) supernav.js is served with a four-hour max-age and every page loaded it without a query string, so browsers kept the old top bar after #72. The hub pages and the /go/ template now load /supernav.js?v=CSS_VERSION, and build-header.py --check enforces it alongside design-system.css. check-availability.py reads each MkDocs host's home page and fails, naming the host, when its design-system.css or supernav.js URL is not at the current CSS_VERSION. DISCOVERY.md says how to bump. Claude-Session: https://claude.ai/code/session_013aK3gVWzNdcM3hZ2o2awK2 Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Every agentrust-io.com page now carries the homepage header: Verify, a Specs menu, a Build menu, Community and GitHub. Before this, only the homepage and /community/ had it. The other pages each had a menu of their own, so the way back to the specifications moved from page to page.
Menus before this change
The section links now sit in an "On this page" row under each hero, so every link a reader used is still there.
Top bar.
supernav.js, which every AgenTrust site loads, including the six MkDocs docs sites, goes from 14 links to 9 in chain order: agentrust-io, Verify, WCM, Manifest, cMCP, cA2A, TRACE, Governance, GitHub. Quickstart, Demos, Telemetry and Registry stay one click away in the header's Build and Specs menus, and AGT leaves the bar. The homepage and /community/ now load the bar as well; they were the only two pages that never did.One source for the header.
tools/site_header.pyholds the menu.tools/build-header.pystamps it betweensite-header:startandsite-header:endmarkers in 12 pages, marks the current page witharia-current="page"or its menu with a class, and sets the design-system.css cache-bust, nowv=21on every page (it ranged from v=10 to v=20). build-controls.py and build-discovery.py call the samerender(), so /go/ and the catalog match the stamped pages byte for byte. Thelinksjob runsbuild-header.py --check, so a hand edit inside the markers fails CI.To change the menu: edit
MENUin tools/site_header.py, runpython tools/build-header.py,python tools/build-controls.pyandpython tools/build-discovery.py, then commit the pages with it.Stylesheet. design-system.css carried header rules in four places: the homepage layout, its editorial override, the marketplace's own mobile menu, and
.at-page .site-header. One.hub-headerblock and a small.on-this-pageblock replace them. The homepage hover colour was white on the paper background, so a link vanished under the pointer; it is now the brand red.hub-nav.jsmoves into the stamped block withdefer. The static catalog gets the header without it, because check-discovery.py requires that page to carry no script.Checked
Also: the homepage verify panel's title bar still read
/verify › tdx_quote.binafter #69 switched the panel to the key-binding capture; it now readskeybind_quote.bin.Left for another change: the /wcm/ redirect stub moves to v=21 in the WCM social card PR, which edits that file. The redirect stubs under /go/ stay headerless.
Generated with Claude Code
https://claude.ai/code/session_013aK3gVWzNdcM3hZ2o2awK2