@cejel/cejel 0.1.7 → 0.1.8

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 CHANGED
@@ -70,7 +70,7 @@ The npm package is scoped as `@cejel/cejel`; its executable remains the short co
70
70
  **GitHub Action** — score every PR and publish the badge:
71
71
 
72
72
  ```yaml
73
- - uses: BargLabs/cejel/action@v0.1.6
73
+ - uses: BargLabs/cejel/action@v0.1.8
74
74
  with:
75
75
  min-score: "2.5" # optional: fail the build below this
76
76
  ```
@@ -99,21 +99,21 @@ Microsoft Authenticode code-signing.
99
99
  **Docker / OCI.** The same MCP server is published as a non-root, multi-platform image:
100
100
 
101
101
  ```bash
102
- docker run --rm -i -v "$PWD:/workspace:ro" ghcr.io/barglabs/cejel:0.1.6
102
+ docker run --rm -i -v "$PWD:/workspace:ro" ghcr.io/barglabs/cejel:0.1.8
103
103
  ```
104
104
 
105
105
  The image defaults to `cejel-mcp` over stdio. To use the CLI instead:
106
106
 
107
107
  ```bash
108
- docker run --rm -v "$PWD:/workspace:ro" --entrypoint cejel ghcr.io/barglabs/cejel:0.1.6 .
108
+ docker run --rm -v "$PWD:/workspace:ro" --entrypoint cejel ghcr.io/barglabs/cejel:0.1.8 .
109
109
  ```
110
110
 
111
111
  Beginning with v0.1.7, the standard CLI identity flags are also available directly, while an
112
112
  invocation without arguments continues to start the MCP server:
113
113
 
114
114
  ```bash
115
- docker run --rm ghcr.io/barglabs/cejel:0.1.7 --version
116
- docker run --rm ghcr.io/barglabs/cejel:0.1.7 --help
115
+ docker run --rm ghcr.io/barglabs/cejel:0.1.8 --version
116
+ docker run --rm ghcr.io/barglabs/cejel:0.1.8 --help
117
117
  ```
118
118
 
119
119
  The OCI image carries an SBOM, maximum-mode build provenance, and a signed registry
@@ -324,7 +324,7 @@ a configurable `min-score` threshold. The scoring step makes no network calls an
324
324
  secrets.
325
325
 
326
326
  ```yaml
327
- - uses: BargLabs/cejel/action@v0.1.6
327
+ - uses: BargLabs/cejel/action@v0.1.8
328
328
  with:
329
329
  min-score: '2.5' # optional; omit to never fail the check
330
330
  ```
@@ -403,7 +403,7 @@ enforced structurally — the public artifacts are built from filtered data rath
403
403
  rendered and then scrubbed — and a build that would emit a private path fails rather than
404
404
  publishes.
405
405
 
