jevascript 0.1.0 → 0.1.1

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 (56) hide show
  1. package/README.md +51 -11
  2. package/dist/cache.d.ts +5 -2
  3. package/dist/cache.d.ts.map +1 -1
  4. package/dist/cache.js +10 -12
  5. package/dist/cache.js.map +1 -1
  6. package/dist/collections.d.ts.map +1 -1
  7. package/dist/collections.js +68 -27
  8. package/dist/collections.js.map +1 -1
  9. package/dist/config.d.ts +6 -0
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js +8 -2
  12. package/dist/config.js.map +1 -1
  13. package/dist/context.d.ts +17 -50
  14. package/dist/context.d.ts.map +1 -1
  15. package/dist/context.js +33 -108
  16. package/dist/context.js.map +1 -1
  17. package/dist/define.d.ts +26 -13
  18. package/dist/define.d.ts.map +1 -1
  19. package/dist/define.js +4 -0
  20. package/dist/define.js.map +1 -1
  21. package/dist/env.d.ts +6 -0
  22. package/dist/env.d.ts.map +1 -0
  23. package/dist/env.js +8 -0
  24. package/dist/env.js.map +1 -0
  25. package/dist/errors.d.ts +7 -2
  26. package/dist/errors.d.ts.map +1 -1
  27. package/dist/errors.js +13 -4
  28. package/dist/errors.js.map +1 -1
  29. package/dist/evaluate.d.ts.map +1 -1
  30. package/dist/evaluate.js +11 -12
  31. package/dist/evaluate.js.map +1 -1
  32. package/dist/index.d.ts +7 -8
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +2 -2
  35. package/dist/index.js.map +1 -1
  36. package/dist/interpret.d.ts +25 -0
  37. package/dist/interpret.d.ts.map +1 -0
  38. package/dist/interpret.js +77 -0
  39. package/dist/interpret.js.map +1 -0
  40. package/dist/outputs.d.ts.map +1 -1
  41. package/dist/outputs.js +2 -1
  42. package/dist/outputs.js.map +1 -1
  43. package/dist/providers/jev.d.ts.map +1 -1
  44. package/dist/providers/jev.js +153 -48
  45. package/dist/providers/jev.js.map +1 -1
  46. package/dist/questions.d.ts +41 -4
  47. package/dist/questions.d.ts.map +1 -1
  48. package/dist/questions.js +8 -7
  49. package/dist/questions.js.map +1 -1
  50. package/dist/runner.d.ts +2 -1
  51. package/dist/runner.d.ts.map +1 -1
  52. package/dist/runner.js +53 -34
  53. package/dist/runner.js.map +1 -1
  54. package/dist/types.d.ts +2 -2
  55. package/dist/types.d.ts.map +1 -1
  56. package/package.json +33 -6
@@ -43,6 +43,43 @@ export interface ChooseOptions extends SharedOptions {
43
43
  instructions?: string;
44
44
  fallback?: string | (() => string | Promise<string>);
45
45
  }
