@taraxvoid/voidflow 0.15.1 → 0.16.0

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 +36 -3
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -165,6 +165,38 @@ jobs:
165
165
 
166
166
  The required status check is `validate / Validate`.
167
167
 
168
+ ## Code scanning (SARIF)
169
+
170
+ `site-ci.yml` and `tool-ci.yml` write gitleaks and zizmor results as SARIF
171
+ and keep them as the `voidflow-sarif` artifact (7 days). gitleaks still fails
172
+ the job on a finding; the zizmor SARIF run scans every workflow and never
173
+ fails the job (the zizmor gate in `tool-ci.yml` is unchanged). Both steps run
174
+ after a failure too, so the findings that failed a run are the ones uploaded.
175
+
176
+ `upload-sarif.yml` sends them to code scanning, which is what voidlight
177
+ counts. It is a separate workflow because it needs `security-events: write`,
178
+ and a reusable workflow can't ask for more than its caller grants: adding it to
179
+ the validate workflows would break every caller that doesn't. Add a second job:
180
+
181
+ ```yaml
182
+ jobs:
183
+ validate:
184
+ uses: taraxvoid/voidflow/.github/workflows/site-ci.yml@<sha> # vX.Y.Z
185
+ sarif:
186
+ needs: validate
187
+ if: ${{ !cancelled() && needs.validate.result != 'skipped' }}
188
+ permissions:
189
+ contents: read
190
+ actions: read
191
+ security-events: write
192
+ uses: taraxvoid/voidflow/.github/workflows/upload-sarif.yml@<sha> # vX.Y.Z
193
+ ```
194
+
195
+ Each tool uploads under its own category (`gitleaks`, `zizmor`), so a later
196
+ run closes only that tool's fixed alerts. gitleaks SARIF is redacted.
197
+ Code scanning is free on public repositories; private ones need GitHub Code
198
+ Security, without which the upload step fails.
199
+
168
200
  ## Deploys
169
201
 
170
202
  `resolve-env.yml` maps the branch to an environment: `main` to `dev`, `next`
@@ -195,7 +227,9 @@ jobs:
195
227
 
196
228
  - `actions/cloudflare-deploy`: `wrangler deploy` for the environment, with an
197
229
  optional D1 migration first (`migrate-d1`). Other inputs:
198
- `cloudflare-account-id`, `working-directory`, `command`.
230
+ `cloudflare-account-id`, `working-directory`, `command`, and
231
+ `token-fallback` (warns on every deploy while the repo's token uses the
232
+ account-wide fallback, see [`CONTRIBUTING.md`](CONTRIBUTING.md)).
199
233
  - `actions/netlify-deploy`: `prod` is a production deploy, `dev`/`staging` are
200
234
  alias deploys. Inputs: `env`, `publish-dir`, `netlify-auth-token`,
201
235
  `netlify-site-id`, `working-directory`, `github-token`. Turn off Netlify's
@@ -343,8 +377,7 @@ Upgrading from `lefthook/site.yml` (v0.13 and earlier): change `configs` to
343
377
  ## Used by
344
378
 
345
379
  [taraxvoid.net](https://taraxvoid.net), [Queer Omaha](https://queeromaha.net),
346
- [Synth Omaha](https://synthomaha.net), [Soundry](https://soundryomaha.org),
347
- [ravenflight.io](https://ravenflight.io).
380
+ [Synth Omaha](https://synthomaha.net), [Soundry](https://soundryomaha.org).
348
381
 
349
382
  Optional badge for your README (follows light/dark mode):
350
383
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taraxvoid/voidflow",
3
- "version": "0.15.1",
3
+ "version": "0.16.0",
4
4
  "description": "Enter a flow state of security, stability, and developer ergonomics - batteries-included Biome, vitest, Astro, local hooks, CI and deployments on Netlify and Cloudflare support with GitHub rulesets, branch environments, releases and security checks.",
5
5
  "license": "MIT",
6
6
  "keywords": [