@proposit/proposit-core 0.10.0 → 0.11.0
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 +88 -9
- package/dist/cli/commands/premises.d.ts.map +1 -1
- package/dist/cli/commands/premises.js +82 -5
- package/dist/cli/commands/premises.js.map +1 -1
- package/dist/cli/commands/render.d.ts.map +1 -1
- package/dist/cli/commands/render.js +2 -1
- package/dist/cli/commands/render.js.map +1 -1
- package/dist/cli/engine.d.ts.map +1 -1
- package/dist/cli/engine.js +3 -0
- package/dist/cli/engine.js.map +1 -1
- package/dist/cli/import.d.ts.map +1 -1
- package/dist/cli/import.js +70 -13
- package/dist/cli/import.js.map +1 -1
- package/dist/cli/storage/migrate-v0.11.d.ts +15 -0
- package/dist/cli/storage/migrate-v0.11.d.ts.map +1 -0
- package/dist/cli/storage/migrate-v0.11.js +125 -0
- package/dist/cli/storage/migrate-v0.11.js.map +1 -0
- package/dist/extensions/basics/schemata.d.ts +11 -1
- package/dist/extensions/basics/schemata.d.ts.map +1 -1
- package/dist/lib/consts.d.ts.map +1 -1
- package/dist/lib/consts.js +6 -1
- package/dist/lib/consts.js.map +1 -1
- package/dist/lib/core/argument-engine.d.ts +39 -1
- package/dist/lib/core/argument-engine.d.ts.map +1 -1
- package/dist/lib/core/argument-engine.js +202 -11
- package/dist/lib/core/argument-engine.js.map +1 -1
- package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts +132 -7
- package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts.map +1 -1
- package/dist/lib/core/interfaces/library.interfaces.d.ts +13 -0
- package/dist/lib/core/interfaces/library.interfaces.d.ts.map +1 -1
- package/dist/lib/core/managed-derivation-premise-engine.d.ts +155 -0
- package/dist/lib/core/managed-derivation-premise-engine.d.ts.map +1 -0
- package/dist/lib/core/managed-derivation-premise-engine.js +517 -0
- package/dist/lib/core/managed-derivation-premise-engine.js.map +1 -0
- package/dist/lib/core/premise-engine.d.ts +6 -5
- package/dist/lib/core/premise-engine.d.ts.map +1 -1
- package/dist/lib/core/premise-engine.js +5 -3
- package/dist/lib/core/premise-engine.js.map +1 -1
- package/dist/lib/core/proposit-core.d.ts.map +1 -1
- package/dist/lib/core/proposit-core.js +14 -0
- package/dist/lib/core/proposit-core.js.map +1 -1
- package/dist/lib/index.d.ts +3 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +2 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/schemata/import.d.ts +39 -2
- package/dist/lib/schemata/import.d.ts.map +1 -1
- package/dist/lib/schemata/import.js +22 -1
- package/dist/lib/schemata/import.js.map +1 -1
- package/dist/lib/schemata/propositional.d.ts +32 -1
- package/dist/lib/schemata/propositional.d.ts.map +1 -1
- package/dist/lib/schemata/propositional.js +17 -2
- package/dist/lib/schemata/propositional.js.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/validation.d.ts +10 -0
- package/dist/lib/types/validation.d.ts.map +1 -1
- package/dist/lib/types/validation.js +11 -0
- package/dist/lib/types/validation.js.map +1 -1
- package/dist/lib/utils/derivation-validation.d.ts +24 -0
- package/dist/lib/utils/derivation-validation.d.ts.map +1 -0
- package/dist/lib/utils/derivation-validation.js +107 -0
- package/dist/lib/utils/derivation-validation.js.map +1 -0
- package/dist/lib/utils/lookup.d.ts.map +1 -1
- package/dist/lib/utils/lookup.js +1 -0
- package/dist/lib/utils/lookup.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import fs from "node:fs/promises";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { getStateDir } from "../config.js";
|
|
4
|
+
const MARKER = ".proposit-v0.11";
|
|
5
|
+
/**
|
|
6
|
+
* One-time migration of CLI state directories from pre-v0.11.0 to v0.11.0:
|
|
7
|
+
*
|
|
8
|
+
* - Backfills `type: "freeform"` on every premise `meta.json` that lacks it.
|
|
9
|
+
*
|
|
10
|
+
* Checksums are NOT stored in premise `meta.json` on disk — they are computed
|
|
11
|
+
* lazily at hydration time by `ArgumentEngine.fromSnapshot` via `flushChecksums()`.
|
|
12
|
+
* No checksum recomputation pass is required here; the runtime handles it.
|
|
13
|
+
*
|
|
14
|
+
* Detected via the absence of a `.proposit-v0.11` marker in the state dir;
|
|
15
|
+
* once migration completes (or there is nothing to migrate) the marker is
|
|
16
|
+
* written so subsequent CLI invocations no-op immediately.
|
|
17
|
+
*/
|
|
18
|
+
export async function migrateV011() {
|
|
19
|
+
const stateDir = getStateDir();
|
|
20
|
+
const markerPath = path.join(stateDir, MARKER);
|
|
21
|
+
// Step 1: Detection — skip if marker exists.
|
|
22
|
+
try {
|
|
23
|
+
await fs.access(markerPath);
|
|
24
|
+
return; // Already migrated.
|
|
25
|
+
}
|
|
26
|
+
catch {
|
|
27
|
+
// Marker missing — proceed with migration.
|
|
28
|
+
}
|
|
29
|
+
// If the state dir doesn't exist yet (fresh install), there's nothing to
|
|
30
|
+
// migrate. Create the directory and drop the marker so we don't re-check
|
|
31
|
+
// every invocation.
|
|
32
|
+
try {
|
|
33
|
+
await fs.mkdir(stateDir, { recursive: true });
|
|
34
|
+
}
|
|
35
|
+
catch {
|
|
36
|
+
// mkdir failures are surfaced by later steps when they touch files.
|
|
37
|
+
}
|
|
38
|
+
// Step 2: Backfill premise types.
|
|
39
|
+
await backfillPremiseTypes(stateDir);
|
|
40
|
+
// Step 3: Marker write.
|
|
41
|
+
await fs.writeFile(markerPath, new Date().toISOString());
|
|
42
|
+
process.stderr.write(`[proposit] Migrated state directory to v0.11.0 format at ${stateDir}\n`);
|
|
43
|
+
}
|
|
44
|
+
async function readJsonFile(filePath) {
|
|
45
|
+
try {
|
|
46
|
+
const content = await fs.readFile(filePath, "utf-8");
|
|
47
|
+
return JSON.parse(content);
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
async function writeJsonFile(filePath, data) {
|
|
54
|
+
await fs.mkdir(path.dirname(filePath), { recursive: true });
|
|
55
|
+
await fs.writeFile(filePath, JSON.stringify(data, null, 2));
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Walks `{stateDir}/arguments/{id}/{version}/premises/{premiseId}/meta.json`
|
|
59
|
+
* for every argument/version/premise combination and adds `type: "freeform"`
|
|
60
|
+
* where the field is absent.
|
|
61
|
+
*
|
|
62
|
+
* Checksums are not stored in premise meta.json — they are recomputed at
|
|
63
|
+
* runtime by `flushChecksums()` during engine hydration. No checksum pass is
|
|
64
|
+
* needed here; the cascade to argument-level checksums is handled automatically
|
|
65
|
+
* when `ArgumentEngine.fromSnapshot` restores the engine.
|
|
66
|
+
*/
|
|
67
|
+
async function backfillPremiseTypes(stateDir) {
|
|
68
|
+
const argumentsDir = path.join(stateDir, "arguments");
|
|
69
|
+
let argumentDirs;
|
|
70
|
+
try {
|
|
71
|
+
const entries = await fs.readdir(argumentsDir, { withFileTypes: true });
|
|
72
|
+
argumentDirs = entries
|
|
73
|
+
.filter((e) => e.isDirectory())
|
|
74
|
+
.map((e) => path.join(argumentsDir, e.name));
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
return; // No arguments directory — nothing to migrate.
|
|
78
|
+
}
|
|
79
|
+
let backfilled = 0;
|
|
80
|
+
for (const argumentDir of argumentDirs) {
|
|
81
|
+
// Each sub-directory with a numeric name is a version directory.
|
|
82
|
+
let versionEntries;
|
|
83
|
+
try {
|
|
84
|
+
versionEntries = await fs.readdir(argumentDir, {
|
|
85
|
+
withFileTypes: true,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
91
|
+
const versionDirs = versionEntries
|
|
92
|
+
.filter((e) => e.isDirectory() && /^\d+$/.test(e.name))
|
|
93
|
+
.map((e) => path.join(argumentDir, e.name));
|
|
94
|
+
for (const versionDir of versionDirs) {
|
|
95
|
+
const premisesDir = path.join(versionDir, "premises");
|
|
96
|
+
let premiseEntries;
|
|
97
|
+
try {
|
|
98
|
+
premiseEntries = await fs.readdir(premisesDir, {
|
|
99
|
+
withFileTypes: true,
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
continue; // No premises directory for this version.
|
|
104
|
+
}
|
|
105
|
+
const premiseDirs = premiseEntries
|
|
106
|
+
.filter((e) => e.isDirectory())
|
|
107
|
+
.map((e) => path.join(premisesDir, e.name));
|
|
108
|
+
for (const premiseDir of premiseDirs) {
|
|
109
|
+
const metaPath = path.join(premiseDir, "meta.json");
|
|
110
|
+
const meta = await readJsonFile(metaPath);
|
|
111
|
+
if (!meta)
|
|
112
|
+
continue;
|
|
113
|
+
if (meta.type !== undefined)
|
|
114
|
+
continue; // Already has type.
|
|
115
|
+
meta.type = "freeform";
|
|
116
|
+
await writeJsonFile(metaPath, meta);
|
|
117
|
+
backfilled++;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
if (backfilled > 0) {
|
|
122
|
+
process.stderr.write(`[proposit migration] Backfilled type='freeform' on ${backfilled} pre-existing premise(s)\n`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=migrate-v0.11.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate-v0.11.js","sourceRoot":"","sources":["../../../src/cli/storage/migrate-v0.11.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,8 @@ export declare const BasicsClaimSchema: Type.TIntersect<[Type.TObject<{
|
|
|
21
21
|
body: Type.TString;
|
|
22
22
|
}>]>;
|
|
23
23
|
export type TBasicsClaim = Static<typeof BasicsClaimSchema>;
|
|
24
|
-
export declare const BasicsPremiseSchema: Type.TIntersect<[Type.TObject<{
|
|
24
|
+
export declare const BasicsPremiseSchema: Type.TIntersect<[Type.TUnion<[Type.TObject<{
|
|
25
|
+
type: Type.TLiteral<"freeform">;
|
|
25
26
|
id: Type.TString;
|
|
26
27
|
argumentId: Type.TString;
|
|
27
28
|
argumentVersion: Type.TNumber;
|
|
@@ -29,6 +30,15 @@ export declare const BasicsPremiseSchema: Type.TIntersect<[Type.TObject<{
|
|
|
29
30
|
descendantChecksum: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
30
31
|
combinedChecksum: Type.TString;
|
|
31
32
|
}>, Type.TObject<{
|
|
33
|
+
type: Type.TLiteral<"derivation">;
|
|
34
|
+
derivedClaimId: Type.TString;
|
|
35
|
+
id: Type.TString;
|
|
36
|
+
argumentId: Type.TString;
|
|
37
|
+
argumentVersion: Type.TNumber;
|
|
38
|
+
checksum: Type.TString;
|
|
39
|
+
descendantChecksum: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
40
|
+
combinedChecksum: Type.TString;
|
|
41
|
+
}>]>, Type.TObject<{
|
|
32
42
|
title: Type.TString;
|
|
33
43
|
}>]>;
|
|
34
44
|
export type TBasicsPremise = Static<typeof BasicsPremiseSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemata.d.ts","sourceRoot":"","sources":["../../../src/extensions/basics/schemata.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAO3C,eAAO,MAAM,oBAAoB;;;;;;;;;IAM/B,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,iBAAiB;;;;;;;;;IAM5B,CAAA;AACF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"schemata.d.ts","sourceRoot":"","sources":["../../../src/extensions/basics/schemata.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAO3C,eAAO,MAAM,oBAAoB;;;;;;;;;IAM/B,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,iBAAiB;;;;;;;;;IAM5B,CAAA;AACF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;IAK9B,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAA;AA4B/D,eAAO,MAAM,mBAAmB,cAI9B,CAAA"}
|
package/dist/lib/consts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/lib/consts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE9D,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,mBAAmB,
|
|
1
|
+
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/lib/consts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE9D,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,mBAAmB,CAoCjE,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,mBAAmB,GAAG,SAAS,GACxC,mBAAmB,GAAG,SAAS,CAuBjC;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,mBAAmB,GAAG,SAAS,GACxC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAkBtC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAChC,UAAU,EAAE,mBAAmB,GAChC,mBAAmB,CAiBrB"}
|
package/dist/lib/consts.js
CHANGED
|
@@ -19,7 +19,12 @@ export const DEFAULT_CHECKSUM_CONFIG = {
|
|
|
19
19
|
"boundArgumentId",
|
|
20
20
|
"boundArgumentVersion",
|
|
21
21
|
]),
|
|
22
|
-
premiseFields: new Set([
|
|
22
|
+
premiseFields: new Set([
|
|
23
|
+
"argumentId",
|
|
24
|
+
"argumentVersion",
|
|
25
|
+
"type",
|
|
26
|
+
"derivedClaimId",
|
|
27
|
+
]),
|
|
23
28
|
argumentFields: new Set(["version"]),
|
|
24
29
|
roleFields: new Set(["conclusionPremiseId"]),
|
|
25
30
|
claimFields: new Set(["version", "type"]),
|
package/dist/lib/consts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/lib/consts.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,uBAAuB,GAAkC;IAClE,gBAAgB,EAAE,IAAI,GAAG,CAAC;QACtB,MAAM;QACN,UAAU;QACV,UAAU;QACV,YAAY;QACZ,iBAAiB;QACjB,WAAW;QACX,YAAY;QACZ,UAAU;KACb,CAAC;IACF,cAAc,EAAE,IAAI,GAAG,CAAC;QACpB,QAAQ;QACR,YAAY;QACZ,iBAAiB;QACjB,SAAS;QACT,cAAc;QACd,gBAAgB;QAChB,iBAAiB;QACjB,sBAAsB;KACzB,CAAC;IACF,aAAa,EAAE,IAAI,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/lib/consts.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,14 +81,42 @@ export declare class ArgumentEngine<TArg extends TCoreArgument = TCoreArgument,
|
|
|
81
81
|
setExtras(extras: Record<string, unknown>): TCoreMutationResult<Record<string, unknown>, TExpr, TVar, TPremise, TArg>;
|
|
82
82
|
updateExtras(updates: Record<string, unknown>): TCoreMutationResult<Record<string, unknown>, TExpr, TVar, TPremise, TArg>;
|
|
83
83
|
toDisplayString(): string;
|
|
84
|
-
|
|
84
|
+
/** @internal Normalized options bag used internally by createPremise/createPremiseWithId. */
|
|
85
|
+
private static parsePremiseArgsInternal;
|
|
86
|
+
createPremise(): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
|
|
87
|
+
createPremise(extras: Record<string, unknown> | undefined, symbol: string): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
|
|
88
|
+
createPremise(extras: Record<string, unknown>, symbol?: string): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
|
|
89
|
+
createPremise(options: {
|
|
90
|
+
type?: "freeform" | "derivation";
|
|
91
|
+
derivedClaimId?: string;
|
|
92
|
+
extras?: Record<string, unknown>;
|
|
93
|
+
symbol?: string;
|
|
94
|
+
}): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
|
|
85
95
|
createPremiseWithId(id: string, extras?: Record<string, unknown>, symbol?: string): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
|
|
96
|
+
createPremiseWithId(id: string, options: {
|
|
97
|
+
type?: "freeform" | "derivation";
|
|
98
|
+
derivedClaimId?: string;
|
|
99
|
+
extras?: Record<string, unknown>;
|
|
100
|
+
symbol?: string;
|
|
101
|
+
}): TCoreMutationResult<PremiseEngine<TArg, TPremise, TExpr, TVar>, TExpr, TVar, TPremise, TArg>;
|
|
86
102
|
removePremise(premiseId: string): TCoreMutationResult<TPremise | undefined, TExpr, TVar, TPremise, TArg>;
|
|
87
103
|
getPremise(premiseId: string): PremiseEngine<TArg, TPremise, TExpr, TVar> | undefined;
|
|
88
104
|
hasPremise(premiseId: string): boolean;
|
|
89
105
|
listPremiseIds(): string[];
|
|
90
106
|
listPremises(): PremiseEngine<TArg, TPremise, TExpr, TVar>[];
|
|
91
107
|
addVariable(variable: TOptionalChecksum<TClaimBoundVariable> & Record<string, unknown>): TCoreMutationResult<TVar, TExpr, TVar, TPremise, TArg>;
|
|
108
|
+
/**
|
|
109
|
+
* Ensures a claim-bound variable for the given claim exists in this
|
|
110
|
+
* argument. If one already exists, returns it. Otherwise creates a new
|
|
111
|
+
* claim-bound variable with a fresh UUID, the current version of the claim
|
|
112
|
+
* from the ClaimLibrary, and an auto-generated symbol.
|
|
113
|
+
*
|
|
114
|
+
* @throws InvariantViolationError(CLAIM_NOT_FOUND) when the claim is not in
|
|
115
|
+
* the library.
|
|
116
|
+
*
|
|
117
|
+
* @since 0.11.0
|
|
118
|
+
*/
|
|
119
|
+
ensureClaimBoundVariable(claimId: string): TClaimBoundVariable;
|
|
92
120
|
bindVariableToPremise(variable: TOptionalChecksum<TPremiseBoundVariable> & Record<string, unknown>): TCoreMutationResult<TVar, TExpr, TVar, TPremise, TArg>;
|
|
93
121
|
/** Adds a premise-bound variable that references a premise in a different argument. */
|
|
94
122
|
bindVariableToExternalPremise(variable: TOptionalChecksum<TPremiseBoundVariable> & Record<string, unknown>): TCoreMutationResult<TVar, TExpr, TVar, TPremise, TArg>;
|
|
@@ -166,6 +194,16 @@ export declare class ArgumentEngine<TArg extends TCoreArgument = TCoreArgument,
|
|
|
166
194
|
private validateAfterPremiseMutation;
|
|
167
195
|
validate(): TInvariantValidationResult;
|
|
168
196
|
validateEvaluability(): TCoreValidationResult;
|
|
197
|
+
/**
|
|
198
|
+
* Returns the derivation-specific subset of `validateEvaluability` checks.
|
|
199
|
+
* Apps can pre-check derivation premise structures before invoking the full
|
|
200
|
+
* evaluation pipeline.
|
|
201
|
+
*
|
|
202
|
+
* @since 0.11.0
|
|
203
|
+
*/
|
|
204
|
+
validateDerivationStructures(): TInvariantValidationResult;
|
|
205
|
+
private collectDerivationStructureIssues;
|
|
206
|
+
private collectDerivationViolations;
|
|
169
207
|
private asValidationContext;
|
|
170
208
|
private asEvaluationContext;
|
|
171
209
|
evaluate(assignment: TCoreExpressionAssignment, options?: TCoreArgumentEvaluationOptions): TCoreArgumentEvaluationResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"argument-engine.d.ts","sourceRoot":"","sources":["../../../src/lib/core/argument-engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"argument-engine.d.ts","sourceRoot":"","sources":["../../../src/lib/core/argument-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { isClaimBound, isPremiseBound, } from "../schemata/index.js";
|
|
2
2
|
import { DEFAULT_GRAMMAR_CONFIG, PERMISSIVE_GRAMMAR_CONFIG, } from "../types/grammar.js";
|
|
3
|
+
import { CLAIM_NOT_FOUND, CREATE_DERIVATION_CLAIM_NOT_FOUND, CREATE_DERIVATION_REQUIRES_DERIVED_CLAIM_ID, DERIVATION_STRUCTURE_INVALID_AT_EVALUATION, } from "../types/validation.js";
|
|
4
|
+
import { validateDerivationStructure } from "../utils/derivation-validation.js";
|
|
3
5
|
import { DEFAULT_CHECKSUM_CONFIG, normalizeChecksumConfig, serializeChecksumConfig, } from "../consts.js";
|
|
4
6
|
import { ChangeCollector } from "./change-collector.js";
|
|
5
7
|
import { canonicalSerialize, computeHash, entityChecksum } from "./checksum.js";
|
|
6
8
|
import { evaluateArgument as evaluateArgumentStandalone, checkArgumentValidity as checkArgumentValidityStandalone, } from "./evaluation/argument-evaluation.js";
|
|
9
|
+
import { makeErrorIssue, makeValidationResult, } from "./evaluation/validation.js";
|
|
7
10
|
import { validateArgument as validateArgumentStandalone, validateArgumentAfterPremiseMutation as validateAfterPremiseMutationStandalone, validateArgumentEvaluability as validateArgumentEvaluabilityStandalone, collectArgumentReferencedVariables as collectArgumentReferencedVariablesStandalone, } from "./argument-validation.js";
|
|
8
11
|
import { InvariantViolationError } from "./invariant-violation-error.js";
|
|
9
12
|
import { PremiseEngine } from "./premise-engine.js";
|
|
@@ -348,20 +351,79 @@ export class ArgumentEngine {
|
|
|
348
351
|
}
|
|
349
352
|
return lines.join("\n");
|
|
350
353
|
}
|
|
351
|
-
createPremise
|
|
352
|
-
|
|
354
|
+
/** @internal Normalized options bag used internally by createPremise/createPremiseWithId. */
|
|
355
|
+
static parsePremiseArgsInternal(arg1, arg2) {
|
|
356
|
+
const isTypedBag = arg1 !== null &&
|
|
357
|
+
arg1 !== undefined &&
|
|
358
|
+
(typeof arg1.type === "string" ||
|
|
359
|
+
typeof arg1.derivedClaimId ===
|
|
360
|
+
"string");
|
|
361
|
+
if (isTypedBag) {
|
|
362
|
+
const bag = arg1;
|
|
363
|
+
return {
|
|
364
|
+
type: bag.type ?? "freeform",
|
|
365
|
+
derivedClaimId: bag.derivedClaimId,
|
|
366
|
+
extras: bag.extras,
|
|
367
|
+
symbol: bag.symbol,
|
|
368
|
+
};
|
|
369
|
+
}
|
|
370
|
+
return {
|
|
371
|
+
type: "freeform",
|
|
372
|
+
extras: arg1,
|
|
373
|
+
symbol: arg2,
|
|
374
|
+
};
|
|
375
|
+
}
|
|
376
|
+
createPremise(arg1, arg2) {
|
|
377
|
+
return this.createPremiseWithId(this.generateId(), arg1, arg2);
|
|
353
378
|
}
|
|
354
|
-
createPremiseWithId(id,
|
|
379
|
+
createPremiseWithId(id, arg2, arg3) {
|
|
380
|
+
const options = ArgumentEngine.parsePremiseArgsInternal(arg2, arg3);
|
|
355
381
|
return this.withValidation(() => {
|
|
356
382
|
if (this.premises.has(id)) {
|
|
357
383
|
throw new Error(`Premise "${id}" already exists.`);
|
|
358
384
|
}
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
385
|
+
// Derivation init flow — only when not restoring from snapshot.
|
|
386
|
+
if (options.type === "derivation" && !this.restoringFromSnapshot) {
|
|
387
|
+
if (!options.derivedClaimId) {
|
|
388
|
+
throw new InvariantViolationError([
|
|
389
|
+
{
|
|
390
|
+
code: CREATE_DERIVATION_REQUIRES_DERIVED_CLAIM_ID,
|
|
391
|
+
message: `${CREATE_DERIVATION_REQUIRES_DERIVED_CLAIM_ID}: createPremise with type "derivation" requires derivedClaimId`,
|
|
392
|
+
entityType: "premise",
|
|
393
|
+
entityId: id,
|
|
394
|
+
premiseId: id,
|
|
395
|
+
},
|
|
396
|
+
]);
|
|
397
|
+
}
|
|
398
|
+
const claim = this.claimLibrary.getCurrent(options.derivedClaimId);
|
|
399
|
+
if (!claim) {
|
|
400
|
+
throw new InvariantViolationError([
|
|
401
|
+
{
|
|
402
|
+
code: CREATE_DERIVATION_CLAIM_NOT_FOUND,
|
|
403
|
+
message: `${CREATE_DERIVATION_CLAIM_NOT_FOUND}: claim ${options.derivedClaimId} not found in claim library`,
|
|
404
|
+
entityType: "claim",
|
|
405
|
+
entityId: options.derivedClaimId,
|
|
406
|
+
},
|
|
407
|
+
]);
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
const premiseType = options.type ?? "freeform";
|
|
411
|
+
const premiseData = premiseType === "derivation" && options.derivedClaimId
|
|
412
|
+
? {
|
|
413
|
+
...options.extras,
|
|
414
|
+
id,
|
|
415
|
+
argumentId: this.argument.id,
|
|
416
|
+
argumentVersion: this.argument.version,
|
|
417
|
+
type: "derivation",
|
|
418
|
+
derivedClaimId: options.derivedClaimId,
|
|
419
|
+
}
|
|
420
|
+
: {
|
|
421
|
+
...options.extras,
|
|
422
|
+
id,
|
|
423
|
+
argumentId: this.argument.id,
|
|
424
|
+
argumentVersion: this.argument.version,
|
|
425
|
+
type: "freeform",
|
|
426
|
+
};
|
|
365
427
|
const pm = new PremiseEngine(premiseData, {
|
|
366
428
|
argument: this.argument,
|
|
367
429
|
variables: this.variables,
|
|
@@ -391,7 +453,7 @@ export class ArgumentEngine {
|
|
|
391
453
|
}
|
|
392
454
|
// Auto-create a premise-bound variable for this premise
|
|
393
455
|
if (!this.restoringFromSnapshot) {
|
|
394
|
-
const autoSymbol = symbol ?? this.generateUniqueSymbol();
|
|
456
|
+
const autoSymbol = options.symbol ?? this.generateUniqueSymbol();
|
|
395
457
|
const autoVariable = {
|
|
396
458
|
id: this.generateId(),
|
|
397
459
|
argumentId: this.argument.id,
|
|
@@ -408,6 +470,44 @@ export class ArgumentEngine {
|
|
|
408
470
|
collector.addedVariable(withChecksum);
|
|
409
471
|
this.markAllPremisesDirty();
|
|
410
472
|
}
|
|
473
|
+
// Derivation init: add naked-Q root expression for the consequent variable.
|
|
474
|
+
// Only runs when not restoring from snapshot.
|
|
475
|
+
if (options.type === "derivation" &&
|
|
476
|
+
options.derivedClaimId &&
|
|
477
|
+
!this.restoringFromSnapshot) {
|
|
478
|
+
// Track existing variables before ensureClaimBoundVariable so we
|
|
479
|
+
// can detect whether a new variable was materialized.
|
|
480
|
+
const variablesBefore = new Set(this.variables.toArray().map((v) => v.id));
|
|
481
|
+
const consequentVariable = this.ensureClaimBoundVariable(options.derivedClaimId);
|
|
482
|
+
// If ensureClaimBoundVariable created a new variable, record it.
|
|
483
|
+
if (!variablesBefore.has(consequentVariable.id)) {
|
|
484
|
+
collector.addedVariable(consequentVariable);
|
|
485
|
+
this.markAllPremisesDirty();
|
|
486
|
+
}
|
|
487
|
+
// Add the naked-Q root expression via appendExpression.
|
|
488
|
+
const { changes: exprChanges } = pm.appendExpression(null, {
|
|
489
|
+
id: this.generateId(),
|
|
490
|
+
type: "variable",
|
|
491
|
+
variableId: consequentVariable.id,
|
|
492
|
+
premiseId: id,
|
|
493
|
+
argumentId: this.argument.id,
|
|
494
|
+
argumentVersion: this.argument.version,
|
|
495
|
+
});
|
|
496
|
+
// Merge expression changes into the outer collector.
|
|
497
|
+
if (exprChanges.expressions) {
|
|
498
|
+
for (const e of exprChanges.expressions.added) {
|
|
499
|
+
collector.addedExpression(e);
|
|
500
|
+
}
|
|
501
|
+
for (const e of exprChanges.expressions.modified) {
|
|
502
|
+
collector.modifiedExpression(e);
|
|
503
|
+
}
|
|
504
|
+
}
|
|
505
|
+
if (exprChanges.premises) {
|
|
506
|
+
for (const p of exprChanges.premises.modified) {
|
|
507
|
+
collector.modifiedPremise(p);
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
}
|
|
411
511
|
const changes = this.finalizeChanges(collector);
|
|
412
512
|
return {
|
|
413
513
|
result: pm,
|
|
@@ -499,6 +599,51 @@ export class ArgumentEngine {
|
|
|
499
599
|
};
|
|
500
600
|
});
|
|
501
601
|
}
|
|
602
|
+
/**
|
|
603
|
+
* Ensures a claim-bound variable for the given claim exists in this
|
|
604
|
+
* argument. If one already exists, returns it. Otherwise creates a new
|
|
605
|
+
* claim-bound variable with a fresh UUID, the current version of the claim
|
|
606
|
+
* from the ClaimLibrary, and an auto-generated symbol.
|
|
607
|
+
*
|
|
608
|
+
* @throws InvariantViolationError(CLAIM_NOT_FOUND) when the claim is not in
|
|
609
|
+
* the library.
|
|
610
|
+
*
|
|
611
|
+
* @since 0.11.0
|
|
612
|
+
*/
|
|
613
|
+
ensureClaimBoundVariable(claimId) {
|
|
614
|
+
// Return existing claim-bound variable if one is already bound to this claim.
|
|
615
|
+
const existing = this.variables
|
|
616
|
+
.toArray()
|
|
617
|
+
.find((v) => isClaimBound(v) &&
|
|
618
|
+
v.claimId === claimId);
|
|
619
|
+
if (existing) {
|
|
620
|
+
return existing;
|
|
621
|
+
}
|
|
622
|
+
// Verify the claim exists in the library.
|
|
623
|
+
const currentClaim = this.claimLibrary.getCurrent(claimId);
|
|
624
|
+
if (!currentClaim) {
|
|
625
|
+
throw new InvariantViolationError([
|
|
626
|
+
{
|
|
627
|
+
code: CLAIM_NOT_FOUND,
|
|
628
|
+
message: `${CLAIM_NOT_FOUND}: Claim ${claimId} not found in claim library`,
|
|
629
|
+
entityType: "claim",
|
|
630
|
+
entityId: claimId,
|
|
631
|
+
},
|
|
632
|
+
]);
|
|
633
|
+
}
|
|
634
|
+
const rawVariable = {
|
|
635
|
+
id: this.generateId(),
|
|
636
|
+
argumentId: this.argument.id,
|
|
637
|
+
argumentVersion: this.argument.version,
|
|
638
|
+
symbol: this.generateUniqueSymbol(),
|
|
639
|
+
claimId,
|
|
640
|
+
claimVersion: currentClaim.version,
|
|
641
|
+
};
|
|
642
|
+
const withChecksum = this.attachVariableChecksum(rawVariable);
|
|
643
|
+
this.variables.addVariable(withChecksum);
|
|
644
|
+
this.markAllPremisesDirty();
|
|
645
|
+
return withChecksum;
|
|
646
|
+
}
|
|
502
647
|
bindVariableToPremise(variable) {
|
|
503
648
|
return this.withValidation(() => {
|
|
504
649
|
if (variable.argumentId !== this.argument.id) {
|
|
@@ -1256,7 +1401,53 @@ export class ArgumentEngine {
|
|
|
1256
1401
|
return validateArgumentStandalone(this.asValidationContext());
|
|
1257
1402
|
}
|
|
1258
1403
|
validateEvaluability() {
|
|
1259
|
-
|
|
1404
|
+
const base = validateArgumentEvaluabilityStandalone(this.asValidationContext());
|
|
1405
|
+
const derivationIssues = this.collectDerivationStructureIssues();
|
|
1406
|
+
if (derivationIssues.length === 0)
|
|
1407
|
+
return base;
|
|
1408
|
+
return makeValidationResult([...base.issues, ...derivationIssues]);
|
|
1409
|
+
}
|
|
1410
|
+
/**
|
|
1411
|
+
* Returns the derivation-specific subset of `validateEvaluability` checks.
|
|
1412
|
+
* Apps can pre-check derivation premise structures before invoking the full
|
|
1413
|
+
* evaluation pipeline.
|
|
1414
|
+
*
|
|
1415
|
+
* @since 0.11.0
|
|
1416
|
+
*/
|
|
1417
|
+
validateDerivationStructures() {
|
|
1418
|
+
const violations = [];
|
|
1419
|
+
for (const { violation } of this.collectDerivationViolations()) {
|
|
1420
|
+
violations.push({
|
|
1421
|
+
...violation,
|
|
1422
|
+
code: DERIVATION_STRUCTURE_INVALID_AT_EVALUATION,
|
|
1423
|
+
});
|
|
1424
|
+
}
|
|
1425
|
+
return { ok: violations.length === 0, violations };
|
|
1426
|
+
}
|
|
1427
|
+
collectDerivationStructureIssues() {
|
|
1428
|
+
const issues = [];
|
|
1429
|
+
for (const { violation } of this.collectDerivationViolations()) {
|
|
1430
|
+
issues.push(makeErrorIssue({
|
|
1431
|
+
code: DERIVATION_STRUCTURE_INVALID_AT_EVALUATION,
|
|
1432
|
+
message: violation.message,
|
|
1433
|
+
premiseId: violation.entityId,
|
|
1434
|
+
}));
|
|
1435
|
+
}
|
|
1436
|
+
return issues;
|
|
1437
|
+
}
|
|
1438
|
+
*collectDerivationViolations() {
|
|
1439
|
+
const allVars = this.variables.toArray();
|
|
1440
|
+
for (const premise of this.listPremises()) {
|
|
1441
|
+
const premiseData = premise.toPremiseData();
|
|
1442
|
+
if (premiseData.type !== "derivation")
|
|
1443
|
+
continue;
|
|
1444
|
+
const derivationPremise = premiseData;
|
|
1445
|
+
const exprs = premise.getExpressions();
|
|
1446
|
+
const subResult = validateDerivationStructure(derivationPremise, exprs, allVars);
|
|
1447
|
+
for (const violation of subResult.violations) {
|
|
1448
|
+
yield { violation };
|
|
1449
|
+
}
|
|
1450
|
+
}
|
|
1260
1451
|
}
|
|
1261
1452
|
asValidationContext() {
|
|
1262
1453
|
return {
|