46
+ export interface DetailedTruth<V extends boolean | "unknown" = boolean> {
47
+ value: V;
48
+ /** The calibrated signal. For truth-backed answers this *is* the uncertainty. */
49
+ probability: number;
50
+ /** Measured across sample rounds. Undefined unless `samples`/`minConfidence` was set. */
51
+ confidence?: number;
52
+ }
53
+ export interface DetailedScore {
54
+ value: number;
55
+ probability?: number;
56
+ /** Rubric position, **0-indexed** and possibly between levels. Present only for `levels`-backed scores. */
57
+ level?: number;
58
+ confidence?: number;
59
+ }
60
+ export interface DetailedChoice<T extends string> {
61
+ value: T;
62
+ confidence: number;
63
+ probabilities: Record<string, number>;
64
+ }
65
+ /**
66
+ * The type of flag `F` in options `O`: "off" when absent or false, "on" when
67
+ * literally true, "either" when only known to be a boolean. Read through
68
+ * `keyof` rather than `O extends { flag?: false }`, because an all-optional
69
+ * target is a weak type and would reject `{ instructions: "…" }` outright.
70
+ */
71
+ type Flag<O, F extends string> = F extends keyof O ? [O[F]] extends [false | undefined] ? "off" : [O[F]] extends [true] ? "on" : "either" : "off";
72
+ type WithDetail<O, Plain, Rich> = {
73
+ off: Plain;
74
+ on: Rich;
75
+ either: Plain | Rich;
76
+ }[Flag<O, "detailed">];
77
+ /** `boolean`, or `boolean | "unknown"` when the band may be reported. */
78
+ export type TruthValue<O> = Flag<O, "allowUnknown"> extends "off" ? boolean : boolean | "unknown";
79
+ export type IsResult<O> = WithDetail<O, TruthValue<O>, DetailedTruth<TruthValue<O>>>;
80
+ export type ScoreResult<O> = WithDetail<O, number, DetailedScore>;
81
+ export type ChooseResult<K extends string, O> = WithDetail<O, K, DetailedChoice<K>>;
82
+ export type ChoiceKey<T> = T extends readonly string[] ? T[number] : keyof T & string;
46
83
  /**
47
84
  * Default framing that turns a noun-phrase criterion into a proposition.
48
85
  *
@@ -91,8 +128,8 @@ export declare function buildChoose(input: ChoiceInput, options?: ChooseOptions)
91
128
  operation: "choose";
92
129
  optionKeys: string[];
93
130
  };
94
- export declare function is(condition: string, options?: IsOptions): QuestionSpec<boolean>;
95
- export declare function score(criterion: string, options?: ScoreOptions): QuestionSpec<number>;
96
- export declare function choose<const T extends readonly string[]>(options: T, extra?: ChooseOptions): QuestionSpec<T[number]>;
97
- export declare function choose<const T extends Readonly<Record<string, string | ChoiceOptionSpec>>>(options: T, extra?: ChooseOptions): QuestionSpec<keyof T & string>;
131
+ export declare function is<O extends IsOptions = {}>(condition: string, options?: O): QuestionSpec<IsResult<O>>;
132
+ export declare function score<O extends ScoreOptions = {}>(criterion: string, options?: O): QuestionSpec<ScoreResult<O>>;
133
+ export declare function choose<const T extends ChoiceInput, O extends ChooseOptions = {}>(options: T, extra?: O): QuestionSpec<ChooseResult<ChoiceKey<T>, O>>;
134
+ export {};
98
135
  //# sourceMappingURL=questions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../src/questions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../src/questions.ts"],"names":[],"mappings":"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"}
package/dist/questions.js CHANGED
@@ -43,15 +43,16 @@ export function buildChoose(input, options = {}) {
43
43
  return { question, options, operation: "choose", optionKeys: Object.keys(optionMap) };
44
44
  }
45
45
  // ---------------------------------------------------------------------------
46
- // Standalone builders, for composing inside `batch()`.
46
+ // Standalone builders, for composing inside `batch()`. They take the same
47
+ // options as the context methods and resolve to exactly the same values.
47
48
  // ---------------------------------------------------------------------------
48
- export function is(condition, options = {}) {
49
- return { build: () => buildIs(condition, options) };
49
+ export function is(condition, options) {
50
+ return { build: () => buildIs(condition, options ?? {}) };
50
51
  }
51
- export function score(criterion, options = {}) {
52
- return { build: (frame) => buildScore(criterion, options, frame) };
52
+ export function score(criterion, options) {
53
+ return { build: (frame) => buildScore(criterion, options ?? {}, frame) };
53
54
  }
54
- export function choose(options, extra = {}) {
55
- return { build: () => buildChoose(options, extra) };
55
+ export function choose(options, extra) {
56
+ return { build: () => buildChoose(options, extra ?? {}) };
56
57
  }
57
58
  //# sourceMappingURL=questions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"questions.js","sourceRoot":"","sources":["../src/questions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"questions.js","sourceRoot":"","sources":["../src/questions.ts"],"names":[],"mappings":"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"}
package/dist/runner.d.ts CHANGED
@@ -40,7 +40,8 @@ export declare function confidenceFromSpread(samples: readonly number[]): number
40
40
  *
41
41
  * Round 0 carries every question. Later rounds carry only the questions that
42
42
  * asked for more samples, so raising `samples` on one question does not
43
- * multiply the cost of its neighbours.
43
+ * multiply the cost of its neighbours. Rounds are independent draws, so they
44
+ * run concurrently: sampling costs requests, not latency.
44
45
  */
