@cotal-ai/lang 0.24.0 → 0.26.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 (75) hide show
  1. package/README.md +11 -0
  2. package/dist/engine/bridge.d.ts +71 -0
  3. package/dist/engine/bridge.d.ts.map +1 -0
  4. package/dist/engine/bridge.js +277 -0
  5. package/dist/engine/bridge.js.map +1 -0
  6. package/dist/engine/ctx.d.ts +140 -0
  7. package/dist/engine/ctx.d.ts.map +1 -0
  8. package/dist/engine/ctx.js +834 -0
  9. package/dist/engine/ctx.js.map +1 -0
  10. package/dist/engine/frame.d.ts +69 -0
  11. package/dist/engine/frame.d.ts.map +1 -0
  12. package/dist/engine/frame.js +105 -0
  13. package/dist/engine/frame.js.map +1 -0
  14. package/dist/engine/host.d.ts +77 -0
  15. package/dist/engine/host.d.ts.map +1 -0
  16. package/dist/engine/host.js +134 -0
  17. package/dist/engine/host.js.map +1 -0
  18. package/dist/engine/worker-entry.d.ts +26 -0
  19. package/dist/engine/worker-entry.d.ts.map +1 -0
  20. package/dist/engine/worker-entry.js +175 -0
  21. package/dist/engine/worker-entry.js.map +1 -0
  22. package/dist/engine/worker.d.ts +156 -0
  23. package/dist/engine/worker.d.ts.map +1 -0
  24. package/dist/engine/worker.js +123 -0
  25. package/dist/engine/worker.js.map +1 -0
  26. package/dist/errors.d.ts +44 -0
  27. package/dist/errors.d.ts.map +1 -1
  28. package/dist/errors.js +97 -0
  29. package/dist/errors.js.map +1 -1
  30. package/dist/index.d.ts +10 -1
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +10 -1
  33. package/dist/index.js.map +1 -1
  34. package/dist/interpret.d.ts +7 -38
  35. package/dist/interpret.d.ts.map +1 -1
  36. package/dist/interpret.js +45 -1003
  37. package/dist/interpret.js.map +1 -1
  38. package/dist/journal.d.ts.map +1 -1
  39. package/dist/journal.js +75 -1
  40. package/dist/journal.js.map +1 -1
  41. package/dist/library.d.ts.map +1 -1
  42. package/dist/library.js +13 -1
  43. package/dist/library.js.map +1 -1
  44. package/dist/perform.d.ts +138 -0
  45. package/dist/perform.d.ts.map +1 -0
  46. package/dist/perform.js +1052 -0
  47. package/dist/perform.js.map +1 -0
  48. package/dist/pins.d.ts +28 -8
  49. package/dist/pins.d.ts.map +1 -1
  50. package/dist/pins.js +31 -11
  51. package/dist/pins.js.map +1 -1
  52. package/dist/sim.d.ts +15 -1
  53. package/dist/sim.d.ts.map +1 -1
  54. package/dist/sim.js.map +1 -1
  55. package/dist/transform/emit.d.ts +23 -0
  56. package/dist/transform/emit.d.ts.map +1 -0
  57. package/dist/transform/emit.js +934 -0
  58. package/dist/transform/emit.js.map +1 -0
  59. package/dist/transform/index.d.ts +34 -0
  60. package/dist/transform/index.d.ts.map +1 -0
  61. package/dist/transform/index.js +31 -0
  62. package/dist/transform/index.js.map +1 -0
  63. package/dist/transform/scope.d.ts +58 -0
  64. package/dist/transform/scope.d.ts.map +1 -0
  65. package/dist/transform/scope.js +500 -0
  66. package/dist/transform/scope.js.map +1 -0
  67. package/dist/transform/seam.d.ts +78 -0
  68. package/dist/transform/seam.d.ts.map +1 -0
  69. package/dist/transform/seam.js +111 -0
  70. package/dist/transform/seam.js.map +1 -0
  71. package/dist/values.d.ts +15 -0
  72. package/dist/values.d.ts.map +1 -1
  73. package/dist/values.js +79 -0
  74. package/dist/values.js.map +1 -1
  75. package/package.json +9 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"perform.js","sourceRoot":"","sources":["../src/perform.ts"],"names":[],"mappings":"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"}
