@proposit/proposit-core 0.9.1 → 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.
Files changed (184) hide show
  1. package/README.md +147 -35
  2. package/dist/cli/commands/arguments.d.ts.map +1 -1
  3. package/dist/cli/commands/arguments.js +8 -16
  4. package/dist/cli/commands/arguments.js.map +1 -1
  5. package/dist/cli/commands/citations.d.ts +3 -0
  6. package/dist/cli/commands/citations.d.ts.map +1 -0
  7. package/dist/cli/commands/citations.js +89 -0
  8. package/dist/cli/commands/citations.js.map +1 -0
  9. package/dist/cli/commands/claims.d.ts.map +1 -1
  10. package/dist/cli/commands/claims.js +10 -2
  11. package/dist/cli/commands/claims.js.map +1 -1
  12. package/dist/cli/commands/parse.d.ts.map +1 -1
  13. package/dist/cli/commands/parse.js +9 -17
  14. package/dist/cli/commands/parse.js.map +1 -1
  15. package/dist/cli/commands/premises.d.ts.map +1 -1
  16. package/dist/cli/commands/premises.js +82 -5
  17. package/dist/cli/commands/premises.js.map +1 -1
  18. package/dist/cli/commands/render.d.ts.map +1 -1
  19. package/dist/cli/commands/render.js +46 -19
  20. package/dist/cli/commands/render.js.map +1 -1
  21. package/dist/cli/commands/variables.d.ts.map +1 -1
  22. package/dist/cli/commands/variables.js +1 -0
  23. package/dist/cli/commands/variables.js.map +1 -1
  24. package/dist/cli/engine.d.ts.map +1 -1
  25. package/dist/cli/engine.js +15 -9
  26. package/dist/cli/engine.js.map +1 -1
  27. package/dist/cli/import.d.ts +2 -4
  28. package/dist/cli/import.d.ts.map +1 -1
  29. package/dist/cli/import.js +78 -20
  30. package/dist/cli/import.js.map +1 -1
  31. package/dist/cli/router.js +1 -1
  32. package/dist/cli/router.js.map +1 -1
  33. package/dist/cli/storage/libraries.d.ts +4 -7
  34. package/dist/cli/storage/libraries.d.ts.map +1 -1
  35. package/dist/cli/storage/libraries.js +9 -28
  36. package/dist/cli/storage/libraries.js.map +1 -1
  37. package/dist/cli/storage/migrate-v0.10.d.ts +10 -0
  38. package/dist/cli/storage/migrate-v0.10.d.ts.map +1 -0
  39. package/dist/cli/storage/migrate-v0.10.js +213 -0
  40. package/dist/cli/storage/migrate-v0.10.js.map +1 -0
  41. package/dist/cli/storage/migrate-v0.11.d.ts +15 -0
  42. package/dist/cli/storage/migrate-v0.11.d.ts.map +1 -0
  43. package/dist/cli/storage/migrate-v0.11.js +125 -0
  44. package/dist/cli/storage/migrate-v0.11.js.map +1 -0
  45. package/dist/cli.js +2 -2
  46. package/dist/cli.js.map +1 -1
  47. package/dist/extensions/basics/argument-parser.d.ts +1 -2
  48. package/dist/extensions/basics/argument-parser.d.ts.map +1 -1
  49. package/dist/extensions/basics/argument-parser.js.map +1 -1
  50. package/dist/extensions/basics/schemata.d.ts +12 -1
  51. package/dist/extensions/basics/schemata.d.ts.map +1 -1
  52. package/dist/extensions/ieee/{source.d.ts → citation-claim.d.ts} +5 -3
  53. package/dist/extensions/ieee/citation-claim.d.ts.map +1 -0
  54. package/dist/extensions/ieee/{source.js → citation-claim.js} +5 -4
  55. package/dist/extensions/ieee/citation-claim.js.map +1 -0
  56. package/dist/extensions/ieee/index.d.ts +1 -1
  57. package/dist/extensions/ieee/index.d.ts.map +1 -1
  58. package/dist/extensions/ieee/index.js +1 -1
  59. package/dist/extensions/ieee/index.js.map +1 -1
  60. package/dist/lib/consts.d.ts.map +1 -1
  61. package/dist/lib/consts.js +15 -14
  62. package/dist/lib/consts.js.map +1 -1
  63. package/dist/lib/core/argument-engine.d.ts +47 -9
  64. package/dist/lib/core/argument-engine.d.ts.map +1 -1
  65. package/dist/lib/core/argument-engine.js +209 -20
  66. package/dist/lib/core/argument-engine.js.map +1 -1
  67. package/dist/lib/core/argument-library.d.ts +13 -15
  68. package/dist/lib/core/argument-library.d.ts.map +1 -1
  69. package/dist/lib/core/argument-library.js +23 -9
  70. package/dist/lib/core/argument-library.js.map +1 -1
  71. package/dist/lib/core/claim-citation-library.d.ts +44 -0
  72. package/dist/lib/core/claim-citation-library.d.ts.map +1 -0
  73. package/dist/lib/core/claim-citation-library.js +336 -0
  74. package/dist/lib/core/claim-citation-library.js.map +1 -0
  75. package/dist/lib/core/claim-library.d.ts +33 -1
  76. package/dist/lib/core/claim-library.d.ts.map +1 -1
  77. package/dist/lib/core/claim-library.js +71 -3
  78. package/dist/lib/core/claim-library.js.map +1 -1
  79. package/dist/lib/core/fork-library.d.ts +19 -10
  80. package/dist/lib/core/fork-library.d.ts.map +1 -1
  81. package/dist/lib/core/fork-library.js +16 -13
  82. package/dist/lib/core/fork-library.js.map +1 -1
  83. package/dist/lib/core/fork.d.ts +6 -7
  84. package/dist/lib/core/fork.d.ts.map +1 -1
  85. package/dist/lib/core/fork.js +8 -3
  86. package/dist/lib/core/fork.js.map +1 -1
  87. package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts +132 -7
  88. package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts.map +1 -1
  89. package/dist/lib/core/interfaces/index.d.ts +1 -1
  90. package/dist/lib/core/interfaces/index.d.ts.map +1 -1
  91. package/dist/lib/core/interfaces/library.interfaces.d.ts +76 -157
  92. package/dist/lib/core/interfaces/library.interfaces.d.ts.map +1 -1
  93. package/dist/lib/core/managed-derivation-premise-engine.d.ts +155 -0
  94. package/dist/lib/core/managed-derivation-premise-engine.d.ts.map +1 -0
  95. package/dist/lib/core/managed-derivation-premise-engine.js +517 -0
  96. package/dist/lib/core/managed-derivation-premise-engine.js.map +1 -0
  97. package/dist/lib/core/premise-engine.d.ts +6 -5
  98. package/dist/lib/core/premise-engine.d.ts.map +1 -1
  99. package/dist/lib/core/premise-engine.js +5 -3
  100. package/dist/lib/core/premise-engine.js.map +1 -1
  101. package/dist/lib/core/proposit-core.d.ts +30 -32
  102. package/dist/lib/core/proposit-core.d.ts.map +1 -1
  103. package/dist/lib/core/proposit-core.js +82 -89
  104. package/dist/lib/core/proposit-core.js.map +1 -1
  105. package/dist/lib/index.d.ts +5 -3
  106. package/dist/lib/index.d.ts.map +1 -1
  107. package/dist/lib/index.js +4 -3
  108. package/dist/lib/index.js.map +1 -1
  109. package/dist/lib/parsing/argument-parser.d.ts +9 -12
  110. package/dist/lib/parsing/argument-parser.d.ts.map +1 -1
  111. package/dist/lib/parsing/argument-parser.js +27 -45
  112. package/dist/lib/parsing/argument-parser.js.map +1 -1
  113. package/dist/lib/parsing/index.d.ts +2 -2
  114. package/dist/lib/parsing/index.d.ts.map +1 -1
  115. package/dist/lib/parsing/index.js +1 -1
  116. package/dist/lib/parsing/index.js.map +1 -1
  117. package/dist/lib/parsing/prompt-builder.d.ts.map +1 -1
  118. package/dist/lib/parsing/prompt-builder.js +31 -24
  119. package/dist/lib/parsing/prompt-builder.js.map +1 -1
  120. package/dist/lib/parsing/schemata.d.ts +7 -19
  121. package/dist/lib/parsing/schemata.d.ts.map +1 -1
  122. package/dist/lib/parsing/schemata.js +7 -14
  123. package/dist/lib/parsing/schemata.js.map +1 -1
  124. package/dist/lib/parsing/types.d.ts +1 -2
  125. package/dist/lib/parsing/types.d.ts.map +1 -1
  126. package/dist/lib/schemata/claim-citation.d.ts +11 -0
  127. package/dist/lib/schemata/claim-citation.d.ts.map +1 -0
  128. package/dist/lib/schemata/claim-citation.js +25 -0
  129. package/dist/lib/schemata/claim-citation.js.map +1 -0
  130. package/dist/lib/schemata/claim.d.ts +1 -0
  131. package/dist/lib/schemata/claim.d.ts.map +1 -1
  132. package/dist/lib/schemata/claim.js +3 -0
  133. package/dist/lib/schemata/claim.js.map +1 -1
  134. package/dist/lib/schemata/fork.d.ts +0 -11
  135. package/dist/lib/schemata/fork.d.ts.map +1 -1
  136. package/dist/lib/schemata/fork.js +0 -10
  137. package/dist/lib/schemata/fork.js.map +1 -1
  138. package/dist/lib/schemata/import.d.ts +39 -2
  139. package/dist/lib/schemata/import.d.ts.map +1 -1
  140. package/dist/lib/schemata/import.js +22 -1
  141. package/dist/lib/schemata/import.js.map +1 -1
  142. package/dist/lib/schemata/index.d.ts +1 -1
  143. package/dist/lib/schemata/index.d.ts.map +1 -1
  144. package/dist/lib/schemata/index.js +1 -1
  145. package/dist/lib/schemata/index.js.map +1 -1
  146. package/dist/lib/schemata/propositional.d.ts +32 -1
  147. package/dist/lib/schemata/propositional.d.ts.map +1 -1
  148. package/dist/lib/schemata/propositional.js +17 -2
  149. package/dist/lib/schemata/propositional.js.map +1 -1
  150. package/dist/lib/types/checksum.d.ts +3 -5
  151. package/dist/lib/types/checksum.d.ts.map +1 -1
  152. package/dist/lib/types/evaluation.d.ts +1 -1
  153. package/dist/lib/types/evaluation.d.ts.map +1 -1
  154. package/dist/lib/types/validation.d.ts +19 -7
  155. package/dist/lib/types/validation.d.ts.map +1 -1
  156. package/dist/lib/types/validation.js +21 -8
  157. package/dist/lib/types/validation.js.map +1 -1
  158. package/dist/lib/utils/derivation-validation.d.ts +24 -0
  159. package/dist/lib/utils/derivation-validation.d.ts.map +1 -0
  160. package/dist/lib/utils/derivation-validation.js +107 -0
  161. package/dist/lib/utils/derivation-validation.js.map +1 -0
  162. package/dist/lib/utils/lookup.d.ts +7 -15
  163. package/dist/lib/utils/lookup.d.ts.map +1 -1
  164. package/dist/lib/utils/lookup.js +9 -18
  165. package/dist/lib/utils/lookup.js.map +1 -1
  166. package/package.json +1 -1
  167. package/dist/cli/commands/sources.d.ts +0 -3
  168. package/dist/cli/commands/sources.d.ts.map +0 -1
  169. package/dist/cli/commands/sources.js +0 -103
  170. package/dist/cli/commands/sources.js.map +0 -1
  171. package/dist/extensions/ieee/source.d.ts.map +0 -1
  172. package/dist/extensions/ieee/source.js.map +0 -1
  173. package/dist/lib/core/claim-source-library.d.ts +0 -32
  174. package/dist/lib/core/claim-source-library.d.ts.map +0 -1
  175. package/dist/lib/core/claim-source-library.js +0 -193
  176. package/dist/lib/core/claim-source-library.js.map +0 -1
  177. package/dist/lib/core/source-library.d.ts +0 -23
  178. package/dist/lib/core/source-library.d.ts.map +0 -1
  179. package/dist/lib/core/source-library.js +0 -21
  180. package/dist/lib/core/source-library.js.map +0 -1
  181. package/dist/lib/schemata/source.d.ts +0 -18
  182. package/dist/lib/schemata/source.d.ts.map +0 -1
  183. package/dist/lib/schemata/source.js +0 -35
  184. package/dist/lib/schemata/source.js.map +0 -1
