@zimtsui/iterflow 0.0.9 → 0.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -6,107 +6,8 @@ Iterflow is an AI workflow orchestrator specifically designed for Optimizer-Eval
6
6
 
7
7
  ## Examples
8
8
 
9
- ### Optimizer
9
+ ### [Optimizer](./examples/optimize.ts)
10
10
 
11
- ```ts
12
- import { Optimization, Draft, Opposition } from '@zimtsui/iterflow';
13
- import OpenAI from 'openai';
14
- declare const openai: OpenAI;
11
+ ### [Evaluator](./examples/evaluate.ts)
15
12
 
16
- export async function *optimize(problem: string): Optimization.Generator<string, string, string> {
17
- const messages: OpenAI.ChatCompletionMessageParam[] = [
18
- {
19
- role: 'system',
20
- content: [
21
- 'Please solve math problems.',
22
- 'Your answer will be evaluated and the feedback will be provided if the answer is rejected.',
23
- 'Output "OPPOSE" to insist your answer.'
24
- ].join(' ')
25
- },
26
- { role: 'user', content: problem },
27
- ];
28
- for (;;) {
29
- const completion = await openai.chat.completions.create({ model: 'gpt-4o', messages });
30
- messages.push(completion.choices[0]!.message);
31
- const rejection = completion.choices[0]!.message.content! === 'OPPOSE'
32
- ? yield new Opposition('My answer is correct.')
33
- : yield new Draft(completion.choices[0]!.message.content!);
34
- messages.push({
35
- role: 'user',
36
- content: `Your answer is rejected: ${rejection.extract()}. Please revise your answer.`,
37
- });
38
- }
39
- }
40
- ```
41
-
42
- ### Evaluator
43
-
44
- ```ts
45
- import { Evaluation, Draft, Rejection, Opposition } from '@zimtsui/iterflow';
46
- import OpenAI from 'openai';
47
- declare const openai: OpenAI;
48
-
49
- export async function *evaluate(problem: string): Evaluation.Generator<string, string, string> {
50
- let input = yield;
51
- if (input instanceof Draft) {} else throw new Error();
52
- let draft = input;
53
- const messages: OpenAI.ChatCompletionMessageParam[] = [
54
- {
55
- role: 'system',
56
- content: [
57
- 'Please examine the given answer of the given math problem.',
58
- 'Print only `ACCEPT` if it is correct.',
59
- ].join(' '),
60
- },
61
- { role: 'user', content: `Problem: ${problem}\n\nAnswer: ${draft.extract()}` },
62
- ];
63
- for (;;) {
64
- const completion = await openai.chat.completions.create({ model: 'gpt-4o', messages });
65
- messages.push(completion.choices[0]!.message);
66
- const input = completion.choices[0]!.message.content === 'ACCEPT'
67
- ? yield
68
- : yield new Rejection(completion.choices[0]!.message.content!);
69
-
70
- if (input instanceof Draft) {
71
- const draft = input;
72
- messages.push({
73
- role: 'user',
74
- content: `The answer is updated: ${draft.extract()}\n\nPlease examine it again.`,
75
- });
76
- } else if (input instanceof Opposition) {
77
- const opposition = input;
78
- messages.push({
79
- role: 'user',
80
- content: `Your rejection is opposed: ${opposition.extract()}\n\nPlease examine it again.`,
81
- });
82
- }
83
- else throw new Error();
84
- }
85
- }
86
- ```
87
-
88
- ### Workflow
89
-
90
- ```ts
91
- import { Optimization, Evaluation, opteva, Rejection } from '@zimtsui/iterflow';
92
- declare function optimize(problem: string): Optimization.Generator<number, string, string>;
93
- declare function evaluateNumber(problem: string): Evaluation.Generator<number, string, string>;
94
- declare function stringifySolution(solution: number): Promise<string>;
95
- declare function evaluateString(problem: string): Evaluation.Generator<string, string, string>;
96
-
97
- export async function workflow(problem: string): Promise<string> {
98
- await using optimization = Optimization.from(optimize(problem));
99
- await using numberEvaluation = await Evaluation.from(evaluateNumber(problem));
100
- await using stringEvaluation = await Evaluation.from(evaluateString(problem));
101
- for (;;) try {
102
- const numberView = optimization;
103
- await opteva(numberView, numberEvaluation);
104
- const stringView = Optimization.map(numberView, stringifySolution);
105
- await opteva(stringView, stringEvaluation);
106
- const finalDraft = await stringView.repeat();
107
- return finalDraft.extract();
108
- } catch (e) {
109
- if (e instanceof Rejection) {} else throw e;
110
- }
111
- };
112
- ```
13
+ ### [Workflow](./examples/workflow.ts)
@@ -1,15 +1,15 @@
1
1
  import { Rejection, Opposition, Draft } from './types.ts';