package/dist/pins.d.ts CHANGED
@@ -11,18 +11,38 @@
11
11
  * interpreter is the thing that may have changed.
12
12
  */
13
13
  /**
14
- * The interpreter's own semantic version, bumped when a release changes what a program MEANS: the
15
- * PRNG, a builtin, numeric behaviour, or walker scheduling.
14
+ * The language version is a property of the ENGINE that runs a program, not of this module.
15
+ *
16
+ * There are two engines. The tree-walker in `interpret.ts` IS language version 1 and stays so
17
+ * forever: it is the replay engine for every run recorded under 1, and a v1 record has nowhere else
18
+ * to go. The engine in `engine/` is version 2 - a different language, not a faster one (`log` is
19
+ * data there and refuses code, and the step unit is a transformed-site hit rather than a walker
20
+ * dispatch), which is exactly what a version bump is for.
21
+ *
22
+ * SO THE VERSION IS PASSED IN rather than read from here. Bumping a single shared constant was
23
+ * MEASURED and is not available: the walker would stamp 2 and compare 1, and every walker
24
+ * fresh-run-then-resume round trip fails - 7 of 18 suites red, the differential gate among them.
25
+ * Leaving the constant at 1 while the engine speaks 2 fails the other way: 2 suites red on the
26
+ * checked-in v1 records. Each engine stamping AND comparing its own version breaks neither.
16
27
  *
17
28
  * Deliberately NOT the package version. `@cotal-ai/lang` versions in lockstep with every other
18
29
  * package in the repo, so a release of an unrelated package would otherwise invalidate every open
19
30
  * run in the space — a loud failure with no cause behind it, which is worse than no check at all.
20
31
  *
21
- * It is here because source and seed are not sufficient across an upgrade: unchanged source can
22
- * take a different branch BEFORE the first effect, where there is no input hash to compare against
23
- * and nothing to diverge on.
32
+ * It is pinned at all because source and seed are not sufficient across an upgrade: unchanged
33
+ * source can take a different branch BEFORE the first effect, where there is no input hash to
34
+ * compare against and nothing to diverge on.
35
+ */
36
+ export declare const WALKER_LANGUAGE_VERSION = "1";
37
+ /** The engine's language. See {@link WALKER_LANGUAGE_VERSION} for why these are two constants. */
38
+ export declare const ENGINE_LANGUAGE_VERSION = "2";
39
+ /**
40
+ * THE CURRENT LANGUAGE: what a FRESH run gets, and the only thing a caller choosing no engine can
41
+ * mean. It is the dispatcher's constant - it decides which engine a run with no recorded version is
42
+ * routed to - and it is deliberately defined AS the engine's version rather than repeating "2", so
43
+ * the two can never drift into disagreeing about what "current" is.
24
44
  */
25
- export declare const LANGUAGE_VERSION = "1";
45
+ export declare const LANGUAGE_VERSION = "2";
26
46
  export declare const PIN_DEFAULTS: Readonly<{
27
47
  yieldEvery: 1024;
28
48
  stepBudget: 1000000;
@@ -69,7 +89,7 @@ export declare class PinMismatch extends Error {
69
89
  * Resolve the pin set for a FRESH run. `now` is the host clock, read exactly once: the logical
70
90
  * epoch is a recorded fact from here on, so a second read could not be the same run's epoch.
71
91
  */
72
- export declare function resolvePins(options: PinnableOptions, now: number): RunPins;
92
+ export declare function resolvePins(options: PinnableOptions, now: number, languageVersion: string): RunPins;
73
93
  /**
74
94
  * Bind a RESUME to the recorded pins, refusing any caller value that disagrees.
75
95
  *
@@ -78,5 +98,5 @@ export declare function resolvePins(options: PinnableOptions, now: number): RunP
78
98
  * it would silently make this a different run against the same journal, which is the same failure
79
99
  * an edited sleep duration causes and gets the same fail-loud treatment.
80
100
  */
81
- export declare function bindPins(recorded: RunPins, options: PinnableOptions): RunPins;
101
+ export declare function bindPins(recorded: RunPins, options: PinnableOptions, languageVersion: string): RunPins;
82
102
  //# sourceMappingURL=pins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pins.d.ts","sourceRoot":"","sources":["../src/pins.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC,eAAO,MAAM,YAAY;;;;EAIvB,CAAC;AAEH,8FAA8F;AAC9F,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,+FAA+F;AAC/F,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,kGAAkG;AAClG,qBAAa,WAAY,SAAQ,KAAK;IAElC,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;gBAHzB,IAAI,EAAE,OAAO,GAAG,OAAO,EACvB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,QAAQ,EAAE,MAAM,GAAG,MAAM,EAClC,OAAO,EAAE,MAAM;CAKlB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAS1E;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CA6B7E"}
1
+ {"version":3,"file":"pins.d.ts","sourceRoot":"","sources":["../src/pins.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C,kGAAkG;AAClG,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,MAA0B,CAAC;AAExD,eAAO,MAAM,YAAY;;;;EAIvB,CAAC;AAEH,8FAA8F;AAC9F,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,+FAA+F;AAC/F,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,kGAAkG;AAClG,qBAAa,WAAY,SAAQ,KAAK;IAElC,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;gBAHzB,IAAI,EAAE,OAAO,GAAG,OAAO,EACvB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,QAAQ,EAAE,MAAM,GAAG,MAAM,EAClC,OAAO,EAAE,MAAM;CAKlB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CASnG;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CA6BtG"}
package/dist/pins.js CHANGED
@@ -12,18 +12,38 @@
12
12
  */
13
13
  import { CATALOG } from "./errors.js";
14
14
  /**
15
- * The interpreter's own semantic version, bumped when a release changes what a program MEANS: the
16
- * PRNG, a builtin, numeric behaviour, or walker scheduling.
15
+ * The language version is a property of the ENGINE that runs a program, not of this module.
16
+ *
17
+ * There are two engines. The tree-walker in `interpret.ts` IS language version 1 and stays so
18
+ * forever: it is the replay engine for every run recorded under 1, and a v1 record has nowhere else
19
+ * to go. The engine in `engine/` is version 2 - a different language, not a faster one (`log` is
20
+ * data there and refuses code, and the step unit is a transformed-site hit rather than a walker
21
+ * dispatch), which is exactly what a version bump is for.
22
+ *
23
+ * SO THE VERSION IS PASSED IN rather than read from here. Bumping a single shared constant was
24
+ * MEASURED and is not available: the walker would stamp 2 and compare 1, and every walker
25
+ * fresh-run-then-resume round trip fails - 7 of 18 suites red, the differential gate among them.
26
+ * Leaving the constant at 1 while the engine speaks 2 fails the other way: 2 suites red on the
27
+ * checked-in v1 records. Each engine stamping AND comparing its own version breaks neither.
17
28
  *
18
29
  * Deliberately NOT the package version. `@cotal-ai/lang` versions in lockstep with every other
19
30
  * package in the repo, so a release of an unrelated package would otherwise invalidate every open
20
31
  * run in the space — a loud failure with no cause behind it, which is worse than no check at all.
21
32
  *
22
- * It is here because source and seed are not sufficient across an upgrade: unchanged source can
23
- * take a different branch BEFORE the first effect, where there is no input hash to compare against
24
- * and nothing to diverge on.
33
+ * It is pinned at all because source and seed are not sufficient across an upgrade: unchanged
34
+ * source can take a different branch BEFORE the first effect, where there is no input hash to
35
+ * compare against and nothing to diverge on.
36
+ */
37
+ export const WALKER_LANGUAGE_VERSION = "1";
38
+ /** The engine's language. See {@link WALKER_LANGUAGE_VERSION} for why these are two constants. */
39
+ export const ENGINE_LANGUAGE_VERSION = "2";
40
+ /**
41
+ * THE CURRENT LANGUAGE: what a FRESH run gets, and the only thing a caller choosing no engine can
42
+ * mean. It is the dispatcher's constant - it decides which engine a run with no recorded version is
43
+ * routed to - and it is deliberately defined AS the engine's version rather than repeating "2", so
44
+ * the two can never drift into disagreeing about what "current" is.
25
45
  */
26
- export const LANGUAGE_VERSION = "1";
46
+ export const LANGUAGE_VERSION = ENGINE_LANGUAGE_VERSION;
27
47
  export const PIN_DEFAULTS = Object.freeze({
28
48
  yieldEvery: 1_024,
29
49
  stepBudget: 1_000_000,
@@ -48,14 +68,14 @@ export class PinMismatch extends Error {
48
68
  * Resolve the pin set for a FRESH run. `now` is the host clock, read exactly once: the logical
49
69
  * epoch is a recorded fact from here on, so a second read could not be the same run's epoch.
50
70
  */
51
- export function resolvePins(options, now) {
71
+ export function resolvePins(options, now, languageVersion) {
52
72
  return Object.freeze({
53
73
  seed: options.seed ?? options.runId,
54
74
  startedAt: options.startedAt ?? now,
55
75
  yieldEvery: options.yieldEvery ?? PIN_DEFAULTS.yieldEvery,
56
76
  stepBudget: options.stepBudget ?? PIN_DEFAULTS.stepBudget,
57
77
  effectCeiling: options.effectCeiling ?? PIN_DEFAULTS.effectCeiling,
58
- languageVersion: LANGUAGE_VERSION,
78
+ languageVersion,
59
79
  });
60
80
  }
61
81
  /**
@@ -66,9 +86,9 @@ export function resolvePins(options, now) {
66
86
  * it would silently make this a different run against the same journal, which is the same failure
67
87
  * an edited sleep duration causes and gets the same fail-loud treatment.
68
88
  */
69
- export function bindPins(recorded, options) {
70
- if (recorded.languageVersion !== LANGUAGE_VERSION) {
71
- throw new PinMismatch("L5008", "languageVersion", recorded.languageVersion, LANGUAGE_VERSION, `This run started under language version ${recorded.languageVersion} and this interpreter is version ${LANGUAGE_VERSION}. Source and seed do not pin behaviour across a semantics change: unchanged source can take a different branch before the first effect, where there is no input hash to diverge on.\n\nOptions\n resume on the recorded version\n fork(run, <step>) start a new run on this version, keeping the prefix`);
89
+ export function bindPins(recorded, options, languageVersion) {
90
+ if (recorded.languageVersion !== languageVersion) {
91
+ throw new PinMismatch("L5008", "languageVersion", recorded.languageVersion, languageVersion, `This run started under language version ${recorded.languageVersion} and this engine is version ${languageVersion}. Source and seed do not pin behaviour across a semantics change: unchanged source can take a different branch before the first effect, where there is no input hash to diverge on.\n\nOptions\n resume on the recorded version\n fork(run, <step>) start a new run on this version, keeping the prefix`);
72
92
  }
73
93
  const checks = [
74
94
  ["seed", options.seed, recorded.seed],
package/dist/pins.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pins.js","sourceRoot":"","sources":["../src/pins.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAEpC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IACxC,UAAU,EAAE,KAAK;IACjB,UAAU,EAAE,SAAS;IACrB,aAAa,EAAE,MAAM;CACtB,CAAC,CAAC;AAiCH,kGAAkG;AAClG,MAAM,OAAO,WAAY,SAAQ,KAAK;IAEzB;IACA;IACA;IACA;IAJX,YACW,IAAuB,EACvB,GAAW,EACX,QAAyB,EACzB,QAAyB,EAClC,OAAe;QAEf,KAAK,CAAC,GAAG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC;QANvC,SAAI,GAAJ,IAAI,CAAmB;QACvB,QAAG,GAAH,GAAG,CAAQ;QACX,aAAQ,GAAR,QAAQ,CAAiB;QACzB,aAAQ,GAAR,QAAQ,CAAiB;QAIlC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,OAAwB,EAAE,GAAW;IAC/D,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK;QACnC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,GAAG;QACnC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU;QACzD,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU;QACzD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY,CAAC,aAAa;QAClE,eAAe,EAAE,gBAAgB;KAClC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,QAAiB,EAAE,OAAwB;IAClE,IAAI,QAAQ,CAAC,eAAe,KAAK,gBAAgB,EAAE,CAAC;QAClD,MAAM,IAAI,WAAW,CACnB,OAAO,EACP,iBAAiB,EACjB,QAAQ,CAAC,eAAe,EACxB,gBAAgB,EAChB,2CAA2C,QAAQ,CAAC,eAAe,oCAAoC,gBAAgB,6SAA6S,CACra,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAsF;QAChG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;QACrC,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC;QACpD,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;QACvD,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;QACvD,CAAC,eAAe,EAAE,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC;KACjE,CAAC;IACF,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;QAC5C,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;YACjD,MAAM,IAAI,WAAW,CACnB,OAAO,EACP,GAAG,EACH,KAAK,EACL,QAAQ,EACR,yBAAyB,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,4BAA4B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,6NAA6N,GAAG,EAAE,CAC5U,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"pins.js","sourceRoot":"","sources":["../src/pins.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAE3C,kGAAkG;AAClG,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAE3C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,uBAAuB,CAAC;AAExD,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IACxC,UAAU,EAAE,KAAK;IACjB,UAAU,EAAE,SAAS;IACrB,aAAa,EAAE,MAAM;CACtB,CAAC,CAAC;AAiCH,kGAAkG;AAClG,MAAM,OAAO,WAAY,SAAQ,KAAK;IAEzB;IACA;IACA;IACA;IAJX,YACW,IAAuB,EACvB,GAAW,EACX,QAAyB,EACzB,QAAyB,EAClC,OAAe;QAEf,KAAK,CAAC,GAAG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC;QANvC,SAAI,GAAJ,IAAI,CAAmB;QACvB,QAAG,GAAH,GAAG,CAAQ;QACX,aAAQ,GAAR,QAAQ,CAAiB;QACzB,aAAQ,GAAR,QAAQ,CAAiB;QAIlC,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,OAAwB,EAAE,GAAW,EAAE,eAAuB;IACxF,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK;QACnC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,GAAG;QACnC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU;QACzD,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,YAAY,CAAC,UAAU;QACzD,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,YAAY,CAAC,aAAa;QAClE,eAAe;KAChB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,QAAiB,EAAE,OAAwB,EAAE,eAAuB;IAC3F,IAAI,QAAQ,CAAC,eAAe,KAAK,eAAe,EAAE,CAAC;QACjD,MAAM,IAAI,WAAW,CACnB,OAAO,EACP,iBAAiB,EACjB,QAAQ,CAAC,eAAe,EACxB,eAAe,EACf,2CAA2C,QAAQ,CAAC,eAAe,+BAA+B,eAAe,6SAA6S,CAC/Z,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAsF;QAChG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;QACrC,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC;QACpD,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;QACvD,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;QACvD,CAAC,eAAe,EAAE,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC;KACjE,CAAC;IACF,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;QAC5C,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;YACjD,MAAM,IAAI,WAAW,CACnB,OAAO,EACP,GAAG,EACH,KAAK,EACL,QAAQ,EACR,yBAAyB,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,4BAA4B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,6NAA6N,GAAG,EAAE,CAC5U,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
package/dist/sim.d.ts CHANGED
@@ -23,7 +23,21 @@ export interface SimFault {
23
23
  export interface SimScript {
24
24
  readonly turns?: Readonly<Record<string, Scripted<TurnResultValue>>>;
25
25
  readonly asks?: Readonly<Record<string, Scripted<unknown>>>;
26
- readonly checkpoints?: Readonly<Record<string, Scripted<CheckpointResultValue>>>;
26
+ /**
27
+ * ⚠️ `at` IS NOT SCRIPTABLE. Both of `checkpoint()`'s return paths stamp it from virtual time
28
+ * and neither one reads a scripted value, so anything written here was required by the type and
29
+ * then silently discarded. Demanding a field the implementation overwrites makes every fixture
30
+ * carry a number that means nothing, and reads to the next author as though it were honoured.
31
+ *
32
+ * The refusal is a rule, not a list: it fires exactly where `SimScript` is already the expected
33
+ * type of the literal being written, and nowhere else. So a literal at a call taking a
34
+ * `SimScript`, under an annotation on a `const` or a later-assigned `let`, in a parameter declared
35
+ * `SimScript`, or under `satisfies SimScript` is now an error. A literal typed before it meets this
36
+ * type, or never measured against it, escapes: inferred then passed by name, put through an `as`
37
+ * cast, or handed to a parameter declared `unknown`. Those still compile with `at` present and
38
+ * still have it discarded. This closes the idioms a new author reaches for; not the loophole.
39
+ */
40
+ readonly checkpoints?: Readonly<Record<string, Scripted<Omit<CheckpointResultValue, "at">>>>;
27
41
  /** Keyed by the `wait` step's name. A scripted `null` is a timeout, which is a choice. */
28
42
  readonly events?: Readonly<Record<string, Scripted<unknown>>>;
29
43
  readonly clock?: {
package/dist/sim.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sim.d.ts","sourceRoot":"","sources":["../src/sim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim.d.ts","sourceRoot":"","sources":["../src/sim.ts"],"names":[],"mappings":"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"}
package/dist/sim.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sim.js","sourceRoot":"","sources":["../src/sim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim.js","sourceRoot":"","sources":["../src/sim.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * The emitter: one rule per admitted node type, and every rule that carries a law routes it through
3
+ * the seam rather than restating it.
4
+ *
5
+ * The walk order here is the walker's walk order, deliberately and line by line: a journal's step
6
+ * keys are occurrence counters allocated at the call, so two engines agree on a journal only if they
7
+ * agree on the ORDER effects are reached in. Where this file departs from the shape of
8
+ * `interpret.ts` it is because native JavaScript already has the meaning (block scoping, `switch`
9
+ * selection, `try`/`finally` completions) and re-deriving it would be a second implementation to
10
+ * keep in step.
11
+ */
12
+ import { type AnyNode } from "./scope.js";
13
+ import { type Names } from "./seam.js";
14
+ export interface Emission {
15
+ readonly module: string;
16
+ /** How many times each seam member is reached. A check reports its count, not merely that it ran. */
17
+ readonly sites: Readonly<Record<string, number>>;
18
+ /** Which SURFACED-but-unruled members this emission needed. Empty is the landing condition. */
19
+ readonly proposed: readonly string[];
20
+ readonly names: Names;
21
+ }
22
+ export declare function emit(program: AnyNode): Emission;
23
+ //# sourceMappingURL=emit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../src/transform/emit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAA0B,KAAK,OAAO,EAAgB,MAAM,YAAY,CAAC;AAEhF,OAAO,EAAa,KAAK,KAAK,EAAE,MAAM,WAAW,CAAC;AASlD,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qGAAqG;IACrG,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjD,+FAA+F;IAC/F,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB;AAg7BD,wBAAgB,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ,CAO/C"}