@@ -5,8 +5,7 @@ import { CoreYamlArgumentSchema } from "../lib/schemata/import.js";
5
5
  import { parseFormula } from "../lib/core/parser/formula.js";
6
6
  import { ArgumentEngine } from "../lib/core/argument-engine.js";
7
7
  import { ClaimLibrary } from "../lib/core/claim-library.js";
8
- import { ClaimSourceLibrary } from "../lib/core/claim-source-library.js";
9
- import { SourceLibrary } from "../lib/core/source-library.js";
8
+ import { ClaimCitationLibrary } from "../lib/core/claim-citation-library.js";
10
9
  import { POSITION_INITIAL } from "../lib/utils/position.js";
11
10
  /**
12
11
  * Validates that `implies` and `iff` nodes appear only at the AST root.
@@ -160,10 +159,35 @@ function buildExpressions(ast, parentId, position, argumentId, argumentVersion,
160
159
  export function importArgumentFromYaml(yamlString) {
161
160
  const raw = parseYaml(yamlString);
162
161
  const input = Value.Parse(CoreYamlArgumentSchema, raw);
163
- // Parse all formulas and validate root-only constraint
162
+ // Validate premise shapes before any parsing
163
+ for (let i = 0; i < input.premises.length; i++) {
164
+ const premise = input.premises[i];
165
+ const isDerivation = premise.type === "derivation";
166
+ const label = premise.metadata?.title
167
+ ? `premise "${premise.metadata.title}" (index ${i})`
168
+ : `premise at index ${i}`;
169
+ if (isDerivation) {
170
+ if (!premise.derivedClaimId) {
171
+ throw new Error(`${label}: type "derivation" requires derivedClaimId.`);
172
+ }
173
+ if (premise.formula !== undefined) {
174
+ throw new Error(`${label}: type "derivation" must not include a formula field.`);
175
+ }
176
+ }
177
+ else {
178
+ if (premise.formula === undefined) {
179
+ throw new Error(`${label}: freeform premise requires a formula field.`);
180
+ }
181
+ }
182
+ }
183
+ // Parse formulas for freeform premises and validate root-only constraint
164
184
  const parsedFormulas = [];
165
185
  for (let i = 0; i < input.premises.length; i++) {
166
186
  const premise = input.premises[i];
187
+ if (premise.type === "derivation") {
188
+ parsedFormulas.push(null);
189
+ continue;
190
+ }
167
191
  let ast;
168
192
  try {
169
193
  ast = parseFormula(premise.formula);
@@ -185,10 +209,11 @@ export function importArgumentFromYaml(yamlString) {
185
209
  if (conclusionIndices.length > 1) {
186
210
  throw new Error(`Multiple premises designated as conclusion (indices ${conclusionIndices.join(", ")}). Only one conclusion is allowed.`);
187
211
  }
188
- // Collect all variable names across all formulas
212
+ // Collect all variable names across freeform formulas only
189
213
  const allVariableNames = new Set();
190
214
  for (const ast of parsedFormulas) {
191
- collectVariableNames(ast, allVariableNames);
215
+ if (ast !== null)
216
+ collectVariableNames(ast, allVariableNames);
192
217
  }
193
218
  // Build the argument
194
219
  const argumentId = randomUUID();
@@ -203,11 +228,25 @@ export function importArgumentFromYaml(yamlString) {
203
228
  published: false,
204
229
  };
205
230
  const claimLibrary = new ClaimLibrary();
206
- const defaultClaim = claimLibrary.create({ id: randomUUID() });
207
- const sourceLibrary = new SourceLibrary();
208
- const claimSourceLibrary = new ClaimSourceLibrary(claimLibrary, sourceLibrary);
209
- const engine = new ArgumentEngine(argument, claimLibrary, sourceLibrary, claimSourceLibrary);
210
- // Create variables
231
+ const defaultClaim = claimLibrary.create({
232
+ id: randomUUID(),
233
+ type: "normal",
234
+ });
235
+ // Register explicitly declared claims from the YAML `claims` block.
236
+ // These must be registered before any derivation premise is created so that
237
+ // the engine can resolve derivedClaimId via the claim library.
238
+ for (const yamlClaim of input.claims ?? []) {
239
+ claimLibrary.create({
240
+ id: yamlClaim.id,
241
+ type: yamlClaim.type,
242
+ ...(yamlClaim.title !== undefined
243
+ ? { title: yamlClaim.title }
244
+ : {}),
245
+ });
246
+ }
247
+ const claimCitationLibrary = new ClaimCitationLibrary(claimLibrary);
248
+ const engine = new ArgumentEngine(argument, claimLibrary, claimCitationLibrary);
249
+ // Create variables for freeform formula symbols
211
250
  const variablesByName = new Map();
212
251
  for (const name of [...allVariableNames].sort()) {
213
252
  const variable = {
@@ -220,23 +259,42 @@ export function importArgumentFromYaml(yamlString) {
220
259
  };
221
260
  variablesByName.set(name, variable);
222
261
  }
223
- // Register all variables with the engine (shared across all premises)
262
+ // Register all freeform variables with the engine (shared across all premises)
224
263
  for (const variable of variablesByName.values()) {
225
264
  engine.addVariable(variable);
226
265
  }
227
266
  // Create premises and build expression trees
228
267
  for (let i = 0; i < input.premises.length; i++) {
229
268
  const premiseDef = input.premises[i];
230
- const { result: pm } = engine.createPremise(premiseDef.metadata ? { ...premiseDef.metadata } : undefined);
231
- // Build expression tree from parsed AST
232
- buildExpressions(parsedFormulas[i], null, POSITION_INITIAL, argumentId, 0, pm.getId(), variablesByName, (expr) => pm.addExpression(expr));
233
- // Assign conclusion role; supporting is derived from expression type
234
- const role = premiseDef.role ?? "supporting";
235
- if (role === "conclusion") {
236
- engine.setConclusionPremise(pm.getId());
269
+ const isDerivation = premiseDef.type === "derivation";
270
+ if (isDerivation) {
271
+ // Derivation premise delegate to the engine's derivation init flow,
272
+ // which auto-creates the naked-Q root expression.
273
+ const { result: dpm } = engine.createPremise({
274
+ type: "derivation",
275
+ derivedClaimId: premiseDef.derivedClaimId,
276
+ ...(premiseDef.metadata ?? {}),
277
+ });
278
+ const dRole = premiseDef.role ?? "supporting";
279
+ if (dRole === "conclusion") {
280
+ engine.setConclusionPremise(dpm.getId());
281
+ }
282
+ }
283
+ else {
284
+ // Freeform premise — create premise then build expression tree.
285
+ const { result: pm } = premiseDef.metadata
286
+ ? engine.createPremise({ ...premiseDef.metadata })
287
+ : engine.createPremise();
288
+ // Build expression tree from parsed AST
289
+ buildExpressions(parsedFormulas[i], null, POSITION_INITIAL, argumentId, 0, pm.getId(), variablesByName, (expr) => pm.addExpression(expr));
290
+ // Assign conclusion role; supporting is derived from expression type
291
+ const role = premiseDef.role ?? "supporting";
292
+ if (role === "conclusion") {
293
+ engine.setConclusionPremise(pm.getId());
294
+ }
295
+ // Non-conclusion inference premises are automatically supporting
237
296
  }
238
- // Non-conclusion inference premises are automatically supporting
239
297
  }
240
- return { engine, claimLibrary, sourceLibrary, claimSourceLibrary };
298
+ return { engine, claimLibrary, claimCitationLibrary };
241
299
  }
242
300
  //# sourceMappingURL=import.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,9 @@ const NAMED_COMMANDS = new Set([
8
8
  "--version",
9
9
  "-V",
10
10
  "arguments",
11
+ "citations",
11
12
  "claims",
12
13
  "diff",
13
- "sources",
14
14
  ]);
15
15
  /**
16
16
  * Returns true when argv[2] is a named top-level command (not a UUID).
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/cli/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC3B,MAAM;IACN,QAAQ;IACR,IAAI;IACJ,SAAS;IACT,WAAW;IACX,IAAI;IACJ,WAAW;IACX,QAAQ;IACR,MAAM;IACN,SAAS;CACZ,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAc;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IACrB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACpC,OAAO,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAChC,UAAkB,EAClB,UAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAA;IACrD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,SAAS,CAAC,mCAAmC,UAAU,IAAI,CAAC,CAAA;IAChE,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC1B,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACxC,CAAC;IAED,IAAI,UAAU,KAAK,gBAAgB,EAAE,CAAC;QAClC,+BAA+B;QAC/B,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;YACrB,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;YACjD,IAAI,IAAI,CAAC,SAAS;gBAAE,OAAO,CAAC,CAAA;QAChC,CAAC;QACD,SAAS,CAAC,aAAa,UAAU,8BAA8B,CAAC,CAAA;IACpE,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;IACjC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,SAAS,CACL,oBAAoB,UAAU,+DAA+D,CAChG,CAAA;IACL,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,SAAS,CACL,WAAW,MAAM,iCAAiC,UAAU,IAAI,CACnE,CAAA;IACL,CAAC;IACD,OAAO,MAAM,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/cli/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC3B,MAAM;IACN,QAAQ;IACR,IAAI;IACJ,SAAS;IACT,WAAW;IACX,IAAI;IACJ,WAAW;IACX,WAAW;IACX,QAAQ;IACR,MAAM;CACT,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,IAAc;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IACrB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACpC,OAAO,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAChC,UAAkB,EAClB,UAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAA;IACrD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,SAAS,CAAC,mCAAmC,UAAU,IAAI,CAAC,CAAA;IAChE,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC1B,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACxC,CAAC;IAED,IAAI,UAAU,KAAK,gBAAgB,EAAE,CAAC;QAClC,+BAA+B;QAC/B,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;YACrB,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;YACjD,IAAI,IAAI,CAAC,SAAS;gBAAE,OAAO,CAAC,CAAA;QAChC,CAAC;QACD,SAAS,CAAC,aAAa,UAAU,8BAA8B,CAAC,CAAA;IACpE,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;IACjC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,SAAS,CACL,oBAAoB,UAAU,+DAA+D,CAChG,CAAA;IACL,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,SAAS,CACL,WAAW,MAAM,iCAAiC,UAAU,IAAI,CACnE,CAAA;IACL,CAAC;IACD,OAAO,MAAM,CAAA;AACjB,CAAC"}
@@ -1,14 +1,11 @@
1
1
  import { ClaimLibrary } from "../../lib/core/claim-library.js";
2
- import { SourceLibrary } from "../../lib/core/source-library.js";
3
- import { ClaimSourceLibrary } from "../../lib/core/claim-source-library.js";
2
+ import { ClaimCitationLibrary } from "../../lib/core/claim-citation-library.js";
4
3
  import { ForkLibrary } from "../../lib/core/fork-library.js";
5
- import type { TClaimLookup, TSourceLookup } from "../../lib/core/interfaces/library.interfaces.js";
4
+ import type { TClaimLookup } from "../../lib/core/interfaces/library.interfaces.js";
6
5
  export declare function readClaimLibrary(): Promise<ClaimLibrary>;
7
- export declare function readSourceLibrary(): Promise<SourceLibrary>;
8
- export declare function readClaimSourceLibrary(claimLookup: TClaimLookup, sourceLookup: TSourceLookup): Promise<ClaimSourceLibrary>;
6
+ export declare function readClaimCitationLibrary(claimLookup: TClaimLookup): Promise<ClaimCitationLibrary>;
9
7
  export declare function writeClaimLibrary(library: ClaimLibrary): Promise<void>;
10
- export declare function writeSourceLibrary(library: SourceLibrary): Promise<void>;
11
- export declare function writeClaimSourceLibrary(library: ClaimSourceLibrary): Promise<void>;
8
+ export declare function writeClaimCitationLibrary(library: ClaimCitationLibrary): Promise<void>;
12
9
  export declare function readForkLibrary(): Promise<ForkLibrary>;
13
10
  export declare function writeForkLibrary(library: ForkLibrary): Promise<void>;
14
11
  //# sourceMappingURL=libraries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"libraries.d.ts","sourceRoot":"","sources":["../../../src/cli/storage/libraries.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAC5D,OAAO,KAAK,EACR,YAAY,EACZ,aAAa,EAChB,MAAM,iDAAiD,CAAA;AAexD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC,CAU9D;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,aAAa,CAAC,CAUhE;AAED,wBAAsB,sBAAsB,CACxC,WAAW,EAAE,YAAY,EACzB,YAAY,EAAE,aAAa,GAC5B,OAAO,CAAC,kBAAkB,CAAC,CAiB7B;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAI5E;AAED,wBAAsB,kBAAkB,CACpC,OAAO,EAAE,aAAa,GACvB,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAsB,uBAAuB,CACzC,OAAO,EAAE,kBAAkB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAIf;AAMD,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CAU5D;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAI1E"}
1
+ {"version":3,"file":"libraries.d.ts","sourceRoot":"","sources":["../../../src/cli/storage/libraries.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iDAAiD,CAAA;AAWnF,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC,CAU9D;AAED,wBAAsB,wBAAwB,CAC1C,WAAW,EAAE,YAAY,GAC1B,OAAO,CAAC,oBAAoB,CAAC,CAU/B;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAI5E;AAED,wBAAsB,yBAAyB,CAC3C,OAAO,EAAE,oBAAoB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAIf;AAMD,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC,CAU5D;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAI1E"}
@@ -1,18 +1,14 @@
1
1
  import fs from "node:fs/promises";
2
2
  import path from "node:path";
3
3
  import { ClaimLibrary } from "../../lib/core/claim-library.js";
4
- import { SourceLibrary } from "../../lib/core/source-library.js";
5
- import { ClaimSourceLibrary } from "../../lib/core/claim-source-library.js";
4
+ import { ClaimCitationLibrary } from "../../lib/core/claim-citation-library.js";
6
5
  import { ForkLibrary } from "../../lib/core/fork-library.js";
7
6
  import { getStateDir } from "../config.js";
8
7
  function claimsPath() {
9
8
  return path.join(getStateDir(), "claims.json");
10
9
  }
11
- function sourcesPath() {
12
- return path.join(getStateDir(), "sources.json");
13
- }
14
- function claimSourceAssociationsPath() {
15
- return path.join(getStateDir(), "claim-source-associations.json");
10
+ function claimCitationsPath() {
11
+ return path.join(getStateDir(), "claim-citations.json");
16
12
  }
17
13
  export async function readClaimLibrary() {
18
14
  try {
@@ -24,24 +20,14 @@ export async function readClaimLibrary() {
24
20
  return new ClaimLibrary();
25
21
  }
26
22
  }
27
- export async function readSourceLibrary() {
28
- try {
29
- const content = await fs.readFile(sourcesPath(), "utf-8");
30
- const snapshot = JSON.parse(content);
31
- return SourceLibrary.fromSnapshot(snapshot);
32
- }
33
- catch {
34
- return new SourceLibrary();
35
- }
36
- }
37
- export async function readClaimSourceLibrary(claimLookup, sourceLookup) {
23
+ export async function readClaimCitationLibrary(claimLookup) {
38
24
  try {
39
- const content = await fs.readFile(claimSourceAssociationsPath(), "utf-8");
25
+ const content = await fs.readFile(claimCitationsPath(), "utf-8");
40
26
  const snapshot = JSON.parse(content);
41
- return ClaimSourceLibrary.fromSnapshot(snapshot, claimLookup, sourceLookup);
27
+ return ClaimCitationLibrary.fromSnapshot(snapshot, claimLookup);
42
28
  }
43
29
  catch {
44
- return new ClaimSourceLibrary(claimLookup, sourceLookup);
30
+ return new ClaimCitationLibrary(claimLookup);
45
31
  }
46
32
  }
47
33
  export async function writeClaimLibrary(library) {
@@ -49,13 +35,8 @@ export async function writeClaimLibrary(library) {
49
35
  await fs.mkdir(path.dirname(filePath), { recursive: true });
50
36
  await fs.writeFile(filePath, JSON.stringify(library.snapshot(), null, 2));
51
37
  }
52
- export async function writeSourceLibrary(library) {
53
- const filePath = sourcesPath();
54
- await fs.mkdir(path.dirname(filePath), { recursive: true });
55
- await fs.writeFile(filePath, JSON.stringify(library.snapshot(), null, 2));
56
- }
57
- export async function writeClaimSourceLibrary(library) {
58
- const filePath = claimSourceAssociationsPath();
38
+ export async function writeClaimCitationLibrary(library) {
39
+ const filePath = claimCitationsPath();
59
40
  await fs.mkdir(path.dirname(filePath), { recursive: true });
60
41
  await fs.writeFile(filePath, JSON.stringify(library.snapshot(), null, 2));
61
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"libraries.js","sourceRoot":"","sources":["../../../src/cli/storage/libraries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"libraries.js","sourceRoot":"","sources":["../../../src/cli/storage/libraries.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * One-time migration of CLI state directories from pre-v0.10.0 layout to the
3
+ * unified Source-as-Claim layout.
4
+ *
5
+ * Detected via the absence of a `.proposit-v0.10` marker in the state dir;
6
+ * once migration completes (or there is nothing to migrate) the marker is
7
+ * written so subsequent CLI invocations no-op immediately.
8
+ */
9
+ export declare function migrateV010(): Promise<void>;
10
+ //# sourceMappingURL=migrate-v0.10.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate-v0.10.d.ts","sourceRoot":"","sources":["../../../src/cli/storage/migrate-v0.10.ts"],"names":[],"mappings":"AAcA;;;;;;;GAOG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAuDjD"}
@@ -0,0 +1,213 @@
1
+ import fs from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { getStateDir } from "../config.js";
4
+ import { readClaimLibrary, readClaimCitationLibrary, writeClaimLibrary, writeClaimCitationLibrary, } from "./libraries.js";
5
+ import { entityChecksum } from "../../lib/core/checksum.js";
6
+ import { DEFAULT_CHECKSUM_CONFIG } from "../../lib/consts.js";
7
+ const MARKER = ".proposit-v0.10";
8
+ /**
9
+ * One-time migration of CLI state directories from pre-v0.10.0 layout to the
10
+ * unified Source-as-Claim layout.
11
+ *
12
+ * Detected via the absence of a `.proposit-v0.10` marker in the state dir;
13
+ * once migration completes (or there is nothing to migrate) the marker is
14
+ * written so subsequent CLI invocations no-op immediately.
15
+ */
16
+ export async function migrateV010() {
17
+ const stateDir = getStateDir();
18
+ const markerPath = path.join(stateDir, MARKER);
19
+ // Step 1: Detection — skip if marker exists.
20
+ try {
21
+ await fs.access(markerPath);
22
+ return; // Already migrated.
23
+ }
24
+ catch {
25
+ // Marker missing — proceed with migration.
26
+ }
27
+ // If the state dir doesn't exist yet (fresh install), there's nothing to
28
+ // migrate. Create the directory and drop the marker so we don't re-check
29
+ // every invocation.
30
+ try {
31
+ await fs.mkdir(stateDir, { recursive: true });
32
+ }
33
+ catch {
34
+ // mkdir failures are surfaced by later steps when they touch files.
35
+ }
36
+ // Step 2: Source extras collision check.
37
+ await checkSourceExtrasCollision(stateDir);
38
+ // Step 3: Sources → claims conversion.
39
+ await convertSourcesToClaims(stateDir);
40
+ // Step 4: Existing claim type backfill.
41
+ await backfillClaimTypes(stateDir);
42
+ // Step 5: Associations → citations conversion.
43
+ await convertAssociationsToCitations(stateDir);
44
+ // Step 6: Forks fold.
45
+ await foldForkSourcesIntoClaims(stateDir);
46
+ // Step 7: Checksum recompute. Pre-v0.10 claim and citation entities were
47
+ // hashed without the new `type`, `citingClaim*`, and `sourceClaim*` fields
48
+ // (and without the field-renaming applied above), so the stored checksums
49
+ // no longer match their content. Rewrite each entity's checksum directly
50
+ // from disk before hydrating, so consumers that verify stored-vs-computed
51
+ // checksums don't see mismatches.
52
+ await recomputeChecksums(stateDir);
53
+ // Step 8: Acyclicity validation — hydrate the libraries (which exercises
54
+ // ClaimCitationLibrary.fromSnapshot's cycle check) and write back so any
55
+ // structural normalization is captured.
56
+ await validateAndRewriteLibraries();
57
+ // Step 9: Marker write.
58
+ await fs.writeFile(markerPath, new Date().toISOString());
59
+ process.stderr.write(`[proposit] Migrated state directory to v0.10.0 format at ${stateDir}\n`);
60
+ }
61
+ async function readJsonFile(filePath) {
62
+ try {
63
+ const content = await fs.readFile(filePath, "utf-8");
64
+ return JSON.parse(content);
65
+ }
66
+ catch {
67
+ return null;
68
+ }
69
+ }
70
+ async function writeJsonFile(filePath, data) {
71
+ await fs.mkdir(path.dirname(filePath), { recursive: true });
72
+ await fs.writeFile(filePath, JSON.stringify(data, null, 2));
73
+ }
74
+ async function checkSourceExtrasCollision(stateDir) {
75
+ const sourcesPath = path.join(stateDir, "sources.json");
76
+ const snapshot = await readJsonFile(sourcesPath);
77
+ if (!snapshot?.sources)
78
+ return;
79
+ const colliding = snapshot.sources.filter((s) => s.type !== undefined);
80
+ if (colliding.length > 0) {
81
+ const ids = colliding
82
+ .map((s) => {
83
+ const id = s.id;
84
+ return typeof id === "string" ? id : "<unknown>";
85
+ })
86
+ .join(", ");
87
+ throw new Error(`[proposit migration] Cannot migrate: source records have a 'type' extra that would collide with the new top-level 'type' field. Conflicting source IDs: ${ids}. Rename the extra (e.g., to 'kind') in sources.json and re-run.`);
88
+ }
89
+ }
90
+ async function convertSourcesToClaims(stateDir) {
91
+ const sourcesPath = path.join(stateDir, "sources.json");
92
+ const claimsPath = path.join(stateDir, "claims.json");
93
+ const sourcesSnapshot = await readJsonFile(sourcesPath);
94
+ if (!sourcesSnapshot?.sources)
95
+ return;
96
+ const claimsSnapshot = (await readJsonFile(claimsPath)) ?? { claims: [] };
97
+ claimsSnapshot.claims ??= [];
98
+ for (const source of sourcesSnapshot.sources) {
99
+ claimsSnapshot.claims.push({
100
+ ...source,
101
+ type: "citation",
102
+ });
103
+ }
104
+ await writeJsonFile(claimsPath, claimsSnapshot);
105
+ await fs.unlink(sourcesPath);
106
+ process.stderr.write(`[proposit migration] Converted ${sourcesSnapshot.sources.length} sources to citation-type claims\n`);
107
+ }
108
+ async function backfillClaimTypes(stateDir) {
109
+ const claimsPath = path.join(stateDir, "claims.json");
110
+ const snapshot = await readJsonFile(claimsPath);
111
+ if (!snapshot?.claims)
112
+ return;
113
+ let backfilled = 0;
114
+ for (const claim of snapshot.claims) {
115
+ if (claim.type === undefined) {
116
+ claim.type = "normal";
117
+ backfilled++;
118
+ }
119
+ }
120
+ if (backfilled > 0) {
121
+ await writeJsonFile(claimsPath, snapshot);
122
+ process.stderr.write(`[proposit migration] Backfilled type='normal' on ${backfilled} pre-existing claims\n`);
123
+ }
124
+ }
125
+ async function convertAssociationsToCitations(stateDir) {
126
+ const oldPath = path.join(stateDir, "claim-source-associations.json");
127
+ const newPath = path.join(stateDir, "claim-citations.json");
128
+ const snapshot = await readJsonFile(oldPath);
129
+ if (!snapshot?.claimSourceAssociations)
130
+ return;
131
+ const RESERVED_KEYS = new Set([
132
+ "id",
133
+ "claimId",
134
+ "claimVersion",
135
+ "sourceId",
136
+ "sourceVersion",
137
+ "checksum",
138
+ ]);
139
+ const citations = snapshot.claimSourceAssociations.map((a) => ({
140
+ id: a.id,
141
+ citingClaimId: a.claimId,
142
+ citingClaimVersion: a.claimVersion,
143
+ sourceClaimId: a.sourceId,
144
+ sourceClaimVersion: a.sourceVersion,
145
+ checksum: a.checksum,
146
+ // Preserve any additional properties under their original key names.
147
+ ...Object.fromEntries(Object.entries(a).filter(([k]) => !RESERVED_KEYS.has(k))),
148
+ }));
149
+ await writeJsonFile(newPath, { claimCitations: citations });
150
+ await fs.unlink(oldPath);
151
+ process.stderr.write(`[proposit migration] Converted ${citations.length} claim-source associations to citations\n`);
152
+ }
153
+ async function foldForkSourcesIntoClaims(stateDir) {
154
+ const forksPath = path.join(stateDir, "forks.json");
155
+ const snapshot = await readJsonFile(forksPath);
156
+ if (!snapshot)
157
+ return;
158
+ if (!("sources" in snapshot))
159
+ return;
160
+ const sources = snapshot.sources ?? [];
161
+ if (sources.length === 0) {
162
+ // Empty sources array — drop the key and rewrite for cleanliness.
163
+ delete snapshot.sources;
164
+ await writeJsonFile(forksPath, snapshot);
165
+ return;
166
+ }
167
+ snapshot.claims ??= [];
168
+ snapshot.claims.push(...sources);
169
+ const sourceCount = sources.length;
170
+ delete snapshot.sources;
171
+ await writeJsonFile(forksPath, snapshot);
172
+ process.stderr.write(`[proposit migration] Folded ${sourceCount} source fork records into claims namespace\n`);
173
+ }
174
+ async function recomputeChecksums(stateDir) {
175
+ const claimFields = DEFAULT_CHECKSUM_CONFIG.claimFields ?? new Set();
176
+ const claimCitationFields = DEFAULT_CHECKSUM_CONFIG.claimCitationFields ?? new Set();
177
+ // Recompute claim checksums.
178
+ const claimsPath = path.join(stateDir, "claims.json");
179
+ const claimsSnapshot = await readJsonFile(claimsPath);
180
+ let claimCount = 0;
181
+ if (claimsSnapshot?.claims) {
182
+ for (const claim of claimsSnapshot.claims) {
183
+ claim.checksum = entityChecksum(claim, claimFields);
184
+ claimCount++;
185
+ }
186
+ await writeJsonFile(claimsPath, claimsSnapshot);
187
+ }
188
+ // Recompute citation checksums.
189
+ const citationsPath = path.join(stateDir, "claim-citations.json");
190
+ const citationsSnapshot = await readJsonFile(citationsPath);
191
+ let citationCount = 0;
192
+ if (citationsSnapshot?.claimCitations) {
193
+ for (const citation of citationsSnapshot.claimCitations) {
194
+ citation.checksum = entityChecksum(citation, claimCitationFields);
195
+ citationCount++;
196
+ }
197
+ await writeJsonFile(citationsPath, citationsSnapshot);
198
+ }
199
+ process.stderr.write(`[proposit migration] Recomputed checksums for ${claimCount} claim(s) and ${citationCount} citation(s)\n`);
200
+ }
201
+ async function validateAndRewriteLibraries() {
202
+ // Hydrate libraries via fromSnapshot — exercises ClaimCitationLibrary's
203
+ // acyclicity and type-strictness validation paths — then write back
204
+ // through the standard storage helpers so any structural normalization
205
+ // (e.g., ordering, key shapes) is captured. Order matters: hydrate claims
206
+ // first so the citation library has a populated claim lookup.
207
+ const claimLibrary = await readClaimLibrary();
208
+ await writeClaimLibrary(claimLibrary);
209
+ const claimCitationLibrary = await readClaimCitationLibrary(claimLibrary);
210
+ await writeClaimCitationLibrary(claimCitationLibrary);
211
+ process.stderr.write(`[proposit migration] Citation graph validated (no cycles)\n`);
212
+ }
213
+ //# sourceMappingURL=migrate-v0.10.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate-v0.10.js","sourceRoot":"","sources":["../../../src/cli/storage/migrate-v0.10.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * One-time migration of CLI state directories from pre-v0.11.0 to v0.11.0:
3
+ *
4
+ * - Backfills `type: "freeform"` on every premise `meta.json` that lacks it.
5
+ *
6
+ * Checksums are NOT stored in premise `meta.json` on disk — they are computed
7
+ * lazily at hydration time by `ArgumentEngine.fromSnapshot` via `flushChecksums()`.
8
+ * No checksum recomputation pass is required here; the runtime handles it.
9
+ *
10
+ * Detected via the absence of a `.proposit-v0.11` marker in the state dir;
11
+ * once migration completes (or there is nothing to migrate) the marker is
12
+ * written so subsequent CLI invocations no-op immediately.
13
+ */
14
+ export declare function migrateV011(): Promise<void>;
15
+ //# sourceMappingURL=migrate-v0.11.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate-v0.11.d.ts","sourceRoot":"","sources":["../../../src/cli/storage/migrate-v0.11.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;GAYG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CA8BjD"}