pqcheck 0.12.0 → 0.13.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.
- package/README.md +4 -4
- package/bin/pqcheck.js +33 -30
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -254,7 +254,7 @@ This CLI is one of four ways to consume the [Decryption Blast Radius API](https:
|
|
|
254
254
|
|---|---|
|
|
255
255
|
| **CLI** (this package) | `npx pqcheck` |
|
|
256
256
|
| **Browser extension** | Chrome Web Store / Firefox AMO / Edge — toolbar badge per tab + dependency analysis |
|
|
257
|
-
| **GitHub Action** | [`
|
|
257
|
+
| **GitHub Action** | [`cipherwakelabs/pqcheck/action@main`](https://github.com/cipherwakelabs/pqcheck/tree/main/action) — PR comments, SARIF upload, lockfile generation |
|
|
258
258
|
| **Slack `/pqcheck`** | [Install on workspace](https://cipherwake.io/install-slack) |
|
|
259
259
|
| **Web** | [cipherwake.io](https://cipherwake.io) — share-friendly URLs at `/r/<domain>` |
|
|
260
260
|
|
|
@@ -298,10 +298,10 @@ The CLI follows the same policy — output formats are stable across minor versi
|
|
|
298
298
|
run: npx pqcheck@latest mycompany.com --threshold 7
|
|
299
299
|
```
|
|
300
300
|
|
|
301
|
-
For richer integration (sticky PR comments, SARIF upload to Code Scanning, lockfile diff on regression), use the [GitHub Action](https://github.com/
|
|
301
|
+
For richer integration (sticky PR comments, SARIF upload to Code Scanning, lockfile diff on regression), use the [GitHub Action](https://github.com/cipherwakelabs/pqcheck/tree/main/action):
|
|
302
302
|
|
|
303
303
|
```yaml
|
|
304
|
-
- uses:
|
|
304
|
+
- uses: cipherwakelabs/pqcheck/action@main
|
|
305
305
|
with:
|
|
306
306
|
domain: mycompany.com
|
|
307
307
|
threshold: '7'
|
|
@@ -322,7 +322,7 @@ MIT. © 2026 Cipherwake.
|
|
|
322
322
|
|
|
323
323
|
---
|
|
324
324
|
|
|
325
|
-
**Source:** [github.com/
|
|
325
|
+
**Source:** [github.com/cipherwakelabs/pqcheck](https://github.com/cipherwakelabs/pqcheck)
|
|
326
326
|
|
|
327
327
|
**Changelog:** [CHANGELOG.md](./CHANGELOG.md) for version-by-version release notes.
|
|
328
328
|
|
package/bin/pqcheck.js
CHANGED
|
@@ -2715,6 +2715,7 @@ on:
|
|
|
2715
2715
|
|
|
2716
2716
|
permissions:
|
|
2717
2717
|
contents: read
|
|
2718
|
+
id-token: write # required for OIDC-based metering (Free=30 calls/repo/mo, no API key needed)
|
|
2718
2719
|
security-events: write # required for SARIF upload to Code Scanning
|
|
2719
2720
|
pull-requests: write # required for sticky PR comment (Action v3.1+)
|
|
2720
2721
|
|
|
@@ -2729,8 +2730,11 @@ jobs:
|
|
|
2729
2730
|
domain: ${domain}
|
|
2730
2731
|
baseline: ${baseline}
|
|
2731
2732
|
fail-on: ${failOn}
|
|
2732
|
-
env
|
|
2733
|
-
|
|
2733
|
+
# No env/secrets needed for Free tier — the action uses the
|
|
2734
|
+
# workflow's id-token: write permission to fetch a GitHub-signed
|
|
2735
|
+
# OIDC token and meters per repo (30 calls/mo, no setup).
|
|
2736
|
+
# If you want higher limits, link this repo to a paid Cipherwake
|
|
2737
|
+
# account at https://cipherwake.io/account → Linked repos.
|
|
2734
2738
|
`;
|
|
2735
2739
|
}
|
|
2736
2740
|
|
|
@@ -3300,33 +3304,19 @@ async function runOnboardCommand(args) {
|
|
|
3300
3304
|
}
|
|
3301
3305
|
|
|
3302
3306
|
// -------------------------------------------------------------------------
|
|
3303
|
-
//
|
|
3307
|
+
// Final next-steps (v0.13 OIDC path — no API key needed for Free tier)
|
|
3304
3308
|
// -------------------------------------------------------------------------
|
|
3305
|
-
//
|
|
3306
|
-
//
|
|
3307
|
-
//
|
|
3308
|
-
|
|
3309
|
-
|
|
3310
|
-
|
|
3311
|
-
|
|
3312
|
-
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
|
|
3316
|
-
console.log(` ${color("dim", "(opened in your browser — sign in / sign up there)")}`);
|
|
3317
|
-
} else {
|
|
3318
|
-
console.log(` ${color("dim", "(copy the URL above; --no-open suppresses this hint)")}`);
|
|
3319
|
-
}
|
|
3320
|
-
}
|
|
3321
|
-
console.log("");
|
|
3322
|
-
console.log(` ${color("dim", "2.")} ${color("bold", "Add the key as a GitHub repo secret")}`);
|
|
3323
|
-
console.log(` ${color("dim", "GitHub → Settings → Secrets and variables → Actions → New repository secret")}`);
|
|
3324
|
-
console.log(` ${color("dim", "Name: CIPHERWAKE_API_KEY Value: qpk_... (from step 1)")}`);
|
|
3325
|
-
console.log("");
|
|
3326
|
-
console.log(` ${color("dim", "3.")} ${color("bold", "Commit + push")}`);
|
|
3327
|
-
// R41 Q1.15 (locked 2026-05-16): build the git-add file list as an array
|
|
3328
|
-
// and join, so we don't print trailing-space args when --skip flags are
|
|
3329
|
-
// used. Harmless bash semantics either way; cleaner output.
|
|
3309
|
+
// Pre-v0.13 this step opened a browser to the API-key page + asked the user
|
|
3310
|
+
// to paste the key as a GitHub repo secret. With Action v3.2 + OIDC repo
|
|
3311
|
+
// metering, the scaffolded workflow has `permissions: { id-token: write }`
|
|
3312
|
+
// and the action fetches a GitHub-signed token automatically — no key, no
|
|
3313
|
+
// secret, no browser hop. Free tier is 30 calls/repo/mo, enforced server-
|
|
3314
|
+
// side via the `meter_gh_action_call` RPC against `gh_action_repo_quota`.
|
|
3315
|
+
// For higher limits, the user links this repo to a paid account at /account
|
|
3316
|
+
// (one-time OAuth) — still no API key in CI.
|
|
3317
|
+
console.log(color("bold", " ✓ Setup files written. Two steps remain:"));
|
|
3318
|
+
console.log("");
|
|
3319
|
+
console.log(` ${color("dim", "1.")} ${color("bold", "Commit + push")} (no API key, no secrets needed for the Free tier)`);
|
|
3330
3320
|
const filesToAdd = [".github/workflows/cipherwake.yml"];
|
|
3331
3321
|
if (!skipVendors) filesToAdd.push("cipherwake.vendors.json");
|
|
3332
3322
|
if (!skipChecklist) filesToAdd.push("CIPHERWAKE_CHECKLIST.md");
|
|
@@ -3334,8 +3324,21 @@ async function runOnboardCommand(args) {
|
|
|
3334
3324
|
console.log(` ${color("dim", "$")} git commit -m "ci: add Cipherwake Trust Diff gate"`);
|
|
3335
3325
|
console.log(` ${color("dim", "$")} git push`);
|
|
3336
3326
|
console.log("");
|
|
3337
|
-
console.log(` ${color("dim", "Open a PR
|
|
3338
|
-
console.log("");
|
|
3327
|
+
console.log(` ${color("dim", "2.")} ${color("bold", "Open a PR")}`);
|
|
3328
|
+
console.log(` ${color("dim", "Cipherwake will comment inline within ~60s of the workflow firing. The action uses GitHub OIDC to meter usage per repo (Free = 30 calls/mo).")}`);
|
|
3329
|
+
console.log("");
|
|
3330
|
+
// R48 (post-R47 review MAJOR #6): the /account → "Linked repos" UI is
|
|
3331
|
+
// not yet shipped (out of R47 scope). Pointing users to a nonexistent
|
|
3332
|
+
// page-hash would create a broken growth path at the moment of intent.
|
|
3333
|
+
// Route through the feedback form until the linking UI lands.
|
|
3334
|
+
console.log(` ${color("dim", "Want higher limits (1K/10K/50K Trust Diff calls/mo)?")}`);
|
|
3335
|
+
console.log(` ${color("violet", `${API_BASE}/feedback?topic=linked-repos`)}`);
|
|
3336
|
+
console.log(` ${color("dim", "Repo-linking UI is rolling out — request early access via the form.")}`);
|
|
3337
|
+
console.log("");
|
|
3338
|
+
// R41 fix #4 carried forward: --strict gates exit code on step failures.
|
|
3339
|
+
// noOpen flag is now a no-op since we don't open a browser, but we keep it
|
|
3340
|
+
// accepted for backward compat with users who already pass --no-open.
|
|
3341
|
+
void noOpen;
|
|
3339
3342
|
// R41 fix #4: --strict makes onboard exit non-zero if any step failed.
|
|
3340
3343
|
// Default (best-effort) exit 0 keeps the wizard friendly for first-time
|
|
3341
3344
|
// human setup — the visible yellow warnings tell them what to retry.
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pqcheck",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.13.0",
|
|
4
|
+
"description": "HTTPS posture scanner with Trust Diff for CI, vendor lockfile + drift alerts, cross-tenant key map, and HNDL/quantum-decryption risk scoring. Free, no signup.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"post-quantum",
|
|
7
7
|
"cryptography",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"bugs": "https://cipherwake.io",
|
|
22
22
|
"repository": {
|
|
23
23
|
"type": "git",
|
|
24
|
-
"url": "https://github.com/
|
|
24
|
+
"url": "https://github.com/cipherwakelabs/pqcheck.git",
|
|
25
25
|
"directory": "cli"
|
|
26
26
|
},
|
|
27
27
|
"license": "MIT",
|