@proposit/proposit-core 1.0.2 → 1.2.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 (92) hide show
  1. package/dist/cli/commands/parse.d.ts.map +1 -1
  2. package/dist/cli/commands/parse.js +62 -27
  3. package/dist/cli/commands/parse.js.map +1 -1
  4. package/dist/cli/llm/index.d.ts +5 -4
  5. package/dist/cli/llm/index.d.ts.map +1 -1
  6. package/dist/cli/llm/index.js +15 -3
  7. package/dist/cli/llm/index.js.map +1 -1
  8. package/dist/extensions/argument-ingestion/index.d.ts +9 -0
  9. package/dist/extensions/argument-ingestion/index.d.ts.map +1 -0
  10. package/dist/extensions/argument-ingestion/index.js +11 -0
  11. package/dist/extensions/argument-ingestion/index.js.map +1 -0
  12. package/dist/extensions/argument-ingestion/shared/basics-extension.d.ts +9 -0
  13. package/dist/extensions/argument-ingestion/shared/basics-extension.d.ts.map +1 -0
  14. package/dist/extensions/argument-ingestion/shared/basics-extension.js +25 -0
  15. package/dist/extensions/argument-ingestion/shared/basics-extension.js.map +1 -0
  16. package/dist/extensions/argument-ingestion/shared/finalize-response.d.ts +21 -0
  17. package/dist/extensions/argument-ingestion/shared/finalize-response.d.ts.map +1 -0
  18. package/dist/extensions/argument-ingestion/shared/finalize-response.js +33 -0
  19. package/dist/extensions/argument-ingestion/shared/finalize-response.js.map +1 -0
  20. package/dist/extensions/argument-ingestion/shared/role-derivation.d.ts +11 -0
  21. package/dist/extensions/argument-ingestion/shared/role-derivation.d.ts.map +1 -0
  22. package/dist/extensions/argument-ingestion/shared/role-derivation.js +26 -0
  23. package/dist/extensions/argument-ingestion/shared/role-derivation.js.map +1 -0
  24. package/dist/extensions/argument-ingestion/shared/types.d.ts +34 -0
  25. package/dist/extensions/argument-ingestion/shared/types.d.ts.map +1 -0
  26. package/dist/extensions/argument-ingestion/shared/types.js +16 -0
  27. package/dist/extensions/argument-ingestion/shared/types.js.map +1 -0
  28. package/dist/extensions/argument-ingestion/v1-single-shot.d.ts +18 -0
  29. package/dist/extensions/argument-ingestion/v1-single-shot.d.ts.map +1 -0
  30. package/dist/extensions/argument-ingestion/v1-single-shot.js +105 -0
  31. package/dist/extensions/argument-ingestion/v1-single-shot.js.map +1 -0
  32. package/dist/extensions/basics/schemata.d.ts +39 -0
  33. package/dist/extensions/basics/schemata.d.ts.map +1 -1
  34. package/dist/extensions/basics/schemata.js +21 -7
  35. package/dist/extensions/basics/schemata.js.map +1 -1
  36. package/dist/extensions/openai/errors.d.ts +49 -0
  37. package/dist/extensions/openai/errors.d.ts.map +1 -0
  38. package/dist/extensions/openai/errors.js +85 -0
  39. package/dist/extensions/openai/errors.js.map +1 -0
  40. package/dist/extensions/openai/index.d.ts +7 -0
  41. package/dist/extensions/openai/index.d.ts.map +1 -0
  42. package/dist/extensions/openai/index.js +10 -0
  43. package/dist/extensions/openai/index.js.map +1 -0
  44. package/dist/extensions/openai/provider.d.ts +22 -0
  45. package/dist/extensions/openai/provider.d.ts.map +1 -0
  46. package/dist/extensions/openai/provider.js +385 -0
  47. package/dist/extensions/openai/provider.js.map +1 -0
  48. package/dist/extensions/openai/structured-output.d.ts +18 -0
  49. package/dist/extensions/openai/structured-output.d.ts.map +1 -0
  50. package/dist/extensions/openai/structured-output.js +201 -0
  51. package/dist/extensions/openai/structured-output.js.map +1 -0
  52. package/dist/extensions/openai/types.d.ts +81 -0
  53. package/dist/extensions/openai/types.d.ts.map +1 -0
  54. package/dist/extensions/openai/types.js +21 -0
  55. package/dist/extensions/openai/types.js.map +1 -0
  56. package/dist/lib/index.d.ts +8 -0
  57. package/dist/lib/index.d.ts.map +1 -1
  58. package/dist/lib/index.js +15 -0
  59. package/dist/lib/index.js.map +1 -1
  60. package/dist/lib/llm/index.d.ts +2 -0
  61. package/dist/lib/llm/index.d.ts.map +1 -0
  62. package/dist/lib/llm/index.js +3 -0
  63. package/dist/lib/llm/index.js.map +1 -0
  64. package/dist/lib/llm/types.d.ts +49 -0
  65. package/dist/lib/llm/types.d.ts.map +1 -0
  66. package/dist/lib/llm/types.js +15 -0
  67. package/dist/lib/llm/types.js.map +1 -0
  68. package/dist/lib/pipelines/execute.d.ts +23 -0
  69. package/dist/lib/pipelines/execute.d.ts.map +1 -0
  70. package/dist/lib/pipelines/execute.js +541 -0
  71. package/dist/lib/pipelines/execute.js.map +1 -0
  72. package/dist/lib/pipelines/index.d.ts +7 -0
  73. package/dist/lib/pipelines/index.d.ts.map +1 -0
  74. package/dist/lib/pipelines/index.js +5 -0
  75. package/dist/lib/pipelines/index.js.map +1 -0
  76. package/dist/lib/pipelines/stage-helpers.d.ts +94 -0
  77. package/dist/lib/pipelines/stage-helpers.d.ts.map +1 -0
  78. package/dist/lib/pipelines/stage-helpers.js +384 -0
  79. package/dist/lib/pipelines/stage-helpers.js.map +1 -0
  80. package/dist/lib/pipelines/types.d.ts +108 -0
  81. package/dist/lib/pipelines/types.d.ts.map +1 -0
  82. package/dist/lib/pipelines/types.js +36 -0
  83. package/dist/lib/pipelines/types.js.map +1 -0
  84. package/package.json +14 -1
  85. package/dist/cli/llm/openai.d.ts +0 -4
  86. package/dist/cli/llm/openai.d.ts.map +0 -1
  87. package/dist/cli/llm/openai.js +0 -44
  88. package/dist/cli/llm/openai.js.map +0 -1
  89. package/dist/cli/llm/types.d.ts +0 -14
  90. package/dist/cli/llm/types.d.ts.map +0 -1
  91. package/dist/cli/llm/types.js +0 -2
  92. package/dist/cli/llm/types.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@proposit/proposit-core",
