Skip to content

Repo hygiene: CI triggers, coverage, Dependabot, templates, changelog#1

Merged
wiyth00 merged 1 commit into
mainfrom
chore/repo-hygiene
Jul 25, 2026
Merged

Repo hygiene: CI triggers, coverage, Dependabot, templates, changelog#1
wiyth00 merged 1 commit into
mainfrom
chore/repo-hygiene

Conversation

@wiyth00

@wiyth00 wiyth00 commented Jul 25, 2026

Copy link
Copy Markdown
Owner

Summary

Housekeeping only. No changes to package code, so computed results are unaffected.

Changed

.github/workflows/ci.yml

  • on: push was unfiltered, so every push to a PR branch triggered both the push and pull_request workflows — two full runs of a 30-minute-budget job for one change. The push trigger is now scoped to main.
  • Added a concurrency group with cancel-in-progress: true so stacked pushes supersede rather than queue.
  • pytest-cov was already declared in [project.optional-dependencies].dev and installed by uv sync --all-extras, but pytest was invoked without it. Now runs with --cov=chained_eclipse --cov-report=term-missing.

The Linux LD_LIBRARY_PATH shim for REBOUNDx is left exactly as-is.

Added

  • .github/dependabot.yml — weekly checks for github-actions and uv. The setup-uv pin in ca200f3 was done by hand; this automates that going forward. Python deps are grouped into a single PR to avoid noise.
  • .github/PULL_REQUEST_TEMPLATE.md — includes a "scientific impact" section to force an explicit call on whether a change moves numerical results.
  • .github/ISSUE_TEMPLATE/bug_report.md and feature_request.md — the bug template asks for MODEL_VERSION and the ephemeris kernel, which are the two things needed to reproduce a numerical discrepancy.
  • CHANGELOG.md — seeded with 0.1.0 and an Unreleased section.

Not done here (deliberately)

These were identified but left out because they touch package code or are judgement calls:

  1. Version is defined in three placespyproject.toml, CITATION.cff, and constants.MODEL_VERSION all independently say 0.1.0. Worth single-sourcing via importlib.metadata, plus a test asserting CITATION.cff agrees. Skipped because MODEL_VERSION may be embedded in output metadata and the semantics deserve a deliberate decision.
  2. requirements.txt contains -e .[dev] while CI uses uv sync --no-editable against the committed uv.lock — two competing install paths. Probably delete it and document uv sync --all-extras.
  3. ruff format --check is not enforced in CI. Adding it requires running ruff format . across the tree first, which would bury this diff.
  4. No v0.1.0 tag or release exists, but CITATION.cff claims date-released: 2026-07-13 and both the README and .gitignore refer to results being published as Release assets. The changelog's compare links assume that tag, so they will 404 until it is created.
  5. run_search.py duplicates the chained-eclipse console script.
  6. chained-eclipse-eclipse4-atlanta and chained-eclipse-total-tracks-2027 are one-off analyses installed onto users' PATH; they may fit better as examples/.

Checklist

  • No change to computed results
  • pytest passes locally — not run; CI on this PR is the first check

- Restrict push trigger to main and add a concurrency guard so PR
  branches no longer run CI twice with stacked runs piling up.
- Enable pytest-cov, which was already a dev dependency but never used.
- Add Dependabot for github-actions and uv so action pins stay current.
- Add issue/PR templates and a CHANGELOG to round out the existing
  CONTRIBUTING/CODE_OF_CONDUCT/SECURITY docs.
@wiyth00
wiyth00 merged commit b12bfa7 into main Jul 25, 2026
2 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