Repository navigation
No command or flag was added or removed since 0.5.0. This release tightens how the drain loop verifies its own work, moves three decisions out of code that needed real ESLint or tsc into pure, tested modules, and brings the plugin manifest's version, which had stayed at 0.4.0, in line with the package.
Skills
- Breaking the code to check a test has to put it back (#87, #86).
ever-better-drainstep 6 now says how to break several things safely in an unattended run: one break at a time, each an exact replacement asserted to match once; a copy of each file compared before every break and after every restore; restore from that copy, nevergit checkout; file lists in arrays in shell loops (zsh does not split an unquoted variable). When a PR added tests, it counts twice — with every test, and with only the tests that existed before it. - Run what CI runs before every push (#88, #86).
ever-better-drainstep 8 andever-better-runnow say to run the whole suite with CI's flags before pushing, and to read the diff for the platforms that cannot run locally (POSIX paths in test expectations, assumed\n, POSIX-only scripts). One rule per PR means many PRs, and each one that goes red costs a fix, a push and another review.
Internal
Each move below was proved by running the old code beside the new over generated inputs, and the generator and property were kept as a permanent test.
check's verdict is a pure module (#79).src/checkVerdict.ts: errors fail first, then counts above their ceiling, else pass. It was reachable only through real ESLint before.- The strictness-flag decision is pinned and extracted (#80). Guard tests on
freeFlags/pricedFlags, and the report moved intosrc/strictnessReport.ts. A wrong call here breaks the user'stypecheckat once, since type errors cannot be suppressed. - One counter for tsc type errors (#81).
src/typeErrorCount.tsreplaces two copies inmigrateand the strictness probe.
Dependencies
Plugin
.claude-plugin/plugin.jsonandmarketplace.jsonnow carry the package version; they had stayed at 0.4.0 through 0.4.1 and 0.5.0.
What's Changed
- ever-better@0.5.0 by @isamu in #68
- docs: ChangeLog for 0.5.0 by @isamu in #69
- chore(deps-dev): Bump the dev group with 2 updates by @dependabot[bot] in #71
- chore(deps-dev): Bump the eslint group with 2 updates by @dependabot[bot] in #70
- chore(deps-dev): Bump the eslint group with 2 updates by @dependabot[bot] in #72
- chore(deps-dev): Bump the dev group with 3 updates by @dependabot[bot] in #73
- chore(deps-dev): Bump the dev group across 1 directory with 3 updates by @dependabot[bot] in #76
- chore(deps-dev): Bump the dev group with 3 updates by @dependabot[bot] in #78
- chore(deps-dev): Bump the eslint group across 1 directory with 3 updates by @dependabot[bot] in #77
- refactor: move the check verdict into a pure checkVerdict module by @isamu in #79
- refactor: pin and extract the strictness-flag decision by @isamu in #80
- refactor: count tsc type errors in one pure module by @isamu in #81
- docs(drain): breaking the code to check a test has to put it back by @isamu in #87
- chore(deps-dev): Bump the dev group across 1 directory with 4 updates by @dependabot[bot] in #85
- chore(deps-dev): Bump the eslint group across 1 directory with 4 updates by @dependabot[bot] in #84
- docs(drain): run what CI runs before every push by @isamu in #88
Full Changelog: 0.5.0...1.0.0