45
46
  export declare function runPlan(provider: SemanticProvider, state: State, planned: readonly PlannedQuestion[], options?: {
46
47
  timeoutMs?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAGjD,OAAO,KAAK,EAGV,eAAe,EAGf,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,EAEL,KAAK,EACN,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IACvC,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IAC5C,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACvB,KAAK,EAAE,KAAK,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;CACrB;AAUD,wBAAgB,WAAW,CACzB,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,MAAM,GACd,MAAM,CAIR;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CA2B5F;AA2BD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAEvE;AA8CD;;;;;;GAMG;AACH,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,SAAS,eAAe,EAAE,EACnC,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,KAAK,CAAC,EAAE,aAAa,CAAA;CAAO,GAChF,OAAO,CAAC,SAAS,CAAC,CAqEpB;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,GAAE,cAA4B,GAAG,IAAI,CAQvF;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAA"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAGjD,OAAO,KAAK,EAGV,eAAe,EAGf,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,EAEL,KAAK,EACN,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IACvC,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IAC5C,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACvB,KAAK,EAAE,KAAK,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;CACrB;AA4BD,wBAAgB,WAAW,CACzB,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,MAAM,GACd,MAAM,CAIR;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CA2B5F;AA2BD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAEvE;AA6CD;;;;;;;GAOG;AACH,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,SAAS,eAAe,EAAE,EACnC,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,KAAK,CAAC,EAAE,aAAa,CAAA;CAAO,GAChF,OAAO,CAAC,SAAS,CAAC,CAiFpB;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,GAAE,cAA4B,GAAG,IAAI,CAQvF;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAA"}
package/dist/runner.js CHANGED
@@ -1,13 +1,24 @@
1
1
  import { getCacheStore, getConfig, parseTtlOrUndefined } from "./internal.js";
2
2
  import { hashKey } from "./cache.js";
3
- import { UnsupportedByProviderError } from "./errors.js";
4
- /** Stable stringify so cache keys survive key reordering. */
3
+ import { ProviderError, UnsupportedByProviderError } from "./errors.js";
4
+ /**
5
+ * Stable stringify so cache keys survive key reordering.
6
+ *
7
+ * It follows JSON semantics exactly — `toJSON`, dropped `undefined` — because
8
+ * the key must identify what the provider is actually sent. A `Date` that was
9
+ * walked as a plain object would key as `{}`, and every date would collide.
10
+ */
5
11
  function stable(value) {
12
+ if (value !== null && typeof value === "object" && typeof value.toJSON === "function") {
13
+ return stable(value.toJSON());
14
+ }
6
15
  if (value === null || typeof value !== "object")
7
16
  return JSON.stringify(value) ?? "null";
8
17
  if (Array.isArray(value))
9
- return `[${value.map(stable).join(",")}]`;
10
- const entries = Object.entries(value).sort(([a], [b]) => (a < b ? -1 : 1));
18
+ return `[${value.map((v) => (v === undefined || typeof v === "function" || typeof v === "symbol" ? "null" : stable(v))).join(",")}]`;
19
+ const entries = Object.entries(value)
20
+ .filter(([, v]) => v !== undefined && typeof v !== "function" && typeof v !== "symbol")
21
+ .sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0));
11
22
  return `{${entries.map(([k, v]) => `${JSON.stringify(k)}:${stable(v)}`).join(",")}}`;
12
23
  }
