mjolnir-qa 0.5.9 → 0.5.11
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/CHANGELOG.md +16 -0
- package/README.md +1 -1
- package/dist/cli.d.mts +1 -1
- package/dist/cli.mjs +16 -2
- package/dist/mcp/stdio.mjs +16 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -74,6 +74,22 @@ scan`. Unknown categories are a usage error (exit 10).
|
|
|
74
74
|
- help registry gained `why`, `handoff`, `install` and the new flags;
|
|
75
75
|
site/reference/cli.md documents the handoff trust model.
|
|
76
76
|
|
|
77
|
+
## [0.5.11] — 2026-09-07
|
|
78
|
+
|
|
79
|
+
### Changes since 0.5.10
|
|
80
|
+
|
|
81
|
+
- Merge pull request #45 from Sergey-Bar/eng/closeout-recommendations
|
|
82
|
+
- docs: FP-AUDIT status column settles on the second generator pass (stale module import in single-pass)
|
|
83
|
+
- docs: regenerate QA-ENV-001 + QA-PW-147 rule docs (now measured)
|
|
84
|
+
- close-out: 39 verdicts adjudicated (AI-assisted, owner-authorized) — 78/99 measured
|
|
85
|
+
|
|
86
|
+
## [0.5.10] — 2026-09-06
|
|
87
|
+
|
|
88
|
+
### Changes since 0.5.9
|
|
89
|
+
|
|
90
|
+
- Merge pull request #43 from Sergey-Bar/eng/closeout-2.4
|
|
91
|
+
- docs: close-out eligibility audit + final 2.0 certification report (five-way verification classification)
|
|
92
|
+
|
|
77
93
|
## [0.5.9] — 2026-09-06
|
|
78
94
|
|
|
79
95
|
### Changes since 0.5.8
|
package/README.md
CHANGED
|
@@ -284,7 +284,7 @@ firewall.
|
|
|
284
284
|
|
|
285
285
|
### How much of this is measured
|
|
286
286
|
|
|
287
|
-
**
|
|
287
|
+
**78 of 99 rules carry a false-positive rate measured against real OSS code** (≥ 10 hand-classified findings each; see
|
|
288
288
|
[docs/FP-AUDIT.md](docs/FP-AUDIT.md)). The other 23 ship on the author's
|
|
289
289
|
estimate. Every scan footer tells you how many of the rules that _fired_
|
|
290
290
|
are measured; `mjolnir rules --unmeasured` lists the ones that aren't;
|
package/dist/cli.d.mts
CHANGED
|
@@ -699,7 +699,7 @@ declare const runScan: typeof runScan$1, buildUniversalRules: typeof buildUniver
|
|
|
699
699
|
* `scripts/sync-sarif-version.cjs` on release and guarded by
|
|
700
700
|
* `tests/version-consistency.spec.ts` locally.
|
|
701
701
|
*/
|
|
702
|
-
declare const CLI_VERSION = "0.5.
|
|
702
|
+
declare const CLI_VERSION = "0.5.11";
|
|
703
703
|
/** A usage-error detail: the offending token, when one exists. */
|
|
704
704
|
interface UsageErrorDetail {
|
|
705
705
|
/** The unknown flag or rejected value (e.g. `--nope`, `loud`). */
|
package/dist/cli.mjs
CHANGED
|
@@ -9536,6 +9536,13 @@ const MEASURED_FP = {
|
|
|
9536
9536
|
ciLow: .0705,
|
|
9537
9537
|
ciHigh: .4519
|
|
9538
9538
|
},
|
|
9539
|
+
"QA-ENV-001": {
|
|
9540
|
+
fpRate: 1,
|
|
9541
|
+
n: 20,
|
|
9542
|
+
detectorRevision: 3,
|
|
9543
|
+
ciLow: .8389,
|
|
9544
|
+
ciHigh: 1
|
|
9545
|
+
},
|
|
9539
9546
|
"QA-JV-101": {
|
|
9540
9547
|
fpRate: 0,
|
|
9541
9548
|
n: 23,
|
|
@@ -9795,6 +9802,13 @@ const MEASURED_FP = {
|
|
|
9795
9802
|
ciLow: .0329,
|
|
9796
9803
|
ciHigh: .3434
|
|
9797
9804
|
},
|
|
9805
|
+
"QA-PW-147": {
|
|
9806
|
+
fpRate: 1,
|
|
9807
|
+
n: 20,
|
|
9808
|
+
detectorRevision: 1,
|
|
9809
|
+
ciLow: .8389,
|
|
9810
|
+
ciHigh: 1
|
|
9811
|
+
},
|
|
9798
9812
|
"QA-PY-001": {
|
|
9799
9813
|
fpRate: 0,
|
|
9800
9814
|
n: 12,
|
|
@@ -13210,7 +13224,7 @@ function renderSarif(result, repoRootUri) {
|
|
|
13210
13224
|
tool: { driver: {
|
|
13211
13225
|
name: "Mjölnir",
|
|
13212
13226
|
informationUri: "https://github.com/Sergey-Bar/Mjolnir",
|
|
13213
|
-
version: "0.5.
|
|
13227
|
+
version: "0.5.11",
|
|
13214
13228
|
rules: [...rules.values()].map((r) => {
|
|
13215
13229
|
const meta = RULES.find((x) => x.id === r.id);
|
|
13216
13230
|
return {
|
|
@@ -17635,7 +17649,7 @@ const { runScan, buildUniversalRules, fallbackWorkspace, pathMatchesGlob, isVali
|
|
|
17635
17649
|
* `scripts/sync-sarif-version.cjs` on release and guarded by
|
|
17636
17650
|
* `tests/version-consistency.spec.ts` locally.
|
|
17637
17651
|
*/
|
|
17638
|
-
const CLI_VERSION = "0.5.
|
|
17652
|
+
const CLI_VERSION = "0.5.11";
|
|
17639
17653
|
function parseArgs(argv, onError) {
|
|
17640
17654
|
const args = {
|
|
17641
17655
|
target: ".",
|
package/dist/mcp/stdio.mjs
CHANGED
|
@@ -9536,6 +9536,13 @@ const MEASURED_FP = {
|
|
|
9536
9536
|
ciLow: .0705,
|
|
9537
9537
|
ciHigh: .4519
|
|
9538
9538
|
},
|
|
9539
|
+
"QA-ENV-001": {
|
|
9540
|
+
fpRate: 1,
|
|
9541
|
+
n: 20,
|
|
9542
|
+
detectorRevision: 3,
|
|
9543
|
+
ciLow: .8389,
|
|
9544
|
+
ciHigh: 1
|
|
9545
|
+
},
|
|
9539
9546
|
"QA-JV-101": {
|
|
9540
9547
|
fpRate: 0,
|
|
9541
9548
|
n: 23,
|
|
@@ -9795,6 +9802,13 @@ const MEASURED_FP = {
|
|
|
9795
9802
|
ciLow: .0329,
|
|
9796
9803
|
ciHigh: .3434
|
|
9797
9804
|
},
|
|
9805
|
+
"QA-PW-147": {
|
|
9806
|
+
fpRate: 1,
|
|
9807
|
+
n: 20,
|
|
9808
|
+
detectorRevision: 1,
|
|
9809
|
+
ciLow: .8389,
|
|
9810
|
+
ciHigh: 1
|
|
9811
|
+
},
|
|
9798
9812
|
"QA-PY-001": {
|
|
9799
9813
|
fpRate: 0,
|
|
9800
9814
|
n: 12,
|
|
@@ -13210,7 +13224,7 @@ function renderSarif(result, repoRootUri) {
|
|
|
13210
13224
|
tool: { driver: {
|
|
13211
13225
|
name: "Mjölnir",
|
|
13212
13226
|
informationUri: "https://github.com/Sergey-Bar/Mjolnir",
|
|
13213
|
-
version: "0.5.
|
|
13227
|
+
version: "0.5.11",
|
|
13214
13228
|
rules: [...rules.values()].map((r) => {
|
|
13215
13229
|
const meta = RULES.find((x) => x.id === r.id);
|
|
13216
13230
|
return {
|
|
@@ -17635,7 +17649,7 @@ const { runScan, buildUniversalRules, fallbackWorkspace, pathMatchesGlob, isVali
|
|
|
17635
17649
|
* `scripts/sync-sarif-version.cjs` on release and guarded by
|
|
17636
17650
|
* `tests/version-consistency.spec.ts` locally.
|
|
17637
17651
|
*/
|
|
17638
|
-
const CLI_VERSION = "0.5.
|
|
17652
|
+
const CLI_VERSION = "0.5.11";
|
|
17639
17653
|
function parseArgs(argv, onError) {
|
|
17640
17654
|
const args = {
|
|
17641
17655
|
target: ".",
|
package/package.json
CHANGED