@primmel/primmel 1.3.2 → 1.4.1
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/index.d.ts +40 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +112 -1
- package/dist/index.js.map +1 -1
- package/dist/src/check-allowlist.d.ts +56 -0
- package/dist/src/check-allowlist.d.ts.map +1 -0
- package/dist/src/check-allowlist.js +307 -0
- package/dist/src/check-allowlist.js.map +1 -0
- package/dist/src/check-rules.d.ts +17 -0
- package/dist/src/check-rules.d.ts.map +1 -0
- package/dist/src/check-rules.js +351 -0
- package/dist/src/check-rules.js.map +1 -0
- package/dist/src/check.d.ts +115 -0
- package/dist/src/check.d.ts.map +1 -0
- package/dist/src/check.js +4164 -0
- package/dist/src/check.js.map +1 -0
- package/dist/src/export/rdf-competency-questions.d.ts +11 -0
- package/dist/src/export/rdf-competency-questions.d.ts.map +1 -0
- package/dist/src/export/rdf-competency-questions.js +99 -0
- package/dist/src/export/rdf-competency-questions.js.map +1 -0
- package/dist/src/export/rdf-shapes.d.ts +3 -0
- package/dist/src/export/rdf-shapes.d.ts.map +1 -0
- package/dist/src/export/rdf-shapes.js +225 -0
- package/dist/src/export/rdf-shapes.js.map +1 -0
- package/dist/src/export/rdf-vocabulary.d.ts +125 -0
- package/dist/src/export/rdf-vocabulary.d.ts.map +1 -0
- package/dist/src/export/rdf-vocabulary.js +230 -0
- package/dist/src/export/rdf-vocabulary.js.map +1 -0
- package/dist/src/export/rdf.d.ts +92 -0
- package/dist/src/export/rdf.d.ts.map +1 -0
- package/dist/src/export/rdf.js +707 -0
- package/dist/src/export/rdf.js.map +1 -0
- package/dist/src/export/reqif.d.ts +81 -0
- package/dist/src/export/reqif.d.ts.map +1 -0
- package/dist/src/export/reqif.js +703 -0
- package/dist/src/export/reqif.js.map +1 -0
- package/dist/src/instance-resolution.d.ts +68 -0
- package/dist/src/instance-resolution.d.ts.map +1 -0
- package/dist/src/instance-resolution.js +239 -0
- package/dist/src/instance-resolution.js.map +1 -0
- package/dist/src/mapping-coverage.d.ts +220 -0
- package/dist/src/mapping-coverage.d.ts.map +1 -0
- package/dist/src/mapping-coverage.js +528 -0
- package/dist/src/mapping-coverage.js.map +1 -0
- package/dist/src/model-diff.d.ts +198 -0
- package/dist/src/model-diff.d.ts.map +1 -0
- package/dist/src/model-diff.js +914 -0
- package/dist/src/model-diff.js.map +1 -0
- package/dist/src/operational-state.d.ts +112 -0
- package/dist/src/operational-state.d.ts.map +1 -0
- package/dist/src/operational-state.js +162 -0
- package/dist/src/operational-state.js.map +1 -0
- package/dist/src/package-diff.d.ts +36 -0
- package/dist/src/package-diff.d.ts.map +1 -0
- package/dist/src/package-diff.js +104 -0
- package/dist/src/package-diff.js.map +1 -0
- package/dist/src/ser-des/config/acceptance.d.ts +10 -0
- package/dist/src/ser-des/config/acceptance.d.ts.map +1 -0
- package/dist/src/ser-des/config/acceptance.js +163 -0
- package/dist/src/ser-des/config/acceptance.js.map +1 -0
- package/dist/src/ser-des/config/activityArchetype.d.ts +5 -0
- package/dist/src/ser-des/config/activityArchetype.d.ts.map +1 -0
- package/dist/src/ser-des/config/activityArchetype.js +78 -0
- package/dist/src/ser-des/config/activityArchetype.js.map +1 -0
- package/dist/src/ser-des/config/artifact.d.ts +16 -0
- package/dist/src/ser-des/config/artifact.d.ts.map +1 -0
- package/dist/src/ser-des/config/artifact.js +392 -0
- package/dist/src/ser-des/config/artifact.js.map +1 -0
- package/dist/src/ser-des/config/calculation.d.ts.map +1 -1
- package/dist/src/ser-des/config/calculation.js +214 -12
- package/dist/src/ser-des/config/calculation.js.map +1 -1
- package/dist/src/ser-des/config/comment.d.ts +34 -0
- package/dist/src/ser-des/config/comment.d.ts.map +1 -0
- package/dist/src/ser-des/config/comment.js +121 -0
- package/dist/src/ser-des/config/comment.js.map +1 -0
- package/dist/src/ser-des/config/competenceKind.d.ts +8 -0
- package/dist/src/ser-des/config/competenceKind.d.ts.map +1 -0
- package/dist/src/ser-des/config/competenceKind.js +266 -0
- package/dist/src/ser-des/config/competenceKind.js.map +1 -0
- package/dist/src/ser-des/config/composition.d.ts +6 -0
- package/dist/src/ser-des/config/composition.d.ts.map +1 -0
- package/dist/src/ser-des/config/composition.js +165 -0
- package/dist/src/ser-des/config/composition.js.map +1 -0
- package/dist/src/ser-des/config/conformanceClass.d.ts +9 -0
- package/dist/src/ser-des/config/conformanceClass.d.ts.map +1 -0
- package/dist/src/ser-des/config/conformanceClass.js +128 -0
- package/dist/src/ser-des/config/conformanceClass.js.map +1 -0
- package/dist/src/ser-des/config/conformanceTest.d.ts +6 -0
- package/dist/src/ser-des/config/conformanceTest.d.ts.map +1 -0
- package/dist/src/ser-des/config/conformanceTest.js +929 -0
- package/dist/src/ser-des/config/conformanceTest.js.map +1 -0
- package/dist/src/ser-des/config/constraint.d.ts +5 -0
- package/dist/src/ser-des/config/constraint.d.ts.map +1 -0
- package/dist/src/ser-des/config/constraint.js +108 -0
- package/dist/src/ser-des/config/constraint.js.map +1 -0
- package/dist/src/ser-des/config/data.d.ts.map +1 -1
- package/dist/src/ser-des/config/data.js +105 -12
- package/dist/src/ser-des/config/data.js.map +1 -1
- package/dist/src/ser-des/config/design.d.ts +9 -0
- package/dist/src/ser-des/config/design.d.ts.map +1 -0
- package/dist/src/ser-des/config/design.js +847 -0
- package/dist/src/ser-des/config/design.js.map +1 -0
- package/dist/src/ser-des/config/discrepancyRecord.d.ts +5 -0
- package/dist/src/ser-des/config/discrepancyRecord.d.ts.map +1 -0
- package/dist/src/ser-des/config/discrepancyRecord.js +109 -0
- package/dist/src/ser-des/config/discrepancyRecord.js.map +1 -0
- package/dist/src/ser-des/config/dual.d.ts +9 -0
- package/dist/src/ser-des/config/dual.d.ts.map +1 -0
- package/dist/src/ser-des/config/dual.js +84 -0
- package/dist/src/ser-des/config/dual.js.map +1 -0
- package/dist/src/ser-des/config/field-parser.d.ts +92 -7
- package/dist/src/ser-des/config/field-parser.d.ts.map +1 -1
- package/dist/src/ser-des/config/field-parser.js +844 -29
- package/dist/src/ser-des/config/field-parser.js.map +1 -1
- package/dist/src/ser-des/config/form.d.ts.map +1 -1
- package/dist/src/ser-des/config/form.js +356 -134
- package/dist/src/ser-des/config/form.js.map +1 -1
- package/dist/src/ser-des/config/formulasUsed.d.ts +9 -0
- package/dist/src/ser-des/config/formulasUsed.d.ts.map +1 -0
- package/dist/src/ser-des/config/formulasUsed.js +126 -0
- package/dist/src/ser-des/config/formulasUsed.js.map +1 -0
- package/dist/src/ser-des/config/index.d.ts.map +1 -1
- package/dist/src/ser-des/config/index.js +180 -1
- package/dist/src/ser-des/config/index.js.map +1 -1
- package/dist/src/ser-des/config/instance.d.ts +22 -0
- package/dist/src/ser-des/config/instance.d.ts.map +1 -0
- package/dist/src/ser-des/config/instance.js +266 -0
- package/dist/src/ser-des/config/instance.js.map +1 -0
- package/dist/src/ser-des/config/invariant.d.ts +9 -0
- package/dist/src/ser-des/config/invariant.d.ts.map +1 -0
- package/dist/src/ser-des/config/invariant.js +143 -0
- package/dist/src/ser-des/config/invariant.js.map +1 -0
- package/dist/src/ser-des/config/mapProfile.d.ts.map +1 -1
- package/dist/src/ser-des/config/mapProfile.js +199 -14
- package/dist/src/ser-des/config/mapProfile.js.map +1 -1
- package/dist/src/ser-des/config/metadata.js +6 -6
- package/dist/src/ser-des/config/metadata.js.map +1 -1
- package/dist/src/ser-des/config/monitor.d.ts +9 -0
- package/dist/src/ser-des/config/monitor.d.ts.map +1 -0
- package/dist/src/ser-des/config/monitor.js +322 -0
- package/dist/src/ser-des/config/monitor.js.map +1 -0
- package/dist/src/ser-des/config/note.d.ts.map +1 -1
- package/dist/src/ser-des/config/note.js +16 -1
- package/dist/src/ser-des/config/note.js.map +1 -1
- package/dist/src/ser-des/config/packageManifest.d.ts +5 -0
- package/dist/src/ser-des/config/packageManifest.d.ts.map +1 -0
- package/dist/src/ser-des/config/packageManifest.js +349 -0
- package/dist/src/ser-des/config/packageManifest.js.map +1 -0
- package/dist/src/ser-des/config/passport.d.ts +9 -0
- package/dist/src/ser-des/config/passport.d.ts.map +1 -0
- package/dist/src/ser-des/config/passport.js +191 -0
- package/dist/src/ser-des/config/passport.js.map +1 -0
- package/dist/src/ser-des/config/process.d.ts +5 -3
- package/dist/src/ser-des/config/process.d.ts.map +1 -1
- package/dist/src/ser-des/config/process.js +915 -8
- package/dist/src/ser-des/config/process.js.map +1 -1
- package/dist/src/ser-des/config/quantity.d.ts +21 -0
- package/dist/src/ser-des/config/quantity.d.ts.map +1 -0
- package/dist/src/ser-des/config/quantity.js +114 -0
- package/dist/src/ser-des/config/quantity.js.map +1 -0
- package/dist/src/ser-des/config/quantityRegister.d.ts +9 -0
- package/dist/src/ser-des/config/quantityRegister.d.ts.map +1 -0
- package/dist/src/ser-des/config/quantityRegister.js +202 -0
- package/dist/src/ser-des/config/quantityRegister.js.map +1 -0
- package/dist/src/ser-des/config/reference.d.ts.map +1 -1
- package/dist/src/ser-des/config/reference.js +6 -0
- package/dist/src/ser-des/config/reference.js.map +1 -1
- package/dist/src/ser-des/config/referenceMaterial.d.ts +5 -0
- package/dist/src/ser-des/config/referenceMaterial.d.ts.map +1 -0
- package/dist/src/ser-des/config/referenceMaterial.js +296 -0
- package/dist/src/ser-des/config/referenceMaterial.js.map +1 -0
- package/dist/src/ser-des/config/requirement.d.ts +16 -0
- package/dist/src/ser-des/config/requirement.d.ts.map +1 -0
- package/dist/src/ser-des/config/requirement.js +579 -0
- package/dist/src/ser-des/config/requirement.js.map +1 -0
- package/dist/src/ser-des/config/role.d.ts.map +1 -1
- package/dist/src/ser-des/config/role.js +12 -0
- package/dist/src/ser-des/config/role.js.map +1 -1
- package/dist/src/ser-des/config/series.d.ts +9 -0
- package/dist/src/ser-des/config/series.d.ts.map +1 -0
- package/dist/src/ser-des/config/series.js +121 -0
- package/dist/src/ser-des/config/series.js.map +1 -0
- package/dist/src/ser-des/config/sourceDiscrepancy.d.ts +11 -0
- package/dist/src/ser-des/config/sourceDiscrepancy.d.ts.map +1 -0
- package/dist/src/ser-des/config/sourceDiscrepancy.js +83 -0
- package/dist/src/ser-des/config/sourceDiscrepancy.js.map +1 -0
- package/dist/src/ser-des/config/stateMachine.d.ts.map +1 -1
- package/dist/src/ser-des/config/stateMachine.js +189 -38
- package/dist/src/ser-des/config/stateMachine.js.map +1 -1
- package/dist/src/ser-des/config/subform.d.ts.map +1 -1
- package/dist/src/ser-des/config/subform.js +25 -33
- package/dist/src/ser-des/config/subform.js.map +1 -1
- package/dist/src/ser-des/config/subject.d.ts +58 -0
- package/dist/src/ser-des/config/subject.d.ts.map +1 -0
- package/dist/src/ser-des/config/subject.js +2093 -0
- package/dist/src/ser-des/config/subject.js.map +1 -0
- package/dist/src/ser-des/config/symbol.d.ts.map +1 -1
- package/dist/src/ser-des/config/symbol.js +130 -6
- package/dist/src/ser-des/config/symbol.js.map +1 -1
- package/dist/src/ser-des/config/table.d.ts.map +1 -1
- package/dist/src/ser-des/config/table.js +373 -7
- package/dist/src/ser-des/config/table.js.map +1 -1
- package/dist/src/ser-des/config/term.d.ts.map +1 -1
- package/dist/src/ser-des/config/term.js +107 -0
- package/dist/src/ser-des/config/term.js.map +1 -1
- package/dist/src/ser-des/config/testPointSet.d.ts +5 -0
- package/dist/src/ser-des/config/testPointSet.d.ts.map +1 -0
- package/dist/src/ser-des/config/testPointSet.js +199 -0
- package/dist/src/ser-des/config/testPointSet.js.map +1 -0
- package/dist/src/ser-des/config/testSequence.d.ts +9 -0
- package/dist/src/ser-des/config/testSequence.d.ts.map +1 -0
- package/dist/src/ser-des/config/testSequence.js +206 -0
- package/dist/src/ser-des/config/testSequence.js.map +1 -0
- package/dist/src/ser-des/config/text.d.ts +5 -0
- package/dist/src/ser-des/config/text.d.ts.map +1 -0
- package/dist/src/ser-des/config/text.js +106 -0
- package/dist/src/ser-des/config/text.js.map +1 -0
- package/dist/src/ser-des/config/twin.d.ts +31 -0
- package/dist/src/ser-des/config/twin.d.ts.map +1 -0
- package/dist/src/ser-des/config/twin.js +362 -0
- package/dist/src/ser-des/config/twin.js.map +1 -0
- package/dist/src/ser-des/config/verdict.d.ts +5 -0
- package/dist/src/ser-des/config/verdict.d.ts.map +1 -0
- package/dist/src/ser-des/config/verdict.js +159 -0
- package/dist/src/ser-des/config/verdict.js.map +1 -0
- package/dist/src/ser-des/config/viewProfile.d.ts.map +1 -1
- package/dist/src/ser-des/config/viewProfile.js +7 -0
- package/dist/src/ser-des/config/viewProfile.js.map +1 -1
- package/dist/src/ser-des/includes.d.ts.map +1 -1
- package/dist/src/ser-des/includes.js +5 -2
- package/dist/src/ser-des/includes.js.map +1 -1
- package/dist/src/ser-des/index.d.ts +12 -0
- package/dist/src/ser-des/index.d.ts.map +1 -1
- package/dist/src/ser-des/index.js +42 -0
- package/dist/src/ser-des/index.js.map +1 -1
- package/dist/src/ser-des/package.d.ts +53 -0
- package/dist/src/ser-des/package.d.ts.map +1 -0
- package/dist/src/ser-des/package.js +404 -0
- package/dist/src/ser-des/package.js.map +1 -0
- package/dist/src/ser-des/parse-block.d.ts.map +1 -1
- package/dist/src/ser-des/parse-block.js +7 -1
- package/dist/src/ser-des/parse-block.js.map +1 -1
- package/dist/src/ser-des/parse.d.ts.map +1 -1
- package/dist/src/ser-des/parse.js +45 -0
- package/dist/src/ser-des/parse.js.map +1 -1
- package/dist/src/ser-des/prm.d.ts +53 -0
- package/dist/src/ser-des/prm.d.ts.map +1 -0
- package/dist/src/ser-des/prm.js +257 -0
- package/dist/src/ser-des/prm.js.map +1 -0
- package/dist/src/ser-des/resolve.d.ts.map +1 -1
- package/dist/src/ser-des/resolve.js +1 -0
- package/dist/src/ser-des/resolve.js.map +1 -1
- package/dist/src/ser-des/tokenize.d.ts +11 -0
- package/dist/src/ser-des/tokenize.d.ts.map +1 -1
- package/dist/src/ser-des/tokenize.js +28 -1
- package/dist/src/ser-des/tokenize.js.map +1 -1
- package/dist/src/ser-des/types.d.ts +56 -1
- package/dist/src/ser-des/types.d.ts.map +1 -1
- package/dist/src/spelling.d.ts +35 -0
- package/dist/src/spelling.d.ts.map +1 -0
- package/dist/src/spelling.js +140 -0
- package/dist/src/spelling.js.map +1 -0
- package/dist/src/text-coverage.d.ts +164 -0
- package/dist/src/text-coverage.d.ts.map +1 -0
- package/dist/src/text-coverage.js +679 -0
- package/dist/src/text-coverage.js.map +1 -0
- package/dist/src/time.d.ts +55 -0
- package/dist/src/time.d.ts.map +1 -0
- package/dist/src/time.js +223 -0
- package/dist/src/time.js.map +1 -0
- package/dist/src/type-expr.d.ts +31 -0
- package/dist/src/type-expr.d.ts.map +1 -0
- package/dist/src/type-expr.js +110 -0
- package/dist/src/type-expr.js.map +1 -0
- package/dist/src/types/Acceptance.d.ts +31 -0
- package/dist/src/types/Acceptance.d.ts.map +1 -0
- package/dist/src/types/Acceptance.js +12 -0
- package/dist/src/types/Acceptance.js.map +1 -0
- package/dist/src/types/ActivityArchetype.d.ts +14 -0
- package/dist/src/types/ActivityArchetype.d.ts.map +1 -0
- package/dist/src/types/ActivityArchetype.js +17 -0
- package/dist/src/types/ActivityArchetype.js.map +1 -0
- package/dist/src/types/Artifact.d.ts +117 -0
- package/dist/src/types/Artifact.d.ts.map +1 -0
- package/dist/src/types/Artifact.js +35 -0
- package/dist/src/types/Artifact.js.map +1 -0
- package/dist/src/types/Calculation.d.ts +49 -0
- package/dist/src/types/Calculation.d.ts.map +1 -1
- package/dist/src/types/Comment.d.ts +23 -0
- package/dist/src/types/Comment.d.ts.map +1 -0
- package/dist/src/types/Comment.js +3 -0
- package/dist/src/types/Comment.js.map +1 -0
- package/dist/src/types/CompetenceKind.d.ts +70 -0
- package/dist/src/types/CompetenceKind.d.ts.map +1 -0
- package/dist/src/types/CompetenceKind.js +3 -0
- package/dist/src/types/CompetenceKind.js.map +1 -0
- package/dist/src/types/Composition.d.ts +80 -0
- package/dist/src/types/Composition.d.ts.map +1 -0
- package/dist/src/types/Composition.js +44 -0
- package/dist/src/types/Composition.js.map +1 -0
- package/dist/src/types/ConformanceClass.d.ts +22 -0
- package/dist/src/types/ConformanceClass.d.ts.map +1 -0
- package/dist/src/types/ConformanceClass.js +7 -0
- package/dist/src/types/ConformanceClass.js.map +1 -0
- package/dist/src/types/ConformanceTest.d.ts +206 -0
- package/dist/src/types/ConformanceTest.d.ts.map +1 -0
- package/dist/src/types/ConformanceTest.js +3 -0
- package/dist/src/types/ConformanceTest.js.map +1 -0
- package/dist/src/types/Constraint.d.ts +34 -0
- package/dist/src/types/Constraint.d.ts.map +1 -0
- package/dist/src/types/Constraint.js +3 -0
- package/dist/src/types/Constraint.js.map +1 -0
- package/dist/src/types/Design.d.ts +147 -0
- package/dist/src/types/Design.d.ts.map +1 -0
- package/dist/src/types/Design.js +10 -0
- package/dist/src/types/Design.js.map +1 -0
- package/dist/src/types/DiscrepancyRecord.d.ts +42 -0
- package/dist/src/types/DiscrepancyRecord.d.ts.map +1 -0
- package/dist/src/types/DiscrepancyRecord.js +3 -0
- package/dist/src/types/DiscrepancyRecord.js.map +1 -0
- package/dist/src/types/Form.d.ts +132 -1
- package/dist/src/types/Form.d.ts.map +1 -1
- package/dist/src/types/FormulasUsed.d.ts +95 -0
- package/dist/src/types/FormulasUsed.d.ts.map +1 -0
- package/dist/src/types/FormulasUsed.js +64 -0
- package/dist/src/types/FormulasUsed.js.map +1 -0
- package/dist/src/types/Instance.d.ts +105 -0
- package/dist/src/types/Instance.d.ts.map +1 -0
- package/dist/src/types/Instance.js +40 -0
- package/dist/src/types/Instance.js.map +1 -0
- package/dist/src/types/Invariant.d.ts +82 -0
- package/dist/src/types/Invariant.d.ts.map +1 -0
- package/dist/src/types/Invariant.js +50 -0
- package/dist/src/types/Invariant.js.map +1 -0
- package/dist/src/types/MapProfile.d.ts +36 -1
- package/dist/src/types/MapProfile.d.ts.map +1 -1
- package/dist/src/types/Monitor.d.ts +144 -0
- package/dist/src/types/Monitor.d.ts.map +1 -0
- package/dist/src/types/Monitor.js +74 -0
- package/dist/src/types/Monitor.js.map +1 -0
- package/dist/src/types/Note.d.ts +4 -1
- package/dist/src/types/Note.d.ts.map +1 -1
- package/dist/src/types/Package.d.ts +161 -0
- package/dist/src/types/Package.d.ts.map +1 -0
- package/dist/src/types/Package.js +3 -0
- package/dist/src/types/Package.js.map +1 -0
- package/dist/src/types/Passport.d.ts +125 -0
- package/dist/src/types/Passport.d.ts.map +1 -0
- package/dist/src/types/Passport.js +84 -0
- package/dist/src/types/Passport.js.map +1 -0
- package/dist/src/types/Quantity.d.ts +99 -0
- package/dist/src/types/Quantity.d.ts.map +1 -0
- package/dist/src/types/Quantity.js +24 -0
- package/dist/src/types/Quantity.js.map +1 -0
- package/dist/src/types/Reference.d.ts +2 -0
- package/dist/src/types/Reference.d.ts.map +1 -1
- package/dist/src/types/ReferenceMaterial.d.ts +53 -0
- package/dist/src/types/ReferenceMaterial.d.ts.map +1 -0
- package/dist/src/types/ReferenceMaterial.js +14 -0
- package/dist/src/types/ReferenceMaterial.js.map +1 -0
- package/dist/src/types/Requirement.d.ts +111 -0
- package/dist/src/types/Requirement.d.ts.map +1 -0
- package/dist/src/types/Requirement.js +10 -0
- package/dist/src/types/Requirement.js.map +1 -0
- package/dist/src/types/Role.d.ts +4 -0
- package/dist/src/types/Role.d.ts.map +1 -1
- package/dist/src/types/Series.d.ts +31 -0
- package/dist/src/types/Series.d.ts.map +1 -0
- package/dist/src/types/Series.js +14 -0
- package/dist/src/types/Series.js.map +1 -0
- package/dist/src/types/SourceDiscrepancy.d.ts +21 -0
- package/dist/src/types/SourceDiscrepancy.d.ts.map +1 -0
- package/dist/src/types/SourceDiscrepancy.js +13 -0
- package/dist/src/types/SourceDiscrepancy.js.map +1 -0
- package/dist/src/types/Standard.d.ts +68 -0
- package/dist/src/types/Standard.d.ts.map +1 -1
- package/dist/src/types/StateMachine.d.ts +43 -0
- package/dist/src/types/StateMachine.d.ts.map +1 -1
- package/dist/src/types/StateMachine.js +7 -0
- package/dist/src/types/StateMachine.js.map +1 -1
- package/dist/src/types/Subject.d.ts +432 -0
- package/dist/src/types/Subject.d.ts.map +1 -0
- package/dist/src/types/Subject.js +13 -0
- package/dist/src/types/Subject.js.map +1 -0
- package/dist/src/types/Symbol.d.ts +31 -1
- package/dist/src/types/Symbol.d.ts.map +1 -1
- package/dist/src/types/Table.d.ts +43 -0
- package/dist/src/types/Table.d.ts.map +1 -1
- package/dist/src/types/Term.d.ts +29 -0
- package/dist/src/types/Term.d.ts.map +1 -1
- package/dist/src/types/TestPointSet.d.ts +33 -0
- package/dist/src/types/TestPointSet.d.ts.map +1 -0
- package/dist/src/types/TestPointSet.js +11 -0
- package/dist/src/types/TestPointSet.js.map +1 -0
- package/dist/src/types/TestSequence.d.ts +105 -0
- package/dist/src/types/TestSequence.d.ts.map +1 -0
- package/dist/src/types/TestSequence.js +65 -0
- package/dist/src/types/TestSequence.js.map +1 -0
- package/dist/src/types/Text.d.ts +21 -0
- package/dist/src/types/Text.d.ts.map +1 -0
- package/dist/src/types/Text.js +38 -0
- package/dist/src/types/Text.js.map +1 -0
- package/dist/src/types/Time.d.ts +43 -0
- package/dist/src/types/Time.d.ts.map +1 -0
- package/dist/src/types/Time.js +14 -0
- package/dist/src/types/Time.js.map +1 -0
- package/dist/src/types/Twin.d.ts +155 -0
- package/dist/src/types/Twin.d.ts.map +1 -0
- package/dist/src/types/Twin.js +102 -0
- package/dist/src/types/Twin.js.map +1 -0
- package/dist/src/types/Verdict.d.ts +40 -0
- package/dist/src/types/Verdict.d.ts.map +1 -0
- package/dist/src/types/Verdict.js +14 -0
- package/dist/src/types/Verdict.js.map +1 -0
- package/dist/src/types/ViewProfile.d.ts +6 -0
- package/dist/src/types/ViewProfile.d.ts.map +1 -1
- package/dist/src/types/data.d.ts +27 -0
- package/dist/src/types/data.d.ts.map +1 -1
- package/dist/src/types/process.d.ts +231 -0
- package/dist/src/types/process.d.ts.map +1 -1
- package/dist-browser/index.mjs +6699 -661
- package/dist-cli/primmel.mjs +21462 -0
- package/package.json +61 -5
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export type CheckFamily = 'base' | 'anatomy' | 'process' | 'instantiation' | 'mapping' | 'composition' | 'quantities' | 'state' | 'promises' | 'artifacts' | 'characteristics' | 'twins' | 'coverage' | 'edition' | 'supply-chain';
|
|
2
|
+
export type CheckLevel = 'normal' | 'audit';
|
|
3
|
+
export interface CheckRule {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
family: CheckFamily;
|
|
7
|
+
severity: 'error' | 'warning';
|
|
8
|
+
level: CheckLevel;
|
|
9
|
+
docs: string;
|
|
10
|
+
}
|
|
11
|
+
/** The full catalog, in id order. */
|
|
12
|
+
export declare const CHECK_RULES: CheckRule[];
|
|
13
|
+
/** The catalog entry for a rule id, or undefined for an unknown id. */
|
|
14
|
+
export declare function checkRule(id: string): CheckRule | undefined;
|
|
15
|
+
/** Rule ids active at a level ('audit' includes the normal rules). */
|
|
16
|
+
export declare function activeRuleIds(level: CheckLevel): Set<string>;
|
|
17
|
+
//# sourceMappingURL=check-rules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-rules.d.ts","sourceRoot":"","sources":["../../src/check-rules.ts"],"names":[],"mappings":"AAoBA,MAAM,MAAM,WAAW,GACnB,MAAM,GACN,SAAS,GACT,SAAS,GACT,eAAe,GACf,SAAS,GACT,aAAa,GACb,YAAY,GACZ,OAAO,GACP,UAAU,GACV,WAAW,GACX,iBAAiB,GACjB,OAAO,GACP,UAAU,GACV,SAAS,GACT,cAAc,CAAC;AAEnB,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE5C,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAWD,qCAAqC;AACrC,eAAO,MAAM,WAAW,EAAE,SAAS,EA48BlC,CAAC;AAIF,uEAAuE;AACvE,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAE3D;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,CAM5D"}
|
|
@@ -0,0 +1,351 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ─────────────────────────────────────────────────────────────────────
|
|
3
|
+
// primmel check — the rule catalog (TODO.roadmap/17).
|
|
4
|
+
//
|
|
5
|
+
// The machine-readable registry of every check `primmel check` runs —
|
|
6
|
+
// the single source the CLI prints (`primmel check --rules`) and the
|
|
7
|
+
// docs reference. Each rule has:
|
|
8
|
+
// id — the per-rule id (C1…C98) issues report under;
|
|
9
|
+
// name — the rule's short name (as used in issue messages);
|
|
10
|
+
// family — base | anatomy | process | instantiation | mapping |
|
|
11
|
+
// composition | quantities | state | promises | artifacts |
|
|
12
|
+
// characteristics | twins | coverage | edition |
|
|
13
|
+
// supply-chain;
|
|
14
|
+
// severity — the rule's DEFAULT severity at the normal level
|
|
15
|
+
// ('warning' rules escalate to errors under --strict;
|
|
16
|
+
// individual legs of a rule may escalate — see check.ts);
|
|
17
|
+
// level — 'normal' rules always run; 'audit' rules additionally run
|
|
18
|
+
// at --audit strictness (the coverage audits + C25);
|
|
19
|
+
// docs — the doctrine/plan pointer backing the rule.
|
|
20
|
+
// ─────────────────────────────────────────────────────────────────────
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.CHECK_RULES = void 0;
|
|
23
|
+
exports.checkRule = checkRule;
|
|
24
|
+
exports.activeRuleIds = activeRuleIds;
|
|
25
|
+
const R = (id, name, family, severity, level, docs) => ({ id, name, family, severity, level, docs });
|
|
26
|
+
/** The full catalog, in id order. */
|
|
27
|
+
exports.CHECK_RULES = [
|
|
28
|
+
// ── base (C1–C5 + the allowlist self-checks) ──────────────────────
|
|
29
|
+
R('C1', 'attribute-bind-scope', 'base', 'error', 'normal', 'concept doc §11.4'),
|
|
30
|
+
R('C2', 'reference-targets-resolve', 'base', 'error', 'normal', 'concept doc §11.4'),
|
|
31
|
+
R('C3', 'dimension-enums', 'base', 'error', 'normal', 'concept doc §11.4'),
|
|
32
|
+
R('C4', 'store-uniqueness', 'base', 'error', 'normal', 'concept doc §11.4'),
|
|
33
|
+
R('C5', 'req-test-coverage', 'base', 'warning', 'normal', 'concept doc §11.4–11.5'),
|
|
34
|
+
R('C56', 'allowlist-malformed', 'base', 'error', 'normal', 'concept doc §11.9'),
|
|
35
|
+
R('C57', 'allowlist-stale', 'base', 'error', 'normal', 'concept doc §11.3/§11.9'),
|
|
36
|
+
// ── anatomy (subject is/has/does, TODO.roadmap/01) ────────────────
|
|
37
|
+
R('C6', 'anatomy-family', 'anatomy', 'error', 'normal', 'TODO.roadmap/01'),
|
|
38
|
+
R('C7', 'anatomy-characteristic-derivation', 'anatomy', 'error', 'normal', 'TODO.roadmap/01'),
|
|
39
|
+
R('C8', 'anatomy-behavior-resolves', 'anatomy', 'error', 'normal', 'TODO.roadmap/01'),
|
|
40
|
+
R('C9', 'subject-extends-resolves', 'anatomy', 'warning', 'normal', 'TODO.roadmap/01'),
|
|
41
|
+
// ── process (executable bodies, TODO.roadmap/02) ──────────────────
|
|
42
|
+
R('C10', 'process-one-start', 'process', 'error', 'normal', 'TODO.roadmap/02'),
|
|
43
|
+
R('C11', 'process-terminal-end', 'process', 'error', 'normal', 'TODO.roadmap/02'),
|
|
44
|
+
R('C12', 'process-flow-names-resolve', 'process', 'error', 'normal', 'TODO.roadmap/02'),
|
|
45
|
+
R('C13', 'process-signature-realized', 'process', 'error', 'normal', 'TODO.roadmap/02'),
|
|
46
|
+
R('C14', 'process-timer-recurrence', 'process', 'error', 'normal', 'TODO.roadmap/02'),
|
|
47
|
+
R('C15', 'process-timer-period', 'process', 'error', 'normal', 'TODO.roadmap/02'),
|
|
48
|
+
R('C16', 'process-step-ids-unique', 'process', 'error', 'normal', 'TODO.roadmap/02'),
|
|
49
|
+
// C58 (TODO.roadmap/39): the ISO/IEC 17000 activity-kind classification
|
|
50
|
+
// facet on processes — every tagged kind resolves against a declared
|
|
51
|
+
// activity_archetype register when one is in scope, and the register's
|
|
52
|
+
// own parent references resolve within the register.
|
|
53
|
+
R('C58', 'activity-kind-resolves', 'process', 'error', 'normal', 'TODO.roadmap/39'),
|
|
54
|
+
// C59 (TODO.roadmap/39b): the ISO/IEC 17065 role-segregation facet on
|
|
55
|
+
// processes — every pair member resolves to a declared process (or the
|
|
56
|
+
// reserved case_personnel token), the two members are distinct, and the
|
|
57
|
+
// owning process is a member of its own pair.
|
|
58
|
+
R('C59', 'segregation-members-resolve', 'process', 'error', 'normal', 'TODO.roadmap/39'),
|
|
59
|
+
// C74–C76 (TODO.roadmap/38): typed transition boundaries — composition
|
|
60
|
+
// is sound only when the upstream output signature covers the
|
|
61
|
+
// downstream input signature (∘: t₁: A→B, t₂: B→C ⊢ t₂∘t₁: A→C).
|
|
62
|
+
// C74: one name carries ONE type across the signature/register
|
|
63
|
+
// declaration positions (kind/unit-coherent through the quantity
|
|
64
|
+
// register). C75: the step-chain dataflow covers every read (a writer
|
|
65
|
+
// on every incoming path, or a provided IN/instance/state name —
|
|
66
|
+
// error) and no write is dead (warning leg). Known limitation: the
|
|
67
|
+
// must-analysis intersects over all predecessors uniformly, so a
|
|
68
|
+
// parallel_gateway fork's conjunctive branches are treated as
|
|
69
|
+
// alternative paths — a post-join read of a single-branch write is
|
|
70
|
+
// reported uncovered (pessimistic: over-reports, never misses a real
|
|
71
|
+
// gap). C76: a `calls` step binds
|
|
72
|
+
// the callee's declared signature completely and kind-compatibly —
|
|
73
|
+
// across packages too, since processes merge over `uses`.
|
|
74
|
+
R('C74', 'process-io-type-coherence', 'process', 'error', 'normal', 'TODO.roadmap/38'),
|
|
75
|
+
R('C75', 'process-flow-io-cover', 'process', 'error', 'normal', 'TODO.roadmap/38'),
|
|
76
|
+
R('C76', 'subprocess-signature-bound', 'process', 'error', 'normal', 'TODO.roadmap/38'),
|
|
77
|
+
// ── instantiation (TODO.roadmap/03) ───────────────────────────────
|
|
78
|
+
R('C17', 'instance-scope', 'instantiation', 'error', 'normal', 'TODO.roadmap/03'),
|
|
79
|
+
R('C18', 'instance-version-pin', 'instantiation', 'error', 'normal', 'TODO.roadmap/03'),
|
|
80
|
+
R('C19', 'chain-acyclic', 'instantiation', 'error', 'normal', 'TODO.roadmap/03'),
|
|
81
|
+
R('C20', 'instance-of-resolves', 'instantiation', 'error', 'normal', 'TODO.roadmap/03'),
|
|
82
|
+
// ── mapping (TODO.roadmap/04) ─────────────────────────────────────
|
|
83
|
+
R('C21', 'mapping-resolves', 'mapping', 'error', 'normal', 'TODO.roadmap/04, concept doc §5.2'),
|
|
84
|
+
R('C22', 'mapping-direction', 'mapping', 'error', 'normal', 'TODO.roadmap/04, concept doc §5.6'),
|
|
85
|
+
R('C23', 'mapping-calculus-consistency', 'mapping', 'error', 'normal', 'TODO.roadmap/04, concept doc §5.8'),
|
|
86
|
+
R('C24', 'import-not-mapping', 'mapping', 'error', 'normal', 'TODO.roadmap/04, concept doc §5.6'),
|
|
87
|
+
R('C25', 'mapping-description', 'mapping', 'warning', 'audit', 'TODO.roadmap/04'),
|
|
88
|
+
R('C26', 'view-read-only', 'mapping', 'error', 'normal', 'TODO.roadmap/04'),
|
|
89
|
+
// ── composition (TODO.roadmap/05) ─────────────────────────────────
|
|
90
|
+
R('C27', 'uses-resolves', 'composition', 'error', 'normal', 'TODO.roadmap/05'),
|
|
91
|
+
R('C28', 'uses-no-redefine', 'composition', 'error', 'normal', 'TODO.roadmap/05'),
|
|
92
|
+
R('C29', 'uses-cycle', 'composition', 'error', 'normal', 'TODO.roadmap/05'),
|
|
93
|
+
R('C30', 'provides-consumed-or-waived', 'composition', 'warning', 'normal', 'TODO.roadmap/05'),
|
|
94
|
+
R('C31', 'requires-satisfied', 'composition', 'error', 'normal', 'TODO.roadmap/05'),
|
|
95
|
+
// ── quantities / time / duality (TODO.roadmap/06) ─────────────────
|
|
96
|
+
R('C32', 'inv1-no-bare-quantity', 'quantities', 'error', 'normal', 'TODO.roadmap/06, INV-1'),
|
|
97
|
+
R('C33', 'quantity-coherence', 'quantities', 'error', 'normal', 'TODO.roadmap/06'),
|
|
98
|
+
R('C34', 'duality-coherence', 'quantities', 'error', 'normal', 'TODO.roadmap/06'),
|
|
99
|
+
R('C35', 'time-format', 'quantities', 'error', 'normal', 'TODO.roadmap/06'),
|
|
100
|
+
R('C36', 'map-type', 'quantities', 'error', 'normal', 'TODO.roadmap/06'),
|
|
101
|
+
// ── operational state (TODO.roadmap/07) ───────────────────────────
|
|
102
|
+
R('C37', 'state-fires-resolve', 'state', 'error', 'normal', 'TODO.roadmap/07'),
|
|
103
|
+
R('C38', 'state-family-separation', 'state', 'error', 'normal', 'TODO.roadmap/07'),
|
|
104
|
+
R('C39', 'state-machine-states-referenced', 'state', 'error', 'normal', 'TODO.roadmap/07'),
|
|
105
|
+
R('C40', 'anatomy-state-resolves', 'state', 'error', 'normal', 'TODO.roadmap/07'),
|
|
106
|
+
R('C41', 'precondition-on-violation-known', 'state', 'warning', 'normal', 'TODO.roadmap/07'),
|
|
107
|
+
// ── promises (TODO.roadmap/08) ────────────────────────────────────
|
|
108
|
+
R('C42', 'promise-target-resolves', 'promises', 'error', 'normal', 'TODO.roadmap/08'),
|
|
109
|
+
R('C43', 'promise-verifiable', 'promises', 'warning', 'normal', 'TODO.roadmap/08'),
|
|
110
|
+
R('C44', 'promise-not-bare-value', 'promises', 'error', 'normal', 'TODO.roadmap/08'),
|
|
111
|
+
// ── artifacts (TODO.roadmap/09) ───────────────────────────────────
|
|
112
|
+
R('C45', 'artifact-def-contract', 'artifacts', 'error', 'normal', 'TODO.roadmap/09'),
|
|
113
|
+
R('C46', 'artifact-instance-resolves', 'artifacts', 'error', 'normal', 'TODO.roadmap/09'),
|
|
114
|
+
R('C47', 'artifact-evidence-separation', 'artifacts', 'error', 'normal', 'TODO.roadmap/09'),
|
|
115
|
+
// ── characteristics (TODO.roadmap/10) ─────────────────────────────
|
|
116
|
+
R('C48', 'characteristic-one-home', 'characteristics', 'error', 'normal', 'TODO.roadmap/10'),
|
|
117
|
+
R('C49', 'characteristic-behavior-link', 'characteristics', 'error', 'normal', 'TODO.roadmap/10'),
|
|
118
|
+
R('C50', 'characteristic-derivation-inputs', 'characteristics', 'error', 'normal', 'TODO.roadmap/10'),
|
|
119
|
+
// ── twins (TODO.roadmap/32 — doctrine ch. 14 §14.4/§14.12) ──────────
|
|
120
|
+
R('C60', 'serve-targets-resolve', 'twins', 'error', 'normal', 'TODO.roadmap/32, doctrine §14.12'),
|
|
121
|
+
R('C61', 'payload-schema-quantity', 'twins', 'error', 'normal', 'TODO.roadmap/32, doctrine §14.4/§14.12'),
|
|
122
|
+
R('C62', 'access-scope-covers-serves', 'twins', 'error', 'normal', 'TODO.roadmap/32, doctrine §14.12'),
|
|
123
|
+
R('C63', 'freshness-required-on-live-bindings', 'twins', 'error', 'normal', 'TODO.roadmap/32, doctrine §14.12'),
|
|
124
|
+
R('C64', 'endpoint-profile-resolves', 'twins', 'error', 'normal', 'TODO.roadmap/32, doctrine §14.4'),
|
|
125
|
+
// ── twins: the monitors (TODO.roadmap/34 — doctrine ch. 14 §14.5/§14.12) ──
|
|
126
|
+
R('C65', 'monitor-subject-resolves', 'twins', 'error', 'normal', 'TODO.roadmap/34, doctrine §14.5/§14.12'),
|
|
127
|
+
R('C66', 'monitor-trigger-wellformed', 'twins', 'error', 'normal', 'TODO.roadmap/34, doctrine §14.5 step 1'),
|
|
128
|
+
R('C67', 'monitor-evaluate-resolves', 'twins', 'error', 'normal', 'TODO.roadmap/34, doctrine §14.12'),
|
|
129
|
+
// C68 is the doctrine's verbatim warning (§14.12): a monitor without an
|
|
130
|
+
// escalation path for `fail` is a warning (it escalates to an error
|
|
131
|
+
// under --strict like any warning).
|
|
132
|
+
R('C68', 'monitor-fail-escalation', 'twins', 'warning', 'normal', 'TODO.roadmap/34, doctrine §14.12'),
|
|
133
|
+
R('C69', 'monitor-escalation-resolves', 'twins', 'error', 'normal', 'TODO.roadmap/34, doctrine §14.5 step 7'),
|
|
134
|
+
R('C70', 'monitor-emit-sinks', 'twins', 'error', 'normal', 'TODO.roadmap/34, doctrine §14.5 step 6'),
|
|
135
|
+
// ── coverage audits (TODO.roadmap/17, concept doc §11.5) ──────────
|
|
136
|
+
// The aspect↔requirement↔test↔form↔verdict closure: the requirement→test
|
|
137
|
+
// link is C5 (base); the closure's remaining links are the audit-level
|
|
138
|
+
// C51/C52; the anchoring legs (uses bound, lookup tables) are
|
|
139
|
+
// normal-level errors; the per-package budget is C55.
|
|
140
|
+
R('C51', 'coverage-test-evidence', 'coverage', 'warning', 'audit', 'TODO.roadmap/17, concept doc §11.5'),
|
|
141
|
+
R('C52', 'coverage-form-judgment', 'coverage', 'warning', 'audit', 'TODO.roadmap/17, concept doc §11.5'),
|
|
142
|
+
R('C53', 'coverage-uses-bound', 'coverage', 'error', 'normal', 'TODO.roadmap/17, concept doc §11.7'),
|
|
143
|
+
R('C54', 'coverage-lookup-table-exists', 'coverage', 'error', 'normal', 'TODO.roadmap/17, concept doc §11.7'),
|
|
144
|
+
// C55 is audit-level: it fires only when the budgeted rules C51/C52
|
|
145
|
+
// run (audit) — cataloguing it as normal would judge a C55 allowlist
|
|
146
|
+
// entry STALE at the default level, where no C55 issue can exist.
|
|
147
|
+
R('C55', 'coverage-budget', 'coverage', 'error', 'audit', 'TODO.roadmap/17'),
|
|
148
|
+
// ── text coverage (TODO.roadmap/26, concept doc §11.6) ──────────────
|
|
149
|
+
// Layer 5 of the validation stack: every normative sentence of the
|
|
150
|
+
// source maps to at least one model element (target 100 %), no two
|
|
151
|
+
// elements are semantic duplicates (target 0). C71 follows the C51/C52
|
|
152
|
+
// pattern (audit-level warning, budgeted by the package's
|
|
153
|
+
// text_coverage_budget — C72); C73 is the declarations' hygiene rule
|
|
154
|
+
// (stale allowances/adjudications — the KNOWN/STALE spirit). Duplicate
|
|
155
|
+
// pairs are REPORTED (primmel check --coverage), never auto-failed.
|
|
156
|
+
R('C71', 'text-coverage-sentence-uncovered', 'coverage', 'warning', 'audit', 'TODO.roadmap/26, concept doc §11.6'),
|
|
157
|
+
R('C72', 'text-coverage-budget', 'coverage', 'error', 'audit', 'TODO.roadmap/26, concept doc §11.6'),
|
|
158
|
+
R('C73', 'text-coverage-config', 'coverage', 'error', 'normal', 'TODO.roadmap/26, concept doc §11.6'),
|
|
159
|
+
// ── edition lifecycle (TODO.roadmap/28, doctrine ch. 13 §13.4/§13.7) ──
|
|
160
|
+
// Versioning relations live on the package manifest, never in subject
|
|
161
|
+
// models: status (C77), validity windows (C78), supersedes/replaces
|
|
162
|
+
// resolution + acyclicity (C79), and the INV-8 execution-side pin —
|
|
163
|
+
// every instance's definition_versions resolves against the package's
|
|
164
|
+
// edition register (C80).
|
|
165
|
+
R('C77', 'edition-status', 'edition', 'error', 'normal', 'TODO.roadmap/28, doctrine §13.4'),
|
|
166
|
+
R('C78', 'edition-validity-window', 'edition', 'error', 'normal', 'TODO.roadmap/28, doctrine §13.7'),
|
|
167
|
+
R('C79', 'edition-supersedes-resolves', 'edition', 'error', 'normal', 'TODO.roadmap/28, doctrine §13.7'),
|
|
168
|
+
R('C80', 'edition-pin-resolves', 'edition', 'error', 'normal', 'TODO.roadmap/28, INV-8, doctrine §13.5'),
|
|
169
|
+
// ── the model supply chain (TODO.roadmap/36, doctrine ch. 15) ───────
|
|
170
|
+
// Three publishers — standard (reference), manufacturer (product
|
|
171
|
+
// reference), user (implementation) — with mapping as the only
|
|
172
|
+
// relation between them. C81: the product reference package's
|
|
173
|
+
// declaration resolves (manufacturer, product, maps_to register ⇆
|
|
174
|
+
// map profiles). C82: unmapped IS promises flagged at authoring (an
|
|
175
|
+
// unmapped promise is a brochure claim). C83: abstract imports pin a
|
|
176
|
+
// version that resolves against the product's edition register.
|
|
177
|
+
R('C81', 'product-maps-resolves', 'supply-chain', 'error', 'normal', 'TODO.roadmap/36, doctrine ch. 15 §15.9'),
|
|
178
|
+
R('C82', 'product-unmapped-promises', 'supply-chain', 'warning', 'normal', 'TODO.roadmap/36, doctrine ch. 15 §15.2/§15.9'),
|
|
179
|
+
R('C83', 'abstract-import-pinned', 'supply-chain', 'error', 'normal', 'TODO.roadmap/36, doctrine ch. 15 §15.3/§15.9'),
|
|
180
|
+
// ── subject-intrinsic constraints (TODO.roadmap/51, BUG.R60-SSOT gap 7)
|
|
181
|
+
// The constraint construct's declaration shape — the kernel mirror of
|
|
182
|
+
// the OIML SMART constraints.yaml schema (stereotype «inv», one ocl{…}
|
|
183
|
+
// check, required violation_meaning, on_violation invalid|indeterminate,
|
|
184
|
+
// source doc+clause). Duplicate ids are the parse-time duplicate-id
|
|
185
|
+
// rule (surfaced as C96); the resolution legs stay smart-side (linker
|
|
186
|
+
// R32).
|
|
187
|
+
R('C84', 'constraint-shape', 'anatomy', 'error', 'normal', 'TODO.roadmap/51, BUG.R60-SSOT gap 7'),
|
|
188
|
+
// ── manifest base URN (TODO.roadmap/27, task-27c review Important 1) ──
|
|
189
|
+
// baseUrn grounds every downstream IRI (the RDF projection's document
|
|
190
|
+
// node + instance IRIs, edition-normalized provenance comparisons) but
|
|
191
|
+
// the manifest field is a free string: a malformed value (`urn:bad
|
|
192
|
+
// urn`) sailed through check AND produced spec-malformed export
|
|
193
|
+
// documents. Same well-formedness class as C78's window check.
|
|
194
|
+
R('C85', 'baseurn-wellformed', 'edition', 'error', 'normal', 'TODO.roadmap/27, task-27c review'),
|
|
195
|
+
// ── the model-native DPP (TODO.roadmap/35, doctrine ch. 14 §14.6, ch. 15
|
|
196
|
+
// §15.6/§15.9) ──
|
|
197
|
+
// The passport is the product model's public projection — "it cannot
|
|
198
|
+
// drift from the model because it *is* the model" (§14.6). §15.9's
|
|
199
|
+
// passport rule: "the passport projection contains only aspects that
|
|
200
|
+
// resolve — public classes contain nothing marked restricted". C86:
|
|
201
|
+
// every content entry's class is one of the six declared classes and a
|
|
202
|
+
// qualified `<class>.<ref>` resolves against the package's declared
|
|
203
|
+
// aspects/promises (sustainability refs are not kernel-resolved — the
|
|
204
|
+
// ESPR delegated-act content models do not exist yet). C87: an entry
|
|
205
|
+
// marked restricted/authority that a public class reaches (exact entry
|
|
206
|
+
// or covering bare class) is a leak. C88: the UPI scheme declares its
|
|
207
|
+
// pattern and its ESPR level (model | batch | item).
|
|
208
|
+
R('C86', 'passport-content-resolves', 'supply-chain', 'error', 'normal', 'TODO.roadmap/35, doctrine ch. 15 §15.9'),
|
|
209
|
+
R('C87', 'passport-access-leak', 'supply-chain', 'error', 'normal', 'TODO.roadmap/35, doctrine ch. 15 §15.9'),
|
|
210
|
+
R('C88', 'passport-upi-scheme', 'supply-chain', 'error', 'normal', 'TODO.roadmap/35, doctrine ch. 14 §14.6'),
|
|
211
|
+
// ── ISO 24229 multilinguality (TODO.roadmap/25, doctrine ch. 10) ────
|
|
212
|
+
// Every human-readable string is spelling-coded per ISO 24229; BCP 47
|
|
213
|
+
// is not used. C89 is the SYNTAX layer: the manifest default_spelling
|
|
214
|
+
// and declared spellings parse (script mandatory), every text block
|
|
215
|
+
// addresses an existing element's prose field — <element-id>.<field>,
|
|
216
|
+
// or <element-id>.<path…>.<field> for prose nested inside the element
|
|
217
|
+
// (E13: intermediate segments name nested structures, list items key
|
|
218
|
+
// by declared name/order/slot, the terminal is a prose field) — every
|
|
219
|
+
// spell entry's code parses with no duplicate per set, the default
|
|
220
|
+
// spelling's value stays inline (never in a text block), and every via
|
|
221
|
+
// conversion code
|
|
222
|
+
// parses (zz- user-assigned codes warn). Register resolution is the
|
|
223
|
+
// consumer's vendored-snapshot discipline — primmel-ts stays
|
|
224
|
+
// register-free (src/spelling.ts validates shape only).
|
|
225
|
+
R('C89', 'spelling-code-wellformed', 'base', 'error', 'normal', 'TODO.roadmap/25, doctrine ch. 10 §10.7'),
|
|
226
|
+
// ── the architecture invariants (smart gap-close E9,
|
|
227
|
+
// analysis/architecture-gaps-2026-07.md; smart docs/oiml-core/
|
|
228
|
+
// 09-invariants.md) ──
|
|
229
|
+
// The `invariant` construct is the first-class replacement for the
|
|
230
|
+
// note-family encoding (pipe-delimited structure inside a message
|
|
231
|
+
// string). C90 is the declaration shape: every invariant carries
|
|
232
|
+
// name, statement, and severity (severity is presence-judged only —
|
|
233
|
+
// the smart side owns the vocabulary), and enforcement is a non-empty
|
|
234
|
+
// claim list XOR the literal `aspirational` marker. C91 is the claim
|
|
235
|
+
// grammar: kernel:C<n> | linker:<kebab-name> | gate:<kebab-name>, and
|
|
236
|
+
// the aspirational marker never mixes with claims. Claim TARGET
|
|
237
|
+
// resolution is the smart-side linker rule R38's crosswalk — the
|
|
238
|
+
// kernel checks syntax/shape only.
|
|
239
|
+
R('C90', 'invariant-shape', 'base', 'error', 'normal', 'smart architecture-gaps-2026-07.md E9, docs/oiml-core/09-invariants.md'),
|
|
240
|
+
R('C91', 'invariant-enforcement-grammar', 'base', 'error', 'normal', 'smart architecture-gaps-2026-07.md E9, docs/oiml-core/09-invariants.md'),
|
|
241
|
+
// ── the required test orderings (smart gap-close E10,
|
|
242
|
+
// analysis/architecture-gaps-2026-07.md; the smart contract
|
|
243
|
+
// data/schemas/test-sequences.yaml) ──
|
|
244
|
+
// The `test_sequence` construct is the first-class replacement for
|
|
245
|
+
// the hand-authored supplemental test-sequences.yaml. C92 is the
|
|
246
|
+
// declaration shape: every sequence carries name, description, and a
|
|
247
|
+
// non-empty steps list; every step's order is a positive integer
|
|
248
|
+
// unique in the sequence; every step carries test XOR phase; role
|
|
249
|
+
// appears only on test steps and only in the baseline | follow_up
|
|
250
|
+
// vocabulary; depends_on is an integer. C93 is the dependency
|
|
251
|
+
// integrity: every depends_on names the order of an EARLIER step of
|
|
252
|
+
// the same sequence (no self-reference, no forward reference, no
|
|
253
|
+
// dangling order — with single-parent earlier-order edges a cycle is
|
|
254
|
+
// impossible by construction, so the per-edge checks subsume it).
|
|
255
|
+
// Test-ref RESOLUTION is the smart-side linker rule R39's crosswalk —
|
|
256
|
+
// the kernel checks syntax/shape only.
|
|
257
|
+
R('C92', 'test-sequence-shape', 'base', 'error', 'normal', 'smart architecture-gaps-2026-07.md E10, data/schemas/test-sequences.yaml'),
|
|
258
|
+
R('C93', 'test-sequence-integrity', 'base', 'error', 'normal', 'smart architecture-gaps-2026-07.md E10, data/schemas/test-sequences.yaml'),
|
|
259
|
+
// ── the per-test evaluation-formula traces (smart gap-close E11,
|
|
260
|
+
// analysis/architecture-gaps-2026-07.md; the smart contract
|
|
261
|
+
// data/schemas/formulas-used.yaml) ──
|
|
262
|
+
// The `formulas_used` construct is the first-class replacement for
|
|
263
|
+
// the hand-authored supplemental formulas-used.yaml. C94 is the
|
|
264
|
+
// declaration shape: every trace carries a non-empty test reference
|
|
265
|
+
// (the block symbol), name, description, and a non-empty formulas
|
|
266
|
+
// list; every formula identifier is well-formed — the snake_case
|
|
267
|
+
// shape the calculations registry uses for output names. Entry
|
|
268
|
+
// uniqueness per test is the parse-time duplicate-id rule's, surfaced
|
|
269
|
+
// as C96 (the collection key IS the test reference). Formula-id
|
|
270
|
+
// RESOLUTION
|
|
271
|
+
// (calculations ∪ formulas registries) is the smart-side linker rule
|
|
272
|
+
// R41's crosswalk — the kernel checks syntax/shape only.
|
|
273
|
+
R('C94', 'formulas-used-shape', 'base', 'error', 'normal', 'smart architecture-gaps-2026-07.md E11, data/schemas/formulas-used.yaml'),
|
|
274
|
+
// ── cascade machine routing (smart gap-close E12,
|
|
275
|
+
// analysis/cascade-machine-routing-design.md §4–§5) ──
|
|
276
|
+
// A status-writing cascade step (a mechanical `set` containing
|
|
277
|
+
// `status`, or a semantic `submit`/`lock`) on a machinated target
|
|
278
|
+
// declares `via <transition-action>` and ROUTES the write through a
|
|
279
|
+
// declared transition of the target's own machine, closing the
|
|
280
|
+
// raw-write leak (the walker's cascade handlers Object.assign'd
|
|
281
|
+
// status onto target records with no machine consultation). C95 is
|
|
282
|
+
// the whole routing contract, eight legs (§5): via-present,
|
|
283
|
+
// via-resolves, via-matches-status, via-unguarded,
|
|
284
|
+
// via-forbidden-elsewhere, self-consistency (a self-step writes the
|
|
285
|
+
// owning transition's `to`), status-is-a-state, and fields-resolve
|
|
286
|
+
// (where paths and set/with names against the target entity's
|
|
287
|
+
// declared fields). The catalogued severity is the steady state —
|
|
288
|
+
// error; leg 1 is de-escalated to a warning in check.ts during the
|
|
289
|
+
// rollout window (the shipped corpus carries the 14 via-less steps of
|
|
290
|
+
// the design's §3.2 — the smart declaration leg adds the facets),
|
|
291
|
+
// the C33 de-escalation precedent. The smart-side mirror is linker
|
|
292
|
+
// rule R44 cascade-routing (the C89+R43 spelling-check precedent).
|
|
293
|
+
R('C95', 'cascade-transition-resolve', 'state', 'error', 'normal', 'smart architecture-gaps-2026-07.md E12, analysis/cascade-machine-routing-design.md'),
|
|
294
|
+
// ── id uniqueness (the parse-time rule, surfaced) ──────────────────
|
|
295
|
+
// The parser stays total on a second declaration of one id in one
|
|
296
|
+
// id-keyed collection (last wins the slot) and collects a duplicate-id
|
|
297
|
+
// parse issue; checkPackage surfaces those under C96 — the visibility
|
|
298
|
+
// half of every per-collection uniqueness delegation (C84 constraints,
|
|
299
|
+
// C94 formulas-used; the E11 review finding). Parse-time detection is
|
|
300
|
+
// load-bearing: the parser overwrites the ctx slot, so post-parse the
|
|
301
|
+
// earlier declaration is unrecoverable.
|
|
302
|
+
R('C96', 'duplicate-id', 'base', 'error', 'normal', 'src/duplicate-id.ts, the smart gap-close E11 review finding'),
|
|
303
|
+
// ── the certification program (TODO.v2/01, smart
|
|
304
|
+
// analysis/twin-certification-design.md Q4) ──
|
|
305
|
+
// A fourth publisher with the product_reference shape: the scheme
|
|
306
|
+
// operator's program is related to recs (maps_to) and product packages
|
|
307
|
+
// (pinned abstract imports, C83's edition-pin discipline) by mapping
|
|
308
|
+
// only — composed into nothing. C97: the program's maps_to register
|
|
309
|
+
// resolves (the C81-class resolution discipline) and names no program
|
|
310
|
+
// or product package. C98: a no-surveillance ISO/IEC 17067 scheme
|
|
311
|
+
// shape (type_1a/1b) declared alongside surveillance machinery
|
|
312
|
+
// (monitors, surveillance-classified processes) is a warning — the
|
|
313
|
+
// type_1a/1b shape structurally can't say "continuously".
|
|
314
|
+
R('C97', 'program-maps-resolves', 'base', 'error', 'normal', 'smart TODO.v2/01, analysis/twin-certification-design.md Q4'),
|
|
315
|
+
R('C98', 'program-surveillance-required', 'base', 'warning', 'normal', 'smart TODO.v2/01, analysis/twin-certification-design.md Q4, ISO/IEC 17067 Table 1'),
|
|
316
|
+
// C99 (smart TODO.v2/01 TCD-2; analysis/twin-certification-design.md
|
|
317
|
+
// Q2): the probe-channel provenance facet on a measured test variable —
|
|
318
|
+
// the three-source physical channel a reference reading arrives by.
|
|
319
|
+
// The kernel checks SHAPE and VOCABULARY (register-free): the channel is
|
|
320
|
+
// one of reference_instrument | observer_attestation | sim_ground_truth,
|
|
321
|
+
// the ref cites the channel's register entry, observed_at names a
|
|
322
|
+
// declared variable of the same test, and an observer_attestation
|
|
323
|
+
// channel carries the DECLARED traceability limitation ("twin ≡ display,
|
|
324
|
+
// not twin ≡ mass" — never a comment). The ref's RESOLUTION against the
|
|
325
|
+
// equipment/personnel/sim registers is the smart-side linker's
|
|
326
|
+
// crosswalk (R45).
|
|
327
|
+
R('C99', 'variable-provenance-channel', 'twins', 'error', 'normal', 'smart TODO.v2/01 TCD-2, analysis/twin-certification-design.md Q2'),
|
|
328
|
+
// ── the composition facet (TODO.integration/14; the YAML-side
|
|
329
|
+
// declaration of TODO.v3/03 proven first) ──
|
|
330
|
+
// C100: every composed_of component's product reference resolves (an
|
|
331
|
+
// inline `pkg/subject` names a subject of this package; a bare package
|
|
332
|
+
// id is registered for the supply-chain gate's C81-class resolution)
|
|
333
|
+
// and its endpoint is named. C101: every serve of the composite
|
|
334
|
+
// subject is covered by the decomposition exactly once. C102: the
|
|
335
|
+
// composite state rule's vocabulary is closed
|
|
336
|
+
// (any_fault_else_analyzer first — a new rule is a grammar extension,
|
|
337
|
+
// never a free string).
|
|
338
|
+
R('C100', 'composition-components-resolve', 'twins', 'error', 'normal', 'TODO.integration/14, the composed_of construct (TODO.v3/03 Phase 2)'),
|
|
339
|
+
R('C101', 'composition-decomposition-covers', 'twins', 'error', 'normal', 'TODO.integration/14, the composed_of construct (TODO.v3/03 Phase 2)'),
|
|
340
|
+
R('C102', 'composition-state-rule-closed', 'twins', 'error', 'normal', 'TODO.integration/14, the composed_of construct (TODO.v3/03 Phase 2)'),
|
|
341
|
+
];
|
|
342
|
+
const byId = new Map(exports.CHECK_RULES.map(r => [r.id, r]));
|
|
343
|
+
/** The catalog entry for a rule id, or undefined for an unknown id. */
|
|
344
|
+
function checkRule(id) {
|
|
345
|
+
return byId.get(id);
|
|
346
|
+
}
|
|
347
|
+
/** Rule ids active at a level ('audit' includes the normal rules). */
|
|
348
|
+
function activeRuleIds(level) {
|
|
349
|
+
return new Set(exports.CHECK_RULES.filter(r => level === 'audit' || r.level === 'normal').map(r => r.id));
|
|
350
|
+
}
|
|
351
|
+
//# sourceMappingURL=check-rules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-rules.js","sourceRoot":"","sources":["../../src/check-rules.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { type ResolvePackage } from './ser-des/package';
|
|
2
|
+
import type Standard from './types/Standard';
|
|
3
|
+
export interface CheckIssue {
|
|
4
|
+
check: string;
|
|
5
|
+
severity: 'error' | 'warning';
|
|
6
|
+
message: string;
|
|
7
|
+
/** True when an allowlist entry suppressed this issue (KNOWN — it
|
|
8
|
+
* prints, but it never counts as an error, even under --strict). */
|
|
9
|
+
known?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/** Options for the mapping-aware rules (C21–C26). */
|
|
12
|
+
export interface CheckOptions {
|
|
13
|
+
/**
|
|
14
|
+
* 'normal' (default) | 'audit' — audit strictness additionally warns on
|
|
15
|
+
* mappings without a description (C25) and runs the audit-level
|
|
16
|
+
* coverage closure rules (C51 coverage-test-evidence, C52
|
|
17
|
+
* coverage-form-judgment).
|
|
18
|
+
*/
|
|
19
|
+
strictness?: 'normal' | 'audit';
|
|
20
|
+
/**
|
|
21
|
+
* --strict: promote every warning to an error — EXCEPT KNOWN
|
|
22
|
+
* (allowlisted) issues and budget-covered C51/C52 coverage warnings
|
|
23
|
+
* (the package's coverage_budget is their allowance; exceeding it is
|
|
24
|
+
* already a C55 error).
|
|
25
|
+
*/
|
|
26
|
+
strict?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Reference models by namespace. C23 computes coverage against these;
|
|
29
|
+
* when a namespace is absent, the calculus falls back to the package's
|
|
30
|
+
* own `Namespace#…` alias forest (the declared local copies).
|
|
31
|
+
*/
|
|
32
|
+
references?: Record<string, Standard>;
|
|
33
|
+
/**
|
|
34
|
+
* Package locator for the composition rules C27–C31 (TODO.roadmap/05).
|
|
35
|
+
* When provided and the manifest declares `uses`/`extends`, the whole
|
|
36
|
+
* dependency closure is composed and checked; without it those rules
|
|
37
|
+
* stay silent (a linter cannot verify resolution without a locator).
|
|
38
|
+
*/
|
|
39
|
+
resolvePackage?: ResolvePackage;
|
|
40
|
+
}
|
|
41
|
+
export declare function checkPackage(dir: string, options?: CheckOptions): CheckIssue[];
|
|
42
|
+
export declare function checkManifestResolution(dir: string): CheckIssue[];
|
|
43
|
+
/**
|
|
44
|
+
* C89 — spelling-code-wellformed (TODO.roadmap/25; doctrine ch. 10 §10.7).
|
|
45
|
+
*
|
|
46
|
+
* Every human-readable string is spelling-coded per ISO 24229; BCP 47 is
|
|
47
|
+
* not used. The kernel checks the SYNTAX layer (src/spelling.ts) —
|
|
48
|
+
* register resolution (does this language/script/country/conversion
|
|
49
|
+
* system exist) is the consumer's vendored-snapshot discipline:
|
|
50
|
+
*
|
|
51
|
+
* - the manifest's default_spelling and declared spellings parse as
|
|
52
|
+
* spelling codes (language-script[-country][-extension]; the script
|
|
53
|
+
* is MANDATORY — a bare language code is an error), and the default
|
|
54
|
+
* belongs to the declared set;
|
|
55
|
+
* - every `text` block addresses an existing element's prose field.
|
|
56
|
+
* The address is `<element-id>.<field>` for a top-level field, or
|
|
57
|
+
* `<element-id>.<path…>.<field>` for prose NESTED inside the element
|
|
58
|
+
* (smart gap-close E13): the element is the longest dot-boundary
|
|
59
|
+
* prefix registered in the package (element ids may carry dots), an
|
|
60
|
+
* intermediate segment names a nested structure, a list item is
|
|
61
|
+
* keyed by its declared key (name/order/slot — never a positional
|
|
62
|
+
* index), and the terminal segment is a prose field. A dangling,
|
|
63
|
+
* scalar, or ambiguous segment is an error. The terminal segment's
|
|
64
|
+
* snake_case → camelCase fallback is DELIBERATE and terminal-only
|
|
65
|
+
* (TODO.v2/13 item 3b, pinned — the walk is NOT extended): the
|
|
66
|
+
* terminal draws from the FIXED prose-field vocabulary authored in
|
|
67
|
+
* snake_case (the PROSE_FIELDS set — `true_label`, `scope_note`, …)
|
|
68
|
+
* while the parsed structure holds the property camelCase
|
|
69
|
+
* (`trueLabel`, …), so the vocabulary lookup translates exactly
|
|
70
|
+
* there. Intermediate segments are not vocabulary lookups — they
|
|
71
|
+
* name nested structures by the parsed model's own property names
|
|
72
|
+
* or key list items by author-declared content (names/orders/slots)
|
|
73
|
+
* — so a case translation there would bless a second spelling of
|
|
74
|
+
* machine structure (and an ambiguity where `foo_bar` and `fooBar`
|
|
75
|
+
* collide); no shipped nested structure name needs it (the corpus
|
|
76
|
+
* legs);
|
|
77
|
+
* - every spell entry's code parses; a duplicate code within one
|
|
78
|
+
* content set is an error (use an extension to distinguish);
|
|
79
|
+
* - an entry repeating the package's default_spelling is an error —
|
|
80
|
+
* the default's value belongs inline on the element (`name "…"`);
|
|
81
|
+
* - every `via` conversion system code parses
|
|
82
|
+
* (titular:source:target:identifying); a `zz-` user-assigned code
|
|
83
|
+
* validates with a warning (user-assigned codes are not portable).
|
|
84
|
+
*/
|
|
85
|
+
export declare function checkSpellingCodes(standard: Standard): CheckIssue[];
|
|
86
|
+
/**
|
|
87
|
+
* C77–C80 + C85 — edition lifecycle (TODO.roadmap/28; doctrine ch. 13
|
|
88
|
+
* §13.4/§13.7) and the manifest base URN (TODO.roadmap/27). Editions are
|
|
89
|
+
* packagings: the relations live on the manifest, and the checks run
|
|
90
|
+
* WITHOUT composing content (the checkManifestResolution sibling
|
|
91
|
+
* pattern — supersedes acyclicity is a property of the repo's manifest
|
|
92
|
+
* set).
|
|
93
|
+
*
|
|
94
|
+
* C77 edition-status: a current/preview edition packages the register's
|
|
95
|
+
* newest entry. (The status ENUM itself is enforced by the manifest
|
|
96
|
+
* parser, like `kind` — an unknown token is a parse error.)
|
|
97
|
+
* C78 edition-validity-window: the window is well-formed ISO 8601 and
|
|
98
|
+
* `to` is not before `from`.
|
|
99
|
+
* C79 edition-supersedes-resolves: supersedes/replaces targets are
|
|
100
|
+
* well-formed URNs, never the package itself; a target naming an
|
|
101
|
+
* earlier edition OF THE SAME document resolves against the edition
|
|
102
|
+
* register (warning when the register omits it); the supersedes
|
|
103
|
+
* graph over sibling manifests is acyclic.
|
|
104
|
+
* C80 edition-pin-resolves (INV-8): every instance's
|
|
105
|
+
* definition_versions pin resolves against the package's edition
|
|
106
|
+
* register (editions ∪ {version}) — an unresolvable pin breaks the
|
|
107
|
+
* re-execution guarantee (§13.5: after an edition change the engine
|
|
108
|
+
* must know exactly which reports re-judge).
|
|
109
|
+
* C85 baseurn-wellformed: the base URN is a well-formed IRI — it
|
|
110
|
+
* grounds every downstream IRI (the RDF projection, provenance
|
|
111
|
+
* comparisons), and the free-string field was the one manifest
|
|
112
|
+
* IRI surface nothing validated.
|
|
113
|
+
*/
|
|
114
|
+
export declare function checkEditionLifecycle(dir: string, standard: Standard): CheckIssue[];
|
|
115
|
+
//# sourceMappingURL=check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/check.ts"],"names":[],"mappings":"AAqTA,OAAO,EAKL,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAW3B,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAsD7C,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB;yEACqE;IACrE,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,qDAAqD;AACrD,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAChC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AA+CD,wBAAgB,YAAY,CAC1B,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,YAAiB,GACzB,UAAU,EAAE,CAwtId;AAoBD,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,EAAE,CAwFjE;AA4BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,UAAU,EAAE,CAwQnE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,QAAQ,GACjB,UAAU,EAAE,CA6Kd"}
|