Skip to content

v0.7.4 — Round-level evidence + CI hard-gate + pkg version bump

Choose a tag to compare

@zsxh1990 zsxh1990 released this 05 Jul 04:46

What's in v0.7.4

Round-level evidence fills the deeper schema layer

v0.7.0 / v0.7.1 / v0.7.3 already documented the optional
delta.verified_at / delta.evidence_urls / delta.confidence
fields at the round level. v0.7.4 fills them in for every PR Case
Study's round 1 (open action), sourced from GitHub API via the
refresh-evidence.py cache:

- round: 1
  action: open
  delta:
    kind: code_change
    value: "+283 / -0 / 3 files"
    verified_at: "2026-06-12T01:44:47Z"     # ← new
    evidence_urls:                          # ← new
      - https://github.com/.../pull/801/files
      - https://github.com/.../pull/801
      - https://api.github.com/.../pulls/801/commits
    confidence: high                        # ← new

archive/scripts/inject-round-evidence.py makes this re-runnable
when new round-1 evidence needs to be added or refreshed.

CI becomes a hard gate, not a soft warning

.github/workflows/validate.yml now has:

- name: Run validator (enforce evidence — hard gate)
  run: python3 validate.py --enforce-evidence

With no || echo "::warning::" fallback. Future PRs that
add a Case Study without case-level verified_at /
evidence_urls will fail the build red, not just warn.

Distribution version bump

prgenius package internal version:

  • pyproject.toml: 0.1.00.7.3
  • src/prgenius/__init__.py: __version__ = "0.7.3"

python3 -m prgenius --version now reports prgenius 0.7.3. This
aligns internal version with the externally observed release
trajectory since v0.6.0.

README badges

  • Latest release shield linking to releases page
  • Evidence 100% shield pinned on the README (only flips if any
    case study loses case-level evidence)

.gitignore tightening

  • /data directory (output of validate.py --snapshot) now
    reliably excluded; trailing-newline + leading-slash form to
    ensure git's index refresh correctly ignores it.

Stats

  • 12 profiles / 12 case studies / 11 lessons / 5 anti-patterns
  • validate.py --strict: 0 errors
  • validate.py --enforce-evidence: 0 warnings ✅
  • All 11 case studies with round-1 evidence populated