13
24
  export function cacheKeyFor(provider, state, question, samples) {
@@ -73,16 +84,16 @@ function stdev(values) {
73
84
  export function confidenceFromSpread(samples) {
74
85
  return Math.min(1, Math.max(0, 1 - 2 * stdev(samples)));
75
86
  }
76
- function aggregate(kind, rounds) {
87
+ function aggregate(question, rounds) {
77
88
  if (rounds.length === 1)
78
89
  return rounds[0];
79
- if (kind === "truth") {
90
+ if (question.kind === "truth") {
80
91
  const ps = rounds.map((r) => r.probability);
81
92
  return { kind: "truth", probability: mean(ps) };
82
93
  }
83
- if (kind === "choice") {
94
+ if (question.kind === "choice") {
84
95
  const all = rounds;
85
- const keys = Object.keys(all[0].probabilities);
96
+ const keys = Object.keys(question.options);
86
97
  const averaged = {};
87
98
  for (const key of keys)
88
99
  averaged[key] = mean(all.map((r) => r.probabilities[key] ?? 0));
@@ -94,7 +105,7 @@ function aggregate(kind, rounds) {
94
105
  };
95
106
  }
96
107
  const all = rounds;
97
- const width = all[0].probabilities.length;
108
+ const width = question.levels.length;
98
109
  const averaged = [];
99
110
  for (let i = 0; i < width; i++)
100
111
  averaged.push(mean(all.map((r) => r.probabilities[i] ?? 0)));
@@ -106,14 +117,13 @@ function aggregate(kind, rounds) {
106
117
  };
107
118
  }
108
119
  /** Numeric series a measured confidence can be computed from, per kind. */
109
- function series(kind, rounds) {
110
- if (kind === "truth")
120
+ function series(question, rounds) {
121
+ if (question.kind === "truth")
111
122
  return rounds.map((r) => r.probability);
112
- if (kind === "level") {
123
+ if (question.kind === "level") {
113
124
  // Normalise rubric position onto 0–1 so the spread formula stays comparable.
114
- const all = rounds;
115
- const width = Math.max(1, all[0].probabilities.length - 1);
116
- return all.map((r) => r.level / width);
125
+ const width = Math.max(1, question.levels.length - 1);
126
+ return rounds.map((r) => r.level / width);
117
127
  }
118
128
  const all = rounds;
119
129
  const winner = argmax(all[0].probabilities);
@@ -124,7 +134,8 @@ function series(kind, rounds) {
124
134
  *
125
135
  * Round 0 carries every question. Later rounds carry only the questions that
126
136
  * asked for more samples, so raising `samples` on one question does not
127
- * multiply the cost of its neighbours.
137
+ * multiply the cost of its neighbours. Rounds are independent draws, so they
138
+ * run concurrently: sampling costs requests, not latency.
128
139
  */
129
140
  export async function runPlan(provider, state, planned, options = {}) {
130
141
  const started = Date.now();
@@ -137,9 +148,11 @@ export async function runPlan(provider, state, planned, options = {}) {
137
148
  for (const item of planned) {
138
149
  assertSupported(provider, item.question);
139
150
  if (item.cacheTtlMs && item.cacheTtlMs > 0) {
140
- const hit = await store.get(cacheKeyFor(provider, state, item.question, item.samples));
151
+ const hit = (await store.get(cacheKeyFor(provider, state, item.question, item.samples)));
141
152
  if (hit) {
142
- answers[item.key] = hit;
153
+ const { measuredConfidence, ...answer } = hit;
154
+ answers[item.key] = answer;
155
+ measured[item.key] = measuredConfidence;
143
156
  cachedKeys.add(item.key);
144
157
  continue;
145
158
  }
@@ -149,38 +162,44 @@ export async function runPlan(provider, state, planned, options = {}) {
149
162
  let requestCount = 0;
150
163
  if (live.length > 0) {
151
164
  const maxRounds = Math.max(...live.map((q) => q.samples));
152
- const rounds = {};
153
- for (const item of live)
154
- rounds[item.key] = [];
155
- for (let round = 0; round < maxRounds; round++) {
156
- const inRound = live.filter((q) => q.samples > round);
157
- if (inRound.length === 0)
158
- break;
165
+ const rounds = Array.from({ length: maxRounds }, (_, round) => live.filter((q) => q.samples > round));
166
+ const responses = await Promise.all(rounds.map((inRound) => {
159
167
  const questions = {};
160
168
  for (const item of inRound)
161
169
  questions[item.key] = item.question;
162
- const response = await provider.evaluate({
170
+ return provider.evaluate({
163
171
  state,
164
172
  questions,
165
173
  ...(options.timeoutMs !== undefined ? { timeoutMs: options.timeoutMs } : {}),
166
174
  ...(options.signal ? { signal: options.signal } : {}),
167
175
  });
176
+ }));
177
+ const collected = {};
178
+ for (const item of live)
179
+ collected[item.key] = [];
180
+ responses.forEach((response, round) => {
168
181
  requestCount++;
169
182
  usage.inputTokens += response.usage?.inputTokens ?? 0;
170
183
  usage.outputTokens += response.usage?.outputTokens ?? 0;
171
- for (const item of inRound) {
184
+ for (const item of rounds[round]) {
172
185
  const answer = response.answers[item.key];
173
186
  if (!answer)
174
- throw new Error(`Provider "${provider.name}" returned no answer for key "${item.key}".`);
175
- rounds[item.key].push(answer);
187
+ throw new ProviderError(`Provider "${provider.name}" returned no answer for key "${item.key}".`);
188
+ if (answer.kind !== item.question.kind) {
189
+ throw new ProviderError(`Provider "${provider.name}" answered "${item.key}" as ${answer.kind}, but it was asked as ${item.question.kind}.`);
190
+ }
191
+ collected[item.key].push(answer);
176
192
  }
177
- }
193
+ });
178
194
  for (const item of live) {
179
- const collected = rounds[item.key];
180
- answers[item.key] = aggregate(item.question.kind, collected);
181
- measured[item.key] = collected.length > 1 ? confidenceFromSpread(series(item.question.kind, collected)) : undefined;
195
+ const samples = collected[item.key];
196
+ const answer = aggregate(item.question, samples);
197
+ const confidence = samples.length > 1 ? confidenceFromSpread(series(item.question, samples)) : undefined;
198
+ answers[item.key] = answer;
199
+ measured[item.key] = confidence;
182
200
  if (item.cacheTtlMs && item.cacheTtlMs > 0) {
183
- await store.set(cacheKeyFor(provider, state, item.question, item.samples), answers[item.key], item.cacheTtlMs);
201
+ const entry = confidence !== undefined ? { ...answer, measuredConfidence: confidence } : answer;
202
+ await store.set(cacheKeyFor(provider, state, item.question, item.samples), entry, item.cacheTtlMs);
184
203
  }
185
204
  }
186
205
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -4,8 +4,8 @@
4
4
  * Deliberately NOT named after any one provider (see design rule: no `jevNoul()`
5
5
  * in the public API). Jev's `noul` is our `truth`, Jev's `score` is our `level`.
6
6
  */
7
- export type JsonValue = string | number | boolean | null | JsonValue[] | {
8
- [key: string]: JsonValue;
7
+ export type JsonValue = string | number | boolean | null | readonly JsonValue[] | {
8
+ readonly [key: string]: JsonValue;
9
9
  };
10
10
  /**
11
11
  * What gets evaluated. Providers accept text only, so objects are serialised
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,24 +1,51 @@
1
1
  {
2
2
  "name": "jevascript",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Semantic values for deterministic TypeScript: is, score and choose as ordinary values, backed by a decision model.",
5
5
  "license": "MIT",
6
+ "author": "Hakan Tapanyiğit (https://github.com/hakantapanyigit)",
6
7
  "homepage": "https://jevascript.org",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/hakantapanyigit/jevascript.git"
11
+ },
12
+ "bugs": {
13
+ "url": "https://github.com/hakantapanyigit/jevascript/issues"
14
+ },
7
15
  "type": "module",
8
16
  "main": "./dist/index.js",
9
17
  "types": "./dist/index.d.ts",
10
18
  "exports": {
11
- ".": { "types": "./dist/index.d.ts", "default": "./dist/index.js" },
12
- "./testing": { "types": "./dist/testing.d.ts", "default": "./dist/testing.js" }
19
+ ".": {
20
+ "types": "./dist/index.d.ts",
21
+ "default": "./dist/index.js"
22
+ },
23
+ "./testing": {
24
+ "types": "./dist/testing.d.ts",
25
+ "default": "./dist/testing.js"
26
+ }
13
27
  },
14
- "files": ["dist"],
28
+ "files": [
29
+ "dist"
30
+ ],
15
31
  "sideEffects": false,
16
- "engines": { "node": ">=22.6" },
17
- "keywords": ["llm", "semantic", "decision-model", "jev", "typescript", "classification", "scoring"],
32
+ "engines": {
33
+ "node": ">=22.6"
34
+ },
35
+ "keywords": [
36
+ "llm",
37
+ "semantic",
38
+ "decision-model",
39
+ "jev",
40
+ "typescript",
41
+ "classification",
42
+ "scoring"
43
+ ],
18
44
  "scripts": {
19
45
  "build": "tsc -p tsconfig.json",
20
46
  "typecheck": "npm run build && tsc -p tsconfig.test.json",
21
47
  "test": "npm run typecheck && node --test test/*.test.ts",
48
+ "test:live": "npm run build && node --env-file-if-exists=.env --test test/live/*.test.ts",
22
49
  "example": "node --env-file=.env --experimental-strip-types",
23
50
  "prepublishOnly": "npm test"
24
51
  },