Skip to content

feat(disk-hygiene): hand clean the guard interpreter and data root up front (#4215) - #4632

Merged
cursor[bot] merged 2 commits into
mainfrom
cursor/4215-disk-hygiene-expansion-context-37e9
Sep 27, 2026
Merged

cursor[bot] merged 2 commits into
mainfrom
cursor/4215-disk-hygiene-expansion-context-37e9

Conversation

@kyle-sexton

@kyle-sexton kyle-sexton commented Sep 27, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Hand /disk-hygiene:clean the guard interpreter and data root up front; mark new engine_context Python scripts 100755 for the exec-bit gate.

Test plan

  • git ls-files -s shows 100755 on shebang'd scripts
  • CI green on head

Refs #4215

Open in Web Open in Cursor 

…and data root up front

A UserPromptExpansion hook runs engine_context.py through the same
launcher and --plugin-root argument as the skill guard and injects the
guard's absolute Python and authorized --data-root as context, so a run
no longer opens with a deliberately denied scan. The denial route stays
as the fallback.

Closes #4215

Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
@cursor
cursor Bot marked this pull request as ready for review September 27, 2026 20:34
@cursor
cursor Bot enabled auto-merge (squash) September 27, 2026 20:34
@github-actions

github-actions Bot commented Sep 27, 2026 •

Copy link
Copy Markdown
Contributor

PR body contract — issue linkage

This PR body does not yet satisfy the issue-linkage contract:

  • Missing a "## Fix" section. State the concrete change and how it addresses the problem.
  • Missing a "## Verification" section. Record concrete evidence the change works (commands, gates, output).
  • Missing a "## Related" section. List related PRs, ADRs, or decision-log entries this PR does not close.
  • Missing a native closing keyword (Closes/Fixes/Resolves #N). If this PR references an issue it must not close, put "Refs: #N" (or "Relates to: #N") on its own line. If it relates to no GitHub issue at all, state "No linked issue" (or "No related issue:") in the body instead.

Edit the body and this comment updates itself on the next run.

Shebang'd Python entrypoints and their test drivers must be 100755 so the
exec-bit hygiene gate matches the rest of plugins/disk-hygiene/skills/*/scripts.

Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
@cursor
cursor Bot merged commit 8c3f6fd into main Sep 27, 2026
22 checks passed
@cursor
cursor Bot deleted the cursor/4215-disk-hygiene-expansion-context-37e9 branch September 27, 2026 20:47
kyle-sexton added a commit that referenced this pull request Sep 30, 2026
…guard values (#5508)

Closes #4215

## Summary

The owner decision on #4215 (2026-09-29) chose option A: keep the
UserPromptExpansion hook that injects `hook_python` and `data_root`, and
accept the one denied probe in the no-hook path. This PR applies that
decision to the skill wording.

## Fix

- `plugins/disk-hygiene/skills/clean/SKILL.md`: one primary source (the
`disk-hygiene guard values` note) and one fallback (bare-python probe
denied once, then the probe's `data_root` field).
- `plugins/disk-hygiene/skills/clean/reference/safety-model.md`: records
that the hook is the chosen delivery path and the denied probe in the
no-hook path is an accepted residual.
- disk-hygiene 0.28.19 -> 0.28.20 with a CHANGELOG entry.

## Verification

- `scripts/check-changelog-parity.sh --check --check-order`: passes.
- `scripts/validate-plugins.sh`: all manifests and the catalog
validated.
- `python3 -m unittest discover -s skills/clean/scripts -p 'test_*.py'`
in `plugins/disk-hygiene`: 546 tests OK.

## Related

#4632 (hook), #4726 (probe fields), #5336 (untouched by this change).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants