@vincemakes/kiso-evals 0.1.0 → 0.1.2

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 (2) hide show
  1. package/dist/faux.js +11 -6
  2. package/package.json +4 -4
package/dist/faux.js CHANGED
@@ -22,10 +22,14 @@
22
22
  */
23
23
  export function createFauxProvider(script) {
24
24
  // The script is consumed turn by turn across stream() calls, mirroring a
25
- // real model answering each new request with the next output. A real
26
- // provider re-streams the same input on retry; the faux provider instead
27
- // advances acceptable because fixtures never combine retries with faux
28
- // (retry tests use their own throwing adapter).
25
+ // real model answering each new request with the next output. The counter
26
+ // is PER INSTANCE (process-local): a fixture that wants a fresh-process
27
+ // resume to continue where the dead process left off must SKIP the
28
+ // already-consumed turns itself (the CLI does the session log is the
29
+ // durable position). A request-derived index cannot replace the counter:
30
+ // two structurally identical requests (a resume continuation and the next
31
+ // run's first call) must receive different script turns, and only the
32
+ // instance counter distinguishes them.
29
33
  let nextTurn = 0;
30
34
  return {
31
35
  stream(_options) {
@@ -36,8 +40,9 @@ export function createFauxProvider(script) {
36
40
  // kernel-owned events on purpose (the trust-gate tests need
37
41
  // them); the LOOP is the trust boundary, not the faux adapter.
38
42
  async *[Symbol.asyncIterator]() {
39
- // An exhausted script is an empty stream: the loop sees
40
- // no tool calls and converges on `completed`.
43
+ // An exhausted script is an empty stream a protocol
44
+ // error to the loop (Area 6: no stop), loudly, never a
45
+ // fake `completed`.
41
46
  let seq = 0;
42
47
  for (const ev of turn?.events ?? []) {
43
48
  yield { ...ev, seq: seq++ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vincemakes/kiso-evals",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "kiso evals \u2014 the faux provider, the incident fixture library, and the cross-provider contract tests.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -21,12 +21,12 @@
21
21
  "test": "vitest run"
22
22
  },
23
23
  "dependencies": {
24
- "@vincemakes/kiso-core": "0.1.0"
24
+ "@vincemakes/kiso-core": "0.1.2"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@anthropic-ai/sdk": "^0.115.0",
28
- "@vincemakes/kiso-provider-anthropic": "0.1.0",
29
- "@vincemakes/kiso-provider-openai": "0.1.0",
28
+ "@vincemakes/kiso-provider-anthropic": "0.1.2",
29
+ "@vincemakes/kiso-provider-openai": "0.1.2",
30
30
  "@types/node": "^26.1.2",
31
31
  "openai": "^7.3.0",
32
32
  "typescript": "^5.7.2",