@proposit/shared 0.7.2 → 0.8.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/dist/api-client/argument/batch.d.ts +46 -9
- package/dist/api-client/argument/batch.d.ts.map +1 -1
- package/dist/api-client/argument/claims.d.ts +192 -44
- package/dist/api-client/argument/claims.d.ts.map +1 -1
- package/dist/api-client/argument/index.d.ts +198 -50
- package/dist/api-client/argument/index.d.ts.map +1 -1
- package/dist/api-client/user/citations.d.ts +92 -18
- package/dist/api-client/user/citations.d.ts.map +1 -1
- package/dist/api-client/user/claims.d.ts +46 -9
- package/dist/api-client/user/claims.d.ts.map +1 -1
- package/dist/consts/axioms.d.ts +4 -0
- package/dist/consts/axioms.d.ts.map +1 -0
- package/dist/consts/axioms.js +17 -0
- package/dist/consts/axioms.js.map +1 -0
- package/dist/consts/index.d.ts +1 -0
- package/dist/consts/index.d.ts.map +1 -1
- package/dist/consts/index.js +1 -0
- package/dist/consts/index.js.map +1 -1
- package/dist/engine/engine.d.ts +14 -14
- package/dist/engine/engine.d.ts.map +1 -1
- package/dist/engine/engine.js +35 -35
- package/dist/engine/engine.js.map +1 -1
- package/dist/engine/library-adapters.d.ts +2 -2
- package/dist/engine/library-adapters.d.ts.map +1 -1
- package/dist/engine/library-adapters.js +2 -2
- package/dist/engine/library-adapters.js.map +1 -1
- package/dist/engine/mutations/premises.d.ts +2 -2
- package/dist/engine/mutations/premises.d.ts.map +1 -1
- package/dist/engine/mutations/premises.js +5 -5
- package/dist/engine/mutations/premises.js.map +1 -1
- package/dist/engine/optimistic/verification.d.ts.map +1 -1
- package/dist/engine/optimistic/verification.js +1 -2
- package/dist/engine/optimistic/verification.js.map +1 -1
- package/dist/engine/text-tree.d.ts +2 -1
- package/dist/engine/text-tree.d.ts.map +1 -1
- package/dist/engine/text-tree.js +8 -3
- package/dist/engine/text-tree.js.map +1 -1
- package/dist/schemas/api/argument/batch/provision.d.ts +46 -9
- package/dist/schemas/api/argument/batch/provision.d.ts.map +1 -1
- package/dist/schemas/api/argument/claims.d.ts +147 -35
- package/dist/schemas/api/argument/claims.d.ts.map +1 -1
- package/dist/schemas/api/argument/index.d.ts +51 -14
- package/dist/schemas/api/argument/index.d.ts.map +1 -1
- package/dist/schemas/api/argument/index.js +1 -1
- package/dist/schemas/api/argument/index.js.map +1 -1
- package/dist/schemas/api/citations.d.ts +230 -45
- package/dist/schemas/api/citations.d.ts.map +1 -1
- package/dist/schemas/api/claims.d.ts +92 -18
- package/dist/schemas/api/claims.d.ts.map +1 -1
- package/dist/schemas/model/arguments.d.ts +147 -36
- package/dist/schemas/model/arguments.d.ts.map +1 -1
- package/dist/schemas/model/arguments.js +1 -1
- package/dist/schemas/model/arguments.js.map +1 -1
- package/dist/schemas/model/citations.d.ts +4 -4
- package/dist/schemas/model/citations.js +2 -2
- package/dist/schemas/model/citations.js.map +1 -1
- package/dist/schemas/model/claims.d.ts +127 -22
- package/dist/schemas/model/claims.d.ts.map +1 -1
- package/dist/schemas/model/claims.js +85 -24
- package/dist/schemas/model/claims.js.map +1 -1
- package/package.json +3 -3
|
@@ -4,9 +4,25 @@ export declare function getUserClaimsImpl(config: TApiClientConfig, argumentId?:
|
|
|
4
4
|
errorMessage: import("typebox").TString;
|
|
5
5
|
statusCode: import("typebox").TNumber;
|
|
6
6
|
}>> | import("../../schemas/common.js").ParsedSuccess<import("typebox").TArray<import("typebox").TObject<{
|
|
7
|
-
claim: import("typebox").TObject<{
|
|
7
|
+
claim: import("typebox").TUnion<[import("typebox").TObject<{
|
|
8
|
+
digest: import("typebox").TString;
|
|
9
|
+
id: import("typebox").TString;
|
|
10
|
+
argumentId: import("typebox").TString;
|
|
11
|
+
version: import("typebox").TNumber;
|
|
12
|
+
claimForkId: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
13
|
+
creatorId: import("typebox").TString;
|
|
14
|
+
createdOn: import("../../schemas/common.js").TDateType;
|
|
15
|
+
parentId: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
8
16
|
title: import("typebox").TString;
|
|
9
17
|
body: import("typebox").TString;
|
|
18
|
+
titleContentHash: import("typebox").TString;
|
|
19
|
+
type: import("typebox").TLiteral<"normal">;
|
|
20
|
+
kind: import("typebox").TUnion<[import("typebox").TUnion<[import("typebox").TLiteral<"definition">, import("typebox").TLiteral<"criterion">]>, import("typebox").TUnion<[import("typebox").TLiteral<"conclusion">, import("typebox").TLiteral<"claim">]>]>;
|
|
21
|
+
url: import("typebox").TNull;
|
|
22
|
+
citation: import("typebox").TNull;
|
|
23
|
+
citationContentHash: import("typebox").TNull;
|
|
24
|
+
axiom: import("typebox").TNull;
|
|
25
|
+
}>, import("typebox").TObject<{
|
|
10
26
|
digest: import("typebox").TString;
|
|
11
27
|
id: import("typebox").TString;
|
|
12
28
|
argumentId: import("typebox").TString;
|
|
@@ -14,12 +30,14 @@ export declare function getUserClaimsImpl(config: TApiClientConfig, argumentId?:
|
|
|
14
30
|
claimForkId: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
15
31
|
creatorId: import("typebox").TString;
|
|
16
32
|
createdOn: import("../../schemas/common.js").TDateType;
|
|
17
|
-
kind: import("typebox").TUnion<[import("typebox").TUnion<[import("typebox").TLiteral<"definition">, import("typebox").TLiteral<"criterion">]>, import("typebox").TUnion<[import("typebox").TLiteral<"conclusion">, import("typebox").TLiteral<"claim">]>]>;
|
|
18
|
-
type: import("typebox").TUnion<[import("typebox").TLiteral<"normal">, import("typebox").TLiteral<"citation">]>;
|
|
19
33
|
parentId: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
34
|
+
type: import("typebox").TLiteral<"citation">;
|
|
35
|
+
kind: import("typebox").TNull;
|
|
36
|
+
title: import("typebox").TNull;
|
|
37
|
+
body: import("typebox").TNull;
|
|
38
|
+
titleContentHash: import("typebox").TNull;
|
|
39
|
+
url: import("typebox").TString;
|
|
40
|
+
citation: import("typebox").TUnion<[import("typebox").TIntersect<[import("typebox").TObject<{
|
|
23
41
|
type: import("typebox").TUnion<[import("typebox").TLiteral<"Book">, import("typebox").TLiteral<"Website">, import("typebox").TLiteral<"BookChapter">, import("typebox").TLiteral<"Handbook">, import("typebox").TLiteral<"TechnicalReport">, import("typebox").TLiteral<"Standard">, import("typebox").TLiteral<"Thesis">, import("typebox").TLiteral<"Patent">, import("typebox").TLiteral<"Dictionary">, import("typebox").TLiteral<"Encyclopedia">, import("typebox").TLiteral<"JournalArticle">, import("typebox").TLiteral<"MagazineArticle">, import("typebox").TLiteral<"NewspaperArticle">, import("typebox").TLiteral<"ConferencePaper">, import("typebox").TLiteral<"ConferenceProceedings">, import("typebox").TLiteral<"Dataset">, import("typebox").TLiteral<"Software">, import("typebox").TLiteral<"OnlineDocument">, import("typebox").TLiteral<"Blog">, import("typebox").TLiteral<"SocialMedia">, import("typebox").TLiteral<"Preprint">, import("typebox").TLiteral<"Video">, import("typebox").TLiteral<"Podcast">, import("typebox").TLiteral<"Course">, import("typebox").TLiteral<"Presentation">, import("typebox").TLiteral<"Interview">, import("typebox").TLiteral<"PersonalCommunication">, import("typebox").TLiteral<"Email">, import("typebox").TLiteral<"Law">, import("typebox").TLiteral<"CourtCase">, import("typebox").TLiteral<"GovernmentPublication">, import("typebox").TLiteral<"Datasheet">, import("typebox").TLiteral<"ProductManual">, import("typebox").TLiteral<"UnparsedURL">]>;
|
|
24
42
|
}>, import("typebox").TObject<{
|
|
25
43
|
type: import("typebox").TLiteral<"Book">;
|
|
@@ -447,9 +465,28 @@ export declare function getUserClaimsImpl(config: TApiClientConfig, argumentId?:
|
|
|
447
465
|
type: import("typebox").TLiteral<"UnparsedURL">;
|
|
448
466
|
url: import("typebox").TString;
|
|
449
467
|
text: import("typebox").TOptional<import("typebox").TString>;
|
|
450
|
-
}>]>]
|
|
451
|
-
citationContentHash: import("typebox").
|
|
452
|
-
|
|
468
|
+
}>]>]>;
|
|
469
|
+
citationContentHash: import("typebox").TString;
|
|
470
|
+
axiom: import("typebox").TNull;
|
|
471
|
+
}>, import("typebox").TObject<{
|
|
472
|
+
digest: import("typebox").TString;
|
|
473
|
+
id: import("typebox").TString;
|
|
474
|
+
argumentId: import("typebox").TString;
|
|
475
|
+
version: import("typebox").TNumber;
|
|
476
|
+
claimForkId: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
477
|
+
creatorId: import("typebox").TString;
|
|
478
|
+
createdOn: import("../../schemas/common.js").TDateType;
|
|
479
|
+
parentId: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
480
|
+
type: import("typebox").TLiteral<"axiomatic">;
|
|
481
|
+
kind: import("typebox").TNull;
|
|
482
|
+
title: import("typebox").TNull;
|
|
483
|
+
body: import("typebox").TNull;
|
|
484
|
+
titleContentHash: import("typebox").TNull;
|
|
485
|
+
url: import("typebox").TNull;
|
|
486
|
+
citation: import("typebox").TNull;
|
|
487
|
+
citationContentHash: import("typebox").TNull;
|
|
488
|
+
axiom: import("typebox").TUnion<[import("typebox").TLiteral<"definition">, import("typebox").TLiteral<"stipulation">, import("typebox").TLiteral<"logical-principle">, import("typebox").TLiteral<"mathematical-principle">, import("typebox").TLiteral<"domain-rule">, import("typebox").TLiteral<"background-assumption">]>;
|
|
489
|
+
}>]>;
|
|
453
490
|
argument: import("typebox").TObject<{
|
|
454
491
|
id: import("typebox").TString;
|
|
455
492
|
title: import("typebox").TString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claims.d.ts","sourceRoot":"","sources":["../../../src/api-client/user/claims.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAGpD,wBAAsB,iBAAiB,CACnC,MAAM,EAAE,gBAAgB,EACxB,UAAU,CAAC,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"claims.d.ts","sourceRoot":"","sources":["../../../src/api-client/user/claims.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAGpD,wBAAsB,iBAAiB,CACnC,MAAM,EAAE,gBAAgB,EACxB,UAAU,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAYtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"axioms.d.ts","sourceRoot":"","sources":["../../src/consts/axioms.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AAE5D,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAOzD,CAAA;AAEV,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAa/D,CAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export const AXIOM_KIND_LABELS = {
|
|
2
|
+
definition: "True by definition or meaning",
|
|
3
|
+
stipulation: "Assumed for this argument",
|
|
4
|
+
"logical-principle": "Basic logical principle",
|
|
5
|
+
"mathematical-principle": "Basic mathematical principle",
|
|
6
|
+
"domain-rule": "Rule or authority within a system",
|
|
7
|
+
"background-assumption": "General background assumption",
|
|
8
|
+
};
|
|
9
|
+
export const AXIOM_KIND_DESCRIPTIONS = {
|
|
10
|
+
definition: "Use when the claim is treated as true because of what the relevant words, categories, or concepts mean. Example: 'A bachelor is unmarried.'",
|
|
11
|
+
stipulation: "Use when the argument explicitly defines or assumes something for its own purposes. Example: 'For this argument, an active user means someone who logs in weekly.'",
|
|
12
|
+
"logical-principle": "Use for basic principles of valid reasoning. Example: 'If P implies Q, and P is true, then Q follows.'",
|
|
13
|
+
"mathematical-principle": "Use for basic mathematical identities, axioms, or quantitative rules. Example: 'For any number x, x + 0 = x.'",
|
|
14
|
+
"domain-rule": "Use for rules, standards, texts, contracts, doctrines, protocols, or authorities internal to a system. Example: 'Under this contract, payment is due within 30 days.'",
|
|
15
|
+
"background-assumption": "Use for a foundational assumption the argument relies on but does not prove. Example: 'Human well-being matters.'",
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=axioms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"axioms.js","sourceRoot":"","sources":["../../src/consts/axioms.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAyC;IACnE,UAAU,EAAE,+BAA+B;IAC3C,WAAW,EAAE,2BAA2B;IACxC,mBAAmB,EAAE,yBAAyB;IAC9C,wBAAwB,EAAE,8BAA8B;IACxD,aAAa,EAAE,mCAAmC;IAClD,uBAAuB,EAAE,+BAA+B;CAClD,CAAA;AAEV,MAAM,CAAC,MAAM,uBAAuB,GAAyC;IACzE,UAAU,EACN,6IAA6I;IACjJ,WAAW,EACP,oKAAoK;IACxK,mBAAmB,EACf,wGAAwG;IAC5G,wBAAwB,EACpB,+GAA+G;IACnH,aAAa,EACT,uKAAuK;IAC3K,uBAAuB,EACnB,mHAAmH;CACjH,CAAA"}
|
package/dist/consts/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/consts/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/consts/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA"}
|
package/dist/consts/index.js
CHANGED
package/dist/consts/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/consts/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/consts/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA"}
|
package/dist/engine/engine.d.ts
CHANGED
|
@@ -6,17 +6,17 @@ import type { TClaimCitation } from "../schemas/model/citations.js";
|
|
|
6
6
|
/** Project-parameterized snapshot type used to bridge TypeBox schemas and core engine. */
|
|
7
7
|
export type TProjectSnapshot = TArgumentEngineSnapshot<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable>;
|
|
8
8
|
/**
|
|
9
|
-
* Extended reactive snapshot. Adds project-level claim and
|
|
10
|
-
*
|
|
9
|
+
* Extended reactive snapshot. Adds project-level claim and citation edge
|
|
10
|
+
* data and computed validation issues to core's reactive snapshot.
|
|
11
11
|
*/
|
|
12
12
|
export type TProjectReactiveSnapshot = TReactiveSnapshot<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable> & {
|
|
13
13
|
claims: Record<string, TClaim>;
|
|
14
|
-
|
|
14
|
+
citations: Record<string, TClaimCitation[]>;
|
|
15
15
|
validationIssues: TCoreValidationIssue[];
|
|
16
16
|
};
|
|
17
17
|
/**
|
|
18
18
|
* Project-specific extension of ArgumentEngine that manages domain data
|
|
19
|
-
* (claims and
|
|
19
|
+
* (claims and citation edges) alongside the core
|
|
20
20
|
* propositional logic state.
|
|
21
21
|
*
|
|
22
22
|
* Mutations to domain data trigger reactive notifications via the inherited
|
|
@@ -25,7 +25,7 @@ export type TProjectReactiveSnapshot = TReactiveSnapshot<TArgument, TProposition
|
|
|
25
25
|
*/
|
|
26
26
|
export declare class PropositArgumentEngine extends ArgumentEngine<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable> {
|
|
27
27
|
private claimsMap;
|
|
28
|
-
private
|
|
28
|
+
private citationsMap;
|
|
29
29
|
private claimContext;
|
|
30
30
|
constructor(...args: ConstructorParameters<typeof ArgumentEngine<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable>>);
|
|
31
31
|
/**
|
|
@@ -44,22 +44,22 @@ export declare class PropositArgumentEngine extends ArgumentEngine<TArgument, TP
|
|
|
44
44
|
*/
|
|
45
45
|
rollback(snapshot: Parameters<InstanceType<typeof ArgumentEngine<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable>>["rollback"]>[0]): void;
|
|
46
46
|
private claimsDirty;
|
|
47
|
-
private
|
|
47
|
+
private citationsDirty;
|
|
48
48
|
private cachedClaims;
|
|
49
|
-
private
|
|
49
|
+
private cachedCitations;
|
|
50
50
|
private cachedProjectSnapshot;
|
|
51
51
|
private lastBaseSnapshot;
|
|
52
52
|
private getClaimsRecord;
|
|
53
|
-
private
|
|
53
|
+
private getCitationsRecord;
|
|
54
54
|
getProjectSnapshot(): TProjectReactiveSnapshot;
|
|
55
55
|
getClaim(id: string): TClaim | undefined;
|
|
56
56
|
getClaims(): Record<string, TClaim>;
|
|
57
57
|
setClaim(claim: TClaim): void;
|
|
58
58
|
removeClaim(id: string): void;
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
getCitationsForClaim(claimId: string): TClaimCitation[];
|
|
60
|
+
getCitations(): Record<string, TClaimCitation[]>;
|
|
61
|
+
addCitation(cc: TClaimCitation): void;
|
|
62
|
+
removeCitation(edgeId: string): void;
|
|
63
63
|
/**
|
|
64
64
|
* Restricts forking to published arguments only.
|
|
65
65
|
* Overrides the base class default which returns true unconditionally.
|
|
@@ -68,11 +68,11 @@ export declare class PropositArgumentEngine extends ArgumentEngine<TArgument, TP
|
|
|
68
68
|
protected buildReactiveSnapshot(): TProjectReactiveSnapshot;
|
|
69
69
|
/**
|
|
70
70
|
* Creates a PropositArgumentEngine from server-provided data: an engine
|
|
71
|
-
* snapshot (for logic state) plus arrays of claims and
|
|
71
|
+
* snapshot (for logic state) plus arrays of claims and citation
|
|
72
72
|
* edges.
|
|
73
73
|
*
|
|
74
74
|
* Does NOT trigger reactive notifications during initial data loading.
|
|
75
75
|
*/
|
|
76
|
-
static fromServerData(snapshot: TProjectSnapshot, claims: TClaim[],
|
|
76
|
+
static fromServerData(snapshot: TProjectSnapshot, claims: TClaim[], citations: TClaimCitation[]): PropositArgumentEngine;
|
|
77
77
|
}
|
|
78
78
|
//# sourceMappingURL=engine.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/engine/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EAEd,KAAK,uBAAuB,EAG5B,KAAK,oBAAoB,EAEzB,KAAK,iBAAiB,EACzB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EACR,gCAAgC,EAChC,qBAAqB,EACrB,sBAAsB,EACzB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/engine/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EAEd,KAAK,uBAAuB,EAG5B,KAAK,oBAAoB,EAEzB,KAAK,iBAAiB,EACzB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,KAAK,EACR,gCAAgC,EAChC,qBAAqB,EACrB,sBAAsB,EACzB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAkBnE,0FAA0F;AAC1F,MAAM,MAAM,gBAAgB,GAAG,uBAAuB,CAClD,SAAS,EACT,qBAAqB,EACrB,gCAAgC,EAChC,sBAAsB,CACzB,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,CACpD,SAAS,EACT,qBAAqB,EACrB,gCAAgC,EAChC,sBAAsB,CACzB,GAAG;IACA,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAA;IAC3C,gBAAgB,EAAE,oBAAoB,EAAE,CAAA;CAC3C,CAAA;AAED;;;;;;;;GAQG;AACH,qBAAa,sBAAuB,SAAQ,cAAc,CACtD,SAAS,EACT,qBAAqB,EACrB,gCAAgC,EAChC,sBAAsB,CACzB;IAGG,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAAsC;IAO1D,OAAO,CAAC,YAAY,CAAoC;gBAGpD,GAAG,IAAI,EAAE,qBAAqB,CAC1B,OAAO,cAAc,CACjB,SAAS,EACT,qBAAqB,EACrB,gCAAgC,EAChC,sBAAsB,CACzB,CACJ;IA6DL;;;;;;;;;;;;;OAaG;IACM,QAAQ,CACb,QAAQ,EAAE,UAAU,CAChB,YAAY,CACR,OAAO,cAAc,CACjB,SAAS,EACT,qBAAqB,EACrB,gCAAgC,EAChC,sBAAsB,CACzB,CACJ,CAAC,UAAU,CAAC,CAChB,CAAC,CAAC,CAAC,GACL,IAAI;IAUP,OAAO,CAAC,WAAW,CAAO;IAC1B,OAAO,CAAC,cAAc,CAAO;IAG7B,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,eAAe,CAAuC;IAG9D,OAAO,CAAC,qBAAqB,CAAsC;IACnE,OAAO,CAAC,gBAAgB,CAOT;IAIf,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,kBAAkB;IAU1B,kBAAkB,IAAI,wBAAwB;IAM9C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIxC,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAInC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM7B,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAS7B,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,EAAE;IAIvD,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;IAIhD,WAAW,CAAC,EAAE,EAAE,cAAc,GAAG,IAAI;IAOrC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAqBpC;;;OAGG;IACa,OAAO,IAAI,OAAO;cAOf,qBAAqB,IAAI,wBAAwB;IAkDpE;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CACjB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,MAAM,EAAE,EAChB,SAAS,EAAE,cAAc,EAAE,GAC5B,sBAAsB;CAiF5B"}
|
package/dist/engine/engine.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ArgumentEngine, InvariantViolationError, } from "@proposit/proposit-core";
|
|
2
2
|
import { CHECKSUM_CONFIG } from "../checksum.js";
|
|
3
|
-
import { createClaimLookup
|
|
3
|
+
import { createClaimLookup } from "./library-adapters.js";
|
|
4
4
|
// Grammar configs used by fromServerData. Wave-2 derivation premises produced
|
|
5
5
|
// by populateDerivationFromCitations carry an `IMPLIES(OR(c1, c2), Q)` shape
|
|
6
6
|
// that violates the strict runtime rule banning a non-not operator as a direct
|
|
@@ -16,7 +16,7 @@ const LOADING_GRAMMAR = {
|
|
|
16
16
|
};
|
|
17
17
|
/**
|
|
18
18
|
* Project-specific extension of ArgumentEngine that manages domain data
|
|
19
|
-
* (claims and
|
|
19
|
+
* (claims and citation edges) alongside the core
|
|
20
20
|
* propositional logic state.
|
|
21
21
|
*
|
|
22
22
|
* Mutations to domain data trigger reactive notifications via the inherited
|
|
@@ -27,7 +27,7 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
27
27
|
// Internal storage — claimsMap also backs the base class's claimLibrary
|
|
28
28
|
// so that setClaim() makes new claims visible to addVariable() validation.
|
|
29
29
|
claimsMap;
|
|
30
|
-
|
|
30
|
+
citationsMap = new Map();
|
|
31
31
|
// Shared context object that is captured by the mutableLookup closure
|
|
32
32
|
// and also accessible after construction so the rollback() override can
|
|
33
33
|
// temporarily enable permissive claim stubs (see rollback() below).
|
|
@@ -35,7 +35,7 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
35
35
|
// The type annotation is a plain object to satisfy TS before this exists.
|
|
36
36
|
claimContext;
|
|
37
37
|
constructor(...args) {
|
|
38
|
-
const [argument, claimLookup,
|
|
38
|
+
const [argument, claimLookup, options] = args;
|
|
39
39
|
// Create the shared claims map before super() so we can build a
|
|
40
40
|
// live lookup that the base class stores as this.claimLibrary.
|
|
41
41
|
const claimsMap = new Map();
|
|
@@ -87,7 +87,7 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
87
87
|
return undefined;
|
|
88
88
|
},
|
|
89
89
|
};
|
|
90
|
-
super(argument, mutableLookup,
|
|
90
|
+
super(argument, mutableLookup, options);
|
|
91
91
|
this.claimsMap = claimsMap;
|
|
92
92
|
this.claimContext = claimContext;
|
|
93
93
|
}
|
|
@@ -117,10 +117,10 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
117
117
|
}
|
|
118
118
|
// Dirty tracking for structural sharing
|
|
119
119
|
claimsDirty = true;
|
|
120
|
-
|
|
120
|
+
citationsDirty = true;
|
|
121
121
|
// Cached records for reactive snapshot
|
|
122
122
|
cachedClaims = {};
|
|
123
|
-
|
|
123
|
+
cachedCitations = {};
|
|
124
124
|
// Full combined snapshot cache (for useSyncExternalStore referential stability)
|
|
125
125
|
cachedProjectSnapshot;
|
|
126
126
|
lastBaseSnapshot;
|
|
@@ -132,12 +132,12 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
132
132
|
}
|
|
133
133
|
return this.cachedClaims;
|
|
134
134
|
}
|
|
135
|
-
|
|
136
|
-
if (this.
|
|
137
|
-
this.
|
|
138
|
-
this.
|
|
135
|
+
getCitationsRecord() {
|
|
136
|
+
if (this.citationsDirty) {
|
|
137
|
+
this.cachedCitations = Object.fromEntries(this.citationsMap);
|
|
138
|
+
this.citationsDirty = false;
|
|
139
139
|
}
|
|
140
|
-
return this.
|
|
140
|
+
return this.cachedCitations;
|
|
141
141
|
}
|
|
142
142
|
// ──── Typed snapshot accessor ────
|
|
143
143
|
getProjectSnapshot() {
|
|
@@ -161,35 +161,35 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
161
161
|
this.notifySubscribers();
|
|
162
162
|
}
|
|
163
163
|
}
|
|
164
|
-
// ────
|
|
165
|
-
|
|
166
|
-
return this.
|
|
164
|
+
// ──── Citation accessors ────
|
|
165
|
+
getCitationsForClaim(claimId) {
|
|
166
|
+
return this.citationsMap.get(claimId) ?? [];
|
|
167
167
|
}
|
|
168
|
-
|
|
169
|
-
return { ...this.
|
|
168
|
+
getCitations() {
|
|
169
|
+
return { ...this.getCitationsRecord() };
|
|
170
170
|
}
|
|
171
|
-
|
|
172
|
-
const existing = this.
|
|
173
|
-
this.
|
|
174
|
-
this.
|
|
171
|
+
addCitation(cc) {
|
|
172
|
+
const existing = this.citationsMap.get(cc.claimId) ?? [];
|
|
173
|
+
this.citationsMap.set(cc.claimId, [...existing, cc]);
|
|
174
|
+
this.citationsDirty = true;
|
|
175
175
|
this.notifySubscribers();
|
|
176
176
|
}
|
|
177
|
-
|
|
177
|
+
removeCitation(edgeId) {
|
|
178
178
|
let removed = false;
|
|
179
|
-
for (const [
|
|
179
|
+
for (const [claimId, edges] of this.citationsMap.entries()) {
|
|
180
180
|
const filtered = edges.filter((e) => e.id !== edgeId);
|
|
181
181
|
if (filtered.length !== edges.length) {
|
|
182
182
|
if (filtered.length > 0) {
|
|
183
|
-
this.
|
|
183
|
+
this.citationsMap.set(claimId, filtered);
|
|
184
184
|
}
|
|
185
185
|
else {
|
|
186
|
-
this.
|
|
186
|
+
this.citationsMap.delete(claimId);
|
|
187
187
|
}
|
|
188
188
|
removed = true;
|
|
189
189
|
}
|
|
190
190
|
}
|
|
191
191
|
if (removed) {
|
|
192
|
-
this.
|
|
192
|
+
this.citationsDirty = true;
|
|
193
193
|
this.notifySubscribers();
|
|
194
194
|
}
|
|
195
195
|
}
|
|
@@ -206,7 +206,7 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
206
206
|
buildReactiveSnapshot() {
|
|
207
207
|
const base = super.buildReactiveSnapshot();
|
|
208
208
|
const claims = this.getClaimsRecord();
|
|
209
|
-
const
|
|
209
|
+
const citations = this.getCitationsRecord();
|
|
210
210
|
// Recompute validation when base engine snapshot changes
|
|
211
211
|
let validationIssues;
|
|
212
212
|
if (base !== this.lastBaseSnapshot) {
|
|
@@ -231,13 +231,13 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
231
231
|
if (this.cachedProjectSnapshot &&
|
|
232
232
|
base === this.lastBaseSnapshot &&
|
|
233
233
|
claims === this.cachedProjectSnapshot.claims &&
|
|
234
|
-
|
|
234
|
+
citations === this.cachedProjectSnapshot.citations) {
|
|
235
235
|
return this.cachedProjectSnapshot;
|
|
236
236
|
}
|
|
237
237
|
const snapshot = {
|
|
238
238
|
...base,
|
|
239
239
|
claims,
|
|
240
|
-
|
|
240
|
+
citations,
|
|
241
241
|
validationIssues,
|
|
242
242
|
};
|
|
243
243
|
this.cachedProjectSnapshot = snapshot;
|
|
@@ -247,14 +247,14 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
247
247
|
// ──── Static factory ────
|
|
248
248
|
/**
|
|
249
249
|
* Creates a PropositArgumentEngine from server-provided data: an engine
|
|
250
|
-
* snapshot (for logic state) plus arrays of claims and
|
|
250
|
+
* snapshot (for logic state) plus arrays of claims and citation
|
|
251
251
|
* edges.
|
|
252
252
|
*
|
|
253
253
|
* Does NOT trigger reactive notifications during initial data loading.
|
|
254
254
|
*/
|
|
255
|
-
static fromServerData(snapshot, claims,
|
|
255
|
+
static fromServerData(snapshot, claims, citations) {
|
|
256
256
|
const claimLookup = createClaimLookup(claims);
|
|
257
|
-
const engine = new PropositArgumentEngine(snapshot.argument, claimLookup,
|
|
257
|
+
const engine = new PropositArgumentEngine(snapshot.argument, claimLookup, {
|
|
258
258
|
checksumConfig: CHECKSUM_CONFIG,
|
|
259
259
|
positionConfig: snapshot.config?.positionConfig,
|
|
260
260
|
grammarConfig: RUNTIME_GRAMMAR,
|
|
@@ -316,10 +316,10 @@ export class PropositArgumentEngine extends ArgumentEngine {
|
|
|
316
316
|
for (const claim of claims) {
|
|
317
317
|
engine.claimsMap.set(claim.id, claim);
|
|
318
318
|
}
|
|
319
|
-
for (const cc of
|
|
320
|
-
const existing = engine.
|
|
319
|
+
for (const cc of citations) {
|
|
320
|
+
const existing = engine.citationsMap.get(cc.claimId) ?? [];
|
|
321
321
|
existing.push(cc);
|
|
322
|
-
engine.
|
|
322
|
+
engine.citationsMap.set(cc.claimId, existing);
|
|
323
323
|
}
|
|
324
324
|
return engine;
|
|
325
325
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/engine/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EACd,uBAAuB,GAO1B,MAAM,yBAAyB,CAAA;AAUhC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/engine/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { TClaimLookup } from "@proposit/proposit-core";
|
|
2
|
-
import { EMPTY_CLAIM_LOOKUP
|
|
2
|
+
import { EMPTY_CLAIM_LOOKUP } from "@proposit/proposit-core";
|
|
3
3
|
export declare function createClaimLookup(claims: {
|
|
4
4
|
id: string;
|
|
5
5
|
version: number;
|
|
6
6
|
}[]): TClaimLookup;
|
|
7
|
-
export { EMPTY_CLAIM_LOOKUP
|
|
7
|
+
export { EMPTY_CLAIM_LOOKUP };
|
|
8
8
|
//# sourceMappingURL=library-adapters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"library-adapters.d.ts","sourceRoot":"","sources":["../../src/engine/library-adapters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,
|
|
1
|
+
{"version":3,"file":"library-adapters.d.ts","sourceRoot":"","sources":["../../src/engine/library-adapters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAgB,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE1E,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,GAC1C,YAAY,CAed;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createLookup, EMPTY_CLAIM_LOOKUP
|
|
1
|
+
import { createLookup, EMPTY_CLAIM_LOOKUP } from "@proposit/proposit-core";
|
|
2
2
|
export function createClaimLookup(claims) {
|
|
3
3
|
const inner = createLookup(claims, (c) => `${c.id}:${c.version}`);
|
|
4
4
|
const latestById = new Map();
|
|
@@ -15,5 +15,5 @@ export function createClaimLookup(claims) {
|
|
|
15
15
|
getCurrent: (id) => latestById.get(id),
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
|
-
export { EMPTY_CLAIM_LOOKUP
|
|
18
|
+
export { EMPTY_CLAIM_LOOKUP };
|
|
19
19
|
//# sourceMappingURL=library-adapters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"library-adapters.js","sourceRoot":"","sources":["../../src/engine/library-adapters.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"library-adapters.js","sourceRoot":"","sources":["../../src/engine/library-adapters.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE1E,MAAM,UAAU,iBAAiB,CAC7B,MAAyC;IAEzC,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;IACjE,MAAM,UAAU,GAAG,IAAI,GAAG,EAA2C,CAAA;IACrE,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACrC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC5C,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QAC3B,CAAC;IACL,CAAC;IACD,OAAO;QACH,mGAAmG;QACnG,GAAG,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAQ;QACnD,mGAAmG;QACnG,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAQ;KAChD,CAAA;AACL,CAAC;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAA"}
|
|
@@ -84,7 +84,7 @@ export declare function clearDerivationAntecedent(engine: ProjectEngine, premise
|
|
|
84
84
|
* naked derivation premise. For `n=1`, produces `IMPLIES(citation_var_1, Q)`.
|
|
85
85
|
* For `n=0`, returns an empty changeset.
|
|
86
86
|
*
|
|
87
|
-
* Caller-supplied `
|
|
87
|
+
* Caller-supplied `supportingClaimIds` ordering determines the OR's child positions
|
|
88
88
|
* (or the single-source antecedent for n=1).
|
|
89
89
|
*
|
|
90
90
|
* @throws InvariantViolationError(DERIVATION_TYPE_MISMATCH) when `premiseId`
|
|
@@ -93,7 +93,7 @@ export declare function clearDerivationAntecedent(engine: ProjectEngine, premise
|
|
|
93
93
|
* premise's root expression is already an IMPLIES (caller forgot to
|
|
94
94
|
* call `clearDerivationAntecedent` first).
|
|
95
95
|
*/
|
|
96
|
-
export declare function populateDerivationFromCitations(engine: ProjectEngine, premiseId: string,
|
|
96
|
+
export declare function populateDerivationFromCitations(engine: ProjectEngine, premiseId: string, supportingClaimIds: string[]): {
|
|
97
97
|
changes: ProjectChangeset;
|
|
98
98
|
};
|
|
99
99
|
//# sourceMappingURL=premises.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"premises.d.ts","sourceRoot":"","sources":["../../../src/engine/mutations/premises.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,gCAAgC,EACnC,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAQjE,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;IACF,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,IAAI,CAAA;IACf,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,IAAI,EAAE,gBAAgB,CAAA;CACzB,GACF;IAAE,OAAO,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CA+B/D;AAED,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,gBAAgB,GAC1B;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAa/B;AAED,wBAAgB,yBAAyB,CACrC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC;IAAE,OAAO,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAO/D;AAED,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,GAClB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAGjD;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,6BAA6B,CACzC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;IACF,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,IAAI,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,4BAA4B,CAAC,EAAE,MAAM,CAAA;IACrC,sBAAsB,EAAE,MAAM,CAAA;CACjC,GACF;IACC,OAAO,EAAE,qBAAqB,CAAA;IAC9B,kBAAkB,EAAE,sBAAsB,CAAA;IAC1C,oBAAoB,EAAE,gCAAgC,CAAA;IACtD,OAAO,EAAE,gBAAgB,CAAA;CAC5B,CA4KA;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACrC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,GAClB;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE,CA8H/B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,+BAA+B,CAC3C,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,
|
|
1
|
+
{"version":3,"file":"premises.d.ts","sourceRoot":"","sources":["../../../src/engine/mutations/premises.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,gCAAgC,EACnC,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAQjE,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;IACF,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,IAAI,CAAA;IACf,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,IAAI,EAAE,gBAAgB,CAAA;CACzB,GACF;IAAE,OAAO,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CA+B/D;AAED,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,gBAAgB,GAC1B;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAa/B;AAED,wBAAgB,yBAAyB,CACrC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC;IAAE,OAAO,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAO/D;AAED,wBAAgB,mBAAmB,CAC/B,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,GAClB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAGjD;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,6BAA6B,CACzC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;IACF,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,IAAI,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,4BAA4B,CAAC,EAAE,MAAM,CAAA;IACrC,sBAAsB,EAAE,MAAM,CAAA;CACjC,GACF;IACC,OAAO,EAAE,qBAAqB,CAAA;IAC9B,kBAAkB,EAAE,sBAAsB,CAAA;IAC1C,oBAAoB,EAAE,gCAAgC,CAAA;IACtD,OAAO,EAAE,gBAAgB,CAAA;CAC5B,CA4KA;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACrC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,GAClB;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE,CA8H/B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,+BAA+B,CAC3C,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM,EAAE,GAC7B;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAyJ/B"}
|
|
@@ -337,7 +337,7 @@ export function clearDerivationAntecedent(engine, premiseId) {
|
|
|
337
337
|
* naked derivation premise. For `n=1`, produces `IMPLIES(citation_var_1, Q)`.
|
|
338
338
|
* For `n=0`, returns an empty changeset.
|
|
339
339
|
*
|
|
340
|
-
* Caller-supplied `
|
|
340
|
+
* Caller-supplied `supportingClaimIds` ordering determines the OR's child positions
|
|
341
341
|
* (or the single-source antecedent for n=1).
|
|
342
342
|
*
|
|
343
343
|
* @throws InvariantViolationError(DERIVATION_TYPE_MISMATCH) when `premiseId`
|
|
@@ -346,7 +346,7 @@ export function clearDerivationAntecedent(engine, premiseId) {
|
|
|
346
346
|
* premise's root expression is already an IMPLIES (caller forgot to
|
|
347
347
|
* call `clearDerivationAntecedent` first).
|
|
348
348
|
*/
|
|
349
|
-
export function populateDerivationFromCitations(engine, premiseId,
|
|
349
|
+
export function populateDerivationFromCitations(engine, premiseId, supportingClaimIds) {
|
|
350
350
|
const pm = engine.getPremise(premiseId);
|
|
351
351
|
if (!pm) {
|
|
352
352
|
throw new Error(`Premise ${premiseId} not found`);
|
|
@@ -383,7 +383,7 @@ export function populateDerivationFromCitations(engine, premiseId, sourceClaimId
|
|
|
383
383
|
},
|
|
384
384
|
]);
|
|
385
385
|
}
|
|
386
|
-
if (
|
|
386
|
+
if (supportingClaimIds.length === 0)
|
|
387
387
|
return { changes: {} };
|
|
388
388
|
const consequentExpr = root;
|
|
389
389
|
if (consequentExpr.variableId == null) {
|
|
@@ -402,8 +402,8 @@ export function populateDerivationFromCitations(engine, premiseId, sourceClaimId
|
|
|
402
402
|
// mutation surface and produces no changeset of its own).
|
|
403
403
|
const variablesBefore = new Set(engine.getVariables().map((v) => v.id));
|
|
404
404
|
const sourceVariables = [];
|
|
405
|
-
for (const
|
|
406
|
-
const v = engine.ensureClaimBoundVariable(
|
|
405
|
+
for (const supportingClaimId of supportingClaimIds) {
|
|
406
|
+
const v = engine.ensureClaimBoundVariable(supportingClaimId);
|
|
407
407
|
sourceVariables.push(v);
|
|
408
408
|
}
|
|
409
409
|
const newlyAddedVariables = sourceVariables.filter((v) => !variablesBefore.has(v.id));
|