Skip to content

[codex] Make watchlist skill runtime py-free#24

Merged
dd3ok merged 2 commits into
mainfrom
codex/watchlist-py-free-runtime
Jun 14, 2026
Merged

[codex] Make watchlist skill runtime py-free#24
dd3ok merged 2 commits into
mainfrom
codex/watchlist-py-free-runtime

Conversation

@dd3ok

@dd3ok dd3ok commented Jun 13, 2026

Copy link
Copy Markdown
Owner

Summary

  • Move the WATCHLIST validator out of the installable skill bundle to tools/validate_watchlist.py.
  • Move maintainer self-check prompts out of the runtime bundle to docs/maintainers/self-checks.md.
  • Keep runtime guidance py-free and hot-path focused: SKILL.md keeps trigger, storage, add/review, safety, and validation decisions while delegating field/status details to references.
  • Clarify storage disambiguation so agents ask only when both root and private WATCHLIST files exist and scope remains unclear.
  • Harden package/test guards for .py, .pyw, .pyc, .pyo, case variants, repository-only docs/, wrapper SystemExit, and self-check exclusion.

Runtime size

  • .agents/skills/watchlist-md/SKILL.md: 5,483 bytes -> 4,416 bytes
  • SKILL.md: 128-ish line structure -> 100 lines under the repo test measurement
  • Installable skill bundle: no .py, .pyw, .pyc, .pyo, scripts/, __pycache__, tooling references, or self-checks.md matches

Validation

  • PYTHONDONTWRITEBYTECODE=1 python -m unittest discover -s evals -p 'test_*.py' - 92 tests passed
  • python evals/check_watchlist.py examples/WATCHLIST.example.md --strict-format --strict-safety --require-archive-section
  • python evals/check_watchlist.py .agents/skills/watchlist-md/assets/WATCHLIST.template.md --strict-format --strict-safety --require-archive-section
  • python tools/validate_watchlist.py examples/WATCHLIST.example.md --strict-format --strict-safety --require-archive-section
  • python tools/validate_watchlist.py .agents/skills/watchlist-md/assets/WATCHLIST.template.md --strict-format --strict-safety --require-archive-section
  • python evals/check_release_metadata.py
  • python evals/check_policy_markers.py
  • python evals/check_semantic_cases.py
  • python evals/check_skill_package.py
  • runtime bundle scan: NO_RUNTIME_PYTHON_OR_TOOLING_MATCHES

Review follow-up

  • Addressed SystemExit wrapper handling.
  • Added .pyw, .pyc, .pyo, uppercase suffix, uppercase SCRIPTS/, uppercase TOOLS/, and docs/ package guards.
  • Extended tests for Python-family artifacts, case-variant artifacts, repository-only docs, wrapper return behavior, runtime bundle contents, and the stricter 100-line SKILL.md cap.
  • Made references/format.md runtime-neutral by removing direct tools/validate_watchlist.py guidance.
  • Tightened the final storage wording nit and added updating to the skill trigger description.
  • Ran multiple subagent review passes; final gate reported no blocking issues.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request refactors the project to make the installable skill bundle entirely Python-free. It moves the WATCHLIST validator from the skill directory to the repository's maintainer tools (tools/validate_watchlist.py), introduces a new manual format reference (references/format.md), and updates documentation, tests, and packaging checks accordingly. The reviewer's feedback identifies opportunities to improve the robustness of the validator execution by handling SystemExit exceptions, and suggests extending the packaging checks and tests to explicitly forbid other Python-related extensions like .pyw.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread evals/check_watchlist.py
Comment thread evals/check_skill_package.py Outdated
Comment thread evals/test_check_watchlist.py Outdated
@dd3ok dd3ok force-pushed the codex/watchlist-py-free-runtime branch 2 times, most recently from ca80f4b to 99d2f03 Compare June 13, 2026 15:00
@dd3ok dd3ok force-pushed the codex/watchlist-py-free-runtime branch from 99d2f03 to d410c3a Compare June 14, 2026 00:56
@dd3ok dd3ok marked this pull request as ready for review June 14, 2026 06:12
@dd3ok dd3ok merged commit 74ce6ed into main Jun 14, 2026
4 checks passed
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