2
- export interface Evaluation<in out draft, in out rejection, in out opposition> extends AsyncDisposable {
3
- submit(draft: Draft<draft>): Promise<Rejection<rejection> | void>;
4
- oppose(opposition: Opposition<opposition>): Promise<Rejection<rejection> | void>;
2
+ export interface Evaluation<in out draft, in out nextdraft, in out rejection, in out opposition> extends AsyncDisposable {
3
+ submit(draft: Draft<draft>): Promise<Rejection<rejection> | Draft<nextdraft>>;
4
+ oppose(opposition: Opposition<opposition>): Promise<Rejection<rejection> | Draft<nextdraft>>;
5
5
  }
6
6
  export declare namespace Evaluation {
7
7
  /**
8
8
  * @param evagen Ownership transferred.
9
9
  */
10
- function from<draft, rejection, opposition>(evagen: Evaluation.Generator<draft, rejection, opposition>): Promise<Evaluation<draft, rejection, opposition>>;
10
+ function from<draft, nextdraft, rejection, opposition>(evagen: Evaluation.Generator<draft, nextdraft, rejection, opposition>): Promise<Evaluation<draft, nextdraft, rejection, opposition>>;
11
11
  /**
12
12
  * First yield must be void.
13
13
  */
14
- type Generator<draft, rejection, opposition> = AsyncGenerator<Rejection<rejection> | void, never, Draft<draft> | Opposition<opposition>>;
14
+ type Generator<draft, nextdraft, rejection, opposition> = AsyncGenerator<Rejection<rejection> | Draft<nextdraft> | void, never, Draft<draft> | Opposition<opposition>>;
15
15
  }
@@ -1,4 +1,4 @@
1
- import { Rejection, Opposition, Draft } from "./types.js";
1
+ import { Rejection, Draft } from "./types.js";
2
2
  export var Evaluation;
3
3
  (function (Evaluation) {
4
4
  /**
@@ -8,12 +8,22 @@ export var Evaluation;
8
8
  const first = await evagen.next().then(r => r.value);
9
9
  if (first instanceof Rejection)
10
10
  throw new Error();
11
+ if (first instanceof Draft)
12
+ throw new Error();
11
13
  return {
12
14
  async submit(draft) {
13
- return await evagen.next(draft).then(r => r.value);
15
+ const output = await evagen.next(draft).then(r => r.value);
16
+ if (output instanceof Rejection || output instanceof Draft)
17
+ return output;
18
+ else
19
+ throw new Error();
14
20
  },
15
21
  async oppose(opposition) {
16
- return await evagen.next(opposition).then(r => r.value);
22
+ const output = await evagen.next(opposition).then(r => r.value);
23
+ if (output instanceof Rejection || output instanceof Draft)
24
+ return output;
25
+ else
26
+ throw new Error();
17
27
  },
18
28
  async [Symbol.asyncDispose]() {
19
29
  await evagen[Symbol.asyncDispose]?.();
@@ -1 +1 @@
1
- {"version":3,"file":"evaluation.js","sourceRoot":"","sources":["../src/evaluation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAU1D,MAAM,KAAW,UAAU,CAgC1B;AAhCD,WAAiB,UAAU;IAEvB;;OAEG;IACI,KAAK,UAAU,IAAI,CACtB,MAA0D;QAE1D,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,KAAK,YAAY,SAAS;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC;QAClD,OAAO;YACH,KAAK,CAAC,MAAM,CAAC,KAAmB;gBAC5B,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACvD,CAAC;YAED,KAAK,CAAC,MAAM,CAAC,UAAkC;gBAC3C,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC5D,CAAC;YAED,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;gBACvB,MAAM,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;YAC1C,CAAC;SAC+C,CAAC;IACzD,CAAC;IAlBqB,eAAI,OAkBzB,CAAA;AASL,CAAC,EAhCgB,UAAU,KAAV,UAAU,QAgC1B"}
1
+ {"version":3,"file":"evaluation.js","sourceRoot":"","sources":["../src/evaluation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAc,KAAK,EAAE,MAAM,YAAY,CAAC;AAU1D,MAAM,KAAW,UAAU,CAqC1B;AArCD,WAAiB,UAAU;IAEvB;;OAEG;IACI,KAAK,UAAU,IAAI,CACtB,MAAqE;QAErE,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,KAAK,YAAY,SAAS;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC;QAClD,IAAI,KAAK,YAAY,KAAK;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC;QAC9C,OAAO;YACH,KAAK,CAAC,MAAM,CAAC,KAAmB;gBAC5B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAC3D,IAAI,MAAM,YAAY,SAAS,IAAI,MAAM,YAAY,KAAK;oBAAE,OAAO,MAAM,CAAC;;oBACrE,MAAM,IAAI,KAAK,EAAE,CAAC;YAC3B,CAAC;YAED,KAAK,CAAC,MAAM,CAAC,UAAkC;gBAC3C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAChE,IAAI,MAAM,YAAY,SAAS,IAAI,MAAM,YAAY,KAAK;oBAAE,OAAO,MAAM,CAAC;;oBACrE,MAAM,IAAI,KAAK,EAAE,CAAC;YAC3B,CAAC;YAED,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;gBACvB,MAAM,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;YAC1C,CAAC;SAC0D,CAAC;IACpE,CAAC;IAvBqB,eAAI,OAuBzB,CAAA;AASL,CAAC,EArCgB,UAAU,KAAV,UAAU,QAqC1B"}
package/build/opteva.d.ts CHANGED
@@ -3,4 +3,4 @@ import { Evaluation } from './evaluation.ts';
3
3
  /**
4
4
  * @throws {@link Rejection}
5
5
  */
6
- export declare function opteva<draft, rejection, opposition>(opt: Optimization.View<draft, rejection, opposition>, eva: Evaluation<draft, rejection, opposition>): Promise<void>;
6
+ export declare function opteva<draft, nextdraft, rejection, opposition>(opt: Optimization.View<draft, rejection, opposition> | Optimization.Snapshot<draft, rejection, opposition>, eva: Evaluation<draft, nextdraft, rejection, opposition>): Promise<Optimization.Snapshot<nextdraft, rejection, opposition>>;
package/build/opteva.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import { Draft, Rejection, Opposition } from "./types.js";
2
2
  import { Optimization } from "./optimization.js";
3
- import { Evaluation } from "./evaluation.js";
4
3
  /**
5
4
  * @throws {@link Rejection}
6
5
  */
7
6
  export async function opteva(opt, eva) {
8
7
  let draft = await opt.repeat();
9
- for (let evaoutput = await eva.submit(draft); evaoutput instanceof Rejection;) {
8
+ let evaoutput = await eva.submit(draft);
9
+ for (; evaoutput instanceof Rejection;) {
10
10
  const rejection = evaoutput;
11
11
  const optoutput = await opt.reject(rejection);
12
12
  if (optoutput instanceof Opposition) {
@@ -16,5 +16,19 @@ export async function opteva(opt, eva) {
16
16
  throw rejection;
17
17
  }
18
18
  }
19
+ let nextoutput = evaoutput;
20
+ async function* nextgen() {
21
+ for (;;) {
22
+ const rejection = yield nextoutput;
23
+ const output = await opt.reject(rejection);
24
+ if (output instanceof Draft)
25
+ throw rejection;
26
+ else if (output instanceof Opposition)
27
+ nextoutput = output;
28
+ else
29
+ throw new Error();
30
+ }
31
+ }
32
+ return Optimization.from(nextgen());
19
33
  }
20
34
  //# sourceMappingURL=opteva.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"opteva.js","sourceRoot":"","sources":["../src/opteva.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAK7C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CACxB,GAAoD,EACpD,GAA6C;IAE7C,IAAI,KAAK,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;IAC/B,KAAK,IAAI,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,YAAY,SAAS,GAAG,CAAC;QAC5E,MAAM,SAAS,GAAG,SAAS,CAAC;QAC5B,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,SAAS,YAAY,UAAU,EAAE,CAAC;YAClC,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC;aAAM,IAAI,SAAS,YAAY,KAAK,EAAE,CAAC;YACpC,MAAM,SAAS,CAAC;QACpB,CAAC;IACL,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"opteva.js","sourceRoot":"","sources":["../src/opteva.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAMjD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CACxB,GAA0G,EAC1G,GAAwD;IAExD,IAAI,KAAK,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;IAC/B,IAAI,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACvC,OAAO,SAAS,YAAY,SAAS,GAAG,CAAC;QACrC,MAAM,SAAS,GAAG,SAAS,CAAC;QAC5B,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,SAAS,YAAY,UAAU,EAAE,CAAC;YAClC,SAAS,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC;aAAM,IAAI,SAAS,YAAY,KAAK,EAAE,CAAC;YACpC,MAAM,SAAS,CAAC;QACpB,CAAC;IACL,CAAC;IAED,IAAI,UAAU,GAA8C,SAAS,CAAC;IACtE,KAAK,SAAU,CAAC,CAAA,OAAO;QACnB,SAAS,CAAC;YACN,MAAM,SAAS,GAAyB,MAAM,UAAU,CAAC;YACzD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAI,MAAM,YAAY,KAAK;gBACvB,MAAM,SAAS,CAAC;iBACf,IAAI,MAAM,YAAY,UAAU;gBACjC,UAAU,GAAG,MAAM,CAAC;;gBACnB,MAAM,IAAI,KAAK,EAAE,CAAC;QAC3B,CAAC;IACL,CAAC;IACD,OAAO,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAA4D,CAAC;AACnG,CAAC"}
@@ -6,24 +6,25 @@ export declare namespace Optimization {
6
6
  * First yield must be a draft.
7
7
  */
8
8
  type Generator<draft, rejection, opposition> = AsyncGenerator<Draft<draft> | Opposition<opposition>, never, Rejection<rejection>>;
9
+ /**
10
+ * @param optgen Ownership transferred.
11
+ */
9
12
  function from<draft, rejection, opposition>(optgen: Optimization.Generator<draft, rejection, opposition>): Optimization<draft, rejection, opposition>;
10
- class Instance<in out draft, in out rejection, in out opposition> implements Optimization<draft, rejection, opposition> {
11
- protected it: AsyncGenerator<Draft<draft> | Opposition<opposition>, never, Rejection<rejection> | void>;
12
- /**
13
- * @param optgen Ownership transferred.
14
- */
15
- constructor(optgen: Optimization.Generator<draft, rejection, opposition>);
13
+ interface View<in out draft, in out rejection, in out opposition> {
16
14
  repeat(): Promise<Draft<draft>>;
17
15
  reject(rejection: Rejection<rejection>): Promise<Draft<draft> | Opposition<opposition>>;
18
- [Symbol.asyncDispose](): Promise<void>;
16
+ }
17
+ namespace View {
18
+ function map<draft, nextdraft, rejection, opposition>(optview: Optimization.View<draft, rejection, opposition>, f: (draft: draft) => Promise<nextdraft>): Optimization.View<nextdraft, rejection, opposition>;
19
+ }
20
+ interface Snapshot<in out draft, in out rejection, in out opposition> extends Optimization.View<draft, rejection, opposition> {
21
+ repeat(): Promise<Draft<draft>>;
19
22
  /**
20
- * @param optgen Ownership transferred.
23
+ * @throws {@link Rejection}
21
24
  */
22
- protected static iterate<draft, rejection, opposition>(optgen: Optimization.Generator<draft, rejection, opposition>): AsyncGenerator<Draft<draft> | Opposition<opposition>, never, Rejection<rejection> | void>;
25
+ reject(rejection: Rejection<rejection>): Promise<Opposition<opposition>>;
23
26
  }
24
- function map<draft, nextdraft, rejection, opposition>(optview: Optimization.View<draft, rejection, opposition>, f: (draft: draft) => Promise<nextdraft>): Optimization.View<nextdraft, rejection, opposition>;
25
- interface View<in out draft, in out rejection, in out opposition> {
26
- repeat(): Promise<Draft<draft>>;
27
- reject(rejection: Rejection<rejection>): Promise<Draft<draft> | Opposition<opposition>>;
27
+ namespace Snapshot {
28
+ function map<draft, nextdraft, rejection, opposition>(opt: Optimization.Snapshot<draft, rejection, opposition> | Optimization.View<draft, rejection, opposition>, f: (draft: draft) => Promise<nextdraft>): Optimization.Snapshot<nextdraft, rejection, opposition>;
28
29
  }
29
30
  }
@@ -1,8 +1,11 @@
1
1
  import { Draft, Rejection, Opposition } from "./types.js";
2
2
  export var Optimization;
3
3
  (function (Optimization) {
4
+ /**
5
+ * @param optgen Ownership transferred.
6
+ */
4
7
  function from(optgen) {
5
- return new Optimization.Instance(optgen);
8
+ return new Instance(optgen);
6
9
  }
7
10
  Optimization.from = from;
8
11
  class Instance {
@@ -52,21 +55,45 @@ export var Optimization;
52
55
  }
53
56
  }
54
57
  }
55
- Optimization.Instance = Instance;
56
- function map(optview, f) {
57
- async function* nextoptgen() {
58
- let nextoutput = new Draft(await f(await optview.repeat().then(r => r.extract())));
59
- for (;;) {
60
- const rejection = yield nextoutput;
61
- const output = await optview.reject(rejection);
62
- if (output instanceof Draft)
63
- nextoutput = new Draft(await f(output.extract()));
64
- else
65
- nextoutput = output;
58
+ let View;
59
+ (function (View) {
60
+ function map(optview, f) {
61
+ async function* nextoptgen() {
62
+ let nextoutput = new Draft(await f(await optview.repeat().then(r => r.extract())));
63
+ for (;;) {
64
+ const rejection = yield nextoutput;
65
+ const output = await optview.reject(rejection);
66
+ if (output instanceof Draft)
67
+ nextoutput = new Draft(await f(output.extract()));
68
+ else if (output instanceof Opposition)
69
+ nextoutput = output;
70
+ else
71
+ throw new Error();
72
+ }
66
73
  }
74
+ return Optimization.from(nextoptgen());
67
75
  }
68
- return Optimization.from(nextoptgen());
69
- }
70
- Optimization.map = map;
76
+ View.map = map;
77
+ })(View = Optimization.View || (Optimization.View = {}));
78
+ let Snapshot;
79
+ (function (Snapshot) {
80
+ function map(opt, f) {
81
+ async function* nextoptgen() {
82
+ let nextoutput = new Draft(await f(await opt.repeat().then(r => r.extract())));
83
+ for (;;) {
84
+ const rejection = yield nextoutput;
85
+ const output = await opt.reject(rejection);
86
+ if (output instanceof Draft)
87
+ throw rejection;
88
+ else if (output instanceof Opposition)
89
+ nextoutput = output;
90
+ else
91
+ throw new Error();
92
+ }
93
+ }
94
+ return Optimization.from(nextoptgen());
95
+ }
96
+ Snapshot.map = map;
97
+ })(Snapshot = Optimization.Snapshot || (Optimization.Snapshot = {}));
71
98
  })(Optimization || (Optimization = {}));
72
99
  //# sourceMappingURL=optimization.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"optimization.js","sourceRoot":"","sources":["../src/optimization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"optimization.js","sourceRoot":"","sources":["../src/optimization.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"fileNames":["../../../../../usr/lib/node_modules/typescript/lib/lib.es5.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2016.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2017.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2018.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2019.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2020.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2021.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2022.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2023.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2024.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2025.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.dom.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2024.collection.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2024.object.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2024.promise.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2024.string.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2025.collection.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2025.float16.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2025.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2025.iterator.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2025.promise.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.es2025.regexp.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.array.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.date.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.error.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.temporal.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.esnext.typedarrays.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.decorators.d.ts","../../../../../usr/lib/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/types.ts","../src/evaluation.ts","../src/optimization.ts","../src/opteva.ts","../src/exports.ts"],"fileIdsList":[[89],[89,90,91,92],[89,90,91]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","impliedFormat":1},{"version":"26e0fe14baee4e127f4365d1ae0b276f400562e45e19e35fd2d4c296684715e6","impliedFormat":1},{"version":"1e9332c23e9a907175e0ffc6a49e236f97b48838cc8aec9ce7e4cec21e544b65","impliedFormat":1},{"version":"3753fbc1113dc511214802a2342280a8b284ab9094f6420e7aa171e868679f91","impliedFormat":1},{"version":"999ca32883495a866aa5737fe1babc764a469e4cde6ee6b136a4b9ae68853e4b","impliedFormat":1},{"version":"17f13ecb98cbc39243f2eee1f16d45cd8ec4706b03ee314f1915f1a8b42f6984","impliedFormat":1},{"version":"d6b1eba8496bdd0eed6fc8a685768fe01b2da4a0388b5fe7df558290bffcf32f","affectsGlobalScope":true,"impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3261badeb7843d157ef3e6f5d1427d0eeb0af0cf9df84a62cfd29fd47ac86e","affectsGlobalScope":true,"impliedFormat":1},{"version":"195daca651dde22f2167ac0d0a05e215308119a3100f5e6268e8317d05a92526","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b11e4285cd2bb164a4dc09248bdec69e9842517db4ca47c1ba913011e44ff2f","affectsGlobalScope":true,"impliedFormat":1},{"version":"0508571a52475e245b02bc50fa1394065a0a3d05277fbf5120c3784b85651799","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f9af488f510c3015af3cc8c267a9e9d96c4dd38a1fdff0e11dc5a544711415b","affectsGlobalScope":true,"impliedFormat":1},{"version":"fc611fea8d30ea72c6bbfb599c9b4d393ce22e2f5bfef2172534781e7d138104","affectsGlobalScope":true,"impliedFormat":1},{"version":"0bd714129fca875f7d4c477a1a392200b0bcd13fb2e80928cd334b63830ea047","affectsGlobalScope":true,"impliedFormat":1},{"version":"e2c9037ae6cd2c52d80ceef0b3c5ffdb488627d71529cf4f63776daf11161c9a","affectsGlobalScope":true,"impliedFormat":1},{"version":"135d5cf4d345f59f1a9caadfafcd858d3d9cc68290db616cc85797224448cccc","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc238c3f81c2984751932b6aab223cd5b830e0ac6cad76389e5e9d2ffc03287d","affectsGlobalScope":true,"impliedFormat":1},{"version":"4a07f9b76d361f572620927e5735b77d6d2101c23cdd94383eb5b706e7b36357","affectsGlobalScope":true,"impliedFormat":1},{"version":"7c4e8dc6ab834cc6baa0227e030606d29e3e8449a9f67cdf5605ea5493c4db29","affectsGlobalScope":true,"impliedFormat":1},{"version":"de7ba0fd02e06cd9a5bd4ab441ed0e122735786e67dde1e849cced1cd8b46b78","affectsGlobalScope":true,"impliedFormat":1},{"version":"6148e4e88d720a06855071c3db02069434142a8332cf9c182cda551adedf3156","affectsGlobalScope":true,"impliedFormat":1},{"version":"d63dba625b108316a40c95a4425f8d4294e0deeccfd6c7e59d819efa19e23409","affectsGlobalScope":true,"impliedFormat":1},{"version":"0568d6befee03dd435bed4fc25c4e46865b24bdcb8c563fdc21f580a2c301904","affectsGlobalScope":true,"impliedFormat":1},{"version":"30d62269b05b584741f19a5369852d5d34895aa2ac4fd948956f886d15f9cc0d","affectsGlobalScope":true,"impliedFormat":1},{"version":"f128dae7c44d8f35ee42e0a437000a57c9f06cc04f8b4fb42eebf44954d53dc8","affectsGlobalScope":true,"impliedFormat":1},{"version":"ffbe6d7b295306b2ba88030f65b74c107d8d99bdcf596ea99c62a02f606108b0","affectsGlobalScope":true,"impliedFormat":1},{"version":"996fb27b15277369c68a4ba46ed138b4e9e839a02fb4ec756f7997629242fd9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"79b712591b270d4778c89706ca2cfc56ddb8c3f895840e477388f1710dc5eda9","affectsGlobalScope":true,"impliedFormat":1},{"version":"20884846cef428b992b9bd032e70a4ef88e349263f63aeddf04dda837a7dba26","affectsGlobalScope":true,"impliedFormat":1},{"version":"5fcab789c73a97cd43828ee3cc94a61264cf24d4c44472ce64ced0e0f148bdb2","affectsGlobalScope":true,"impliedFormat":1},{"version":"db59a81f070c1880ad645b2c0275022baa6a0c4f0acdc58d29d349c6efcf0903","affectsGlobalScope":true,"impliedFormat":1},{"version":"673294292640f5722b700e7d814e17aaf7d93f83a48a2c9b38f33cbc940ad8b0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d786b48f934cbca483b3c6d0a798cb43bbb4ada283e76fb22c28e53ae05b9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ecb8e347cb6b2a8927c09b86263663289418df375f5e68e11a0ae683776978f","affectsGlobalScope":true,"impliedFormat":1},{"version":"142efd4ce210576f777dc34df121777be89eda476942d6d6663b03dcb53be3ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"379bc41580c2d774f82e828c70308f24a005b490c25ba34d679d84bcf05c3d9d","affectsGlobalScope":true,"impliedFormat":1},{"version":"ed484fb2aa8a1a23d0277056ec3336e0a0b52f9b8d6a961f338a642faf43235d","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ffedae1d1c2d53fdbca1c96d3c7dda544281f7d262f99b6880634f8fd8d9820","affectsGlobalScope":true,"impliedFormat":1},{"version":"83a730b125d477dd264df8ba479afab27a3dae7152b005c214ab94dc7ee44fd3","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","affectsGlobalScope":true,"impliedFormat":1},{"version":"faf3f95be4af1dd172d12de5a9ac37e9e743e0742924e0683910f4e2d46b0634","signature":"efa87fe22a45152cc7e335c9457e895f08d9b096a6066cf99637fabf728cda98"},{"version":"7fa5900ba1142a17de10a305e95473720d5682eced0de8e20f061166fdd23cb7","signature":"fc281f552af4cca9bade81ed1f97999638ca300b38d57cd05217aeb56bf90d33"},{"version":"b1c57b1a941783d8f96615442293cdcffe54560e512e6ff116dde4be65fa4ac1","signature":"46d7aeaa4a8743819adc87976cbeded3568f6ea7b75ba9d42f3d25885464637e"},{"version":"3f5eb02b96346d284d49fc3bd07e87f863f9a57eda015f6ed32de1e5aab1bee3","signature":"335efb4deddd221632e14cd86e5c421c78887b4cdc40fcfae59368c10902e56c"},"668bc06561b0103571f441a6426baad3a237ea99a670779774ee4796cd1b5408"],"root":[[89,93]],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"checkJs":true,"composite":true,"experimentalDecorators":true,"module":200,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"noUncheckedIndexedAccess":true,"noUncheckedSideEffectImports":true,"outDir":"./","rewriteRelativeImportExtensions":true,"skipLibCheck":true,"sourceMap":true,"strict":true,"target":9,"verbatimModuleSyntax":true},"referencedMap":[[90,1],[93,2],[92,3],[91,1]],"latestChangedDtsFile":"./exports.d.ts","version":"6.0.2"}
1
+ {"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.es2024.d.ts","../node_modules/typescript/lib/lib.es2025.d.ts","../node_modules/typescript/lib/lib.esnext.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.es2023.intl.d.ts","../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2024.collection.d.ts","../node_modules/typescript/lib/lib.es2024.object.d.ts","../node_modules/typescript/lib/lib.es2024.promise.d.ts","../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2024.string.d.ts","../node_modules/typescript/lib/lib.es2025.collection.d.ts","../node_modules/typescript/lib/lib.es2025.float16.d.ts","../node_modules/typescript/lib/lib.es2025.intl.d.ts","../node_modules/typescript/lib/lib.es2025.iterator.d.ts","../node_modules/typescript/lib/lib.es2025.promise.d.ts","../node_modules/typescript/lib/lib.es2025.regexp.d.ts","../node_modules/typescript/lib/lib.esnext.array.d.ts","../node_modules/typescript/lib/lib.esnext.collection.d.ts","../node_modules/typescript/lib/lib.esnext.date.d.ts","../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../node_modules/typescript/lib/lib.esnext.error.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../node_modules/typescript/lib/lib.esnext.temporal.d.ts","../node_modules/typescript/lib/lib.esnext.typedarrays.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/types.ts","../src/evaluation.ts","../src/optimization.ts","../src/opteva.ts","../src/exports.ts"],"fileIdsList":[[88],[88,89,90,91],[88,89,90]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","impliedFormat":1},{"version":"26e0fe14baee4e127f4365d1ae0b276f400562e45e19e35fd2d4c296684715e6","impliedFormat":1},{"version":"1e9332c23e9a907175e0ffc6a49e236f97b48838cc8aec9ce7e4cec21e544b65","impliedFormat":1},{"version":"3753fbc1113dc511214802a2342280a8b284ab9094f6420e7aa171e868679f91","impliedFormat":1},{"version":"999ca32883495a866aa5737fe1babc764a469e4cde6ee6b136a4b9ae68853e4b","impliedFormat":1},{"version":"17f13ecb98cbc39243f2eee1f16d45cd8ec4706b03ee314f1915f1a8b42f6984","impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3261badeb7843d157ef3e6f5d1427d0eeb0af0cf9df84a62cfd29fd47ac86e","affectsGlobalScope":true,"impliedFormat":1},{"version":"195daca651dde22f2167ac0d0a05e215308119a3100f5e6268e8317d05a92526","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b11e4285cd2bb164a4dc09248bdec69e9842517db4ca47c1ba913011e44ff2f","affectsGlobalScope":true,"impliedFormat":1},{"version":"0508571a52475e245b02bc50fa1394065a0a3d05277fbf5120c3784b85651799","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f9af488f510c3015af3cc8c267a9e9d96c4dd38a1fdff0e11dc5a544711415b","affectsGlobalScope":true,"impliedFormat":1},{"version":"fc611fea8d30ea72c6bbfb599c9b4d393ce22e2f5bfef2172534781e7d138104","affectsGlobalScope":true,"impliedFormat":1},{"version":"0bd714129fca875f7d4c477a1a392200b0bcd13fb2e80928cd334b63830ea047","affectsGlobalScope":true,"impliedFormat":1},{"version":"e2c9037ae6cd2c52d80ceef0b3c5ffdb488627d71529cf4f63776daf11161c9a","affectsGlobalScope":true,"impliedFormat":1},{"version":"135d5cf4d345f59f1a9caadfafcd858d3d9cc68290db616cc85797224448cccc","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc238c3f81c2984751932b6aab223cd5b830e0ac6cad76389e5e9d2ffc03287d","affectsGlobalScope":true,"impliedFormat":1},{"version":"4a07f9b76d361f572620927e5735b77d6d2101c23cdd94383eb5b706e7b36357","affectsGlobalScope":true,"impliedFormat":1},{"version":"7c4e8dc6ab834cc6baa0227e030606d29e3e8449a9f67cdf5605ea5493c4db29","affectsGlobalScope":true,"impliedFormat":1},{"version":"de7ba0fd02e06cd9a5bd4ab441ed0e122735786e67dde1e849cced1cd8b46b78","affectsGlobalScope":true,"impliedFormat":1},{"version":"6148e4e88d720a06855071c3db02069434142a8332cf9c182cda551adedf3156","affectsGlobalScope":true,"impliedFormat":1},{"version":"d63dba625b108316a40c95a4425f8d4294e0deeccfd6c7e59d819efa19e23409","affectsGlobalScope":true,"impliedFormat":1},{"version":"0568d6befee03dd435bed4fc25c4e46865b24bdcb8c563fdc21f580a2c301904","affectsGlobalScope":true,"impliedFormat":1},{"version":"30d62269b05b584741f19a5369852d5d34895aa2ac4fd948956f886d15f9cc0d","affectsGlobalScope":true,"impliedFormat":1},{"version":"f128dae7c44d8f35ee42e0a437000a57c9f06cc04f8b4fb42eebf44954d53dc8","affectsGlobalScope":true,"impliedFormat":1},{"version":"ffbe6d7b295306b2ba88030f65b74c107d8d99bdcf596ea99c62a02f606108b0","affectsGlobalScope":true,"impliedFormat":1},{"version":"996fb27b15277369c68a4ba46ed138b4e9e839a02fb4ec756f7997629242fd9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"79b712591b270d4778c89706ca2cfc56ddb8c3f895840e477388f1710dc5eda9","affectsGlobalScope":true,"impliedFormat":1},{"version":"20884846cef428b992b9bd032e70a4ef88e349263f63aeddf04dda837a7dba26","affectsGlobalScope":true,"impliedFormat":1},{"version":"5fcab789c73a97cd43828ee3cc94a61264cf24d4c44472ce64ced0e0f148bdb2","affectsGlobalScope":true,"impliedFormat":1},{"version":"db59a81f070c1880ad645b2c0275022baa6a0c4f0acdc58d29d349c6efcf0903","affectsGlobalScope":true,"impliedFormat":1},{"version":"673294292640f5722b700e7d814e17aaf7d93f83a48a2c9b38f33cbc940ad8b0","affectsGlobalScope":true,"impliedFormat":1},{"version":"d786b48f934cbca483b3c6d0a798cb43bbb4ada283e76fb22c28e53ae05b9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ecb8e347cb6b2a8927c09b86263663289418df375f5e68e11a0ae683776978f","affectsGlobalScope":true,"impliedFormat":1},{"version":"142efd4ce210576f777dc34df121777be89eda476942d6d6663b03dcb53be3ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"379bc41580c2d774f82e828c70308f24a005b490c25ba34d679d84bcf05c3d9d","affectsGlobalScope":true,"impliedFormat":1},{"version":"ed484fb2aa8a1a23d0277056ec3336e0a0b52f9b8d6a961f338a642faf43235d","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ffedae1d1c2d53fdbca1c96d3c7dda544281f7d262f99b6880634f8fd8d9820","affectsGlobalScope":true,"impliedFormat":1},{"version":"83a730b125d477dd264df8ba479afab27a3dae7152b005c214ab94dc7ee44fd3","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","affectsGlobalScope":true,"impliedFormat":1},{"version":"faf3f95be4af1dd172d12de5a9ac37e9e743e0742924e0683910f4e2d46b0634","signature":"efa87fe22a45152cc7e335c9457e895f08d9b096a6066cf99637fabf728cda98"},{"version":"ae1937453ec5760bc54eab75ad6260a0866d6bc85656e97df272ea7571ea019a","signature":"15c5e68bb7294fdbdad50dbe16539bdadf05b61d9f4ee15dc058f74ffeb7529a"},{"version":"25c7513ec07212331a4a7b96220f64477dcf20477eefef2f060318edd77ce4ec","signature":"4b78ca9321ca882de88c0bee9a5afcb67200a874dee97a5a1898866a13a9dccc"},{"version":"512e2debcb5ccaeec4cf7cd0cf75d89a3796c1f9d416052017a1a44bf5b6ae89","signature":"91f6777c90db8a526c50ec14e5220cb75419dc7eb79e3ba7fbaa9197cb6d469e"},"668bc06561b0103571f441a6426baad3a237ea99a670779774ee4796cd1b5408"],"root":[[88,92]],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"checkJs":true,"composite":true,"experimentalDecorators":true,"module":200,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"noUncheckedIndexedAccess":true,"outDir":"./","rewriteRelativeImportExtensions":true,"rootDir":"../src","skipLibCheck":true,"sourceMap":true,"target":9},"referencedMap":[[89,1],[92,2],[91,3],[90,1]],"latestChangedDtsFile":"./exports.d.ts","version":"6.0.2"}
package/package.json CHANGED
@@ -16,13 +16,10 @@
16
16
  "prepublishOnly": "npm run clean && npm run build"
17
17
  },
18
18
  "author": "Zim",
19
- "license": "MIT",
20
- "peerDependencies": {
21
- "@opentelemetry/api": "^1.9.0"
22
- },
23
19
  "devDependencies": {
24
20
  "ava": "^7.0.0",
25
- "openai": "^6.29.0"
21
+ "openai": "^6.29.0",
22
+ "typescript": "^6.0.2"
26
23
  },
27
- "version": "0.0.9"
24
+ "version": "0.0.10"
28
25
  }
package/test/test.ts DELETED
@@ -1,229 +0,0 @@
1
- import test from 'ava';
2
- import {
3
- Draft,
4
- Evaluation,
5
- opteva,
6
- Opposition,
7
- Optimization,
8
- Rejection,
9
- } from '../build/exports.js';
10
-
11
-
12
- async function dispose(...values: AsyncDisposable[]): Promise<void> {
13
- for (const value of values.reverse())
14
- await value[Symbol.asyncDispose]();
15
- }
16
-
17
-
18
- test('opteva throws rejection after optimizer produces a new draft', async t => {
19
- const events: Array<[string, string]> = [];
20
-
21
- async function* optimize(): Optimization.Generator<string, string, string> {
22
- const rejection = yield new Draft('draft-1');
23
- events.push(['optimizer.reject', rejection.extract()]);
24
- let nextRejection = yield new Draft('draft-2');
25
- for (;;)
26
- nextRejection = yield new Draft(`draft-2:${nextRejection.extract()}`);
27
- }
28
-
29
- async function* evaluate(): Evaluation.Generator<string, string, string> {
30
- const draft = yield;
31
- events.push(['evaluation.submit', draft.extract()]);
32
- let nextInput = yield new Rejection('needs-revision');
33
- for (;;)
34
- nextInput = yield;
35
- }
36
-
37
- const optimization = Optimization.from(optimize());
38
- const evaluation = await Evaluation.from(evaluate());
39
-
40
- try {
41
- const thrown = await t.throwsAsync(opteva(optimization, evaluation), {
42
- instanceOf: Rejection,
43
- });
44
-
45
- t.is(thrown?.extract(), 'needs-revision');
46
- t.is((await optimization.repeat()).extract(), 'draft-2');
47
- t.deepEqual(events, [
48
- ['evaluation.submit', 'draft-1'],
49
- ['optimizer.reject', 'needs-revision'],
50
- ]);
51
- } finally {
52
- await dispose(evaluation, optimization);
53
- }
54
- });
55
-
56
-
57
- test('opteva continues when optimizer opposes a rejection and evaluator accepts', async t => {
58
- const events: Array<[string, string]> = [];
59
-
60
- async function* optimize(): Optimization.Generator<string, string, string> {
61
- const rejection = yield new Draft('draft-1');
62
- events.push(['optimizer.reject', rejection.extract()]);
63
- let nextRejection = yield new Opposition('draft-1-is-correct');
64
- for (;;)
65
- nextRejection = yield new Draft(`draft-1:${nextRejection.extract()}`);
66
- }
67
-
68
- async function* evaluate(): Evaluation.Generator<string, string, string> {
69
- const draft = yield;
70
- events.push(['evaluation.submit', draft.extract()]);
71
- const opposition = yield new Rejection('prove-it');
72
- events.push(['evaluation.oppose', opposition.extract()]);
73
- let nextInput = yield;
74
- for (;;)
75
- nextInput = yield;
76
- }
77
-
78
- const optimization = Optimization.from(optimize());
79
- const evaluation = await Evaluation.from(evaluate());
80
-
81
- try {
82
- await opteva(optimization, evaluation);
83
-
84
- t.is((await optimization.repeat()).extract(), 'draft-1');
85
- t.deepEqual(events, [
86
- ['evaluation.submit', 'draft-1'],
87
- ['optimizer.reject', 'prove-it'],
88
- ['evaluation.oppose', 'draft-1-is-correct'],
89
- ]);
90
- } finally {
91
- await dispose(evaluation, optimization);
92
- }
93
- });
94
-
95
-
96
- test('Optimization.map keeps the last mapped draft across opposition', async t => {
97
- const mappedInputs: number[] = [];
98
-
99
- async function* optimize(): Optimization.Generator<number, string, string> {
100
- const firstRejection = yield new Draft(1);
101
- const secondRejection = yield new Opposition(`oppose:${firstRejection.extract()}`);
102
- let nextRejection = yield new Draft(secondRejection.extract().length);
103
- for (;;)
104
- nextRejection = yield new Draft(nextRejection.extract().length);
105
- }
106
-
107
- const source = Optimization.from(optimize());
108
- const mapped = Optimization.map(source, async draft => {
109
- mappedInputs.push(draft);
110
- return `mapped:${draft}`;
111
- });
112
-
113
- try {
114
- t.is((await mapped.repeat()).extract(), 'mapped:1');
115
-
116
- const opposition = await mapped.reject(new Rejection('bad'));
117
- t.true(opposition instanceof Opposition);
118
- t.is(opposition.extract(), 'oppose:bad');
119
-
120
- t.is((await mapped.repeat()).extract(), 'mapped:1');
121
- t.deepEqual(mappedInputs, [1]);
122
-
123
- const draft = await mapped.reject(new Rejection('worse'));
124
- t.true(draft instanceof Draft);
125
- t.is(draft.extract(), 'mapped:5');
126
- t.deepEqual(mappedInputs, [1, 5]);
127
- } finally {
128
- await dispose(source);
129
- }
130
- });
131
-
132
-
133
- test('Optimization.from requires the first yield to be a draft', async t => {
134
- async function* optimize(): Optimization.Generator<string, string, string> {
135
- yield new Opposition('not-a-draft');
136
- throw new Error('unreachable');
137
- }
138
-
139
- const optimization = Optimization.from(optimize());
140
-
141
- try {
142
- await t.throwsAsync(optimization.repeat(), { instanceOf: Error });
143
- } finally {
144
- await dispose(optimization);
145
- }
146
- });
147
-
148
-
149
- test('Evaluation.from requires the first yield to be void', async t => {
150
- async function* evaluate(): Evaluation.Generator<string, string, string> {
151
- yield new Rejection('not-void');
152
- throw new Error('unreachable');
153
- }
154
-
155
- await t.throwsAsync(Evaluation.from(evaluate()), { instanceOf: Error });
156
- });
157
-
158
-
159
- test('multiple evaluators restart from the first evaluator after a later rejection', async t => {
160
- const events: string[] = [];
161
-
162
- async function* optimize(): Optimization.Generator<number, string, string> {
163
- let rejection = yield new Draft(1);
164
- let draft = 2;
165
- for (;;) {
166
- events.push(`optimizer.reject:${rejection.extract()}`);
167
- rejection = yield new Draft(draft++);
168
- }
169
- }
170
-
171
- async function* evaluateNumber(): Evaluation.Generator<number, string, string> {
172
- let input = yield;
173
- for (;;) {
174
- if (input instanceof Draft) {} else throw new Error();
175
- events.push(`number.submit:${input.extract()}`);
176
- input = yield;
177
- }
178
- }
179
-
180
- async function* evaluateString(): Evaluation.Generator<string, string, string> {
181
- let input = yield;
182
- if (input instanceof Draft) {} else throw new Error();
183
- events.push(`string.submit:${input.extract()}`);
184
- input = yield new Rejection('string-reject');
185
- for (;;) {
186
- if (input instanceof Draft) {} else throw new Error();
187
- events.push(`string.submit:${input.extract()}`);
188
- input = yield;
189
- }
190
- }
191
-
192
- const optimization = Optimization.from(optimize());
193
- const numberEvaluation = await Evaluation.from(evaluateNumber());
194
- const stringEvaluation = await Evaluation.from(evaluateString());
195
-
196
- try {
197
- let finalDraft: Draft<string> | undefined;
198
-
199
- for (;;) {
200
- try {
201
- const numberView = optimization;
202
- await opteva(numberView, numberEvaluation);
203
- const stringView: Optimization.View<string, string, string> = Optimization.map(numberView, async draft => {
204
- events.push(`map:${draft}`);
205
- return `value:${draft}`;
206
- });
207
- await opteva(stringView, stringEvaluation);
208
- finalDraft = await stringView.repeat();
209
- break;
210
- } catch (e) {
211
- if (e instanceof Rejection) {} else throw e;
212
- }
213
- }
214
-
215
- t.is(finalDraft?.extract(), 'value:2');
216
- t.deepEqual(events, [
217
- 'number.submit:1',
218
- 'map:1',
219
- 'string.submit:value:1',
220
- 'optimizer.reject:string-reject',
221
- 'map:2',
222
- 'number.submit:2',
223
- 'map:2',
224
- 'string.submit:value:2',
225
- ]);
226
- } finally {
227
- await dispose(stringEvaluation, numberEvaluation, optimization);
228
- }
229
- });
@@ -1,29 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "module": "preserve",
5
- "moduleDetection": "force",
6
- "lib": ["esnext"],
7
- "sourceMap": true,
8
- "strict": true,
9
- "experimentalDecorators": true,
10
- "noUncheckedIndexedAccess": true,
11
- "noUncheckedSideEffectImports": true,
12
- "allowSyntheticDefaultImports": true,
13
- "rewriteRelativeImportExtensions": true,
14
- "allowJs": true,
15
- "noFallthroughCasesInSwitch": true,
16
- "noImplicitOverride": true,
17
- "resolveJsonModule": true,
18
- "verbatimModuleSyntax": true,
19
- "checkJs": true,
20
- "composite": true,
21
- "skipLibCheck": true
22
- },
23
- "include": [
24
- "./**/*"
25
- ],
26
- "references": [
27
- { "path": "../src/tsconfig.json" }
28
- ]
29
- }