Set up CI/CD #1

Closed
opened 2026-08-03 04:10:10 +00:00 by scheerenkevin · 1 comment
scheerenkevin commented 2026-08-03 04:10:10 +00:00 (Migrated from github.com)

Why

Mandatory first implemented issue for this repo per project process standard. No other work proceeds until this is merged.

Scope

Add a GitHub Actions workflow (.github/workflows/ci.yml and/or a separate release workflow) that:

  • On every PR (into develop or main): runs lint (ruff check), format-check (ruff format --check), and tests (pytest) via hatch run.
  • On merge to develop: runs a "dev build" job — builds the package (hatch build) to validate packaging, no publish.
  • On merge to main: runs a "release" job — cuts a SemVer git tag and updates CHANGELOG.md (Keep a Changelog format).

Acceptance criteria

  • .github/workflows/*.yml covering PR checks, dev build on develop, release on main
  • Workflow references hatch run lint / hatch run format / hatch run test (requires minimal pyproject.toml with Hatch envs — may be added in this same PR since CI can't run without something to lint/test against)
  • CHANGELOG.md scaffold added (Keep a Changelog format, [Unreleased] section)
  • Release job tags SemVer versions and appends to CHANGELOG.md
  • README badge or note documenting CI status (optional, nice-to-have)

Notes

This is the foundational issue — implemented in its own feature/* branch, PR into develop, before any other scaffolding work.

## Why Mandatory first implemented issue for this repo per project process standard. No other work proceeds until this is merged. ## Scope Add a GitHub Actions workflow (`.github/workflows/ci.yml` and/or a separate release workflow) that: - **On every PR** (into `develop` or `main`): runs lint (`ruff check`), format-check (`ruff format --check`), and tests (`pytest`) via `hatch run`. - **On merge to `develop`**: runs a "dev build" job — builds the package (`hatch build`) to validate packaging, no publish. - **On merge to `main`**: runs a "release" job — cuts a SemVer git tag and updates `CHANGELOG.md` (Keep a Changelog format). ## Acceptance criteria - [ ] `.github/workflows/*.yml` covering PR checks, dev build on `develop`, release on `main` - [ ] Workflow references `hatch run lint` / `hatch run format` / `hatch run test` (requires minimal `pyproject.toml` with Hatch envs — may be added in this same PR since CI can't run without something to lint/test against) - [ ] `CHANGELOG.md` scaffold added (Keep a Changelog format, `[Unreleased]` section) - [ ] Release job tags SemVer versions and appends to `CHANGELOG.md` - [ ] README badge or note documenting CI status (optional, nice-to-have) ## Notes This is the foundational issue — implemented in its own `feature/*` branch, PR into `develop`, before any other scaffolding work.
scheerenkevin commented 2026-08-03 04:16:16 +00:00 (Migrated from github.com)

Merged into develop via #11.

Merged into develop via #11.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kevin/alchemy-wallet-client#1
No description provided.