@polintpro/proposit-core 0.5.3 → 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 +147 -0
- 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 +83 -45
- package/dist/cli/commands/sources.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 +45 -2
- 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 +4 -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/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/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 +2 -2
- package/dist/lib/core/claim-source-library.d.ts.map +1 -1
- package/dist/lib/core/interfaces/index.d.ts +1 -1
- package/dist/lib/core/interfaces/index.d.ts.map +1 -1
- package/dist/lib/core/interfaces/library.interfaces.d.ts +243 -14
- package/dist/lib/core/interfaces/library.interfaces.d.ts.map +1 -1
- package/dist/lib/core/interfaces/premise-engine.interfaces.d.ts +19 -0
- 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/source-library.d.ts +2 -2
- package/dist/lib/core/source-library.d.ts.map +1 -1
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +1 -0
- 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/package.json +5 -1
- package/dist/cli/storage/sources.d.ts +0 -4
- package/dist/cli/storage/sources.d.ts.map +0 -1
- package/dist/cli/storage/sources.js +0 -22
- package/dist/cli/storage/sources.js.map +0 -1
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { Value } from "typebox/value";
|
|
3
|
+
import { parseFormula } from "../core/parser/formula.js";
|
|
4
|
+
import { POSITION_INITIAL } from "../utils/position.js";
|
|
5
|
+
import { ArgumentEngine } from "../core/argument-engine.js";
|
|
6
|
+
import { ClaimLibrary } from "../core/claim-library.js";
|
|
7
|
+
import { SourceLibrary } from "../core/source-library.js";
|
|
8
|
+
import { ClaimSourceLibrary } from "../core/claim-source-library.js";
|
|
9
|
+
import { ParsedArgumentResponseSchema } from "./schemata.js";
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
// Internal helpers — reused from src/cli/import.ts patterns
|
|
12
|
+
// ---------------------------------------------------------------------------
|
|
13
|
+
/**
|
|
14
|
+
* Validates that `implies` and `iff` nodes appear only at the AST root.
|
|
15
|
+
*/
|
|
16
|
+
function validateRootOnly(ast, isRoot, premiseMiniId) {
|
|
17
|
+
if (!isRoot && (ast.type === "implies" || ast.type === "iff")) {
|
|
18
|
+
throw new Error(`${ast.type === "implies" ? "Implication (→)" : "Biconditional (↔)"} operator must be at the root of a formula, but found nested in premise "${premiseMiniId}".`);
|
|
19
|
+
}
|
|
20
|
+
switch (ast.type) {
|
|
21
|
+
case "variable":
|
|
22
|
+
break;
|
|
23
|
+
case "not":
|
|
24
|
+
validateRootOnly(ast.operand, false, premiseMiniId);
|
|
25
|
+
break;
|
|
26
|
+
case "and":
|
|
27
|
+
case "or":
|
|
28
|
+
for (const operand of ast.operands) {
|
|
29
|
+
validateRootOnly(operand, false, premiseMiniId);
|
|
30
|
+
}
|
|
31
|
+
break;
|
|
32
|
+
case "implies":
|
|
33
|
+
case "iff":
|
|
34
|
+
validateRootOnly(ast.left, false, premiseMiniId);
|
|
35
|
+
validateRootOnly(ast.right, false, premiseMiniId);
|
|
36
|
+
break;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/** Recursively collects all variable names from a formula AST. */
|
|
40
|
+
function collectVariableNames(ast, names) {
|
|
41
|
+
switch (ast.type) {
|
|
42
|
+
case "variable":
|
|
43
|
+
names.add(ast.name);
|
|
44
|
+
break;
|
|
45
|
+
case "not":
|
|
46
|
+
collectVariableNames(ast.operand, names);
|
|
47
|
+
break;
|
|
48
|
+
case "and":
|
|
49
|
+
case "or":
|
|
50
|
+
for (const operand of ast.operands) {
|
|
51
|
+
collectVariableNames(operand, names);
|
|
52
|
+
}
|
|
53
|
+
break;
|
|
54
|
+
case "implies":
|
|
55
|
+
case "iff":
|
|
56
|
+
collectVariableNames(ast.left, names);
|
|
57
|
+
collectVariableNames(ast.right, names);
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Converts a formula AST into expression objects and adds them to a premise.
|
|
63
|
+
*/
|
|
64
|
+
function buildExpressions(ast, parentId, position, argumentId, argumentVersion, premiseId, variablesBySymbol, addExpression) {
|
|
65
|
+
const id = randomUUID();
|
|
66
|
+
switch (ast.type) {
|
|
67
|
+
case "variable": {
|
|
68
|
+
const variable = variablesBySymbol.get(ast.name);
|
|
69
|
+
addExpression({
|
|
70
|
+
id,
|
|
71
|
+
argumentId,
|
|
72
|
+
argumentVersion,
|
|
73
|
+
premiseId,
|
|
74
|
+
type: "variable",
|
|
75
|
+
variableId: variable.id,
|
|
76
|
+
parentId,
|
|
77
|
+
position,
|
|
78
|
+
});
|
|
79
|
+
return id;
|
|
80
|
+
}
|
|
81
|
+
case "not": {
|
|
82
|
+
addExpression({
|
|
83
|
+
id,
|
|
84
|
+
argumentId,
|
|
85
|
+
argumentVersion,
|
|
86
|
+
premiseId,
|
|
87
|
+
type: "operator",
|
|
88
|
+
operator: "not",
|
|
89
|
+
parentId,
|
|
90
|
+
position,
|
|
91
|
+
});
|
|
92
|
+
buildExpressions(ast.operand, id, 0, argumentId, argumentVersion, premiseId, variablesBySymbol, addExpression);
|
|
93
|
+
return id;
|
|
94
|
+
}
|
|
95
|
+
case "and":
|
|
96
|
+
case "or": {
|
|
97
|
+
addExpression({
|
|
98
|
+
id,
|
|
99
|
+
argumentId,
|
|
100
|
+
argumentVersion,
|
|
101
|
+
premiseId,
|
|
102
|
+
type: "operator",
|
|
103
|
+
operator: ast.type,
|
|
104
|
+
parentId,
|
|
105
|
+
position,
|
|
106
|
+
});
|
|
107
|
+
for (let i = 0; i < ast.operands.length; i++) {
|
|
108
|
+
buildExpressions(ast.operands[i], id, i, argumentId, argumentVersion, premiseId, variablesBySymbol, addExpression);
|
|
109
|
+
}
|
|
110
|
+
return id;
|
|
111
|
+
}
|
|
112
|
+
case "implies":
|
|
113
|
+
case "iff": {
|
|
114
|
+
addExpression({
|
|
115
|
+
id,
|
|
116
|
+
argumentId,
|
|
117
|
+
argumentVersion,
|
|
118
|
+
premiseId,
|
|
119
|
+
type: "operator",
|
|
120
|
+
operator: ast.type,
|
|
121
|
+
parentId,
|
|
122
|
+
position,
|
|
123
|
+
});
|
|
124
|
+
buildExpressions(ast.left, id, 0, argumentId, argumentVersion, premiseId, variablesBySymbol, addExpression);
|
|
125
|
+
buildExpressions(ast.right, id, 1, argumentId, argumentVersion, premiseId, variablesBySymbol, addExpression);
|
|
126
|
+
return id;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
// ---------------------------------------------------------------------------
|
|
131
|
+
// ArgumentParser
|
|
132
|
+
// ---------------------------------------------------------------------------
|
|
133
|
+
/**
|
|
134
|
+
* Validates and builds an `ArgumentEngine` from a parsed LLM response.
|
|
135
|
+
*
|
|
136
|
+
* Override the protected `map*` hooks to inject custom fields into
|
|
137
|
+
* the entities created during the build phase.
|
|
138
|
+
*/
|
|
139
|
+
export class ArgumentParser {
|
|
140
|
+
responseSchema;
|
|
141
|
+
constructor(responseSchema) {
|
|
142
|
+
this.responseSchema = responseSchema ?? ParsedArgumentResponseSchema;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Validate raw LLM output against the response schema.
|
|
146
|
+
*/
|
|
147
|
+
validate(raw) {
|
|
148
|
+
return Value.Parse(this.responseSchema, raw);
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Build an ArgumentEngine from a validated response.
|
|
152
|
+
*
|
|
153
|
+
* @throws If `response.argument` is null
|
|
154
|
+
* @throws If any formula references an undeclared variable
|
|
155
|
+
* @throws If any formula contains nested implies/iff
|
|
156
|
+
* @throws If a variable references an undeclared claim miniId
|
|
157
|
+
* @throws If the conclusion premise miniId is unresolvable
|
|
158
|
+
*/
|
|
159
|
+
build(response) {
|
|
160
|
+
const arg = response.argument;
|
|
161
|
+
if (!arg) {
|
|
162
|
+
throw new Error("Cannot build: argument is null.");
|
|
163
|
+
}
|
|
164
|
+
// 1. Parse all formulas upfront and validate
|
|
165
|
+
const declaredSymbols = new Set(arg.variables.map((v) => v.symbol));
|
|
166
|
+
const parsedFormulas = [];
|
|
167
|
+
for (const premise of arg.premises) {
|
|
168
|
+
let ast;
|
|
169
|
+
try {
|
|
170
|
+
ast = parseFormula(premise.formula);
|
|
171
|
+
}
|
|
172
|
+
catch (error) {
|
|
173
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
174
|
+
throw new Error(`Failed to parse formula for premise "${premise.miniId}": ${msg}`);
|
|
175
|
+
}
|
|
176
|
+
// Validate root-only constraint
|
|
177
|
+
validateRootOnly(ast, true, premise.miniId);
|
|
178
|
+
// Verify all variable names match declared variables
|
|
179
|
+
const formulaVarNames = new Set();
|
|
180
|
+
collectVariableNames(ast, formulaVarNames);
|
|
181
|
+
for (const name of formulaVarNames) {
|
|
182
|
+
if (!declaredSymbols.has(name)) {
|
|
183
|
+
throw new Error(`Formula for premise "${premise.miniId}" references undeclared variable symbol "${name}". Declared symbols: ${[...declaredSymbols].join(", ")}.`);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
parsedFormulas.push({ ast, premise });
|
|
187
|
+
}
|
|
188
|
+
// 2. Create argument
|
|
189
|
+
const argumentId = randomUUID();
|
|
190
|
+
const argumentVersion = 0;
|
|
191
|
+
const argumentExtras = this.mapArgument(arg);
|
|
192
|
+
const argument = {
|
|
193
|
+
...argumentExtras,
|
|
194
|
+
id: argumentId,
|
|
195
|
+
version: argumentVersion,
|
|
196
|
+
};
|
|
197
|
+
// 3. Create claims
|
|
198
|
+
const claimLibrary = new ClaimLibrary();
|
|
199
|
+
const claimMiniIdToId = new Map();
|
|
200
|
+
for (const parsedClaim of arg.claims) {
|
|
201
|
+
const extras = this.mapClaim(parsedClaim);
|
|
202
|
+
const claimId = randomUUID();
|
|
203
|
+
const claim = claimLibrary.create({
|
|
204
|
+
...extras,
|
|
205
|
+
id: claimId,
|
|
206
|
+
});
|
|
207
|
+
claimMiniIdToId.set(parsedClaim.miniId, {
|
|
208
|
+
id: claim.id,
|
|
209
|
+
version: claim.version,
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
// 4. Create sources
|
|
213
|
+
const sourceLibrary = new SourceLibrary();
|
|
214
|
+
const sourceMiniIdToId = new Map();
|
|
215
|
+
for (const parsedSource of arg.sources) {
|
|
216
|
+
const extras = this.mapSource(parsedSource);
|
|
217
|
+
const sourceId = randomUUID();
|
|
218
|
+
const source = sourceLibrary.create({
|
|
219
|
+
...extras,
|
|
220
|
+
id: sourceId,
|
|
221
|
+
});
|
|
222
|
+
sourceMiniIdToId.set(parsedSource.miniId, {
|
|
223
|
+
id: source.id,
|
|
224
|
+
version: source.version,
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
// 5. Wire claim-source associations
|
|
228
|
+
const claimSourceLibrary = new ClaimSourceLibrary(claimLibrary, sourceLibrary);
|
|
229
|
+
for (const parsedClaim of arg.claims) {
|
|
230
|
+
const claimRef = claimMiniIdToId.get(parsedClaim.miniId);
|
|
231
|
+
for (const sourceMiniId of parsedClaim.sourceMiniIds) {
|
|
232
|
+
const sourceRef = sourceMiniIdToId.get(sourceMiniId);
|
|
233
|
+
if (!sourceRef) {
|
|
234
|
+
throw new Error(`Claim "${parsedClaim.miniId}" references undeclared source "${sourceMiniId}".`);
|
|
235
|
+
}
|
|
236
|
+
const extras = this.mapClaimSourceAssociation(parsedClaim, claimRef.id, sourceRef.id);
|
|
237
|
+
claimSourceLibrary.add({
|
|
238
|
+
...extras,
|
|
239
|
+
id: randomUUID(),
|
|
240
|
+
claimId: claimRef.id,
|
|
241
|
+
claimVersion: claimRef.version,
|
|
242
|
+
sourceId: sourceRef.id,
|
|
243
|
+
sourceVersion: sourceRef.version,
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
// 6. Create ArgumentEngine
|
|
248
|
+
const engine = new ArgumentEngine(argument, claimLibrary, sourceLibrary, claimSourceLibrary);
|
|
249
|
+
// 7. Create variables — resolve claimMiniId to real claim UUID
|
|
250
|
+
const variablesBySymbol = new Map();
|
|
251
|
+
for (const parsedVar of arg.variables) {
|
|
252
|
+
const claimRef = claimMiniIdToId.get(parsedVar.claimMiniId);
|
|
253
|
+
if (!claimRef) {
|
|
254
|
+
throw new Error(`Variable "${parsedVar.miniId}" references undeclared claim miniId "${parsedVar.claimMiniId}".`);
|
|
255
|
+
}
|
|
256
|
+
const extras = this.mapVariable(parsedVar);
|
|
257
|
+
const variable = {
|
|
258
|
+
...extras,
|
|
259
|
+
id: randomUUID(),
|
|
260
|
+
argumentId,
|
|
261
|
+
argumentVersion,
|
|
262
|
+
symbol: parsedVar.symbol,
|
|
263
|
+
claimId: claimRef.id,
|
|
264
|
+
claimVersion: claimRef.version,
|
|
265
|
+
};
|
|
266
|
+
variablesBySymbol.set(parsedVar.symbol, variable);
|
|
267
|
+
engine.addVariable(variable);
|
|
268
|
+
}
|
|
269
|
+
// 8. Create premises and build expression trees
|
|
270
|
+
const premiseMiniIdToId = new Map();
|
|
271
|
+
for (const { ast, premise: parsedPremise } of parsedFormulas) {
|
|
272
|
+
const extras = this.mapPremise(parsedPremise);
|
|
273
|
+
const { result: pm } = engine.createPremise(extras);
|
|
274
|
+
premiseMiniIdToId.set(parsedPremise.miniId, pm.getId());
|
|
275
|
+
buildExpressions(ast, null, POSITION_INITIAL, argumentId, argumentVersion, pm.getId(), variablesBySymbol, (expr) => pm.addExpression(expr));
|
|
276
|
+
}
|
|
277
|
+
// 9. Set conclusion
|
|
278
|
+
const conclusionId = premiseMiniIdToId.get(arg.conclusionPremiseMiniId);
|
|
279
|
+
if (!conclusionId) {
|
|
280
|
+
throw new Error(`Conclusion premise miniId "${arg.conclusionPremiseMiniId}" could not be resolved to a premise.`);
|
|
281
|
+
}
|
|
282
|
+
engine.setConclusionPremise(conclusionId);
|
|
283
|
+
return { engine, claimLibrary, sourceLibrary, claimSourceLibrary };
|
|
284
|
+
}
|
|
285
|
+
// -----------------------------------------------------------------------
|
|
286
|
+
// Protected mapping hooks — override to inject custom fields
|
|
287
|
+
// -----------------------------------------------------------------------
|
|
288
|
+
mapArgument(_parsed) {
|
|
289
|
+
return {};
|
|
290
|
+
}
|
|
291
|
+
mapClaim(_parsed) {
|
|
292
|
+
return {};
|
|
293
|
+
}
|
|
294
|
+
mapSource(_parsed) {
|
|
295
|
+
return {};
|
|
296
|
+
}
|
|
297
|
+
mapVariable(_parsed) {
|
|
298
|
+
return {};
|
|
299
|
+
}
|
|
300
|
+
mapPremise(_parsed) {
|
|
301
|
+
return {};
|
|
302
|
+
}
|
|
303
|
+
mapClaimSourceAssociation(_parsed, _claimId, _sourceId) {
|
|
304
|
+
return {};
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
//# sourceMappingURL=argument-parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"argument-parser.js","sourceRoot":"","sources":["../../../src/lib/parsing/argument-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { ParsedClaimRoleType, ParsedClaimSchema, ParsedVariableSchema, ParsedSourceSchema, ParsedPremiseSchema, ParsedArgumentSchema, ParsedArgumentResponseSchema, buildParsingResponseSchema, getParsingResponseSchema, } from "./schemata.js";
|
|
2
|
+
export type { TParsedClaim, TParsedVariable, TParsedSource, TParsedPremise, TParsedArgument, TParsedArgumentResponse, } from "./schemata.js";
|
|
3
|
+
export { ArgumentParser } from "./argument-parser.js";
|
|
4
|
+
export type { TArgumentParserResult } from "./argument-parser.js";
|
|
5
|
+
export { buildParsingPrompt } from "./prompt-builder.js";
|
|
6
|
+
export type { TPromptOptions, TParsingSchemaOptions } from "./types.js";
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/parsing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,4BAA4B,EAC5B,0BAA0B,EAC1B,wBAAwB,GAC3B,MAAM,eAAe,CAAA;AACtB,YAAY,EACR,YAAY,EACZ,eAAe,EACf,aAAa,EACb,cAAc,EACd,eAAe,EACf,uBAAuB,GAC1B,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,YAAY,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { ParsedClaimRoleType, ParsedClaimSchema, ParsedVariableSchema, ParsedSourceSchema, ParsedPremiseSchema, ParsedArgumentSchema, ParsedArgumentResponseSchema, buildParsingResponseSchema, getParsingResponseSchema, } from "./schemata.js";
|
|
2
|
+
export { ArgumentParser } from "./argument-parser.js";
|
|
3
|
+
export { buildParsingPrompt } from "./prompt-builder.js";
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/parsing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,4BAA4B,EAC5B,0BAA0B,EAC1B,wBAAwB,GAC3B,MAAM,eAAe,CAAA;AAStB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { TSchema } from "typebox";
|
|
2
|
+
import type { TPromptOptions } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Build the system prompt for LLM-based argument parsing.
|
|
5
|
+
*
|
|
6
|
+
* @param responseSchema - The TypeBox response schema (core or extended)
|
|
7
|
+
* @param options - Optional configuration including custom instructions
|
|
8
|
+
* @returns The complete system prompt string
|
|
9
|
+
*/
|
|
10
|
+
export declare function buildParsingPrompt(responseSchema: TSchema, options?: TPromptOptions): string;
|
|
11
|
+
//# sourceMappingURL=prompt-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-builder.d.ts","sourceRoot":"","sources":["../../../src/lib/parsing/prompt-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAmNhD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAC9B,cAAc,EAAE,OAAO,EACvB,OAAO,CAAC,EAAE,cAAc,GACzB,MAAM,CAYR"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core property keys for each sub-schema in the parsed argument response.
|
|
3
|
+
* Used to distinguish extension fields from built-in fields.
|
|
4
|
+
*/
|
|
5
|
+
const CORE_CLAIM_KEYS = new Set(["miniId", "role", "sourceMiniIds"]);
|
|
6
|
+
const CORE_VARIABLE_KEYS = new Set(["miniId", "symbol", "claimMiniId"]);
|
|
7
|
+
const CORE_SOURCE_KEYS = new Set(["miniId", "text"]);
|
|
8
|
+
const CORE_PREMISE_KEYS = new Set(["miniId", "formula"]);
|
|
9
|
+
const CORE_ARGUMENT_KEYS = new Set([
|
|
10
|
+
"claims",
|
|
11
|
+
"variables",
|
|
12
|
+
"sources",
|
|
13
|
+
"premises",
|
|
14
|
+
"conclusionPremiseMiniId",
|
|
15
|
+
]);
|
|
16
|
+
const CORE_RESPONSE_KEYS = new Set([
|
|
17
|
+
"argument",
|
|
18
|
+
"uncategorizedText",
|
|
19
|
+
"selectionRationale",
|
|
20
|
+
"failureText",
|
|
21
|
+
]);
|
|
22
|
+
const CORE_PROMPT = `You are an expert argument analyst specializing in propositional logic. Your task is to analyze text and extract a structured propositional argument from it.
|
|
23
|
+
|
|
24
|
+
## Task
|
|
25
|
+
|
|
26
|
+
Given input text, identify:
|
|
27
|
+
1. The distinct claims (propositions) being made
|
|
28
|
+
2. Assign a variable (a short symbolic name) to each claim, one variable per claim
|
|
29
|
+
3. Write logical formula strings connecting those variables into premises
|
|
30
|
+
4. Identify which premise is the conclusion
|
|
31
|
+
|
|
32
|
+
## Formula Syntax
|
|
33
|
+
|
|
34
|
+
Formulas use infix notation with the following operators:
|
|
35
|
+
|
|
36
|
+
- **and**: logical conjunction (A and B)
|
|
37
|
+
- **or**: logical disjunction (A or B)
|
|
38
|
+
- **not**: logical negation (not A)
|
|
39
|
+
- **implies**: logical implication (A implies B)
|
|
40
|
+
- **iff**: logical biconditional (A iff B)
|
|
41
|
+
- **parentheses**: for grouping sub-expressions, e.g. (A or B) and C
|
|
42
|
+
|
|
43
|
+
### Root-Only Operators
|
|
44
|
+
|
|
45
|
+
The operators **implies** and **iff** must appear ONLY at the root level of a formula. They cannot be nested inside other operators. For example:
|
|
46
|
+
- Valid: "A implies B"
|
|
47
|
+
- Valid: "A and B"
|
|
48
|
+
- Invalid: "(A implies B) and C" — implies is nested, not at root
|
|
49
|
+
|
|
50
|
+
If you need to express a nested conditional, introduce an intermediate claim and a separate premise.
|
|
51
|
+
|
|
52
|
+
## Response Structure
|
|
53
|
+
|
|
54
|
+
Your response must conform to the provided JSON schema. Key fields:
|
|
55
|
+
|
|
56
|
+
- **argument**: The parsed argument object, or null if the text cannot be parsed as an argument
|
|
57
|
+
- **uncategorizedText**: Any portions of the input text that do not fit into the argument structure, or null
|
|
58
|
+
- **selectionRationale**: If the text contains multiple potential arguments, explain why you chose the one you did, or null
|
|
59
|
+
- **failureText**: If the argument cannot be parsed, explain why here, or null
|
|
60
|
+
|
|
61
|
+
## Edge Cases
|
|
62
|
+
|
|
63
|
+
- If the input text contains multiple distinct arguments, select the strongest or most complete one and explain your choice in selectionRationale.
|
|
64
|
+
- If the input text cannot be reasonably interpreted as a propositional argument, set argument to null and provide an explanation in failureText.
|
|
65
|
+
- If portions of the text are tangential or do not contribute to the argument, capture them in uncategorizedText.
|
|
66
|
+
|
|
67
|
+
## Writing Style
|
|
68
|
+
|
|
69
|
+
When formulating claims, write in third person, present tense, active voice. Each claim should be a clear, standalone declarative sentence.`;
|
|
70
|
+
/**
|
|
71
|
+
* Unwrap a Nullable union (anyOf with null) to get the inner schema.
|
|
72
|
+
*/
|
|
73
|
+
function unwrapNullable(schema) {
|
|
74
|
+
if (schema.anyOf) {
|
|
75
|
+
const nonNull = schema.anyOf.find((s) => !(s.type === "null" || s.type === undefined));
|
|
76
|
+
if (nonNull)
|
|
77
|
+
return nonNull;
|
|
78
|
+
}
|
|
79
|
+
return schema;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Find extension fields in an object schema by comparing against known core keys.
|
|
83
|
+
*/
|
|
84
|
+
function findExtensions(schema, coreKeys, entityName) {
|
|
85
|
+
if (!schema?.properties)
|
|
86
|
+
return [];
|
|
87
|
+
const extensions = [];
|
|
88
|
+
for (const [key, fieldSchema] of Object.entries(schema.properties)) {
|
|
89
|
+
if (coreKeys.has(key))
|
|
90
|
+
continue;
|
|
91
|
+
const unwrapped = unwrapNullable(fieldSchema);
|
|
92
|
+
extensions.push({
|
|
93
|
+
entity: entityName,
|
|
94
|
+
field: key,
|
|
95
|
+
description: unwrapped.description,
|
|
96
|
+
minLength: unwrapped.minLength,
|
|
97
|
+
maxLength: unwrapped.maxLength,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
return extensions;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Walk the response schema to discover all extension fields.
|
|
104
|
+
*/
|
|
105
|
+
function discoverExtensionFields(responseSchema) {
|
|
106
|
+
const schema = responseSchema;
|
|
107
|
+
const extensions = [];
|
|
108
|
+
// Response-level extensions
|
|
109
|
+
extensions.push(...findExtensions(schema, CORE_RESPONSE_KEYS, "response"));
|
|
110
|
+
// Argument-level: response.argument is Nullable(ArgumentSchema)
|
|
111
|
+
const argumentField = schema.properties?.argument;
|
|
112
|
+
if (!argumentField)
|
|
113
|
+
return extensions;
|
|
114
|
+
const argumentSchema = unwrapNullable(argumentField);
|
|
115
|
+
extensions.push(...findExtensions(argumentSchema, CORE_ARGUMENT_KEYS, "argument"));
|
|
116
|
+
// Claims: argument.claims is Array(ClaimSchema)
|
|
117
|
+
const claimsArray = argumentSchema.properties?.claims;
|
|
118
|
+
if (claimsArray?.items) {
|
|
119
|
+
extensions.push(...findExtensions(claimsArray.items, CORE_CLAIM_KEYS, "claim"));
|
|
120
|
+
}
|
|
121
|
+
// Variables: argument.variables is Array(VariableSchema)
|
|
122
|
+
const variablesArray = argumentSchema.properties?.variables;
|
|
123
|
+
if (variablesArray?.items) {
|
|
124
|
+
extensions.push(...findExtensions(variablesArray.items, CORE_VARIABLE_KEYS, "variable"));
|
|
125
|
+
}
|
|
126
|
+
// Sources: argument.sources is Array(SourceSchema)
|
|
127
|
+
const sourcesArray = argumentSchema.properties?.sources;
|
|
128
|
+
if (sourcesArray?.items) {
|
|
129
|
+
extensions.push(...findExtensions(sourcesArray.items, CORE_SOURCE_KEYS, "source"));
|
|
130
|
+
}
|
|
131
|
+
// Premises: argument.premises is Array(PremiseSchema)
|
|
132
|
+
const premisesArray = argumentSchema.properties?.premises;
|
|
133
|
+
if (premisesArray?.items) {
|
|
134
|
+
extensions.push(...findExtensions(premisesArray.items, CORE_PREMISE_KEYS, "premise"));
|
|
135
|
+
}
|
|
136
|
+
return extensions;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Format extension fields into instruction text.
|
|
140
|
+
*/
|
|
141
|
+
function formatExtensionInstructions(fields) {
|
|
142
|
+
if (fields.length === 0)
|
|
143
|
+
return "";
|
|
144
|
+
const lines = ["\n\n## Extension Fields\n"];
|
|
145
|
+
for (const field of fields) {
|
|
146
|
+
const constraints = [];
|
|
147
|
+
if (field.description) {
|
|
148
|
+
constraints.push(field.description);
|
|
149
|
+
}
|
|
150
|
+
if (field.minLength !== undefined) {
|
|
151
|
+
constraints.push(`minLength: ${field.minLength}`);
|
|
152
|
+
}
|
|
153
|
+
if (field.maxLength !== undefined) {
|
|
154
|
+
constraints.push(`maxLength: ${field.maxLength}`);
|
|
155
|
+
}
|
|
156
|
+
const constraintStr = constraints.length > 0 ? ` — ${constraints.join("; ")}` : "";
|
|
157
|
+
lines.push(`- **${field.entity}.${field.field}**${constraintStr}`);
|
|
158
|
+
}
|
|
159
|
+
return lines.join("\n");
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Build the system prompt for LLM-based argument parsing.
|
|
163
|
+
*
|
|
164
|
+
* @param responseSchema - The TypeBox response schema (core or extended)
|
|
165
|
+
* @param options - Optional configuration including custom instructions
|
|
166
|
+
* @returns The complete system prompt string
|
|
167
|
+
*/
|
|
168
|
+
export function buildParsingPrompt(responseSchema, options) {
|
|
169
|
+
let prompt = CORE_PROMPT;
|
|
170
|
+
const extensionFields = discoverExtensionFields(responseSchema);
|
|
171
|
+
const extensionInstructions = formatExtensionInstructions(extensionFields);
|
|
172
|
+
prompt += extensionInstructions;
|
|
173
|
+
if (options?.customInstructions) {
|
|
174
|
+
prompt += `\n\n## Additional Instructions\n\n${options.customInstructions}`;
|
|
175
|
+
}
|
|
176
|
+
return prompt;
|
|
177
|
+
}
|
|
178
|
+
//# sourceMappingURL=prompt-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-builder.js","sourceRoot":"","sources":["../../../src/lib/parsing/prompt-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import Type, { type Static, type TSchema } from "typebox";
|
|
2
|
+
import type { TParsingSchemaOptions } from "./types.js";
|
|
3
|
+
export declare const ParsedClaimRoleType: Type.TUnion<[Type.TLiteral<"premise">, Type.TLiteral<"conclusion">, Type.TLiteral<"intermediate">]>;
|
|
4
|
+
export declare const ParsedClaimSchema: Type.TObject<{
|
|
5
|
+
miniId: Type.TString;
|
|
6
|
+
role: Type.TUnion<[Type.TLiteral<"premise">, Type.TLiteral<"conclusion">, Type.TLiteral<"intermediate">]>;
|
|
7
|
+
sourceMiniIds: Type.TArray<Type.TString>;
|
|
8
|
+
}>;
|
|
9
|
+
export type TParsedClaim = Static<typeof ParsedClaimSchema>;
|
|
10
|
+
export declare const ParsedVariableSchema: Type.TObject<{
|
|
11
|
+
miniId: Type.TString;
|
|
12
|
+
symbol: Type.TString;
|
|
13
|
+
claimMiniId: Type.TString;
|
|
14
|
+
}>;
|
|
15
|
+
export type TParsedVariable = Static<typeof ParsedVariableSchema>;
|
|
16
|
+
export declare const ParsedSourceSchema: Type.TObject<{
|
|
17
|
+
miniId: Type.TString;
|
|
18
|
+
text: Type.TString;
|
|
19
|
+
}>;
|
|
20
|
+
export type TParsedSource = Static<typeof ParsedSourceSchema>;
|
|
21
|
+
export declare const ParsedPremiseSchema: Type.TObject<{
|
|
22
|
+
miniId: Type.TString;
|
|
23
|
+
formula: Type.TString;
|
|
24
|
+
}>;
|
|
25
|
+
export type TParsedPremise = Static<typeof ParsedPremiseSchema>;
|
|
26
|
+
export declare const ParsedArgumentSchema: Type.TObject<{
|
|
27
|
+
claims: Type.TArray<Type.TObject<{
|
|
28
|
+
miniId: Type.TString;
|
|
29
|
+
role: Type.TUnion<[Type.TLiteral<"premise">, Type.TLiteral<"conclusion">, Type.TLiteral<"intermediate">]>;
|
|
30
|
+
sourceMiniIds: Type.TArray<Type.TString>;
|
|
31
|
+
}>>;
|
|
32
|
+
variables: Type.TArray<Type.TObject<{
|
|
33
|
+
miniId: Type.TString;
|
|
34
|
+
symbol: Type.TString;
|
|
35
|
+
claimMiniId: Type.TString;
|
|
36
|
+
}>>;
|
|
37
|
+
sources: Type.TArray<Type.TObject<{
|
|
38
|
+
miniId: Type.TString;
|
|
39
|
+
text: Type.TString;
|
|
40
|
+
}>>;
|
|
41
|
+
premises: Type.TArray<Type.TObject<{
|
|
42
|
+
miniId: Type.TString;
|
|
43
|
+
formula: Type.TString;
|
|
44
|
+
}>>;
|
|
45
|
+
conclusionPremiseMiniId: Type.TString;
|
|
46
|
+
}>;
|
|
47
|
+
export type TParsedArgument = Static<typeof ParsedArgumentSchema>;
|
|
48
|
+
export declare const ParsedArgumentResponseSchema: Type.TObject<{
|
|
49
|
+
argument: Type.TUnion<[Type.TObject<{
|
|
50
|
+
claims: Type.TArray<Type.TObject<{
|
|
51
|
+
miniId: Type.TString;
|
|
52
|
+
role: Type.TUnion<[Type.TLiteral<"premise">, Type.TLiteral<"conclusion">, Type.TLiteral<"intermediate">]>;
|
|
53
|
+
sourceMiniIds: Type.TArray<Type.TString>;
|
|
54
|
+
}>>;
|
|
55
|
+
variables: Type.TArray<Type.TObject<{
|
|
56
|
+
miniId: Type.TString;
|
|
57
|
+
symbol: Type.TString;
|
|
58
|
+
claimMiniId: Type.TString;
|
|
59
|
+
}>>;
|
|
60
|
+
sources: Type.TArray<Type.TObject<{
|
|
61
|
+
miniId: Type.TString;
|
|
62
|
+
text: Type.TString;
|
|
63
|
+
}>>;
|
|
64
|
+
premises: Type.TArray<Type.TObject<{
|
|
65
|
+
miniId: Type.TString;
|
|
66
|
+
formula: Type.TString;
|
|
67
|
+
}>>;
|
|
68
|
+
conclusionPremiseMiniId: Type.TString;
|
|
69
|
+
}>, Type.TNull]>;
|
|
70
|
+
uncategorizedText: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
71
|
+
selectionRationale: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
72
|
+
failureText: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
73
|
+
}>;
|
|
74
|
+
export type TParsedArgumentResponse = Static<typeof ParsedArgumentResponseSchema>;
|
|
75
|
+
export declare function buildParsingResponseSchema(options?: TParsingSchemaOptions): TSchema;
|
|
76
|
+
export declare function getParsingResponseSchema(schema?: TSchema): Record<string, unknown>;
|
|
77
|
+
//# sourceMappingURL=schemata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemata.d.ts","sourceRoot":"","sources":["../../../src/lib/parsing/schemata.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAgB,KAAK,OAAO,EAAE,MAAM,SAAS,CAAA;AAEvE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAEvD,eAAO,MAAM,mBAAmB,qGAI9B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;EAO7B,CAAA;AACD,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,oBAAoB;;;;EAOhC,CAAA;AACD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,kBAAkB;;;EAM9B,CAAA;AACD,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,mBAAmB;;;EAM/B,CAAA;AACD,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;EAShC,CAAA;AACD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;EAQxC,CAAA;AACD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CACxC,OAAO,4BAA4B,CACtC,CAAA;AASD,wBAAgB,0BAA0B,CACtC,OAAO,CAAC,EAAE,qBAAqB,GAChC,OAAO,CAgET;AAED,wBAAgB,wBAAwB,CACpC,MAAM,CAAC,EAAE,OAAO,GACjB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB"}
|