feat: post-run validation + integration tests for skill pipeline

- runner.mjs v0.4: --with-validation flag runs validators on real output
- postValidate config in 20 _skill.json files (maps skill → validator)
- validatePath in ~100 positive test cases
- skipValidation for 5 cross-reference cases (isolated workspace limitation)
- Integration tests: build-config (19 steps), build-epf (6), build-cfe (4)
- base-config cache from build-config for downstream tests
- Fix chart-of-calculation-types test data (DependenceOnCalculationTypes)
- 285/285 unit + 3/3 integration, all green with validation

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-03-29 17:30:03 +03:00
co-authored by Claude Opus 4.6
parent 28b2765f68
commit 0778cc89ee
124 changed files with 837 additions and 62 deletions
@@ -9,5 +9,10 @@
"snapshot": {
"root": "workDir",
"normalizeUuids": false
},
"postValidate": {
"script": "mxl-validate/scripts/mxl-validate",
"flag": "-TemplatePath",
"pathFrom": "validatePath"
}
}
@@ -24,6 +24,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -31,6 +31,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -34,6 +34,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -40,6 +40,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -12,6 +12,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -57,6 +57,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -41,6 +41,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -37,6 +37,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -102,6 +102,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -12,6 +12,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}
@@ -86,6 +86,7 @@
]
},
"params": { "outputPath": "Template.xml" },
"validatePath": "Template.xml",
"expect": {
"files": ["Template.xml"]
}