Skip to content

Restructure tasks/ into common/ and tests/ subpackages - #2

Merged
LevonBecker merged 2 commits into
mainfrom
restructure-tasks-common-tests
Aug 11, 2026
Merged

Restructure tasks/ into common/ and tests/ subpackages#2
LevonBecker merged 2 commits into
mainfrom
restructure-tasks-common-tests

Conversation

@LevonBecker

Copy link
Copy Markdown
Owner

Groups the flat tasks/ directory into two subpackages, keeping every task's invocation name unchanged:

  • tasks/common/{main,debug,ruff,setup}.pymain.py replaces combos.py (same fix/test top-level aliases), debug/ruff/setup grouped alongside it.
  • tasks/tests/tasks/tests.py split into one file per check (actionlint.py, pylint.py, pytest.py, rufflint.py, yamllint.py), still registered as one flat tests.* namespace.

No CLI surface change — debug.env, ruff.fix, setup.properties, tests.*, fix, test all invoke identically to before. Every repo cloned from this template keeps working without changes.

Companion to the same restructuring in template_ai_python (which adds tasks/ai/ on top) and already applied in fireball_orchestrator (a downstream consumer).

🤖 Generated with Claude Code

LevonBecker and others added 2 commits August 11, 2026 12:56
- tasks/common/{main,debug,ruff,setup}.py -- main.py replaces combos.py
  (same fix/test top-level aliases), debug/ruff/setup grouped alongside it.
- tasks/tests/ -- tasks/tests.py split into one file per check
  (actionlint.py, pylint.py, pytest.py, rufflint.py, yamllint.py).

Both subpackages keep their tasks registered at the exact same top-level
invoke names they had before (debug.*, ruff.*, setup.*, tests.*, plus bare
fix/test) -- this is a file-layout change only, not a CLI surface change, so
every repo cloned from this template keeps working identically. Matches the
same restructuring just done in fireball_orchestrator (a downstream
consumer of this template), minus everything project-specific that lives in
template_ai_python or further downstream instead.

README.md's Project Structure section updated to match.

Generated with Claude Code

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…test

- tests/setup/test_setup_properties.py, tests/style/test_markdown_style.py --
  moved from a flat tests/ directory into one subfolder per concern, each
  with pytestmark = pytest.mark.<name> and an __init__.py.
- pyproject.toml gained a markers list (setup, style) matching the folders.
- tasks/tests/pytest.py gained a scope= param -- `invoke tests.pytest
  scope=setup` (or scope="not style") runs a marker-filtered subset instead
  of the whole suite.

Same shape fireball_orchestrator's own tests/ already uses (one
marker-named subfolder per concern, scope= for filtering).

Generated with Claude Code

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@LevonBecker

Copy link
Copy Markdown
Owner Author

Companion PR: LevonBecker/template_ai_python#19 (adds tasks/ai/ on top of this)

@LevonBecker
LevonBecker merged commit 188193a into main Aug 11, 2026
9 of 10 checks passed
@LevonBecker
LevonBecker deleted the restructure-tasks-common-tests branch August 11, 2026 20:18
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