Skip to content

ENGINE_DECISION_GUARDRAIL_GLOBS still protects the pre-migration src/ shim paths, not the real packages/loopover-engine files where the guardrail logic now lives #8012

Description

@JSONbored

Problem

ENGINE_DECISION_GUARDRAIL_GLOBS (packages/loopover-engine/src/review/guardrail-config.ts, lines 24-45) exists so a contributor PR touching a safety-decision file is forced to manual review — never auto-merged or auto-closed (ported "verbatim from reviewbot core/change-classifier.ts" specifically to prevent the "awesome-claude #4196 incident class"). It lists exact paths including "src/settings/autonomy.ts" and "src/review/guardrail-config.ts".

Both of those listed paths are now confirmed 5-line re-export shims (export * from "../../packages/loopover-engine/src/...", per the #6203 migration) — the real, substantive logic lives at packages/loopover-engine/src/settings/autonomy.ts and at packages/loopover-engine/src/review/guardrail-config.ts itself (this very file). Neither real path appears anywhere in the guardrail list (verified via full-repo grep — no other list covers packages/loopover-engine/src/**).

Concretely: a PR that edits the autonomy deny-by-default dial, or edits ENGINE_DECISION_GUARDRAIL_GLOBS/DEFAULT_HARD_GUARDRAIL_GLOBS itself to quietly remove entries, touches only the real engine-package file and never touches the 5-line shim — so it never trips the guardrail hold it should.

Every other exact-file entry in this same list (agent-actions.ts, pr-actions.ts, app.ts, backfill.ts, safety.ts, cutover-gate.ts, linked-issue-hard-rules.ts, outcomes-wire.ts, etc.) was checked and confirmed to still be a real, substantial file (not a shim) — this is an isolated gap from the #6203 migration, not a symptom that every entry needs updating.

Area

packages/loopover-engine/src/review/guardrail-config.ts (ENGINE_DECISION_GUARDRAIL_GLOBS).

Proposal

Add the real post-migration paths (packages/loopover-engine/src/settings/autonomy.ts, packages/loopover-engine/src/review/guardrail-config.ts) to the guardrail glob list, so edits to the real safety-decision logic — not just the shim — trip the manual-review hold. Consider whether other #6203-migrated files might need the same treatment as a follow-up audit, but this issue is scoped to the two confirmed-missing paths.

Deliverables

  • ENGINE_DECISION_GUARDRAIL_GLOBS includes the real packages/loopover-engine/src/settings/autonomy.ts and packages/loopover-engine/src/review/guardrail-config.ts paths.
  • A test confirming a PR touching either real path is classified as guardrail-protected (mirroring however the existing entries are tested).

Resources

Boundaries

Scoped to the two confirmed-missing paths only — not a full re-audit of every #6203-migrated file's guardrail coverage.

maintainer-only — this is an edit to the auto-merge safety guardrail list itself, the exact class of change #4196's incident showed needs review, not a first-pass contributor task even though the fix is small.

Metadata

Metadata

Assignees

Labels

maintainer-onlyOwner-only work — yields no Gittensor points.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions