@sriinnu/omit 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +22 -0
  2. package/package.json +5 -2
package/README.md CHANGED
@@ -223,6 +223,28 @@ skills/omit/SKILL.md → .claude/skills/omit/SKILL.md (project)
223
223
  - `/omit [margin|redline|rewrite|off]`: switch or show the current mode
224
224
  - `/omit-edit`: run an editor's pass over the current diff: flag bloat, uncited claims, missing footnotes, and cut opportunities
225
225
 
226
+ ## Releasing
227
+
228
+ One command, three destinations (npm, GitHub, Homebrew):
229
+
230
+ npm run release -- patch # or minor / major
231
+
232
+ `scripts/release.mjs` runs the tests (via `preversion`), bumps and tags with
233
+ `npm version` (signed, per repo policy), and pushes — the tag triggers
234
+ `publish.yml`, which publishes to npm **with a provenance attestation**. It
235
+ then cuts the GitHub release with generated notes, waits for the registry to
236
+ serve the version, and updates the `omit` formula in
237
+ [`sriinnu/homebrew-tap`](https://github.com/sriinnu/homebrew-tap). A failed
238
+ step aborts the release, in order.
239
+
240
+ Never `npm publish` by hand: a local publish cannot attach provenance, and
241
+ npm will not let the same version be republished to add one later. If the CI
242
+ publish fails, fix CI — don't work around it locally.
243
+
244
+ If the `NPM_TOKEN` secret ever goes stale, put the new token in `~/.npmrc`
245
+ and run `npm run token:sync` — it verifies the token against the registry
246
+ before pushing, so a dead token never reaches CI.
247
+
226
248
  ## Prior art
227
249
 
228
250
  The minimalism-pressure idea was popularized by [ponytail](https://github.com/DietrichGebert/ponytail), which deserves its stars. `omit` differs where it matters: shortcuts require citations, the diff is edited *after* it works, safety lines are enumerated and never cut, and what's left out is footnoted instead of silent.
package/package.json CHANGED
@@ -1,13 +1,16 @@
1
1
  {
2
2
  "name": "@sriinnu/omit",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "Omit needless code. Editorial discipline for AI coding agents: draft less, cite everything, cut last: enforced by hooks, a pre-commit gate, and a PR bot, whatever agent writes the code.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "omit": "bin/omit.mjs"
8
8
  },
9
9
  "scripts": {
10
- "test": "node --test"
10
+ "test": "node --test",
11
+ "preversion": "npm test",
12
+ "release": "node scripts/release.mjs",
13
+ "token:sync": "node scripts/sync-token.mjs"
11
14
  },
12
15
  "files": [
13
16
  "bin",