fix(bots): neuter live mutating rhodibot → report-only audit mode (+directive, 4-mode setting) [WS-1]#4
Merged
Merged
Conversation
…are/language repo) Every other estate repo carries .machine_readable/bot_directives/rhodibot.a2ml; these three lacked it, so rhodibot (the deterministic RSR verifier) had no per-repo allow/ deny/scope guidance here. Adds it modelled on the estate schema (schema_version 1.0), with the deterministic licence guards in deny: never relicense third-party/vendored, never change an undeterminable licence (leave untouched), never convert deliberate (non-drift) licences. SPDX normalisation to the declared licences (code -> MPL-2.0, prose -> CC-BY-SA-4.0) is allowed (rhodibot is symbolic/deterministic, out of scope of the neural-agent no-automated-licence-edits rule). root-shape: ok.
Replace the directive-blind inline auto-fix (delete/rename/SPDX-sed/file-create + auto-PR) with a detect-and-LOG audit run: it reports what it WOULD do, mutates nothing, opens no PR, and runs with contents:read only. Neutralises the guardless SPDX sed immediately while preserving rhodibot's detection value. Aligns with the report-only-canary directive. Convergence onto the deterministic engine tracked HIGH PRIORITY in gitbot-fleet.
…hodibot directive Adds a first-class 'mode' field to the rhodibot directive (fleet-standard; all gitbot-fleet bots should honour it): active=do it; audit=dry-run + full forensic log of what it WOULD do; passive=normal report only; ignore=skip the repo entirely. Set to mode=audit here, matching the report-only audit workflow now deployed. Orthogonal to enforcement (full/partial) and repo-kind (software/lean-docs).
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.
WS-1 (P1) — remove the live mutating-bot hazard from
mainorigin/maincurrently carries the oldrhodibot.ymlwithcontents: write+pull-requests: writeand a guardless licence rewrite (sed -i 's/AGPL-3.0-or-later/MPL-2.0/g; s/AGPL-3.0/MPL-2.0/g', comment mislabels it "AGPL → PMPL") plus a danglingworkflow_run: ["Hypatia Neurosymbolic Analysis"]. That is a directive-blind reimplementation of rhodibot, divergent from the deterministic Rust engine, and it can open PRs that relicense files with none of the engine's guards.This PR lands the three commits that neuter it:
.machine_readable/bot_directives/rhodibot.a2ml) — full enforcement (software repo); deterministic licence guards indeny(never relicense third-party/vendored/forked; never change an undeterminable or deliberate licence).rhodibot.ymlbecomes report-only: detect + log what it would do, zero mutations, no PR,permissions: contents: read. Removes the guardlesssedand the dangling trigger.modesetting —active/audit/passive/ignoreas a first-class directive field (set toaudit).This is the deterministic-vs-neural distinction in practice: rhodibot may normalise SPDX deterministically, but the inline-bash copy lacked the engine's guards, so it is unsafe as written; audit mode is the interim safe state pending convergence.
Tracked fleet-wide in hyperpolymath/gitbot-fleet#310 (convergence onto the engine + estate-wide rollout: 166/248 repos still run the guardless sed). Commits signed.