Skip to content

v0.1.1: fix external review findings (SL-010)#7

Merged
anrasi merged 1 commit into
mainfrom
feat/v0.1.1-review-fixes
Jun 22, 2026
Merged

v0.1.1: fix external review findings (SL-010)#7
anrasi merged 1 commit into
mainfrom
feat/v0.1.1-review-fixes

Conversation

@anrasi

@anrasi anrasi commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Fixes the valid findings from the 2026-06-19 external review, each with regression tests (33 total; green with PyYAML and the stdlib fallback CI uses).

# Finding Fix
2 Windows paths OS-agnostic part checks (_norm_parts)
3 topic-tags 'skipped' but failed unconfigured → SKIPPED (green); configured-but-missing → hard error
4 minimal frontmatter parser optional PyYAML (auto) + documented stdlib subset
5 llm-ci-cost heuristic comment-strip + structural concurrency/on.pull_request via PyYAML
6 propose_bands ignored percentiles split into canonical_bands() + data-driven observed_bands(p)
7 percentiles extrapolate on small N inclusive method + clamp + n==1 + small-sample warning

#1 (counter date-slug) was already fixed in v0.1.0 (the review ran the pre-fix snapshot). CI self-run upgraded to --checks all.

Addresses the 2026-06-19 external review. Each fix ships with regression tests
(33 total; green with PyYAML and with the stdlib fallback CI uses).

validators.py:
- #2 Windows/Linux path portability: OS-agnostic part checks (_norm_parts) for
  frozen-dir skip, the .git skip, and .github/workflows detection (was '/'-only
  substring matching → broke on Windows os.walk '\\').
- #3 topic-tags semantics: unconfigured --topic-taxonomy now SKIPPED (green),
  configured-but-missing is a clear hard error (was a confusing "skipped" that
  failed the build).
- #4 frontmatter parser: uses PyYAML automatically when installed (robust:
  block scalars, nested, comments); documented stdlib subset + inline-comment
  handling as fallback. No dependency required.
- #5 llm-ci-cost: strips YAML comments before the endpoint heuristic (no more
  false-positive on comments/docs); structural concurrency + on.pull_request
  checks via PyYAML when available (handles the on:->True YAML quirk); custom
  endpoint/proxy limitation documented.

calibrate.py:
- #6 propose_bands ignored its percentile inputs and returned fixed bands →
  split into canonical_bands() (fixed reference) + observed_bands(p) (genuinely
  data-driven from p25/p50/p75/p90); output now prints both, honestly labeled.
- #7 percentiles used exclusive method (extrapolated past observed max on small
  samples) → inclusive + clamp to [min,max] + n==1 handling + small-sample
  (<8) advisory warning.

#1 (counter-atomicity date-slug false-positive) was already fixed in v0.1.0
(toolkit#4) — the review ran the pre-fix 2026-06-19 snapshot.

CI self-run upgraded to --checks all (topic-tags SKIPs cleanly now). New
tests/test_calibrate.py adds the first calibration tests.

Per DR-2026-06-19 (gates + tests for every fix). SL-010.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@anrasi anrasi merged commit 31eae8c into main Jun 22, 2026
1 check passed
@anrasi anrasi deleted the feat/v0.1.1-review-fixes branch June 22, 2026 23:53
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