Skip to content

CI: washr API drift check and a recorded compatibility floor #77

Description

@larnsce

Problem

Every washr call the skills and docs make is checked against washr by hand, when someone remembers, or when washr's release checklist remembers to notify this repository (washr #78 had that item; fill_dictionary() going internal in 1.1.0 was found by reading, not by a check). The washr floor (1.1.0 since v1.5.0) lives only inside two SKILL.md preflight lines.

Proposal

  1. .github/workflows/washr-drift.yaml, weekly and on push: install washr from CRAN, extract every washr::name from skills/, docs/, and README.md, and fail when a name is not in getNamespaceExports("washr"), listing the offenders and the files. Also compare the CRAN version with the recorded floor and print both, so a new washr release shows up in the next run.
  2. Record the floor once: a WASHR_FLOOR file next to VERSION (or a line in VERSION's directory) that the two preflights and the workflow read, and a compatibility table in the README (pkgreview version, washr floor).

Tasks

  • Workflow and the floor file; preflights read the file instead of a literal
  • README compatibility table (1.0.0 to 1.4.0: washr 1.0.1 with caveats; 1.5.0: washr >= 1.1.0)

Acceptance

  • Renaming a washr export on CRAN turns the weekly run red within a week with the file and line named
  • Bumping the floor is one file change

Objection window

Until 2026-09-20. Without an objection recorded here by then, the proposal stands and is implemented in the next skills release; an objection turns this into a decision issue with options.

Related: #66, washr #82.

Activity

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 request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions