mjolnir-qa 0.6.13 → 1.0.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/CHANGELOG.md +21 -3
- package/dist/cli.d.mts +1 -1
- package/dist/cli.mjs +2 -2
- package/dist/mcp/stdio.mjs +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -9,11 +9,29 @@ Rule behavior changes (new rules, FP-rate changes against the corpus,
|
|
|
9
9
|
severity changes) are first-class entries here — rule IDs are immutable
|
|
10
10
|
once shipped, so this file is the record of what changed between versions.
|
|
11
11
|
|
|
12
|
-
## [0.
|
|
12
|
+
## [1.0.0] — 2026-09-09
|
|
13
13
|
|
|
14
|
-
###
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
- **Core Certification (WI-16): 1.0.0 is the first fully-measured
|
|
17
|
+
release.** Every active canonical rule (77) satisfies the
|
|
18
|
+
measurement law — n ≥ 10 hand-classified verdicts at the current
|
|
19
|
+
detectorRevision, zero PROVISIONAL, zero denominator games. The
|
|
20
|
+
2026-09-09 harvest waves (WI-14) measured the final 15 rules via the
|
|
21
|
+
class-B fixture corpus and closed the census; QA-PY-102 was retired
|
|
22
|
+
as a structural dead duplicate (its measured sibling QA-PY-005
|
|
23
|
+
declares overlapWith, so it could never fire). Certification report:
|
|
24
|
+
docs/CERTIFICATION-1.0.md. Evidence chain: doctor self-audit WORTHY
|
|
25
|
+
(77/77), full suite 7,054 green, determinism replay byte-identical,
|
|
26
|
+
adversarial + benchmark suites green, CHANGELOG integrity gate
|
|
27
|
+
active.
|
|
28
|
+
|
|
29
|
+
### Removed
|
|
15
30
|
|
|
16
|
-
-
|
|
31
|
+
- **QA-PY-102 retired** (22nd retirement, WI-14 closeout): structural
|
|
32
|
+
dead duplicate — QA-PY-005 (the measured survivor) declares
|
|
33
|
+
overlapWith QA-PY-102, so every finding dedups away and the rule can
|
|
34
|
+
never fire, never be measured. Frozen IDs are never reused.
|
|
17
35
|
|
|
18
36
|
## [0.6.12] — 2026-09-09
|
|
19
37
|
|
package/dist/cli.d.mts
CHANGED
|
@@ -826,7 +826,7 @@ declare const runScan: typeof runScan$1, buildUniversalRules: typeof buildUniver
|
|
|
826
826
|
* `scripts/sync-sarif-version.cjs` on release and guarded by
|
|
827
827
|
* `tests/version-consistency.spec.ts` locally.
|
|
828
828
|
*/
|
|
829
|
-
declare const CLI_VERSION = "0.
|
|
829
|
+
declare const CLI_VERSION = "1.0.0";
|
|
830
830
|
/** A usage-error detail: the offending token, when one exists. */
|
|
831
831
|
interface UsageErrorDetail {
|
|
832
832
|
/** The unknown flag or rejected value (e.g. `--nope`, `loud`). */
|
package/dist/cli.mjs
CHANGED
|
@@ -12753,7 +12753,7 @@ function renderSarif(result, repoRootUri) {
|
|
|
12753
12753
|
tool: { driver: {
|
|
12754
12754
|
name: "Mjölnir",
|
|
12755
12755
|
informationUri: "https://github.com/Sergey-Bar/Mjolnir",
|
|
12756
|
-
version: "0.
|
|
12756
|
+
version: "1.0.0",
|
|
12757
12757
|
rules: [...rules.values()].map((r) => {
|
|
12758
12758
|
const meta = RULES.find((x) => x.id === r.id);
|
|
12759
12759
|
return {
|
|
@@ -19157,7 +19157,7 @@ const { runScan, buildUniversalRules, fallbackWorkspace, pathMatchesGlob, isVali
|
|
|
19157
19157
|
* `scripts/sync-sarif-version.cjs` on release and guarded by
|
|
19158
19158
|
* `tests/version-consistency.spec.ts` locally.
|
|
19159
19159
|
*/
|
|
19160
|
-
const CLI_VERSION = "0.
|
|
19160
|
+
const CLI_VERSION = "1.0.0";
|
|
19161
19161
|
function parseArgs(argv, onError) {
|
|
19162
19162
|
const args = {
|
|
19163
19163
|
target: ".",
|
package/dist/mcp/stdio.mjs
CHANGED
|
@@ -12752,7 +12752,7 @@ function renderSarif(result, repoRootUri) {
|
|
|
12752
12752
|
tool: { driver: {
|
|
12753
12753
|
name: "Mjölnir",
|
|
12754
12754
|
informationUri: "https://github.com/Sergey-Bar/Mjolnir",
|
|
12755
|
-
version: "0.
|
|
12755
|
+
version: "1.0.0",
|
|
12756
12756
|
rules: [...rules.values()].map((r) => {
|
|
12757
12757
|
const meta = RULES.find((x) => x.id === r.id);
|
|
12758
12758
|
return {
|
|
@@ -18732,7 +18732,7 @@ const { runScan, buildUniversalRules, fallbackWorkspace, pathMatchesGlob, isVali
|
|
|
18732
18732
|
* `scripts/sync-sarif-version.cjs` on release and guarded by
|
|
18733
18733
|
* `tests/version-consistency.spec.ts` locally.
|
|
18734
18734
|
*/
|
|
18735
|
-
const CLI_VERSION = "0.
|
|
18735
|
+
const CLI_VERSION = "1.0.0";
|
|
18736
18736
|
function parseArgs(argv, onError) {
|
|
18737
18737
|
const args = {
|
|
18738
18738
|
target: ".",
|
package/package.json
CHANGED