3
- "version": "1.0.2",
3
+ "version": "1.2.0",
4
4
  "description": "Core engine for building and manipulating propositional logic arguments.",
5
5
  "license": "MIT",
6
6
  "keywords": [
@@ -32,6 +32,11 @@
32
32
  "types": "./dist/extensions/basics/index.d.ts",
33
33
  "import": "./dist/extensions/basics/index.js",
34
34
  "default": "./dist/extensions/basics/index.js"
35
+ },
36
+ "./extensions/openai": {
37
+ "types": "./dist/extensions/openai/index.d.ts",
38
+ "import": "./dist/extensions/openai/index.js",
39
+ "default": "./dist/extensions/openai/index.js"
35
40
  }
36
41
  },
37
42
  "bin": {
@@ -66,6 +71,14 @@
66
71
  "typebox": "^1.1.14",
67
72
  "yaml": "^2.8.3"
68
73
  },
74
+ "peerDependencies": {
75
+ "openai": ">=4.0.0"
76
+ },
77
+ "peerDependenciesMeta": {
78
+ "openai": {
79
+ "optional": true
80
+ }
81
+ },
69
82
  "scripts": {
70
83
  "generate:parser": "peggy --format es -o src/lib/core/parser/formula-gen.js src/lib/core/parser/formula.peggy",
71
84
  "build": "rm -rf dist tsconfig.build.tsbuildinfo && pnpm run generate:parser && pnpm tsc -p tsconfig.build.json && cp src/lib/core/parser/formula-gen.js dist/lib/core/parser/formula-gen.js && pnpm run docs",
@@ -1,4 +0,0 @@
1
- import type { TLlmProvider, TLlmProviderOptions } from "./types.js";
2
- export declare const OPENAI_API_KEY_ENV = "OPENAI_API_KEY";
3
- export declare function createOpenAiProvider(options: TLlmProviderOptions): TLlmProvider;
4
- //# sourceMappingURL=openai.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/cli/llm/openai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAInE,eAAO,MAAM,kBAAkB,mBAAmB,CAAA;AAElD,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,mBAAmB,GAC7B,YAAY,CAmDd"}
@@ -1,44 +0,0 @@
1
- import { getParsingResponseSchema } from "../../lib/parsing/index.js";
2
- const DEFAULT_MODEL = "gpt-5.4";
3
- export const OPENAI_API_KEY_ENV = "OPENAI_API_KEY";
4
- export function createOpenAiProvider(options) {
5
- const model = options.model ?? DEFAULT_MODEL;
6
- return {
7
- async complete(request) {
8
- const schema = getParsingResponseSchema(request.responseSchema);
9
- const response = await fetch("https://api.openai.com/v1/chat/completions", {
10
- method: "POST",
11
- headers: {
12
- "Content-Type": "application/json",
13
- Authorization: `Bearer ${options.apiKey}`,
14
- },
15
- body: JSON.stringify({
16
- model,
17
- messages: [
18
- { role: "system", content: request.systemPrompt },
19
- { role: "user", content: request.userMessage },
20
- ],
21
- response_format: {
22
- type: "json_schema",
23
- json_schema: {
24
- name: "parsed_argument",
25
- strict: false,
26
- schema,
27
- },
28
- },
29
- }),
30
- });
31
- if (!response.ok) {
32
- const text = await response.text();
33
- throw new Error(`OpenAI API error (${response.status}): ${text}`);
34
- }
35
- const data = (await response.json());
36
- const content = data.choices?.[0]?.message?.content;
37
- if (!content) {
38
- throw new Error("No content in OpenAI response.");
39
- }
40
- return JSON.parse(content);
41
- },
42
- };
43
- }
44
- //# sourceMappingURL=openai.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/cli/llm/openai.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AAGrE,MAAM,aAAa,GAAG,SAAS,CAAA;AAE/B,MAAM,CAAC,MAAM,kBAAkB,GAAG,gBAAgB,CAAA;AAElD,MAAM,UAAU,oBAAoB,CAChC,OAA4B;IAE5B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,CAAA;IAE5C,OAAO;QACH,KAAK,CAAC,QAAQ,CAAC,OAAO;YAClB,MAAM,MAAM,GAAG,wBAAwB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;YAE/D,MAAM,QAAQ,GAAG,MAAM,KAAK,CACxB,4CAA4C,EAC5C;gBACI,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACL,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,OAAO,CAAC,MAAM,EAAE;iBAC5C;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACjB,KAAK;oBACL,QAAQ,EAAE;wBACN,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,EAAE;wBACjD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE;qBACjD;oBACD,eAAe,EAAE;wBACb,IAAI,EAAE,aAAa;wBACnB,WAAW,EAAE;4BACT,IAAI,EAAE,iBAAiB;4BACvB,MAAM,EAAE,KAAK;4BACb,MAAM;yBACT;qBACJ;iBACJ,CAAC;aACL,CACJ,CAAA;YAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACf,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;gBAClC,MAAM,IAAI,KAAK,CACX,qBAAqB,QAAQ,CAAC,MAAM,MAAM,IAAI,EAAE,CACnD,CAAA;YACL,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAElC,CAAA;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAA;YACnD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;YACrD,CAAC;YAED,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAA;QACzD,CAAC;KACJ,CAAA;AACL,CAAC"}
@@ -1,14 +0,0 @@
1
- import type { TSchema } from "typebox";
2
- export type TLlmCompletionRequest = {
3
- systemPrompt: string;
4
- userMessage: string;
5
- responseSchema: TSchema;
6
- };
7
- export type TLlmProviderOptions = {
8
- apiKey: string;
9
- model?: string;
10
- };
11
- export type TLlmProvider<TResponse = Record<string, unknown>> = {
12
- complete(request: TLlmCompletionRequest): Promise<TResponse>;
13
- };
14
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/cli/llm/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,MAAM,MAAM,qBAAqB,GAAG;IAChC,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,YAAY,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IAC5D,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;CAC/D,CAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/cli/llm/types.ts"],"names":[],"mappings":""}