406
- **What we exclude from ranking.** The v5 repository scanner does not evaluate B1 (dispatch
406
+ **What we exclude from ranking.** The v6 repository scanner does not evaluate B1 (dispatch
407
407
  trace completeness) or B5 (verified learning trace) for repository inputs, including ours:
408
408
  both are always *not applicable* in a repository certificate. They remain defined in the
409
409
  rubric for structured substrate evidence, but that evidence is not accepted by this scanner.
@@ -480,6 +480,11 @@ scoring tool that has not been checked:
480
480
  "Unverified". Every real legacy repository has a deploy script, so the fix that passed every
481
481
  test was unreachable for essentially all of them. Recognised source must now be *dominant*,
482
482
  not merely present. **A fixture cleaner than reality proves nothing.**
483
+ - **Version 0.1.7 missed AVA's root-level `test.js` convention.** A smoke test against
484
+ `sindresorhus/slugify` reported that a runner was configured but no concrete test files were
485
+ detected even though `test.js` was present at the repository root. That was a detection gap
486
+ in Cejel, not evidence about the repository. Rubric v6 recognizes AVA's `test.js` and
487
+ `test-*.js` conventions; a regression fixture preserves the correction.
483
488
 
484
489
  Every one was a trust failure produced by *us* — false alarms about other people's code,
485
490
  silent omissions, inconsistent presentation, or a home-only scoring path — and we would
@@ -4076,7 +4076,8 @@ var WITAN_RUBRIC_VERSION_V2 = "witan-rubric-v2-2026-07-12";
4076
4076
  var WITAN_RUBRIC_VERSION_V3 = "witan-rubric-v3-2026-07-13";
4077
4077
  var WITAN_RUBRIC_VERSION_V4 = "witan-rubric-v4-2026-07-18";
4078
4078
  var WITAN_RUBRIC_VERSION_V5 = "witan-rubric-v5-2026-07-18";
4079
- var WITAN_RUBRIC_VERSION = WITAN_RUBRIC_VERSION_V5;
4079
+ var WITAN_RUBRIC_VERSION_V6 = "witan-rubric-v6-2026-07-21";
4080
+ var WITAN_RUBRIC_VERSION = WITAN_RUBRIC_VERSION_V6;
4080
4081
  var WITAN_TRADING_RUBRIC_VERSION_V0 = "witan-trading-rubric-v0-2026-07-01";
4081
4082
  var WITAN_CRITERION_IDS = [
4082
4083
  "A1",
@@ -6329,9 +6330,11 @@ function isProductionSourcePath(path) {
6329
6330
  function isTestFile(file) {
6330
6331
  return /(^|\/)(__tests__|test|tests|spec)\/.*\.(?:[cm]?[jt]sx?|py|go|rs|java|rb|cpp|cc|cxx)$/.test(
6331
6332
  file
6332
- ) || /\.(test|spec)\.[cm]?[jt]sx?$/.test(file) || /(^|\/)test_.*\.py$/.test(file) || /_test\.go$/.test(file) || /(^|\/)test_.*\.(cpp|cc|cxx)$/.test(file) || /_(test|tests)\.(cpp|cc|cxx)$/.test(file) || /Tests?\.(java|kt)$/.test(file) || /(_test|_spec)\.(rs|rb|php|swift|kt)$/.test(file);
6333
+ ) || // AVA's default discovery includes test.js and test-*.js at the scanned package root.
6334
+ // Keep this root-anchored: nested files need an existing test-directory/suffix convention.
6335
+ /^test(?:-[^/]+)?\.[cm]?[jt]sx?$/.test(file) || /\.(test|spec)\.[cm]?[jt]sx?$/.test(file) || /(^|\/)test_.*\.py$/.test(file) || /_test\.go$/.test(file) || /(^|\/)test_.*\.(cpp|cc|cxx)$/.test(file) || /_(test|tests)\.(cpp|cc|cxx)$/.test(file) || /Tests?\.(java|kt)$/.test(file) || /(_test|_spec)\.(rs|rb|php|swift|kt)$/.test(file);
6333
6336
  }
6334
- var NAME_SHAPED_TEST_FILE_PATTERN = /\.(test|spec)\.[cm]?[jt]sx?$|(^|\/)__tests__\/|(^|\/)test_[^/]*\.py$|(^|\/)tests?\.py$|_test\.go$|(^|\/)test_[^/]*\.(cpp|cc|cxx)$|_(test|tests)\.(cpp|cc|cxx)$|Tests?\.(java|kt)$|(_test|_spec)\.(rs|rb|php|swift|kt)$/;
6337
+ var NAME_SHAPED_TEST_FILE_PATTERN = /^test(?:-[^/]+)?\.[cm]?[jt]sx?$|\.(test|spec)\.[cm]?[jt]sx?$|(^|\/)__tests__\/|(^|\/)test_[^/]*\.py$|(^|\/)tests?\.py$|_test\.go$|(^|\/)test_[^/]*\.(cpp|cc|cxx)$|_(test|tests)\.(cpp|cc|cxx)$|Tests?\.(java|kt)$|(_test|_spec)\.(rs|rb|php|swift|kt)$/;
6335
6338
  var TEST_RUNNER_PATTERN = /\b(vitest|jest|mocha|ava|tap|pytest|go test|cargo test|rspec|phpunit|gradle test|mvn test)\b/i;
6336
6339
  var CI_TEST_COMMAND_PATTERN = /\b(pytest|go\s+test|cargo\s+test|mvn\s+test|gradle\s+test|ctest|make\s+test|jest|vitest|mocha|rspec|phpunit|pnpm\s+test|npm\s+test|yarn\s+test|node\s+--test|node:test)\b/i;
6337
6340
  var CI_LINT_COMMAND_PATTERN = /\b(eslint|pylint|flake8|black|ruff)\b/i;
@@ -7937,7 +7940,7 @@ function mergeSignalsByCriterion(signals) {
7937
7940
  return merged;
7938
7941
  }
7939
7942
  function usesMetricScoring(rubricVersion) {
7940
- return rubricVersion === WITAN_RUBRIC_VERSION_V1 || rubricVersion === WITAN_RUBRIC_VERSION_V2 || rubricVersion === WITAN_RUBRIC_VERSION_V3 || rubricVersion === WITAN_RUBRIC_VERSION_V4 || rubricVersion === WITAN_RUBRIC_VERSION_V5 || rubricVersion === WITAN_TRADING_RUBRIC_VERSION_V0;
7943
+ return rubricVersion === WITAN_RUBRIC_VERSION_V1 || rubricVersion === WITAN_RUBRIC_VERSION_V2 || rubricVersion === WITAN_RUBRIC_VERSION_V3 || rubricVersion === WITAN_RUBRIC_VERSION_V4 || rubricVersion === WITAN_RUBRIC_VERSION_V5 || rubricVersion === WITAN_RUBRIC_VERSION_V6 || rubricVersion === WITAN_TRADING_RUBRIC_VERSION_V0;
7941
7944
  }
7942
7945
  function unmeasuredStatus(rubricVersion) {
7943
7946
  return rubricVersion === WITAN_TRADING_RUBRIC_VERSION_V0 ? "unverified" : "insufficient_data";
package/dist/index.js CHANGED
@@ -9,7 +9,7 @@ import {
9
9
  runCejelScan,
10
10
  serializeWitanReport,
11
11
  verifyWitanAttestationBinding
12
- } from "./chunk-OMIRVZSF.js";
12
+ } from "./chunk-SFEPABAX.js";
13
13
 
14
14
  // src/index.ts
15
15
  import { createHash } from "crypto";
package/dist/mcp/index.js CHANGED
@@ -10,7 +10,7 @@ import {
10
10
  renderWitanBadgeSvg,
11
11
  renderWitanHtmlReport,
12
12
  runCejelScan
13
- } from "../chunk-OMIRVZSF.js";
13
+ } from "../chunk-SFEPABAX.js";
14
14
 
15
15
  // node_modules/.pnpm/ajv@8.20.0/node_modules/ajv/dist/compile/codegen/code.js
16
16
  var require_code = __commonJS({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cejel/cejel",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "mcpName": "io.github.BargLabs/cejel",
5
5
  "private": false,
6
6
  "publishConfig": {