60b6269142
The gateway now creates a local control socket at startup (Unix domain socket at $HERMES_HOME/gateway.sock with a pointer-file fallback for long paths; named pipe on Windows) and answers versioned JSON verbs: - identify: pid, profile, hermes_home, code_sha/code_version (#91283 stamps, now queryable live), self-declared supervisor kind, start_time - status: the live runtime-status payload, answered by the process itself Bound immediately after the PID-file O_EXCL claim (the moment the process becomes the authoritative gateway for its HERMES_HOME), removed on clean shutdown; a successor clears any stale socket on bind. Strictly non-fatal: bind failure only means consumers use the old path. Consumers migrated (observability only, scan layer demoted to fallback, never deleted): - collect_fleet_versions() (post-update fleet matrix): prefers a live identify answer over gateway_state.json; entries carry source=socket - collect_runtime_inventory() (hermes update --plan): prefers the socket, and takes the gateway's own supervisor declaration instead of inferring it from PID scans Old gateways mid-upgrade, crashed processes, and bind failures behave exactly as before. Never a TCP port; filesystem/pipe ACLs are the auth boundary (0600 socket). Part of #91277 (fleet-update reliability). Design: #92091.
Website
This website is built using Docusaurus, a modern static website generator.
Installation
yarn
Local Development
yarn start
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
Build
yarn build
This command generates static content into the build directory and can be served using any static contents hosting service.
Deployment
Using SSH:
USE_SSH=true yarn deploy
Not using SSH:
GIT_USER=<Your GitHub username> yarn deploy
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the gh-pages branch.
Diagram Linting
CI runs ascii-guard to lint docs for ASCII box diagrams. Use Mermaid (````mermaid`) or plain lists/tables instead of ASCII boxes to avoid CI failures.