one artifact replaces three: install-stamp.json (code-scoped) subsumes .hermes_build_info.json (same schema, different name) and .install_method (derivable). git checkouts carry no stamp at all — .git plus location is the fact. detect_install_method() now delegates to runtime_tree.install_method(): stamp distribution (docker/nix/desktop-app) -> .git at a managed install root => git -> .git anywhere else => source (new) -> unknown the new 'source' method makes hermes update refuse random src checkouts outright and point at git pull (replaces the --yes-overridable ask-first guard). nixos dies as a method value; /nix/store sniffing and the HERMES_MANAGED ladder step die with it. HERMES_MANAGED keeps exactly one job: the NixOS module's declarative config-write guard. lazy_deps drops install-method inference entirely: the read-only guard now probes site-packages writability directly. no backwards compat: nothing reads the legacy stamps anymore. stage2-hook keeps deleting stale home-scoped .install_method markers left by old images. |
||
|---|---|---|
| .. | ||
| schemas | ||
| __init__.py | ||
| relay_runtime.py | ||
| relay_shared_metrics.py | ||
| shared_metrics.py | ||
| shared_metrics_contract.py | ||
| shared_metrics_subscriber.py | ||