Release notes
HOL Guard v3.60.0a74
PreviewHOL Guard v3.60.0a74, released November 12, 2026, is a preview release with 3 additions, 7 fixes and 1 other change across 9 merged pull requests. Highlights: Decide Hermes installs and stale shim refreshes in the native runtime; Seal and open Codex hook authority records in the runtime.
3 added · 7 fixed · 1 other
Key facts
- Version
- v3.60.0a74
- Channel
- Preview
- Published
- Previous release
- alpha/v3.60.0a73
- Merged pull requests
- 9
Documented changes
11 typed entries
Verified contributors
2 verified contributors · 11 credits
Attribution coverage
attribution complete; history inventory partial.
Install
Scope
Guard v3.60.0a74 is a preview release published 2026-11-12. Upstream documents: Guard 3.60.0a74 is an opt-in prerelease cut from 476ce7a. Stable installations remain on the stable channel. 10 commits • 9 merged pull requests • 2 contributors since Guard 3.60.0a73. Its comparison base is alpha/v3.60.0a73. It includes 11 verified contribution deliveries with public evidence links.
Changes
Added
3- guardDecide Hermes installs and stale shim refreshes in the native runtime (#7569) Evidence for this change
- Hermes install plan.** A new
hermes_install_planrunner-authority kind answers five questions for the Hermes adapter:
- Hermes install plan.** A new
- guardSeal and open Codex hook authority records in the runtime (#7562) Evidence for this change
- the pending publication inverse (
recovery); - the retained authority receipt beside a hook manifest (
receipt); - the repair and publication-inverse review requests (
repair_request,inverse_request).
- the pending publication inverse (
- guardDecide Cursor hook rebinds and uninstall restores in the native runtime (#7564) Evidence for this change
- Cursor hook rebind.**
rebind_stale_cursor_hooksandcursor_hook_script_bakes_ephemeral_clinow ask two newcursor_hook_configops:
- Cursor hook rebind.**
Fixed
7- daemonRoute Codex live decisions so approved requests run (#7572) Evidence for this change
- guardRead globs with wildcard directories like their matches (#7547) Evidence for this change
- The walk starts at the literal directory before the first wildcard. That root has to pass the bounded directory read, and none of its components may be hidden. The harness homes keep their own Markdown-only proof, and…
- Wildcard components follow the existing last-component model: only
*and?, ASCII case ignored, and a hidden or non-ASCII entry the pattern would match sends the read to review (dotglob, locale-dependent?).… - A matched directory name with whitespace or a glob character keeps the review, since an unquoted
$fin a loop would split or expand it again. The exception is a bracketed route directory such as[id]matched by a…
- guardKeep a recursive grep's directory exclusions beside its includes (#7571) Evidence for this change
- runtimeRead "since the last push" as a pushed change, and plain words like "out" as task words (#7566) Evidence for this change
- None of its words were on the list that marks a prompt as being about changes, so the note did not include the newest commit's diff. Agents then ran
git logandgit show HEADthemselves. - The plain word "out" was searched as a code name. In the sortedcontainers benchmark project it matched a local variable in
SortedList._pos, and the agent opened that method first.
- None of its words were on the list that marks a prompt as being about changes, so the note did not include the newest commit's diff. Agents then ran
- runtimeTreat a path inside a tag as a machine path (#7575) Evidence for this change
- commandAccept pip-style == pins in the versioned package matcher (
2e31f02) Evidence for this change - guardLet a contained search skip .git by name (#7567) Evidence for this change
- Merged pull request #7564: feat(guard): decide Cursor hook rebinds and uninstall restores in the native runtime (#7564)
- Merged pull request #7562: feat(guard): seal and open Codex hook authority records in the runtime (#7562)
- Merged pull request #7567: fix(guard): let a contained search skip .git by name (#7567)
- Merged pull request #7215: fix(command): accept pip-style == pins in the versioned package matcher
- Merged pull request #7572: fix(daemon): route Codex live decisions so approved requests run (#7572)
- Merged pull request #7566: fix(runtime): read "since the last push" as a pushed change, and plain words like "out" as task words (#7566)
- Merged pull request #7575: fix(runtime): treat a path inside a tag as a machine path (#7575)
- Merged pull request #7547: fix(guard): read globs with wildcard directories like their matches (#7547)
- Merged pull request #7571: fix(guard): keep a recursive grep's directory exclusions beside its includes (#7571)
- Merged pull request #7569: feat(guard): decide Hermes installs and stale shim refreshes in the native runtime (#7569)
- Direct commit dcb105ecab7b: Merge remote-tracking branch 'origin/main' into repair/pr-7215
Other changes
1- Guard 3.60.0a74 is an opt-in prerelease cut from
476ce7a. Stable installations remain on the stable channel. 10 commits • 9 merged pull requests • 2 contributors since Guard 3.60.0a73. Evidence for this change
Upgrade and compatibility
None documented.
Compare with the previous release
Predecessor on the same channel: alpha/v3.60.0a73
Verified contributors
Credits derive from public pull-request authorship, verified commit authorship, or verified co-authorship — never from thanks text or release metadata. Each distinct contributor is listed once; the evidence ledger paginates every published credit record.