@polintpro/proposit-core 0.5.2 → 0.5.6
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 +148 -6
- package/dist/cli/commands/arguments.d.ts.map +1 -1
- package/dist/cli/commands/arguments.js +33 -5
- package/dist/cli/commands/arguments.js.map +1 -1
- package/dist/cli/commands/claims.d.ts +3 -0
- package/dist/cli/commands/claims.d.ts.map +1 -0
- package/dist/cli/commands/claims.js +79 -0
- package/dist/cli/commands/claims.js.map +1 -0
- package/dist/cli/commands/parse.d.ts +3 -0
- package/dist/cli/commands/parse.d.ts.map +1 -0
- package/dist/cli/commands/parse.js +138 -0
- package/dist/cli/commands/parse.js.map +1 -0
- package/dist/cli/commands/sources.d.ts +1 -1
- package/dist/cli/commands/sources.d.ts.map +1 -1
- package/dist/cli/commands/sources.js +79 -94
- package/dist/cli/commands/sources.js.map +1 -1
- package/dist/cli/commands/variables.d.ts.map +1 -1
- package/dist/cli/commands/variables.js +37 -1
- package/dist/cli/commands/variables.js.map +1 -1
- package/dist/cli/config.d.ts +0 -2
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +0 -6
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/engine.d.ts +14 -1
- package/dist/cli/engine.d.ts.map +1 -1
- package/dist/cli/engine.js +51 -35
- package/dist/cli/engine.js.map +1 -1
- package/dist/cli/import.d.ts +9 -1
- package/dist/cli/import.d.ts.map +1 -1
- package/dist/cli/import.js +5 -2
- package/dist/cli/import.js.map +1 -1
- package/dist/cli/llm/index.d.ts +6 -0
- package/dist/cli/llm/index.d.ts.map +1 -0
- package/dist/cli/llm/index.js +26 -0
- package/dist/cli/llm/index.js.map +1 -0
- package/dist/cli/llm/openai.d.ts +4 -0
- package/dist/cli/llm/openai.d.ts.map +1 -0
- package/dist/cli/llm/openai.js +44 -0
- package/dist/cli/llm/openai.js.map +1 -0
- package/dist/cli/llm/types.d.ts +14 -0
- package/dist/cli/llm/types.d.ts.map +1 -0
- package/dist/cli/llm/types.js +2 -0
- package/dist/cli/llm/types.js.map +1 -0
- package/dist/cli/router.d.ts.map +1 -1
- package/dist/cli/router.js +2 -0
- package/dist/cli/router.js.map +1 -1
- package/dist/cli/schemata.d.ts +0 -8
- package/dist/cli/schemata.d.ts.map +1 -1
- package/dist/cli/schemata.js +0 -10
- package/dist/cli/schemata.js.map +1 -1
- package/dist/cli/storage/libraries.d.ts +11 -0
- package/dist/cli/storage/libraries.d.ts.map +1 -0
- package/dist/cli/storage/libraries.js +61 -0
- package/dist/cli/storage/libraries.js.map +1 -0
- package/dist/cli.js +3 -1
- package/dist/cli.js.map +1 -1
- package/dist/extensions/basics/argument-parser.d.ts +12 -0
- package/dist/extensions/basics/argument-parser.d.ts.map +1 -0
- package/dist/extensions/basics/argument-parser.js +27 -0
- package/dist/extensions/basics/argument-parser.js.map +1 -0
- package/dist/extensions/basics/index.d.ts +4 -0
- package/dist/extensions/basics/index.d.ts.map +1 -0
- package/dist/extensions/basics/index.js +3 -0
- package/dist/extensions/basics/index.js.map +1 -0
- package/dist/extensions/basics/schemata.d.ts +31 -0
- package/dist/extensions/basics/schemata.d.ts.map +1 -0
- package/dist/extensions/basics/schemata.js +55 -0
- package/dist/extensions/basics/schemata.js.map +1 -0
- package/dist/lib/consts.d.ts.map +1 -1
- package/dist/lib/consts.js +7 -15
- package/dist/lib/consts.js.map +1 -1
- package/dist/lib/core/argument-engine.d.ts +15 -27
- package/dist/lib/core/argument-engine.d.ts.map +1 -1
- package/dist/lib/core/argument-engine.js +236 -242
- package/dist/lib/core/argument-engine.js.map +1 -1
- package/dist/lib/core/change-collector.d.ts +0 -7
- package/dist/lib/core/change-collector.d.ts.map +1 -1
- package/dist/lib/core/change-collector.js +0 -18
- package/dist/lib/core/change-collector.js.map +1 -1
- package/dist/lib/core/claim-library.d.ts +2 -2
- package/dist/lib/core/claim-library.d.ts.map +1 -1
- package/dist/lib/core/claim-source-library.d.ts +27 -0
- package/dist/lib/core/claim-source-library.d.ts.map +1 -0
- package/dist/lib/core/claim-source-library.js +116 -0
- package/dist/lib/core/claim-source-library.js.map +1 -0
- package/dist/lib/core/diff.d.ts +3 -7
- package/dist/lib/core/diff.d.ts.map +1 -1
- package/dist/lib/core/diff.js +14 -79
- package/dist/lib/core/diff.js.map +1 -1
- package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts +30 -9
- package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts.map +1 -1
- package/dist/lib/core/interfaces/index.d.ts +1 -2
- package/dist/lib/core/interfaces/index.d.ts.map +1 -1
- package/dist/lib/core/interfaces/library.interfaces.d.ts +251 -5
- package/dist/lib/core/interfaces/library.interfaces.d.ts.map +1 -1
- package/dist/lib/core/interfaces/premise-engine.interfaces.d.ts +20 -29
- package/dist/lib/core/interfaces/premise-engine.interfaces.d.ts.map +1 -1
- package/dist/lib/core/parser/formula-gen.js +120 -47
- package/dist/lib/core/premise-engine.d.ts +7 -8
- package/dist/lib/core/premise-engine.d.ts.map +1 -1
- package/dist/lib/core/premise-engine.js +66 -82
- package/dist/lib/core/premise-engine.js.map +1 -1
- package/dist/lib/core/source-library.d.ts +2 -2
- package/dist/lib/core/source-library.d.ts.map +1 -1
- package/dist/lib/core/variable-manager.d.ts +3 -4
- package/dist/lib/core/variable-manager.d.ts.map +1 -1
- package/dist/lib/core/variable-manager.js +11 -1
- package/dist/lib/core/variable-manager.js.map +1 -1
- package/dist/lib/index.d.ts +3 -3
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +3 -2
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/parsing/argument-parser.d.ts +47 -0
- package/dist/lib/parsing/argument-parser.d.ts.map +1 -0
- package/dist/lib/parsing/argument-parser.js +307 -0
- package/dist/lib/parsing/argument-parser.js.map +1 -0
- package/dist/lib/parsing/index.d.ts +7 -0
- package/dist/lib/parsing/index.d.ts.map +1 -0
- package/dist/lib/parsing/index.js +4 -0
- package/dist/lib/parsing/index.js.map +1 -0
- package/dist/lib/parsing/prompt-builder.d.ts +11 -0
- package/dist/lib/parsing/prompt-builder.d.ts.map +1 -0
- package/dist/lib/parsing/prompt-builder.js +178 -0
- package/dist/lib/parsing/prompt-builder.js.map +1 -0
- package/dist/lib/parsing/schemata.d.ts +77 -0
- package/dist/lib/parsing/schemata.d.ts.map +1 -0
- package/dist/lib/parsing/schemata.js +88 -0
- package/dist/lib/parsing/schemata.js.map +1 -0
- package/dist/lib/parsing/types.d.ts +13 -0
- package/dist/lib/parsing/types.d.ts.map +1 -0
- package/dist/lib/parsing/types.js +2 -0
- package/dist/lib/parsing/types.js.map +1 -0
- package/dist/lib/schemata/propositional.d.ts +36 -2
- package/dist/lib/schemata/propositional.d.ts.map +1 -1
- package/dist/lib/schemata/propositional.js +30 -4
- package/dist/lib/schemata/propositional.js.map +1 -1
- package/dist/lib/schemata/source.d.ts +4 -16
- package/dist/lib/schemata/source.d.ts.map +1 -1
- package/dist/lib/schemata/source.js +7 -17
- package/dist/lib/schemata/source.js.map +1 -1
- package/dist/lib/types/checksum.d.ts +2 -4
- package/dist/lib/types/checksum.d.ts.map +1 -1
- package/dist/lib/types/diff.d.ts +1 -5
- package/dist/lib/types/diff.d.ts.map +1 -1
- package/dist/lib/types/evaluation.d.ts +1 -1
- package/dist/lib/types/evaluation.d.ts.map +1 -1
- package/dist/lib/types/mutation.d.ts +0 -3
- package/dist/lib/types/mutation.d.ts.map +1 -1
- package/dist/lib/types/reactive.d.ts +1 -3
- package/dist/lib/types/reactive.d.ts.map +1 -1
- package/package.json +5 -1
- package/dist/cli/storage/sources.d.ts +0 -11
- package/dist/cli/storage/sources.d.ts.map +0 -1
- package/dist/cli/storage/sources.js +0 -105
- package/dist/cli/storage/sources.js.map +0 -1
- package/dist/lib/core/interfaces/source-management.interfaces.d.ts +0 -63
- package/dist/lib/core/interfaces/source-management.interfaces.d.ts.map +0 -1
- package/dist/lib/core/interfaces/source-management.interfaces.js +0 -2
- package/dist/lib/core/interfaces/source-management.interfaces.js.map +0 -1
- package/dist/lib/core/source-manager.d.ts +0 -38
- package/dist/lib/core/source-manager.d.ts.map +0 -1
- package/dist/lib/core/source-manager.js +0 -266
- package/dist/lib/core/source-manager.js.map +0 -1
|
@@ -1,118 +1,103 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
1
2
|
import { Command } from "commander";
|
|
2
|
-
import {
|
|
3
|
-
import { errorExit, printLine } from "../output.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const meta = await readVersionMeta(argumentId, version);
|
|
7
|
-
if (meta.published) {
|
|
8
|
-
errorExit(`Version ${version} of argument "${argumentId}" is published and cannot be modified.`);
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
export function registerSourceCommands(versionedCmd, argumentId, version) {
|
|
12
|
-
const sources = versionedCmd
|
|
3
|
+
import { hydrateLibraries, persistLibraries } from "../engine.js";
|
|
4
|
+
import { errorExit, printJson, printLine } from "../output.js";
|
|
5
|
+
export function registerSourceCommands(program) {
|
|
6
|
+
const sources = program
|
|
13
7
|
.command("sources")
|
|
14
|
-
.description("Manage
|
|
15
|
-
// ── add ────────────────────────────────────────────────────────────────
|
|
16
|
-
sources
|
|
17
|
-
.command("add")
|
|
18
|
-
.description("Add a new source")
|
|
19
|
-
.requiredOption("--url <url>", "Source URL")
|
|
20
|
-
.option("--id <source_id>", "Explicit source ID (default: generated UUID)")
|
|
21
|
-
.action(async (_opts) => {
|
|
22
|
-
await assertNotPublished(argumentId, version);
|
|
23
|
-
errorExit("Source entity management has moved to global SourceLibrary. Not yet implemented in CLI.");
|
|
24
|
-
});
|
|
25
|
-
// ── remove ─────────────────────────────────────────────────────────────
|
|
26
|
-
sources
|
|
27
|
-
.command("remove <source_id>")
|
|
28
|
-
.description("Remove a source and its associations")
|
|
29
|
-
.action(async (_sourceId) => {
|
|
30
|
-
await assertNotPublished(argumentId, version);
|
|
31
|
-
errorExit("Source entity management has moved to global SourceLibrary. Not yet implemented in CLI.");
|
|
32
|
-
});
|
|
33
|
-
// ── list ───────────────────────────────────────────────────────────────
|
|
8
|
+
.description("Manage global source library");
|
|
34
9
|
sources
|
|
35
10
|
.command("list")
|
|
36
11
|
.description("List all sources")
|
|
37
12
|
.option("--json", "Output as JSON")
|
|
38
|
-
.action(async (
|
|
39
|
-
|
|
13
|
+
.action(async (opts) => {
|
|
14
|
+
const { sourceLibrary } = await hydrateLibraries();
|
|
15
|
+
const all = sourceLibrary.getAll();
|
|
16
|
+
if (opts.json) {
|
|
17
|
+
printJson(all);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
for (const source of all) {
|
|
21
|
+
const extras = source;
|
|
22
|
+
const text = typeof extras.text === "string"
|
|
23
|
+
? ` | ${extras.text}`
|
|
24
|
+
: "";
|
|
25
|
+
printLine(`${source.id}@${source.version}${text}`);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
40
28
|
});
|
|
41
|
-
// ── show ───────────────────────────────────────────────────────────────
|
|
42
29
|
sources
|
|
43
30
|
.command("show <source_id>")
|
|
44
|
-
.description("Show
|
|
31
|
+
.description("Show all versions of a source")
|
|
45
32
|
.option("--json", "Output as JSON")
|
|
46
|
-
.action(async (
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
.command("link-variable <source_id> <variable_id>")
|
|
52
|
-
.description("Link a source to a variable")
|
|
53
|
-
.action(async (sourceId, variableId) => {
|
|
54
|
-
await assertNotPublished(argumentId, version);
|
|
55
|
-
const engine = await hydrateEngine(argumentId, version);
|
|
56
|
-
try {
|
|
57
|
-
// TODO: resolve actual source version from SourceLibrary
|
|
58
|
-
engine.addVariableSourceAssociation(sourceId, 0, variableId);
|
|
33
|
+
.action(async (sourceId, opts) => {
|
|
34
|
+
const { sourceLibrary } = await hydrateLibraries();
|
|
35
|
+
const versions = sourceLibrary.getVersions(sourceId);
|
|
36
|
+
if (versions.length === 0) {
|
|
37
|
+
errorExit(`Source "${sourceId}" not found.`);
|
|
59
38
|
}
|
|
60
|
-
|
|
61
|
-
|
|
39
|
+
if (opts.json) {
|
|
40
|
+
printJson(versions);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
for (const v of versions) {
|
|
44
|
+
const extras = v;
|
|
45
|
+
const frozen = v.frozen ? " [frozen]" : "";
|
|
46
|
+
const text = typeof extras.text === "string"
|
|
47
|
+
? ` | ${extras.text}`
|
|
48
|
+
: "";
|
|
49
|
+
printLine(`v${v.version}${frozen}${text}`);
|
|
50
|
+
}
|
|
62
51
|
}
|
|
63
|
-
await persistEngine(engine);
|
|
64
|
-
printLine("success");
|
|
65
52
|
});
|
|
66
|
-
// ── link-expression ────────────────────────────────────────────────────
|
|
67
53
|
sources
|
|
68
|
-
.command("
|
|
69
|
-
.description("
|
|
70
|
-
.
|
|
71
|
-
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
54
|
+
.command("add")
|
|
55
|
+
.description("Create a new source")
|
|
56
|
+
.requiredOption("--text <text>", "Source text")
|
|
57
|
+
.action(async (opts) => {
|
|
58
|
+
const libs = await hydrateLibraries();
|
|
59
|
+
const source = libs.sourceLibrary.create({
|
|
60
|
+
id: randomUUID(),
|
|
61
|
+
text: opts.text,
|
|
62
|
+
});
|
|
63
|
+
await persistLibraries(libs.claimLibrary, libs.sourceLibrary, libs.claimSourceLibrary);
|
|
64
|
+
printLine(source.id);
|
|
65
|
+
});
|
|
66
|
+
sources
|
|
67
|
+
.command("link-claim <source_id> <claim_id>")
|
|
68
|
+
.description("Link a source to a claim via a new association")
|
|
69
|
+
.action(async (sourceId, claimId) => {
|
|
70
|
+
const libs = await hydrateLibraries();
|
|
71
|
+
const source = libs.sourceLibrary.getCurrent(sourceId);
|
|
72
|
+
if (!source) {
|
|
73
|
+
errorExit(`Source "${sourceId}" not found.`);
|
|
81
74
|
}
|
|
82
|
-
|
|
83
|
-
|
|
75
|
+
const claim = libs.claimLibrary.getCurrent(claimId);
|
|
76
|
+
if (!claim) {
|
|
77
|
+
errorExit(`Claim "${claimId}" not found.`);
|
|
84
78
|
}
|
|
85
|
-
|
|
86
|
-
|
|
79
|
+
const assoc = libs.claimSourceLibrary.add({
|
|
80
|
+
id: randomUUID(),
|
|
81
|
+
claimId: claim.id,
|
|
82
|
+
claimVersion: claim.version,
|
|
83
|
+
sourceId: source.id,
|
|
84
|
+
sourceVersion: source.version,
|
|
85
|
+
});
|
|
86
|
+
await persistLibraries(libs.claimLibrary, libs.sourceLibrary, libs.claimSourceLibrary);
|
|
87
|
+
printLine(assoc.id);
|
|
87
88
|
});
|
|
88
|
-
// ── unlink ─────────────────────────────────────────────────────────────
|
|
89
89
|
sources
|
|
90
90
|
.command("unlink <association_id>")
|
|
91
|
-
.description("Remove a source association")
|
|
91
|
+
.description("Remove a claim-source association")
|
|
92
92
|
.action(async (associationId) => {
|
|
93
|
-
await
|
|
94
|
-
const
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
.getAllVariableSourceAssociations()
|
|
98
|
-
.find((a) => a.id === associationId);
|
|
99
|
-
if (varAssoc) {
|
|
100
|
-
engine.removeVariableSourceAssociation(associationId);
|
|
101
|
-
await persistEngine(engine);
|
|
102
|
-
printLine("success");
|
|
103
|
-
return;
|
|
93
|
+
const libs = await hydrateLibraries();
|
|
94
|
+
const assoc = libs.claimSourceLibrary.get(associationId);
|
|
95
|
+
if (!assoc) {
|
|
96
|
+
errorExit(`Association "${associationId}" not found.`);
|
|
104
97
|
}
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
.find((a) => a.id === associationId);
|
|
109
|
-
if (exprAssoc) {
|
|
110
|
-
engine.removeExpressionSourceAssociation(associationId);
|
|
111
|
-
await persistEngine(engine);
|
|
112
|
-
printLine("success");
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
errorExit(`Association "${associationId}" not found.`);
|
|
98
|
+
libs.claimSourceLibrary.remove(associationId);
|
|
99
|
+
await persistLibraries(libs.claimLibrary, libs.sourceLibrary, libs.claimSourceLibrary);
|
|
100
|
+
printLine("success");
|
|
116
101
|
});
|
|
117
102
|
}
|
|
118
103
|
//# sourceMappingURL=sources.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../src/cli/commands/sources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../src/cli/commands/sources.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variables.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/variables.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"variables.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/variables.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA2BnC,wBAAgB,wBAAwB,CACpC,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAChB,IAAI,CAyNN"}
|
|
@@ -3,6 +3,7 @@ import { Command } from "commander";
|
|
|
3
3
|
import { hydrateEngine, persistEngine } from "../engine.js";
|
|
4
4
|
import { errorExit, printJson, printLine, requireConfirmation, } from "../output.js";
|
|
5
5
|
import { readVersionMeta } from "../storage/arguments.js";
|
|
6
|
+
import { isClaimBound, isPremiseBound, } from "../../lib/schemata/index.js";
|
|
6
7
|
async function assertNotPublished(argumentId, version) {
|
|
7
8
|
const meta = await readVersionMeta(argumentId, version);
|
|
8
9
|
if (meta.published) {
|
|
@@ -38,6 +39,31 @@ export function registerVariableCommands(versionedCmd, argumentId, version) {
|
|
|
38
39
|
await persistEngine(engine);
|
|
39
40
|
printLine(newId);
|
|
40
41
|
});
|
|
42
|
+
vars.command("bind <symbol>")
|
|
43
|
+
.description("Register a premise-bound variable whose truth value derives from another premise")
|
|
44
|
+
.requiredOption("--premiseId <premise_id>", "ID of the premise to bind")
|
|
45
|
+
.option("--id <variable_id>", "Explicit variable ID (default: generated UUID)")
|
|
46
|
+
.action(async (symbol, opts) => {
|
|
47
|
+
await assertNotPublished(argumentId, version);
|
|
48
|
+
const engine = await hydrateEngine(argumentId, version);
|
|
49
|
+
const newId = opts.id ?? randomUUID();
|
|
50
|
+
try {
|
|
51
|
+
engine.bindVariableToPremise({
|
|
52
|
+
id: newId,
|
|
53
|
+
argumentId,
|
|
54
|
+
argumentVersion: version,
|
|
55
|
+
symbol,
|
|
56
|
+
boundPremiseId: opts.premiseId,
|
|
57
|
+
boundArgumentId: argumentId,
|
|
58
|
+
boundArgumentVersion: version,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
catch (err) {
|
|
62
|
+
errorExit(err instanceof Error ? err.message : String(err));
|
|
63
|
+
}
|
|
64
|
+
await persistEngine(engine);
|
|
65
|
+
printLine(newId);
|
|
66
|
+
});
|
|
41
67
|
vars.command("list")
|
|
42
68
|
.description("List all variables")
|
|
43
69
|
.option("--json", "Output as JSON")
|
|
@@ -49,7 +75,17 @@ export function registerVariableCommands(versionedCmd, argumentId, version) {
|
|
|
49
75
|
}
|
|
50
76
|
else {
|
|
51
77
|
for (const v of variables) {
|
|
52
|
-
|
|
78
|
+
const typed = v;
|
|
79
|
+
let binding = "";
|
|
80
|
+
if (isClaimBound(typed)) {
|
|
81
|
+
const cv = typed;
|
|
82
|
+
binding = ` (claim: ${cv.claimId}@${cv.claimVersion})`;
|
|
83
|
+
}
|
|
84
|
+
else if (isPremiseBound(typed)) {
|
|
85
|
+
const pv = typed;
|
|
86
|
+
binding = ` (bound to premise: ${pv.boundPremiseId})`;
|
|
87
|
+
}
|
|
88
|
+
printLine(`${v.id} | ${v.symbol}${binding}`);
|
|
53
89
|
}
|
|
54
90
|
}
|
|
55
91
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variables.js","sourceRoot":"","sources":["../../../src/cli/commands/variables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC3D,OAAO,EACH,SAAS,EACT,SAAS,EACT,SAAS,EACT,mBAAmB,GACtB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"variables.js","sourceRoot":"","sources":["../../../src/cli/commands/variables.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/config.d.ts
CHANGED
|
@@ -4,6 +4,4 @@ export declare function getArgumentDir(argumentId: string): string;
|
|
|
4
4
|
export declare function getVersionDir(argumentId: string, version: number): string;
|
|
5
5
|
export declare function getPremisesDir(argumentId: string, version: number): string;
|
|
6
6
|
export declare function getPremiseDir(argumentId: string, version: number, premiseId: string): string;
|
|
7
|
-
export declare function getSourcesDir(argumentId: string, version: number): string;
|
|
8
|
-
export declare function getSourceDir(argumentId: string, version: number, sourceId: string): string;
|
|
9
7
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/cli/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAGA,wBAAgB,WAAW,IAAI,MAAM,CAIpC;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzE;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,wBAAgB,aAAa,CACzB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAClB,MAAM,CAER
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAGA,wBAAgB,WAAW,IAAI,MAAM,CAIpC;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzE;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,wBAAgB,aAAa,CACzB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAClB,MAAM,CAER"}
|
package/dist/cli/config.js
CHANGED
|
@@ -18,10 +18,4 @@ export function getPremisesDir(argumentId, version) {
|
|
|
18
18
|
export function getPremiseDir(argumentId, version, premiseId) {
|
|
19
19
|
return path.join(getPremisesDir(argumentId, version), premiseId);
|
|
20
20
|
}
|
|
21
|
-
export function getSourcesDir(argumentId, version) {
|
|
22
|
-
return path.join(getVersionDir(argumentId, version), "sources");
|
|
23
|
-
}
|
|
24
|
-
export function getSourceDir(argumentId, version, sourceId) {
|
|
25
|
-
return path.join(getSourcesDir(argumentId, version), sourceId);
|
|
26
|
-
}
|
|
27
21
|
//# sourceMappingURL=config.js.map
|
package/dist/cli/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,MAAM,UAAU,WAAW;IACvB,OAAO,CACH,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,gBAAgB,CAAC,CACzE,CAAA;AACL,CAAC;AAED,MAAM,UAAU,eAAe;IAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,WAAW,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,UAAkB;IAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,UAAU,CAAC,CAAA;AACnD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,UAAkB,EAAE,OAAe;IAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;AACjE,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,UAAkB,EAAE,OAAe;IAC9D,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAA;AACpE,CAAC;AAED,MAAM,UAAU,aAAa,CACzB,UAAkB,EAClB,OAAe,EACf,SAAiB;IAEjB,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,CAAA;AACpE,CAAC
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,MAAM,UAAU,WAAW;IACvB,OAAO,CACH,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,gBAAgB,CAAC,CACzE,CAAA;AACL,CAAC;AAED,MAAM,UAAU,eAAe;IAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,WAAW,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,UAAkB;IAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,UAAU,CAAC,CAAA;AACnD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,UAAkB,EAAE,OAAe;IAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;AACjE,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,UAAkB,EAAE,OAAe;IAC9D,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAA;AACpE,CAAC;AAED,MAAM,UAAU,aAAa,CACzB,UAAkB,EAClB,OAAe,EACf,SAAiB;IAEjB,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,CAAA;AACpE,CAAC"}
|
package/dist/cli/engine.d.ts
CHANGED
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
import { ArgumentEngine } from "../lib/core/argument-engine.js";
|
|
2
|
+
import { ClaimLibrary } from "../lib/core/claim-library.js";
|
|
3
|
+
import { ClaimSourceLibrary } from "../lib/core/claim-source-library.js";
|
|
4
|
+
import { SourceLibrary } from "../lib/core/source-library.js";
|
|
5
|
+
export declare function hydrateLibraries(): Promise<{
|
|
6
|
+
claimLibrary: ClaimLibrary;
|
|
7
|
+
sourceLibrary: SourceLibrary;
|
|
8
|
+
claimSourceLibrary: ClaimSourceLibrary;
|
|
9
|
+
}>;
|
|
10
|
+
export declare function persistLibraries(claimLibrary: ClaimLibrary, sourceLibrary: SourceLibrary, claimSourceLibrary: ClaimSourceLibrary): Promise<void>;
|
|
2
11
|
/**
|
|
3
12
|
* Builds a fully-hydrated ArgumentEngine from the on-disk state for the
|
|
4
13
|
* given argument ID and version number.
|
|
@@ -9,7 +18,11 @@ import { ArgumentEngine } from "../lib/core/argument-engine.js";
|
|
|
9
18
|
* Expressions are added in BFS order (root first, then children) to satisfy
|
|
10
19
|
* the parent-existence requirement of addExpression.
|
|
11
20
|
*/
|
|
12
|
-
export declare function hydrateEngine(argumentId: string, version: number
|
|
21
|
+
export declare function hydrateEngine(argumentId: string, version: number, libraries?: {
|
|
22
|
+
claimLibrary: ClaimLibrary;
|
|
23
|
+
sourceLibrary: SourceLibrary;
|
|
24
|
+
claimSourceLibrary: ClaimSourceLibrary;
|
|
25
|
+
}): Promise<ArgumentEngine>;
|
|
13
26
|
/**
|
|
14
27
|
* Persists a fully-hydrated ArgumentEngine to disk, writing all metadata,
|
|
15
28
|
* variables, roles, and premise data. This is the logical inverse of
|
package/dist/cli/engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/cli/engine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/cli/engine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAiC7D,wBAAsB,gBAAgB,IAAI,OAAO,CAAC;IAC9C,YAAY,EAAE,YAAY,CAAA;IAC1B,aAAa,EAAE,aAAa,CAAA;IAC5B,kBAAkB,EAAE,kBAAkB,CAAA;CACzC,CAAC,CAQD;AAED,wBAAsB,gBAAgB,CAClC,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,kBAAkB,EAAE,kBAAkB,GACvC,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAC/B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE;IACR,YAAY,EAAE,YAAY,CAAA;IAC1B,aAAa,EAAE,aAAa,CAAA;IAC5B,kBAAkB,EAAE,kBAAkB,CAAA;CACzC,GACF,OAAO,CAAC,cAAc,CAAC,CAyHzB;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA2CzE"}
|
package/dist/cli/engine.js
CHANGED
|
@@ -1,13 +1,28 @@
|
|
|
1
1
|
import fs from "node:fs/promises";
|
|
2
2
|
import { ArgumentEngine } from "../lib/core/argument-engine.js";
|
|
3
3
|
import { ClaimLibrary } from "../lib/core/claim-library.js";
|
|
4
|
+
import { ClaimSourceLibrary } from "../lib/core/claim-source-library.js";
|
|
4
5
|
import { SourceLibrary } from "../lib/core/source-library.js";
|
|
5
|
-
import {
|
|
6
|
+
import { isClaimBound } from "../lib/schemata/index.js";
|
|
7
|
+
import { getPremisesDir } from "./config.js";
|
|
6
8
|
import { readArgumentMeta, readVersionMeta, writeArgumentMeta, writeVersionMeta, } from "./storage/arguments.js";
|
|
9
|
+
import { readClaimLibrary, readSourceLibrary, readClaimSourceLibrary, writeClaimLibrary, writeSourceLibrary, writeClaimSourceLibrary, } from "./storage/libraries.js";
|
|
7
10
|
import { listPremiseIds, readPremiseData, readPremiseMeta, writePremiseData, writePremiseMeta, } from "./storage/premises.js";
|
|
8
11
|
import { readRoles, writeRoles } from "./storage/roles.js";
|
|
9
|
-
import { readExpressionAssociations, readVariableAssociations, writeExpressionAssociations, writeVariableAssociations, } from "./storage/sources.js";
|
|
10
12
|
import { readVariables, writeVariables } from "./storage/variables.js";
|
|
13
|
+
export async function hydrateLibraries() {
|
|
14
|
+
const claimLibrary = await readClaimLibrary();
|
|
15
|
+
const sourceLibrary = await readSourceLibrary();
|
|
16
|
+
const claimSourceLibrary = await readClaimSourceLibrary(claimLibrary, sourceLibrary);
|
|
17
|
+
return { claimLibrary, sourceLibrary, claimSourceLibrary };
|
|
18
|
+
}
|
|
19
|
+
export async function persistLibraries(claimLibrary, sourceLibrary, claimSourceLibrary) {
|
|
20
|
+
await Promise.all([
|
|
21
|
+
writeClaimLibrary(claimLibrary),
|
|
22
|
+
writeSourceLibrary(sourceLibrary),
|
|
23
|
+
writeClaimSourceLibrary(claimSourceLibrary),
|
|
24
|
+
]);
|
|
25
|
+
}
|
|
11
26
|
/**
|
|
12
27
|
* Builds a fully-hydrated ArgumentEngine from the on-disk state for the
|
|
13
28
|
* given argument ID and version number.
|
|
@@ -18,7 +33,7 @@ import { readVariables, writeVariables } from "./storage/variables.js";
|
|
|
18
33
|
* Expressions are added in BFS order (root first, then children) to satisfy
|
|
19
34
|
* the parent-existence requirement of addExpression.
|
|
20
35
|
*/
|
|
21
|
-
export async function hydrateEngine(argumentId, version) {
|
|
36
|
+
export async function hydrateEngine(argumentId, version, libraries) {
|
|
22
37
|
const [argMeta, versionMeta, allVariables, roles, premiseIds] = await Promise.all([
|
|
23
38
|
readArgumentMeta(argumentId),
|
|
24
39
|
readVersionMeta(argumentId, version),
|
|
@@ -30,11 +45,42 @@ export async function hydrateEngine(argumentId, version) {
|
|
|
30
45
|
...argMeta,
|
|
31
46
|
...versionMeta,
|
|
32
47
|
};
|
|
33
|
-
const
|
|
48
|
+
const libs = libraries ?? (await hydrateLibraries());
|
|
49
|
+
let { claimLibrary } = libs;
|
|
50
|
+
const { sourceLibrary, claimSourceLibrary } = libs;
|
|
51
|
+
// Placeholder claim generation for backward compatibility.
|
|
52
|
+
// Arguments created before library persistence was implemented have
|
|
53
|
+
// variables referencing claims that don't exist in the library.
|
|
54
|
+
const missingClaims = [];
|
|
55
|
+
for (const variable of allVariables) {
|
|
56
|
+
if (isClaimBound(variable) &&
|
|
57
|
+
!claimLibrary.get(variable.claimId, variable.claimVersion)) {
|
|
58
|
+
missingClaims.push({
|
|
59
|
+
id: variable.claimId,
|
|
60
|
+
version: variable.claimVersion,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (missingClaims.length > 0) {
|
|
65
|
+
const snapshot = claimLibrary.snapshot();
|
|
66
|
+
for (const missing of missingClaims) {
|
|
67
|
+
snapshot.claims.push({
|
|
68
|
+
id: missing.id,
|
|
69
|
+
version: missing.version,
|
|
70
|
+
frozen: true,
|
|
71
|
+
checksum: "",
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
claimLibrary = ClaimLibrary.fromSnapshot(snapshot);
|
|
75
|
+
}
|
|
76
|
+
const engine = new ArgumentEngine(argument, claimLibrary, sourceLibrary, claimSourceLibrary);
|
|
34
77
|
// Register all argument-level variables once on the engine; the shared
|
|
35
78
|
// VariableManager is visible to every PremiseEngine.
|
|
36
79
|
for (const variable of allVariables) {
|
|
37
|
-
engine.addVariable({
|
|
80
|
+
engine.addVariable({
|
|
81
|
+
...variable,
|
|
82
|
+
argumentVersion: version,
|
|
83
|
+
});
|
|
38
84
|
}
|
|
39
85
|
for (const premiseId of premiseIds) {
|
|
40
86
|
const [meta, data] = await Promise.all([
|
|
@@ -84,27 +130,6 @@ export async function hydrateEngine(argumentId, version) {
|
|
|
84
130
|
}
|
|
85
131
|
// Supporting premises are now derived from expression type (inference premises
|
|
86
132
|
// that aren't the conclusion), so no explicit role assignment is needed.
|
|
87
|
-
// ── Sources ────────────────────────────────────────────────────────────
|
|
88
|
-
// Restore sources via snapshot/rollback to preserve association IDs
|
|
89
|
-
// (engine.addVariableSourceAssociation would generate new IDs).
|
|
90
|
-
const [varAssociations, exprAssociations] = await Promise.all([
|
|
91
|
-
readVariableAssociations(argumentId, version),
|
|
92
|
-
readExpressionAssociations(argumentId, version),
|
|
93
|
-
]);
|
|
94
|
-
if (varAssociations.length > 0 || exprAssociations.length > 0) {
|
|
95
|
-
const snap = engine.snapshot();
|
|
96
|
-
snap.sources = {
|
|
97
|
-
variableSourceAssociations: varAssociations.map((a) => ({
|
|
98
|
-
...a,
|
|
99
|
-
checksum: a.checksum ?? "",
|
|
100
|
-
})),
|
|
101
|
-
expressionSourceAssociations: exprAssociations.map((a) => ({
|
|
102
|
-
...a,
|
|
103
|
-
checksum: a.checksum ?? "",
|
|
104
|
-
})),
|
|
105
|
-
};
|
|
106
|
-
engine.rollback(snap);
|
|
107
|
-
}
|
|
108
133
|
return engine;
|
|
109
134
|
}
|
|
110
135
|
/**
|
|
@@ -145,14 +170,5 @@ export async function persistEngine(engine) {
|
|
|
145
170
|
expressions: pm.getExpressions(),
|
|
146
171
|
});
|
|
147
172
|
}
|
|
148
|
-
// ── Sources ────────────────────────────────────────────────────────────
|
|
149
|
-
const sourcesDir = getSourcesDir(id, arg.version);
|
|
150
|
-
await fs.mkdir(sourcesDir, { recursive: true });
|
|
151
|
-
// Source entities now live in the global SourceLibrary and are not
|
|
152
|
-
// persisted per-argument by the engine. Only associations are stored.
|
|
153
|
-
// TODO: persist source entities from SourceLibrary when the CLI is
|
|
154
|
-
// updated to use global libraries.
|
|
155
|
-
await writeVariableAssociations(id, arg.version, engine.getAllVariableSourceAssociations());
|
|
156
|
-
await writeExpressionAssociations(id, arg.version, engine.getAllExpressionSourceAssociations());
|
|
157
173
|
}
|
|
158
174
|
//# sourceMappingURL=engine.js.map
|
package/dist/cli/engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/cli/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/cli/engine.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/import.d.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { ArgumentEngine } from "../lib/core/argument-engine.js";
|
|
2
|
+
import { ClaimLibrary } from "../lib/core/claim-library.js";
|
|
3
|
+
import { ClaimSourceLibrary } from "../lib/core/claim-source-library.js";
|
|
4
|
+
import { SourceLibrary } from "../lib/core/source-library.js";
|
|
2
5
|
/**
|
|
3
6
|
* Parses a YAML string representing a logical argument and returns a
|
|
4
7
|
* fully hydrated ArgumentEngine.
|
|
@@ -10,5 +13,10 @@ import { ArgumentEngine } from "../lib/core/argument-engine.js";
|
|
|
10
13
|
* @throws On YAML parse errors, schema validation failures, formula
|
|
11
14
|
* parse errors, nested implies/iff operators, or multiple conclusions.
|
|
12
15
|
*/
|
|
13
|
-
export declare function importArgumentFromYaml(yamlString: string):
|
|
16
|
+
export declare function importArgumentFromYaml(yamlString: string): {
|
|
17
|
+
engine: ArgumentEngine;
|
|
18
|
+
claimLibrary: ClaimLibrary;
|
|
19
|
+
sourceLibrary: SourceLibrary;
|
|
20
|
+
claimSourceLibrary: ClaimSourceLibrary;
|
|
21
|
+
};
|
|
14
22
|
//# sourceMappingURL=import.d.ts.map
|
package/dist/cli/import.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;
|
|
1
|
+
{"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAqL7D;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG;IACxD,MAAM,EAAE,cAAc,CAAA;IACtB,YAAY,EAAE,YAAY,CAAA;IAC1B,aAAa,EAAE,aAAa,CAAA;IAC5B,kBAAkB,EAAE,kBAAkB,CAAA;CACzC,CAmHA"}
|
package/dist/cli/import.js
CHANGED
|
@@ -5,6 +5,7 @@ import { CoreYamlArgumentSchema } from "../lib/schemata/import.js";
|
|
|
5
5
|
import { parseFormula } from "../lib/core/parser/formula.js";
|
|
6
6
|
import { ArgumentEngine } from "../lib/core/argument-engine.js";
|
|
7
7
|
import { ClaimLibrary } from "../lib/core/claim-library.js";
|
|
8
|
+
import { ClaimSourceLibrary } from "../lib/core/claim-source-library.js";
|
|
8
9
|
import { SourceLibrary } from "../lib/core/source-library.js";
|
|
9
10
|
import { POSITION_INITIAL } from "../lib/utils/position.js";
|
|
10
11
|
/**
|
|
@@ -187,7 +188,9 @@ export function importArgumentFromYaml(yamlString) {
|
|
|
187
188
|
};
|
|
188
189
|
const claimLibrary = new ClaimLibrary();
|
|
189
190
|
const defaultClaim = claimLibrary.create({ id: randomUUID() });
|
|
190
|
-
const
|
|
191
|
+
const sourceLibrary = new SourceLibrary();
|
|
192
|
+
const claimSourceLibrary = new ClaimSourceLibrary(claimLibrary, sourceLibrary);
|
|
193
|
+
const engine = new ArgumentEngine(argument, claimLibrary, sourceLibrary, claimSourceLibrary);
|
|
191
194
|
// Create variables
|
|
192
195
|
const variablesByName = new Map();
|
|
193
196
|
for (const name of [...allVariableNames].sort()) {
|
|
@@ -218,6 +221,6 @@ export function importArgumentFromYaml(yamlString) {
|
|
|
218
221
|
}
|
|
219
222
|
// Non-conclusion inference premises are automatically supporting
|
|
220
223
|
}
|
|
221
|
-
return engine;
|
|
224
|
+
return { engine, claimLibrary, sourceLibrary, claimSourceLibrary };
|
|
222
225
|
}
|
|
223
226
|
//# sourceMappingURL=import.js.map
|