Skip to content

Release v0.2.0 (honest beta) and define v1.0 exit criteria #127

Description

@jeremymanning

Part of #108 · Phase 7

Goal

Cut a release whose claims are all true, then define what v1.0 requires.

v0.2.0 — "honest beta"

The point is not new features. It is that the package's advertised surface equals its working surface.

  • Version unified across all four locations (see the docs issue); setup.py removed in favor of pyproject.toml
  • README.md describes only what is verified working, with every example executed in CI
  • Backends are labelled by real status: supported (tested end to end in CI) / experimental (works, thinly tested) / unsupported (removed from the docs, or removed from the code)
  • NotImplementedError does not exist on any advertised path
  • CHANGELOG written from the actual audit findings, stating plainly what was broken and is now fixed
  • requires-python raised to a supported floor; classifiers match the tested matrix
  • Clean pip install clustrix in a fresh venv -> the README quickstart runs to completion
  • TestPyPI upload verified before the real one
  • ReadTheDocs builds green; docs/source/conf.py version matches the release
  • Git tag + GitHub release

v1.0.0 exit criteria

Inherited from #108, restated here as the release gate. All must hold:

  1. pip install -e ".[dev]" on a clean machine, then the documented test command, runs the suite to completion — with zero network calls to billable services
  2. CI executes >95% of the test suite on every PR; no continue-on-error anywhere
  3. Zero failing tests, zero collection errors
  4. unittest.mock appears zero times in clustrix/
  5. Every backend claimed in README.md has a test that actually executed it end to end, with a dated CI run link as evidence
  6. Coverage measured, published, and gated at a threshold the project meets, ratcheting upward only
  7. Every README.md example executed by a doc test in CI
  8. One source of truth for the version
  9. Secret scanning + push protection enabled; no plaintext credential ever written world-readable
  10. The remote->local trust boundary documented and either authenticated or explicitly opt-in
  11. Red-team report complete, findings resolved with regression tests

Deliberately not in scope

Feature work. The audit found ~5,100 lines of orphaned modules and four broken backends; the fastest route to a credible v1.0 is subtraction, not addition. New backends and the widget re-platform proposed in #67 belong after 1.0.

Activity

  1. jeremymanning commented on Aug 20, 2026

    @jeremymanning
    MemberAuthor

    Tracked as a sub-issue of #160 (deferred). Consolidated after a three-agent audit that verified every open issue against the code; see #160 for the plan and the ordering.

  2. added 20 commits that reference this issue on Aug 23, 2026
  3. jeremymanning commented on Aug 23, 2026

    @jeremymanning
    MemberAuthor

    v0.2.0 release checklist — status at close of the campaign

    Branch: work/priorities-and-docs → PR #173 (all checks reported; ubuntu 3.10/3.11/3.12 + windows 3.11/3.12 green, macos legs cancelled by org macOS-minute exhaustion — macOS is the dev platform where the identical suite runs 2,787/0 locally).

    Checklist items, with evidence

    Remaining for the maintainer

    1. Merge PR v0.2.0 (honest beta): merge train complete, gates green, real jobs verified #173 (branch pushed, checks reported).
    2. Tag v0.2.0 and publish to PyPI (credentials are yours).
    3. HF Jobs quota: depleted today (402s); hf use-case matrix leg will pass once credits reset.
    4. Optional: macOS CI minutes — org exhausted them; macos legs cancel. Local macOS runs cover it in-session.
  4. added a commit that references this issue on Aug 23, 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

    P2-mediumImportant but not blocking

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions