vigiles 30.0.2 → 31.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/dist/linting.js CHANGED
@@ -1,38 +1,26 @@
1
1
  "use strict";
2
+ // 🔴 PUBLIC ENTRY POINT `vigiles/linting` — every export here is a promise to users. The default for a
3
+ // symbol is INTERNAL. It is exported only if (a) a NAMED external consumer uses it, or (b) it is
4
+ // a deliberate extension point listed in STABILITY.md (the adapter kit is the example). "Might
5
+ // be useful" is neither. Review point: the diff of `api-surface/vigiles-linting.api.md`, which
6
+ // `npm run api:check` fails on.
2
7
  /**
3
- * `vigiles/linting` — Pillar 1 entry point: the **linting layer** for instruction
4
- * files. The spec builders/types that describe a CLAUDE.md, a SKILL.md or an
5
- * agent, plus the public compile entry points, under one concern-named import.
8
+ * `vigiles/linting` — Pillar 1 entry point: what a spec AUTHOR imports to describe a CLAUDE.md,
9
+ * a SKILL.md or an agent — the builders, the verified-reference constructors and their types.
10
+ * Compiling is the CLI's job (`vigiles compile` / `vigiles lint`), not this subpath's.
6
11
  *
7
- * Curated (named, not `export *`) so the internal compiler validators, hash
8
- * helpers, and the linter cross-reference ENGINE stay out of the public surface,
9
- * the api reports, and the docs site (the CLI imports those from the source).
12
+ * Curated (named, not `export *`) so the internal compiler, validators, hash helpers and the
13
+ * linter cross-reference ENGINE stay out of the public surface, the api reports and the docs.
10
14
  *
11
- * 🔴 THAT SENTENCE USED TO BE FALSE, and so did the one after it (fixed
12
- * 2026-08-21). The file claimed to be curated while `export * from
13
- * "./core/spec.js"` sat one line below it, and it claimed "the spec builders are
14
- * also at the package root (`vigiles`)" — measured against `vigiles.api.md`: 191
15
- * exports there and zero matches for `claude`, `agent`, `enforce` or `result`.
16
- * The builders' second door is `vigiles/spec`, not the root. Both claims read as
17
- * documentation of a decision and were descriptions of the opposite one; a
18
- * header nobody re-reads is where an `export *` hides best.
19
- *
20
- * WHAT THE CURATION DROPS (28 symbols, measured — nothing in this repo imported
21
- * any of them from here; every in-repo user takes them from `vigiles/spec`, and
22
- * the one live consumer of this subpath in the docs takes `compileAgent`): the
23
- * typed-COMPOSITION family — `experimental_pipe`/`_pipeStep`/`_start`/
24
- * `_andThen`/`_needs`, `Pipeline`, `PipeStep`, `Supplies`, `Handoff`,
25
- * `NeedsContract`, `OkOf`, `TypedAgentSpec`, `TypedOutcome`, `Shape`,
26
- * `OutputFieldType` and the `result()` builder. Those verify HANDOFFS between
27
- * workers; they compile to nothing and lint nothing, so they are not pillar 1.
28
- *
29
- * ⚠️ The cut is not a clean slice along that line, and pretending otherwise
30
- * would strand a signature: the `result()` FUNCTION leaves, but the
31
- * `OutputContract` TYPE stays, because `compileAgent`/`compileSkill` name it in
32
- * their own types. A consumer who needs to BUILD one imports `vigiles/spec`.
15
+ * WHAT THE CURATION DROPS (28 symbols, measured 2026-08-21 — nothing in this repo imported any
16
+ * of them from here; every in-repo user takes them from `vigiles/spec`): the typed-COMPOSITION
17
+ * family — `experimental_pipe`/`_pipeStep`/`_start`/`_andThen`/`_needs`, `Pipeline`, `PipeStep`,
18
+ * `Supplies`, `Handoff`, `NeedsContract`, `OkOf`, `TypedAgentSpec`, `TypedOutcome`, `Shape`,
19
+ * `OutputFieldType` and the `result()` builder. Those verify HANDOFFS between workers; they
20
+ * compile to nothing and lint nothing, so they are not pillar 1.
33
21
  */
34
22
  Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.compileRailway = exports.compileAgent = exports.compileSkill = exports.compileClaude = exports.BUILTIN_LINTERS = exports.agent = exports.instructions = exports.claude = exports.experimental_agent = exports.experimental_skill = exports.project = exports.glob = exports.dir = exports.ref = exports.symbol = exports.cmd = exports.file = exports.guard = exports.guidance = exports.enforce = exports.experimental_effect = exports.prose = exports.instructionFile = void 0;
23
+ exports.BUILTIN_LINTERS = exports.agent = exports.instructions = exports.claude = exports.experimental_agent = exports.experimental_skill = exports.project = exports.glob = exports.dir = exports.ref = exports.symbol = exports.cmd = exports.file = exports.guard = exports.guidance = exports.enforce = exports.experimental_effect = exports.prose = exports.instructionFile = void 0;
36
24
  // --- the spec authoring builders: rules, refs, prose, and the three spec kinds ---
37
25
  var spec_js_1 = require("./core/spec.js");
38
26
  // instruction files
@@ -67,12 +55,11 @@ Object.defineProperty(exports, "instructions", { enumerable: true, get: function
67
55
  Object.defineProperty(exports, "agent", { enumerable: true, get: function () { return spec_js_1.agent; } });
68
56
  var spec_js_2 = require("./core/spec.js");
69
57
  Object.defineProperty(exports, "BUILTIN_LINTERS", { enumerable: true, get: function () { return spec_js_2.BUILTIN_LINTERS; } });
70
- // Compile: only the public entry points + their option/result types.
71
- var compile_js_1 = require("./core/compile.js");
72
- Object.defineProperty(exports, "compileClaude", { enumerable: true, get: function () { return compile_js_1.compileClaude; } });
73
- Object.defineProperty(exports, "compileSkill", { enumerable: true, get: function () { return compile_js_1.compileSkill; } });
74
- Object.defineProperty(exports, "compileAgent", { enumerable: true, get: function () { return compile_js_1.compileAgent; } });
75
- Object.defineProperty(exports, "compileRailway", { enumerable: true, get: function () { return compile_js_1.compileRailway; } });
58
+ // NO COMPILE ENTRY POINTS HERE (removed in the major that ships #257). `compileClaude`,
59
+ // `compileSkill`, `compileAgent`, `compileRailway` and their option/result types were public
60
+ // with no external caller — measured across the repos that depend on vigiles, every import is a
61
+ // spec builder — and the promise froze them synchronous while the symbol check they run became
62
+ // async. Spec authors run `vigiles compile`; the CLI imports the compiler from source.
76
63
  // core/linters is the cross-reference ENGINE (checkLinterRule/editDistance/…),
77
64
  // consumed by compile — not part of the public authoring surface.
78
65
  //# sourceMappingURL=linting.js.map
package/dist/test.js CHANGED
@@ -1,4 +1,9 @@
1
1
  "use strict";
2
+ // 🔴 PUBLIC ENTRY POINT `vigiles` — every export here is a promise to users. The default for a
3
+ // symbol is INTERNAL. It is exported only if (a) a NAMED external consumer uses it, or (b) it is
4
+ // a deliberate extension point listed in STABILITY.md (the adapter kit is the example). "Might
5
+ // be useful" is neither. Review point: the diff of `api-surface/vigiles.api.md`, which
6
+ // `npm run api:check` fails on.
2
7
  /**
3
8
  * `vigiles` (the package root) — the **free** testing surface: everything you can
4
9
  * run without a model call, and therefore without a bill.
package/dist/vitest.mjs CHANGED
@@ -1,3 +1,8 @@
1
+ // 🔴 PUBLIC ENTRY POINT `vigiles/vitest` — every export here is a promise to users. The default for a
2
+ // symbol is INTERNAL. It is exported only if (a) a NAMED external consumer uses it, or (b) it is
3
+ // a deliberate extension point listed in STABILITY.md (the adapter kit is the example). "Might
4
+ // be useful" is neither. Review point: the diff of `api-surface/vigiles-vitest.api.md`, which
5
+ // `npm run api:check` fails on.
1
6
  /* eslint-disable max-params, @typescript-eslint/no-explicit-any --
2
7
  The matcher signatures mirror the runtime vigilesMatchers (positional args),
3
8
  and `Matchers<T = any>` must match @vitest/expect's generic default to merge. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vigiles",
3
- "version": "30.0.2",
3
+ "version": "31.0.0",
4
4
  "description": "Audit, test and measure the harness your AI agent runs on — grade your CLAUDE.md / AGENTS.md, skills, subagents and hooks, run them against a scripted model, and measure whether they actually fire.",
5
5
  "keywords": [
6
6
  "claude-code",
@@ -138,6 +138,7 @@
138
138
  "dependencies": {
139
139
  "@ast-grep/napi": "^0.43.0",
140
140
  "@iarna/toml": "^2.2.5",
141
+ "@vscode/tree-sitter-wasm": "0.3.1",
141
142
  "ci-info": "^4.4.0",
142
143
  "cosmiconfig": "^9.0.1",
143
144
  "glob": "^13.0.6",
@@ -148,10 +149,5 @@
148
149
  "ts-essentials": "^10.2.1",
149
150
  "typescript": "^5.9.3",
150
151
  "zod": "^4.6.5"
151
- },
152
- "optionalDependencies": {
153
- "@ast-grep/lang-python": "^0.0.6",
154
- "@ast-grep/lang-ruby": "^0.0.7",
155
- "@ast-grep/lang-rust": "^0.0.7"
156
152
  }
157
153
  }