evidence-dsl: extract Evidence DSL v2 compiler from @arbiter/core
CI / test (push) Successful in 11s
CI / publish (push) Successful in 9s

The Evidence DSL (ADR-000) is a thin declarative layer that compiles to
engine rule types. It has zero runtime coupling to the core engine
(DSLCompiler takes an arbiter as a duck-typed argument; the only shared
code was the ip-utils helpers, now local). Extracting it into its own
package keeps the core artifact free of the DSL surface.

- @arbiter/evidence-dsl depends on @arbiter/core (config formats are the
  compilation target)
- deep-path exports for the compiler, parser, generator, validation,
  and built-in functions (the surface the core's DSL tests consume)
- tests moved alongside; generate-parser script + peggy devDep local
- CI: test on push, publish on v* tags
This commit is contained in:
John Dvorak
2026-08-03 08:48:39 -07:00
commit ae21605fb7
54 changed files with 26551 additions and 0 deletions
+31
View File
@@ -0,0 +1,31 @@
{
"name": "@arbiter/evidence-dsl",
"version": "1.0.0",
"description": "Evidence DSL v2 compiler: translates the natural Evidence DSL (ADR-000) into @arbiter/core relation configurations.",
"license": "ISC",
"type": "module",
"main": "src/index.js",
"exports": {
".": "./src/index.js",
"./package.json": "./package.json",
"./DSLCompiler": "./src/DSLCompiler.js",
"./parser/DSLParser": "./src/parser/DSLParser.js",
"./parser/GeneratedParser": "./src/parser/GeneratedParser.js",
"./generator/RuleGenerator": "./src/generator/RuleGenerator.js",
"./validation/DSLValidation": "./src/validation/DSLValidation.js",
"./interpreter/BuiltInFunctions": "./src/interpreter/BuiltInFunctions.js"
},
"files": [
"src/"
],
"scripts": {
"test": "node --test --test-force-exit \"tests/**/*.test.js\"",
"generate:parser": "node scripts/generate-parser.js"
},
"dependencies": {
"@arbiter/core": "^1.0.1"
},
"devDependencies": {
"peggy": "^5.0.6"
}
}