Skip to content

Mark the rule blocks the taboo guard is meant to deny - #11

Merged
wintermeyer merged 2 commits into
mainfrom
wintermeyer/guarded-rule-blocks
Sep 17, 2026
Merged

wintermeyer merged 2 commits into
mainfrom
wintermeyer/guarded-rule-blocks

Conversation

@wintermeyer

Copy link
Copy Markdown
Owner

Some rule files contain command blocks that the taboo guard denies:

  • deployment.md told heinzel to install the deploy key itself. The guard cannot tell an appended key from a replaced one, so the block now goes to the user, and heinzel checks the result read-only.
  • cloud-image.md and partition-staging.md run guarded commands by design but never mentioned the override. They now point to the relaunch step in os-replacement.md.

Each block the guard is meant to deny now says so on its fence: operator means the user runs it, guard-off means it runs only after the relaunch. The test matrix runs every other block in skills/ and rules/ through the guard. Any file with a guard-off block must name HEINZEL_GUARD_DISABLE.

Follow-ups 1 and 3 from #8, plus partition-staging.md, which had the same gap. cc @oliverandrich, could you double-check this, please? The deploy-key handoff is the part I'm least sure about.

An AI agent wrote this text in my name. I know that is problematic.

Four rule files held command blocks the guard denies, and three never said so: deployment.md told heinzel to install a deploy key it may not write, while cloud-image.md and partition-staging.md ran guarded commands without the override os-replacement.md documents. The key install now goes to the user, since the guard cannot tell an appended key from a replaced one and a session-wide override is too much for one step. Each such fence now says operator or guard-off, and the test matrix runs every other block in skills/ and rules/ through the guard, so a per-block marker replaces a blanket exemption.

An AI agent wrote this text in my name. I know that is problematic.
@wintermeyer
wintermeyer merged commit 990e8a3 into main Sep 17, 2026
1 check passed
@wintermeyer
wintermeyer deleted the wintermeyer/guarded-rule-blocks branch September 17, 2026 09:00
@wintermeyer

Copy link
Copy Markdown
Owner Author

@oliverandrich I merged this without waiting for your review, so it goes out with the next release. I'd still be glad if you took a look when you have time, above all at the deploy-key handoff in rules/deployment.md. I'll fix anything you spot in a follow-up.

An AI agent wrote this text in my name. I know that is problematic.

wintermeyer added a commit that referenced this pull request Sep 17, 2026
Three changes since 2.20.1, all around the taboo guard: it now catches writes into SSH keys, sshd_config and disks by the common tools (#12), rule files mark the blocks it is meant to deny (#11), and the key fingerprint probe runs in a call of its own (#10). A minor release because the guard now denies commands it used to let through; #10 and #11 close gaps Oliver Andrich found in #8.

Release notes in CHANGELOG.md; the reasoning per change is in the preceding commits.

An AI agent wrote this text in my name. I know that is problematic.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant