eslint-plugin-rulvar 1.3.1 → 1.4.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 ADDED
@@ -0,0 +1,29 @@
1
+ # eslint-plugin-rulvar
2
+
3
+ Determinism lint rules for rulvar workflow modules: ban bare `Date.now`,
4
+ `Math.random`, `new Date`, `fetch`, and `process.env`, and ban
5
+ `Promise.all` over `ctx` calls, so workflows stay replay-safe. Emits
6
+ structured JSON diagnostics (`toJsonDiagnostics`) that drive the
7
+ planner's self-repair loop, and ships a ready `workflowsConfig` for
8
+ ESLint flat config. Requires ESLint 9 or newer (peer dependency).
9
+
10
+ Part of [rulvar](https://rulvar.com), an embeddable TypeScript engine
11
+ for durable, budget-bounded multi-agent LLM workflows, where a completed
12
+ LLM call is never paid for twice. Full documentation:
13
+ [docs.rulvar.com](https://docs.rulvar.com).
14
+
15
+ ## Install
16
+
17
+ ```bash
18
+ pnpm add -D eslint-plugin-rulvar
19
+ ```
20
+
21
+ ## Documentation
22
+
23
+ - [Determinism](https://docs.rulvar.com/guide/determinism)
24
+ - [The planner](https://docs.rulvar.com/guide/planner)
25
+ - [API reference](https://docs.rulvar.com/api/eslint-plugin-rulvar/)
26
+
27
+ ## License
28
+
29
+ [Apache-2.0](https://github.com/o-stepper/rulvar/blob/main/LICENSE)
package/dist/index.js CHANGED
@@ -189,8 +189,8 @@ function isCtxAgentCall(node) {
189
189
  const duplicateIdenticalCall = {
190
190
  meta: {
191
191
  type: "suggestion",
192
- docs: { description: "advisory: byte-identical ctx.agent/ctx.workflow calls in one function forward-match to ONE journal entry; pass opts.key to distinguish deliberate repeats" },
193
- messages: { duplicateCall: "this call is byte-identical to an earlier one in the same function; identical calls share one journal entry via forward-matching, so a deliberate repeat needs a distinguishing opts.key" },
192
+ docs: { description: "advisory: byte-identical ctx.agent/ctx.workflow calls in one function are told apart only by execution order; pass opts.key to give deliberate repeats stable identities" },
193
+ messages: { duplicateCall: "this call is byte-identical to an earlier one in the same function; the journal tells identical repeats apart only by execution order, so an edit that reorders or removes one can re-pair recorded results with the wrong call site; give a deliberate repeat a distinguishing opts.key" },
194
194
  schema: []
195
195
  },
196
196
  create(context) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-plugin-rulvar",
3
- "version": "1.3.1",
3
+ "version": "1.4.0",
4
4
  "description": "rulvar determinism lint rules with structural JSON diagnostics for the planner self-repair loop.",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",