Skip to content

Decide Whether checks/ and scripts/ Converge on the Hub's One Tooling Directory #538

Closed

Description

@ptr727

Summary

Blog keeps its Python tooling in two directories: checks/ holds the gates and the browser trial, and scripts/ holds the media and text utilities. Both are declared in the validator's python-directories input. The hub keeps all of its tooling in one scripts/ directory, with its tests in tests/. Decide whether Blog converges on the hub's layout or keeps the split, and record why.

The file-name rule in the hub's CODESTYLE.md, "Script and Utility File Names", puts directories out of scope, so no carried rule settles this. The maintainer asked that the decision rest on conformance, or on divergence with a stated reason, and that "it is different today" not count as a reason.

Inputs to the decision

  • What a merge touches. deploy/make-release.sh, the workflows and their python-directories input, .vscode/tasks.json, the CI validate hook, OPERATIONS.md, deploy/README.md, checks/README.md, and every cross-directory load, such as a scripts/ utility loading a checks/ gate.
  • What the split holds apart. checks/ is standard library only, and scripts/ installs Pillow and pytest from its requirements.txt. These are the two Python profiles, lint-only and build, so a merge also has to settle which profile the merged directory takes.
  • The hub's view. The hub session on this machine was asked for its opinion on conformance against divergence, and its answer is recorded here as a comment.

Done

A comment here records the decision and its reason. Where it converges, the move lands as its own pull request, and the decision is then closed.

🤖 Generated with Claude Code

Activity

  1. added
    enhancementNew feature or request
    pythonPull requests that update python code
    on Oct 26, 2026
  2. ptr727 commented on Oct 26, 2026

    @ptr727
    OwnerAuthor

    The hub session's view, read from hub main at 1b5b6772: keep the split. A Python profile belongs to a declared directory, and the trait that decides it is whether the Python has third-party runtime dependencies or is the deliverable. checks/ is standard library only, so it is lint-only. scripts/ imports Pillow at runtime, so it is build. A split by profile is a legitimate shape. A split by purpose alone, such as two stdlib-only directories, would not be. Purpose is carried by the file name instead, with the _gate or _lint suffix.

    A merged directory would have to take the build profile, which puts every stdlib gate behind the Pillow install. That cost is the argument against merging, and it is a reason rather than "it is different today".

    The hub's text does not state this yet, which is filed as ptr727/ProjectTemplate#3492.

    Recommendation: keep checks/ and scripts/, and close this issue on that reason once the maintainer agrees.

  3. added
    decisionA question waiting on the maintainer, alone or beside whatever else the issue carries
    on Oct 26, 2026
  4. ptr727 commented on Oct 26, 2026

    @ptr727
    OwnerAuthor

    Decided by the maintainer on 2026-10-26: keep checks/ and scripts/. The two differ by Python profile, stdlib-only lint-only against a Pillow build, which is the trait the hub uses to define a profile, and merging them would make every stdlib gate wait on the Pillow install. ptr727/ProjectTemplate#3492 tracks the hub stating this rule.

  5. removed
    decisionA question waiting on the maintainer, alone or beside whatever else the issue carries
    on Oct 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestpythonPull requests that update python code

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions