@energy8platform/platform-core 0.33.1 → 0.35.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.
- package/dist/index.d.ts +34 -0
- package/dist/simulation.cjs.js +19 -2
- package/dist/simulation.cjs.js.map +1 -1
- package/dist/simulation.d.ts +39 -0
- package/dist/simulation.esm.js +19 -2
- package/dist/simulation.esm.js.map +1 -1
- package/package.json +1 -1
- package/scripts/install-e8.mjs +1 -1
- package/src/simulation/NativeSimulationRunner.ts +57 -2
package/dist/index.d.ts
CHANGED
|
@@ -829,6 +829,29 @@ interface NativeSimulationConfig {
|
|
|
829
829
|
* analysis of the full round log.
|
|
830
830
|
*/
|
|
831
831
|
dump?: string;
|
|
832
|
+
/**
|
|
833
|
+
* Path for the light per-round CSV (`round,payoutCents` per line, no JSON at
|
|
834
|
+
* all). This is the first half of the two-pass book build: the pipeline
|
|
835
|
+
* curates off these numbers, then re-runs with `onlyRounds` to serialize only
|
|
836
|
+
* the rounds that survived. `.gz` compresses as it writes, same as `dump`.
|
|
837
|
+
*/
|
|
838
|
+
dumpCsv?: string;
|
|
839
|
+
/**
|
|
840
|
+
* Path to a file of round indices (one per line) limiting which rounds `dump`
|
|
841
|
+
* serializes. Every round is still simulated, so the RNG stream — and each
|
|
842
|
+
* kept round's content — is identical to a full run.
|
|
843
|
+
*/
|
|
844
|
+
onlyRounds?: string;
|
|
845
|
+
/**
|
|
846
|
+
* Book map (`round,id,payoutCents` per line) + destination. With both set the
|
|
847
|
+
* engine writes the FINAL Stake books itself — `{id,payoutMultiplier,events,criteria}`,
|
|
848
|
+
* zstd-compressed when the path ends in `.zst` — instead of a round dump the
|
|
849
|
+
* pipeline would have to parse and re-serialize.
|
|
850
|
+
*/
|
|
851
|
+
booksMap?: string;
|
|
852
|
+
booksOut?: string;
|
|
853
|
+
/** Max-win cap in cents; drives `criteria: "wincap"`. */
|
|
854
|
+
booksCap?: number;
|
|
832
855
|
/** Progress callback */
|
|
833
856
|
onProgress?: (completed: number, total: number) => void;
|
|
834
857
|
}
|
|
@@ -868,6 +891,17 @@ interface NativeSimulationResult extends SimulationResult {
|
|
|
868
891
|
workerSeeds?: string[];
|
|
869
892
|
/** Echo of replay params when the run was in replay mode. */
|
|
870
893
|
replay?: NativeReplayParams;
|
|
894
|
+
/** Set when the engine wrote the final Stake books itself (`booksMap`/`booksOut`). */
|
|
895
|
+
books?: {
|
|
896
|
+
/** Book lines written. */
|
|
897
|
+
written: number;
|
|
898
|
+
/** Largest serialized `events` field, in bytes. */
|
|
899
|
+
maxEventsBytes: number;
|
|
900
|
+
/** Book id holding it (-1 when no books). */
|
|
901
|
+
maxEventsBookId: number;
|
|
902
|
+
/** Books over Stake's 1 MiB `events` limit. */
|
|
903
|
+
overEventsLimit: number;
|
|
904
|
+
};
|
|
871
905
|
/** Round-win standard deviation (currency units). */
|
|
872
906
|
stddev?: number;
|
|
873
907
|
/** Coefficient of variation (stddev / mean round win). */
|
package/dist/simulation.cjs.js
CHANGED
|
@@ -26,6 +26,16 @@ function buildNativeArgs(a) {
|
|
|
26
26
|
args.push('-seed', a.seed);
|
|
27
27
|
if (a.dump)
|
|
28
28
|
args.push('-dump', a.dump);
|
|
29
|
+
if (a.dumpCsv)
|
|
30
|
+
args.push('-dump-csv', a.dumpCsv);
|
|
31
|
+
if (a.onlyRounds)
|
|
32
|
+
args.push('-only-rounds', a.onlyRounds);
|
|
33
|
+
if (a.booksMap)
|
|
34
|
+
args.push('-books-map', a.booksMap);
|
|
35
|
+
if (a.booksOut)
|
|
36
|
+
args.push('-books-out', a.booksOut);
|
|
37
|
+
if (a.booksCap !== undefined)
|
|
38
|
+
args.push('-books-cap', String(a.booksCap));
|
|
29
39
|
if (a.replay) {
|
|
30
40
|
args.push('-replay-server-seed', a.replay.serverSeed, '-replay-client-seed', a.replay.clientSeed, '-replay-nonce-start', String(a.replay.nonceStart));
|
|
31
41
|
}
|
|
@@ -38,7 +48,7 @@ class NativeSimulationRunner {
|
|
|
38
48
|
this.config = config;
|
|
39
49
|
}
|
|
40
50
|
async run() {
|
|
41
|
-
const { binaryPath, script, scriptExt, argsPrefix, gameDefinition, iterations, bet, action, params, seed, rng, replay, dump } = this.config;
|
|
51
|
+
const { binaryPath, script, scriptExt, argsPrefix, gameDefinition, iterations, bet, action, params, seed, rng, replay, dump, dumpCsv, onlyRounds, booksMap, booksOut, booksCap } = this.config;
|
|
42
52
|
if (replay && rng && rng !== 'provably-fair') {
|
|
43
53
|
throw new Error(`Replay mode requires rng="provably-fair" (got rng="${rng}")`);
|
|
44
54
|
}
|
|
@@ -53,7 +63,7 @@ class NativeSimulationRunner {
|
|
|
53
63
|
promises.writeFile(configPath, JSON.stringify({ ...gameDefinition, script_path: scriptPath }), 'utf-8'),
|
|
54
64
|
]);
|
|
55
65
|
// Build CLI args
|
|
56
|
-
const args = buildNativeArgs({ configPath, iterations, bet, action, params, rng, seed, dump, replay });
|
|
66
|
+
const args = buildNativeArgs({ configPath, iterations, bet, action, params, rng, seed, dump, dumpCsv, onlyRounds, booksMap, booksOut, booksCap, replay });
|
|
57
67
|
// Execute binary
|
|
58
68
|
const output = await this.exec(binaryPath, [...(argsPrefix ?? []), ...args]);
|
|
59
69
|
// Parse JSON output
|
|
@@ -134,6 +144,13 @@ function mapGoResult(json) {
|
|
|
134
144
|
cv: json.cv,
|
|
135
145
|
volatility: json.volatility,
|
|
136
146
|
volatilityLabel: json.volatility_label,
|
|
147
|
+
// Present only when the engine wrote the books itself (`-books-map`).
|
|
148
|
+
books: json.books_written === undefined ? undefined : {
|
|
149
|
+
written: json.books_written,
|
|
150
|
+
maxEventsBytes: json.books_max_events_bytes ?? 0,
|
|
151
|
+
maxEventsBookId: json.books_max_events_book_id ?? -1,
|
|
152
|
+
overEventsLimit: json.books_over_events_limit ?? 0,
|
|
153
|
+
},
|
|
137
154
|
replay: json.replay
|
|
138
155
|
? {
|
|
139
156
|
serverSeed: json.replay.server_seed,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulation.cjs.js","sources":["../src/simulation/NativeSimulationRunner.ts"],"sourcesContent":[null],"names":["randomBytes","tmpdir","join","writeFile","unlink","spawn","dirname","fileURLToPath","execSync","accessSync","fsConstants"],"mappings":";;;;;;;;;;;AAsLA;;;AAGG;AACG,SAAU,eAAe,CAAC,CAAkB,EAAA;AAChD,IAAA,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC;IACrH,IAAI,CAAC,CAAC,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC;AAC5C,IAAA,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,KAAK,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAgB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;AAC/H,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAChD;IACA,IAAI,CAAC,CAAC,GAAG;QAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC;IACnC,IAAI,CAAC,CAAC,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;IACtC,IAAI,CAAC,CAAC,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;AACtC,IAAA,IAAI,CAAC,CAAC,MAAM,EAAE;AACZ,QAAA,IAAI,CAAC,IAAI,CACP,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,EAC1C,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,EAC1C,qBAAqB,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CACnD;IACH;AACA,IAAA,OAAO,IAAI;AACb;AAEA;MAEa,sBAAsB,CAAA;AACzB,IAAA,MAAM;AAEd,IAAA,WAAA,CAAY,MAA8B,EAAA;AACxC,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;IACtB;AAEA,IAAA,MAAM,GAAG,GAAA;AACP,QAAA,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM;QAE3I,IAAI,MAAM,IAAI,GAAG,IAAI,GAAG,KAAK,eAAe,EAAE;AAC5C,YAAA,MAAM,IAAI,KAAK,CAAC,sDAAsD,GAAG,CAAA,EAAA,CAAI,CAAC;QAChF;QAEA,MAAM,EAAE,GAAGA,kBAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;AACzC,QAAA,MAAM,MAAM,GAAGC,SAAM,EAAE;AACvB,QAAA,MAAM,UAAU,GAAGC,SAAI,CAAC,MAAM,EAAE,CAAA,IAAA,EAAO,EAAE,CAAA,CAAA,EAAI,SAAS,IAAI,KAAK,CAAA,CAAE,CAAC;QAClE,MAAM,UAAU,GAAGA,SAAI,CAAC,MAAM,EAAE,CAAA,IAAA,EAAO,EAAE,CAAA,KAAA,CAAO,CAAC;AAEjD,QAAA,IAAI;;YAEF,MAAM,OAAO,CAAC,GAAG,CAAC;AAChB,gBAAAC,kBAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC;AACtC,gBAAAA,kBAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,EAAE,OAAO,CAAC;AAC/F,aAAA,CAAC;;YAGF,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;YAGtG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,UAAU,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;;YAG5E,MAAM,IAAI,GAAuB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;AACnD,YAAA,OAAO,WAAW,CAAC,IAAI,CAAC;QAC1B;gBAAU;;AAER,YAAA,MAAM,OAAO,CAAC,UAAU,CAAC,CAACC,eAAM,CAAC,UAAU,CAAC,EAAEA,eAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACpE;IACF;IAEQ,IAAI,CAAC,MAAc,EAAE,IAAc,EAAA;QACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;YACrC,MAAM,KAAK,GAAGC,mBAAK,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YAExE,IAAI,MAAM,GAAG,EAAE;YACf,IAAI,MAAM,GAAG,EAAE;YAEf,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,KAAI;AACxC,gBAAA,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE;AAC5B,YAAA,CAAC,CAAC;YAEF,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,KAAI;AACxC,gBAAA,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE;AAC5B,YAAA,CAAC,CAAC;YAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,KAAI;gBACxB,MAAM,CAAC,IAAI,KAAK,CAAC,CAAA,qCAAA,EAAwC,GAAG,CAAC,OAAO,CAAA,CAAE,CAAC,CAAC;AAC1E,YAAA,CAAC,CAAC;YAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,KAAI;AACzB,gBAAA,IAAI,IAAI,KAAK,CAAC,EAAE;AACd,oBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,sCAAsC,IAAI,CAAA,EAAA,EAAK,MAAM,CAAC,IAAI,EAAE,CAAA,CAAE,CAAC,CAAC;gBACnF;qBAAO;oBACL,OAAO,CAAC,MAAM,CAAC;gBACjB;AACF,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;IACJ;AACD;AAED;AAEA,SAAS,WAAW,CAAC,IAAwB,EAAA;AAC3C,IAAA,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,SAAS;AACjD,IAAA,MAAM,WAAW,GAAG,SAAS,EAAE,GAAG,IAAI,CAAC;AACvC,IAAA,MAAM,WAAW,GAAG,SAAS,EAAE,SAAS,IAAI,CAAC;AAE7C,IAAA,MAAM,QAAQ,GAAG,IAAI,CAAC;UAClB,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK;YACrD,GAAG;AACH,YAAA;gBACE,QAAQ,EAAE,CAAC,CAAC,SAAS;gBACrB,SAAS,EAAE,CAAC,CAAC,UAAU;gBACvB,QAAQ,EAAE,CAAC,CAAC,SAAS;gBACrB,MAAM,EAAE,CAAC,CAAC,OAAO;gBACjB,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,UAAU,EAAE,CAAC,CAAC,YAAY;gBAC1B,YAAY,EAAE,CAAC,CAAC,aAAa;gBAC7B,MAAM,EAAE,CAAC,CAAC,OAAO;AAClB,aAAA;AACF,SAAA,CAAC;UAEJ,SAAS;IAEb,OAAO;QACL,MAAM,EAAE,IAAI,CAAC,OAAO;AACpB,QAAA,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAChD,QAAQ,EAAE,IAAI,CAAC,SAAS;QACxB,WAAW;AACX,QAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,GAAG,WAAW;QACtC,YAAY,EAAE,IAAI,CAAC,aAAa;QAChC,MAAM,EAAE,IAAI,CAAC,OAAO;QACpB,UAAU,EAAE,IAAI,CAAC,YAAY;QAC7B,cAAc,EAAE,IAAI,CAAC,eAAe;QACpC,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;QACxC,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,WAAW,EAAE,IAAI,CAAC,YAAY;QAC9B,QAAQ;QACR,eAAe,EAAE,IAAI,CAAC,gBAAgB;QACtC,OAAO,EAAE,IAAI,CAAC,QAAQ;QACtB,UAAU,EAAE,IAAI,CAAC,WAAW;QAC5B,WAAW,EAAE,IAAI,CAAC,YAAY;QAC9B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,eAAe,EAAE,IAAI,CAAC,gBAAgB;QACtC,MAAM,EAAE,IAAI,CAAC;AACX,cAAE;AACE,gBAAA,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;AACnC,gBAAA,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;AACnC,gBAAA,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;AACpC;AACH,cAAE,SAAS;AACb,QAAA,IAAI,EAAE;YACJ,YAAY,EAAE,IAAI,CAAC,SAAS;YAC5B,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,WAAW;AACX,YAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,GAAG,WAAW;AACtC,YAAA,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,CAAC;AACzF,SAAA;KACF;AACH;AAEA;AAEA;;;;AAIG;AACG,SAAU,YAAY,CAAC,OAAgB,EAAA;AAC3C,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS;AACrC,IAAA,IAAI,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE;AACpC,QAAA,OAAO,OAAO;IAChB;AAEA,IAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ;AACjC,IAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI;AAC7B,IAAA,MAAM,MAAM,GAAG,QAAQ,KAAK,KAAK,GAAG,OAAO,GAAG,QAAQ;AACtD,IAAA,MAAM,UAAU,GAAG,QAAQ,KAAK,OAAO,GAAG,SAAS,GAAG,QAAQ;AAC9D,IAAA,MAAM,GAAG,GAAG,QAAQ,KAAK,OAAO,GAAG,MAAM,GAAG,EAAE;AAE9C,IAAA,MAAM,KAAK,GAAG,CAAC,CAAA,GAAA,EAAM,UAAU,CAAA,CAAA,EAAI,MAAM,CAAA,EAAG,GAAG,EAAE,EAAE,CAAA,EAAA,EAAK,GAAG,CAAA,CAAE,CAAC;IAE9D,MAAM,UAAU,GAAa,EAAE;AAC/B,IAAA,IAAI,OAAO;AAAE,QAAA,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;;;AAGrC,IAAA,IAAI;AACF,QAAA,MAAM,IAAI,GAAGC,YAAO,CAACC,iBAAa,CAAC,mQAAe,CAAC,CAAC;QACpD,KAAK,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YAChC,MAAM,IAAI,GAAGL,SAAI,CAAC,IAAI,EAAE,EAAE,CAAC;AAC3B,YAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;AAAE,gBAAA,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QACvD;IACF;AAAE,IAAA,MAAM;AACN,QAAA,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;YACpC,KAAK,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;gBAChC,MAAM,IAAI,GAAGA,SAAI,CAAC,SAAS,EAAE,EAAE,CAAC;AAChC,gBAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;AAAE,oBAAA,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACvD;QACF;IACF;AAEA,IAAA,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;AAC5B,QAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,MAAM,SAAS,GAAGA,SAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC;YACxC,IAAI,YAAY,CAAC,SAAS,CAAC;AAAE,gBAAA,OAAO,SAAS;QAC/C;IACF;AAEA,IAAA,IAAI;AACF,QAAA,MAAM,GAAG,GAAG,QAAQ,KAAK,OAAO,GAAG,UAAU,GAAG,UAAU;QAC1D,MAAM,MAAM,GAAGM,sBAAQ,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE;AAC7F,QAAA,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1C;AAAE,IAAA,MAAM;;IAER;AAEA,IAAA,OAAO,IAAI;AACb;AAEA;AACM,SAAU,eAAe,CAAC,MAAA,GAA8B,YAAY,EAAA;AACxE,IAAA,MAAM,GAAG,GAAG,MAAM,EAAE;IACpB,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CACb,4FAA4F;AAC5F,YAAA,6EAA6E,CAC9E;IACH;AACA,IAAA,OAAO,GAAG;AACZ;AAEA,SAAS,YAAY,CAAC,IAAY,EAAA;AAChC,IAAA,IAAI;AACF,QAAAC,aAAU,CAAC,IAAI,EAAEC,YAAW,CAAC,IAAI,CAAC;AAClC,QAAA,OAAO,IAAI;IACb;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,KAAK;IACd;AACF;AAEA;AAEA;AACM,SAAU,kBAAkB,CAAC,MAA8B,EAAA;AAC/D,IAAA,MAAM,KAAK,GAAa;QACtB,EAAE;QACF,4BAA4B;QAC5B,CAAA,MAAA,EAAS,MAAM,CAAC,MAAM,CAAA,CAAE;AACxB,QAAA,CAAA,YAAA,EAAe,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA,CAAE;AACnD,QAAA,CAAA,UAAA,EAAa,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG;KACtD;AAED,IAAA,IAAI,MAAM,CAAC,KAAK,EAAE;AAChB,QAAA,KAAK,CAAC,IAAI,CAAC,CAAA,OAAA,EAAU,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,EAAE,CAAA,eAAA,CAAiB,CAAC;IAClF;AACA,IAAA,IAAI,MAAM,CAAC,WAAW,EAAE;QACtB,KAAK,CAAC,IAAI,CAAC,CAAA,SAAA,EAAY,MAAM,CAAC,WAAW,CAAA,CAAE,CAAC;IAC9C;AACA,IAAA,IAAI,MAAM,CAAC,OAAO,EAAE;QAClB,KAAK,CAAC,IAAI,CAAC,CAAA,KAAA,EAAQ,MAAM,CAAC,OAAO,CAAA,CAAE,CAAC;IACtC;AACA,IAAA,IAAI,MAAM,CAAC,UAAU,EAAE;AACrB,QAAA,KAAK,CAAC,IAAI,CAAC,CAAA,aAAA,EAAgB,MAAM,CAAC,UAAU,CAAA,eAAA,EAAkB,MAAM,CAAC,UAAU,CAAA,cAAA,CAAgB,CAAC;IAClG;AACA,IAAA,IAAI,MAAM,CAAC,MAAM,EAAE;QACjB,KAAK,CAAC,IAAI,CACR,CAAA,oBAAA,EAAuB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAA,aAAA,EAAgB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAA,aAAA,EAAgB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAA,CAAE,CAClI;IACH;AAEA,IAAA,KAAK,CAAC,IAAI,CACR,EAAE,EACF,eAAe,EACf,CAAA,WAAA,EAAc,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,EAC3C,CAAA,eAAA,EAAkB,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,EAClD,CAAA,WAAA,EAAc,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,EAC3C,kBAAkB,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EACnD,CAAA,SAAA,EAAY,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,EACvC,CAAA,kBAAA,EAAqB,MAAM,CAAC,UAAU,CAAA,CAAE,CACzC;AAED,IAAA,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,EAAE;AACnE,QAAA,KAAK,CAAC,IAAI,CACR,EAAE,EACF,oBAAoB,EACpB,CAAA,YAAA,EAAe,MAAM,CAAC,UAAU,QAAQ,MAAM,CAAC,eAAe,CAAA,CAAA,CAAG,EACjE,WAAW,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA,OAAA,EAAU,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAE,CAC3E;IACH;AAEA,IAAA,IAAI,MAAM,CAAC,cAAc,GAAG,CAAC,EAAE;AAC7B,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC;QACvE,KAAK,CAAC,IAAI,CACR,EAAE,EACF,qBAAqB,EACrB,CAAA,iBAAA,EAAoB,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,CAAA,OAAA,EAAU,SAAS,CAAA,OAAA,CAAS,EACtF,CAAA,mBAAA,EAAsB,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAA,CAAE,CACjE;IACH;;AAGA,IAAA,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;AAC9D,QAAA,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,6BAA6B,CAAC;QAC7C,MAAM,MAAM,GAAG,oGAAoG;AACnH,QAAA,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;AAClB,QAAA,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAErC,QAAA,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YAC5D,KAAK,CAAC,IAAI,CACR,CAAA,EAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA,GAAA,EAAM,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,GAAA,CAAK;AAClE,gBAAA,CAAA,EAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,IAAA,CAAM;AAC1C,gBAAA,CAAA,EAAG,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,IAAA,CAAM;AACjD,gBAAA,CAAA,EAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,IAAA,CAAM;AAClD,gBAAA,CAAA,EAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,IAAA,CAAM;AAC5C,gBAAA,CAAA,EAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,CAC1C;QACH;IACF;;AAGA,IAAA,IAAI,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/D,QAAA,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,0BAA0B,CAAC;AAC1C,QAAA,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,eAAe,EAAE;AAC3C,YAAA,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;AAClD,YAAA,KAAK,CAAC,IAAI,CACR,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,EAAA,EAAK,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,GAAG,CAAA,CAAE,CACjH;QACH;IACF;AAEA,IAAA,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACzB;;;;;;"}
|
|
1
|
+
{"version":3,"file":"simulation.cjs.js","sources":["../src/simulation/NativeSimulationRunner.ts"],"sourcesContent":[null],"names":["randomBytes","tmpdir","join","writeFile","unlink","spawn","dirname","fileURLToPath","execSync","accessSync","fsConstants"],"mappings":";;;;;;;;;;;AAiOA;;;AAGG;AACG,SAAU,eAAe,CAAC,CAAkB,EAAA;AAChD,IAAA,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC;IACrH,IAAI,CAAC,CAAC,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC;AAC5C,IAAA,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,KAAK,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAgB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;AAC/H,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAChD;IACA,IAAI,CAAC,CAAC,GAAG;QAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC;IACnC,IAAI,CAAC,CAAC,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;IACtC,IAAI,CAAC,CAAC,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC;IACtC,IAAI,CAAC,CAAC,OAAO;QAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC;IAChD,IAAI,CAAC,CAAC,UAAU;QAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,UAAU,CAAC;IACzD,IAAI,CAAC,CAAC,QAAQ;QAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC;IACnD,IAAI,CAAC,CAAC,QAAQ;QAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC;AACnD,IAAA,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS;AAAE,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AACzE,IAAA,IAAI,CAAC,CAAC,MAAM,EAAE;AACZ,QAAA,IAAI,CAAC,IAAI,CACP,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,EAC1C,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,EAC1C,qBAAqB,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CACnD;IACH;AACA,IAAA,OAAO,IAAI;AACb;AAEA;MAEa,sBAAsB,CAAA;AACzB,IAAA,MAAM;AAEd,IAAA,WAAA,CAAY,MAA8B,EAAA;AACxC,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;IACtB;AAEA,IAAA,MAAM,GAAG,GAAA;AACP,QAAA,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM;QAE9L,IAAI,MAAM,IAAI,GAAG,IAAI,GAAG,KAAK,eAAe,EAAE;AAC5C,YAAA,MAAM,IAAI,KAAK,CAAC,sDAAsD,GAAG,CAAA,EAAA,CAAI,CAAC;QAChF;QAEA,MAAM,EAAE,GAAGA,kBAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;AACzC,QAAA,MAAM,MAAM,GAAGC,SAAM,EAAE;AACvB,QAAA,MAAM,UAAU,GAAGC,SAAI,CAAC,MAAM,EAAE,CAAA,IAAA,EAAO,EAAE,CAAA,CAAA,EAAI,SAAS,IAAI,KAAK,CAAA,CAAE,CAAC;QAClE,MAAM,UAAU,GAAGA,SAAI,CAAC,MAAM,EAAE,CAAA,IAAA,EAAO,EAAE,CAAA,KAAA,CAAO,CAAC;AAEjD,QAAA,IAAI;;YAEF,MAAM,OAAO,CAAC,GAAG,CAAC;AAChB,gBAAAC,kBAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC;AACtC,gBAAAA,kBAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,EAAE,OAAO,CAAC;AAC/F,aAAA,CAAC;;AAGF,YAAA,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;;YAGzJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,UAAU,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;;YAG5E,MAAM,IAAI,GAAuB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;AACnD,YAAA,OAAO,WAAW,CAAC,IAAI,CAAC;QAC1B;gBAAU;;AAER,YAAA,MAAM,OAAO,CAAC,UAAU,CAAC,CAACC,eAAM,CAAC,UAAU,CAAC,EAAEA,eAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACpE;IACF;IAEQ,IAAI,CAAC,MAAc,EAAE,IAAc,EAAA;QACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;YACrC,MAAM,KAAK,GAAGC,mBAAK,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YAExE,IAAI,MAAM,GAAG,EAAE;YACf,IAAI,MAAM,GAAG,EAAE;YAEf,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,KAAI;AACxC,gBAAA,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE;AAC5B,YAAA,CAAC,CAAC;YAEF,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,KAAI;AACxC,gBAAA,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE;AAC5B,YAAA,CAAC,CAAC;YAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,KAAI;gBACxB,MAAM,CAAC,IAAI,KAAK,CAAC,CAAA,qCAAA,EAAwC,GAAG,CAAC,OAAO,CAAA,CAAE,CAAC,CAAC;AAC1E,YAAA,CAAC,CAAC;YAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,KAAI;AACzB,gBAAA,IAAI,IAAI,KAAK,CAAC,EAAE;AACd,oBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,sCAAsC,IAAI,CAAA,EAAA,EAAK,MAAM,CAAC,IAAI,EAAE,CAAA,CAAE,CAAC,CAAC;gBACnF;qBAAO;oBACL,OAAO,CAAC,MAAM,CAAC;gBACjB;AACF,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;IACJ;AACD;AAED;AAEA,SAAS,WAAW,CAAC,IAAwB,EAAA;AAC3C,IAAA,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,SAAS;AACjD,IAAA,MAAM,WAAW,GAAG,SAAS,EAAE,GAAG,IAAI,CAAC;AACvC,IAAA,MAAM,WAAW,GAAG,SAAS,EAAE,SAAS,IAAI,CAAC;AAE7C,IAAA,MAAM,QAAQ,GAAG,IAAI,CAAC;UAClB,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK;YACrD,GAAG;AACH,YAAA;gBACE,QAAQ,EAAE,CAAC,CAAC,SAAS;gBACrB,SAAS,EAAE,CAAC,CAAC,UAAU;gBACvB,QAAQ,EAAE,CAAC,CAAC,SAAS;gBACrB,MAAM,EAAE,CAAC,CAAC,OAAO;gBACjB,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,UAAU,EAAE,CAAC,CAAC,YAAY;gBAC1B,YAAY,EAAE,CAAC,CAAC,aAAa;gBAC7B,MAAM,EAAE,CAAC,CAAC,OAAO;AAClB,aAAA;AACF,SAAA,CAAC;UAEJ,SAAS;IAEb,OAAO;QACL,MAAM,EAAE,IAAI,CAAC,OAAO;AACpB,QAAA,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAChD,QAAQ,EAAE,IAAI,CAAC,SAAS;QACxB,WAAW;AACX,QAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,GAAG,WAAW;QACtC,YAAY,EAAE,IAAI,CAAC,aAAa;QAChC,MAAM,EAAE,IAAI,CAAC,OAAO;QACpB,UAAU,EAAE,IAAI,CAAC,YAAY;QAC7B,cAAc,EAAE,IAAI,CAAC,eAAe;QACpC,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;QACxC,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,WAAW,EAAE,IAAI,CAAC,YAAY;QAC9B,QAAQ;QACR,eAAe,EAAE,IAAI,CAAC,gBAAgB;QACtC,OAAO,EAAE,IAAI,CAAC,QAAQ;QACtB,UAAU,EAAE,IAAI,CAAC,WAAW;QAC5B,WAAW,EAAE,IAAI,CAAC,YAAY;QAC9B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,eAAe,EAAE,IAAI,CAAC,gBAAgB;;AAEtC,QAAA,KAAK,EAAE,IAAI,CAAC,aAAa,KAAK,SAAS,GAAG,SAAS,GAAG;YACpD,OAAO,EAAE,IAAI,CAAC,aAAa;AAC3B,YAAA,cAAc,EAAE,IAAI,CAAC,sBAAsB,IAAI,CAAC;AAChD,YAAA,eAAe,EAAE,IAAI,CAAC,wBAAwB,IAAI,EAAE;AACpD,YAAA,eAAe,EAAE,IAAI,CAAC,uBAAuB,IAAI,CAAC;AACnD,SAAA;QACD,MAAM,EAAE,IAAI,CAAC;AACX,cAAE;AACE,gBAAA,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;AACnC,gBAAA,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;AACnC,gBAAA,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;AACpC;AACH,cAAE,SAAS;AACb,QAAA,IAAI,EAAE;YACJ,YAAY,EAAE,IAAI,CAAC,SAAS;YAC5B,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,WAAW;AACX,YAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,GAAG,WAAW;AACtC,YAAA,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,CAAC;AACzF,SAAA;KACF;AACH;AAEA;AAEA;;;;AAIG;AACG,SAAU,YAAY,CAAC,OAAgB,EAAA;AAC3C,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS;AACrC,IAAA,IAAI,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE;AACpC,QAAA,OAAO,OAAO;IAChB;AAEA,IAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ;AACjC,IAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI;AAC7B,IAAA,MAAM,MAAM,GAAG,QAAQ,KAAK,KAAK,GAAG,OAAO,GAAG,QAAQ;AACtD,IAAA,MAAM,UAAU,GAAG,QAAQ,KAAK,OAAO,GAAG,SAAS,GAAG,QAAQ;AAC9D,IAAA,MAAM,GAAG,GAAG,QAAQ,KAAK,OAAO,GAAG,MAAM,GAAG,EAAE;AAE9C,IAAA,MAAM,KAAK,GAAG,CAAC,CAAA,GAAA,EAAM,UAAU,CAAA,CAAA,EAAI,MAAM,CAAA,EAAG,GAAG,EAAE,EAAE,CAAA,EAAA,EAAK,GAAG,CAAA,CAAE,CAAC;IAE9D,MAAM,UAAU,GAAa,EAAE;AAC/B,IAAA,IAAI,OAAO;AAAE,QAAA,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;;;AAGrC,IAAA,IAAI;AACF,QAAA,MAAM,IAAI,GAAGC,YAAO,CAACC,iBAAa,CAAC,mQAAe,CAAC,CAAC;QACpD,KAAK,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YAChC,MAAM,IAAI,GAAGL,SAAI,CAAC,IAAI,EAAE,EAAE,CAAC;AAC3B,YAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;AAAE,gBAAA,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QACvD;IACF;AAAE,IAAA,MAAM;AACN,QAAA,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;YACpC,KAAK,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;gBAChC,MAAM,IAAI,GAAGA,SAAI,CAAC,SAAS,EAAE,EAAE,CAAC;AAChC,gBAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;AAAE,oBAAA,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YACvD;QACF;IACF;AAEA,IAAA,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;AAC5B,QAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,MAAM,SAAS,GAAGA,SAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC;YACxC,IAAI,YAAY,CAAC,SAAS,CAAC;AAAE,gBAAA,OAAO,SAAS;QAC/C;IACF;AAEA,IAAA,IAAI;AACF,QAAA,MAAM,GAAG,GAAG,QAAQ,KAAK,OAAO,GAAG,UAAU,GAAG,UAAU;QAC1D,MAAM,MAAM,GAAGM,sBAAQ,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE;AAC7F,QAAA,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1C;AAAE,IAAA,MAAM;;IAER;AAEA,IAAA,OAAO,IAAI;AACb;AAEA;AACM,SAAU,eAAe,CAAC,MAAA,GAA8B,YAAY,EAAA;AACxE,IAAA,MAAM,GAAG,GAAG,MAAM,EAAE;IACpB,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CACb,4FAA4F;AAC5F,YAAA,6EAA6E,CAC9E;IACH;AACA,IAAA,OAAO,GAAG;AACZ;AAEA,SAAS,YAAY,CAAC,IAAY,EAAA;AAChC,IAAA,IAAI;AACF,QAAAC,aAAU,CAAC,IAAI,EAAEC,YAAW,CAAC,IAAI,CAAC;AAClC,QAAA,OAAO,IAAI;IACb;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,KAAK;IACd;AACF;AAEA;AAEA;AACM,SAAU,kBAAkB,CAAC,MAA8B,EAAA;AAC/D,IAAA,MAAM,KAAK,GAAa;QACtB,EAAE;QACF,4BAA4B;QAC5B,CAAA,MAAA,EAAS,MAAM,CAAC,MAAM,CAAA,CAAE;AACxB,QAAA,CAAA,YAAA,EAAe,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA,CAAE;AACnD,QAAA,CAAA,UAAA,EAAa,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG;KACtD;AAED,IAAA,IAAI,MAAM,CAAC,KAAK,EAAE;AAChB,QAAA,KAAK,CAAC,IAAI,CAAC,CAAA,OAAA,EAAU,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,EAAE,CAAA,eAAA,CAAiB,CAAC;IAClF;AACA,IAAA,IAAI,MAAM,CAAC,WAAW,EAAE;QACtB,KAAK,CAAC,IAAI,CAAC,CAAA,SAAA,EAAY,MAAM,CAAC,WAAW,CAAA,CAAE,CAAC;IAC9C;AACA,IAAA,IAAI,MAAM,CAAC,OAAO,EAAE;QAClB,KAAK,CAAC,IAAI,CAAC,CAAA,KAAA,EAAQ,MAAM,CAAC,OAAO,CAAA,CAAE,CAAC;IACtC;AACA,IAAA,IAAI,MAAM,CAAC,UAAU,EAAE;AACrB,QAAA,KAAK,CAAC,IAAI,CAAC,CAAA,aAAA,EAAgB,MAAM,CAAC,UAAU,CAAA,eAAA,EAAkB,MAAM,CAAC,UAAU,CAAA,cAAA,CAAgB,CAAC;IAClG;AACA,IAAA,IAAI,MAAM,CAAC,MAAM,EAAE;QACjB,KAAK,CAAC,IAAI,CACR,CAAA,oBAAA,EAAuB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAA,aAAA,EAAgB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAA,aAAA,EAAgB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAA,CAAE,CAClI;IACH;AAEA,IAAA,KAAK,CAAC,IAAI,CACR,EAAE,EACF,eAAe,EACf,CAAA,WAAA,EAAc,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,EAC3C,CAAA,eAAA,EAAkB,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,EAClD,CAAA,WAAA,EAAc,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,EAC3C,kBAAkB,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EACnD,CAAA,SAAA,EAAY,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,EACvC,CAAA,kBAAA,EAAqB,MAAM,CAAC,UAAU,CAAA,CAAE,CACzC;AAED,IAAA,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,EAAE;AACnE,QAAA,KAAK,CAAC,IAAI,CACR,EAAE,EACF,oBAAoB,EACpB,CAAA,YAAA,EAAe,MAAM,CAAC,UAAU,QAAQ,MAAM,CAAC,eAAe,CAAA,CAAA,CAAG,EACjE,WAAW,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA,OAAA,EAAU,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,CAAE,CAC3E;IACH;AAEA,IAAA,IAAI,MAAM,CAAC,cAAc,GAAG,CAAC,EAAE;AAC7B,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC;QACvE,KAAK,CAAC,IAAI,CACR,EAAE,EACF,qBAAqB,EACrB,CAAA,iBAAA,EAAoB,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,CAAA,OAAA,EAAU,SAAS,CAAA,OAAA,CAAS,EACtF,CAAA,mBAAA,EAAsB,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAA,CAAE,CACjE;IACH;;AAGA,IAAA,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;AAC9D,QAAA,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,6BAA6B,CAAC;QAC7C,MAAM,MAAM,GAAG,oGAAoG;AACnH,QAAA,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;AAClB,QAAA,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAErC,QAAA,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YAC5D,KAAK,CAAC,IAAI,CACR,CAAA,EAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA,GAAA,EAAM,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,GAAA,CAAK;AAClE,gBAAA,CAAA,EAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,IAAA,CAAM;AAC1C,gBAAA,CAAA,EAAG,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,IAAA,CAAM;AACjD,gBAAA,CAAA,EAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,IAAA,CAAM;AAClD,gBAAA,CAAA,EAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,IAAA,CAAM;AAC5C,gBAAA,CAAA,EAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,CAC1C;QACH;IACF;;AAGA,IAAA,IAAI,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/D,QAAA,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,0BAA0B,CAAC;AAC1C,QAAA,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,eAAe,EAAE;AAC3C,YAAA,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;AAClD,YAAA,KAAK,CAAC,IAAI,CACR,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,EAAA,EAAK,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,GAAG,CAAA,CAAE,CACjH;QACH;IACF;AAEA,IAAA,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACzB;;;;;;"}
|
package/dist/simulation.d.ts
CHANGED
|
@@ -150,6 +150,29 @@ interface NativeSimulationConfig {
|
|
|
150
150
|
* analysis of the full round log.
|
|
151
151
|
*/
|
|
152
152
|
dump?: string;
|
|
153
|
+
/**
|
|
154
|
+
* Path for the light per-round CSV (`round,payoutCents` per line, no JSON at
|
|
155
|
+
* all). This is the first half of the two-pass book build: the pipeline
|
|
156
|
+
* curates off these numbers, then re-runs with `onlyRounds` to serialize only
|
|
157
|
+
* the rounds that survived. `.gz` compresses as it writes, same as `dump`.
|
|
158
|
+
*/
|
|
159
|
+
dumpCsv?: string;
|
|
160
|
+
/**
|
|
161
|
+
* Path to a file of round indices (one per line) limiting which rounds `dump`
|
|
162
|
+
* serializes. Every round is still simulated, so the RNG stream — and each
|
|
163
|
+
* kept round's content — is identical to a full run.
|
|
164
|
+
*/
|
|
165
|
+
onlyRounds?: string;
|
|
166
|
+
/**
|
|
167
|
+
* Book map (`round,id,payoutCents` per line) + destination. With both set the
|
|
168
|
+
* engine writes the FINAL Stake books itself — `{id,payoutMultiplier,events,criteria}`,
|
|
169
|
+
* zstd-compressed when the path ends in `.zst` — instead of a round dump the
|
|
170
|
+
* pipeline would have to parse and re-serialize.
|
|
171
|
+
*/
|
|
172
|
+
booksMap?: string;
|
|
173
|
+
booksOut?: string;
|
|
174
|
+
/** Max-win cap in cents; drives `criteria: "wincap"`. */
|
|
175
|
+
booksCap?: number;
|
|
153
176
|
/** Progress callback */
|
|
154
177
|
onProgress?: (completed: number, total: number) => void;
|
|
155
178
|
}
|
|
@@ -189,6 +212,17 @@ interface NativeSimulationResult extends SimulationResult {
|
|
|
189
212
|
workerSeeds?: string[];
|
|
190
213
|
/** Echo of replay params when the run was in replay mode. */
|
|
191
214
|
replay?: NativeReplayParams;
|
|
215
|
+
/** Set when the engine wrote the final Stake books itself (`booksMap`/`booksOut`). */
|
|
216
|
+
books?: {
|
|
217
|
+
/** Book lines written. */
|
|
218
|
+
written: number;
|
|
219
|
+
/** Largest serialized `events` field, in bytes. */
|
|
220
|
+
maxEventsBytes: number;
|
|
221
|
+
/** Book id holding it (-1 when no books). */
|
|
222
|
+
maxEventsBookId: number;
|
|
223
|
+
/** Books over Stake's 1 MiB `events` limit. */
|
|
224
|
+
overEventsLimit: number;
|
|
225
|
+
};
|
|
192
226
|
/** Round-win standard deviation (currency units). */
|
|
193
227
|
stddev?: number;
|
|
194
228
|
/** Coefficient of variation (stddev / mean round win). */
|
|
@@ -207,6 +241,11 @@ interface NativeArgsInput {
|
|
|
207
241
|
rng?: string;
|
|
208
242
|
seed?: string;
|
|
209
243
|
dump?: string;
|
|
244
|
+
dumpCsv?: string;
|
|
245
|
+
onlyRounds?: string;
|
|
246
|
+
booksMap?: string;
|
|
247
|
+
booksOut?: string;
|
|
248
|
+
booksCap?: number;
|
|
210
249
|
replay?: {
|
|
211
250
|
serverSeed: string;
|
|
212
251
|
clientSeed: string;
|
package/dist/simulation.esm.js
CHANGED
|
@@ -23,6 +23,16 @@ function buildNativeArgs(a) {
|
|
|
23
23
|
args.push('-seed', a.seed);
|
|
24
24
|
if (a.dump)
|
|
25
25
|
args.push('-dump', a.dump);
|
|
26
|
+
if (a.dumpCsv)
|
|
27
|
+
args.push('-dump-csv', a.dumpCsv);
|
|
28
|
+
if (a.onlyRounds)
|
|
29
|
+
args.push('-only-rounds', a.onlyRounds);
|
|
30
|
+
if (a.booksMap)
|
|
31
|
+
args.push('-books-map', a.booksMap);
|
|
32
|
+
if (a.booksOut)
|
|
33
|
+
args.push('-books-out', a.booksOut);
|
|
34
|
+
if (a.booksCap !== undefined)
|
|
35
|
+
args.push('-books-cap', String(a.booksCap));
|
|
26
36
|
if (a.replay) {
|
|
27
37
|
args.push('-replay-server-seed', a.replay.serverSeed, '-replay-client-seed', a.replay.clientSeed, '-replay-nonce-start', String(a.replay.nonceStart));
|
|
28
38
|
}
|
|
@@ -35,7 +45,7 @@ class NativeSimulationRunner {
|
|
|
35
45
|
this.config = config;
|
|
36
46
|
}
|
|
37
47
|
async run() {
|
|
38
|
-
const { binaryPath, script, scriptExt, argsPrefix, gameDefinition, iterations, bet, action, params, seed, rng, replay, dump } = this.config;
|
|
48
|
+
const { binaryPath, script, scriptExt, argsPrefix, gameDefinition, iterations, bet, action, params, seed, rng, replay, dump, dumpCsv, onlyRounds, booksMap, booksOut, booksCap } = this.config;
|
|
39
49
|
if (replay && rng && rng !== 'provably-fair') {
|
|
40
50
|
throw new Error(`Replay mode requires rng="provably-fair" (got rng="${rng}")`);
|
|
41
51
|
}
|
|
@@ -50,7 +60,7 @@ class NativeSimulationRunner {
|
|
|
50
60
|
writeFile(configPath, JSON.stringify({ ...gameDefinition, script_path: scriptPath }), 'utf-8'),
|
|
51
61
|
]);
|
|
52
62
|
// Build CLI args
|
|
53
|
-
const args = buildNativeArgs({ configPath, iterations, bet, action, params, rng, seed, dump, replay });
|
|
63
|
+
const args = buildNativeArgs({ configPath, iterations, bet, action, params, rng, seed, dump, dumpCsv, onlyRounds, booksMap, booksOut, booksCap, replay });
|
|
54
64
|
// Execute binary
|
|
55
65
|
const output = await this.exec(binaryPath, [...(argsPrefix ?? []), ...args]);
|
|
56
66
|
// Parse JSON output
|
|
@@ -131,6 +141,13 @@ function mapGoResult(json) {
|
|
|
131
141
|
cv: json.cv,
|
|
132
142
|
volatility: json.volatility,
|
|
133
143
|
volatilityLabel: json.volatility_label,
|
|
144
|
+
// Present only when the engine wrote the books itself (`-books-map`).
|
|
145
|
+
books: json.books_written === undefined ? undefined : {
|
|
146
|
+
written: json.books_written,
|
|
147
|
+
maxEventsBytes: json.books_max_events_bytes ?? 0,
|
|
148
|
+
maxEventsBookId: json.books_max_events_book_id ?? -1,
|
|
149
|
+
overEventsLimit: json.books_over_events_limit ?? 0,
|
|
150
|
+
},
|
|
134
151
|
replay: json.replay
|
|
135
152
|
? {
|
|
136
153
|
serverSeed: json.replay.server_seed,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulation.esm.js","sources":["../src/simulation/NativeSimulationRunner.ts"],"sourcesContent":[null],"names":["fsConstants"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"simulation.esm.js","sources":["../src/simulation/NativeSimulationRunner.ts"],"sourcesContent":[null],"names":["fsConstants"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@energy8platform/platform-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.35.0",
|
|
4
4
|
"description": "Energy8 platform core: Lua engine, DevBridge, RTP simulation, and SDK session orchestration. Renderer-agnostic — pair with any game framework (Pixi, Phaser, Three.js, custom).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs.js",
|
package/scripts/install-e8.mjs
CHANGED
|
@@ -25,7 +25,7 @@ const REPO = process.env.E8_RELEASE_REPO || 'energy8platform/game-engine';
|
|
|
25
25
|
// e8 binary version — bump when new Rust binaries are uploaded to Releases.
|
|
26
26
|
// The binary is game-agnostic (it compiles any .spin), so it only needs to
|
|
27
27
|
// move when the engine/CLI itself changes.
|
|
28
|
-
const BINARY_VERSION = process.env.E8_BINARY_VERSION || '0.1.
|
|
28
|
+
const BINARY_VERSION = process.env.E8_BINARY_VERSION || '0.1.5';
|
|
29
29
|
|
|
30
30
|
// Два бинаря на платформу: e8 (математика/симуляция) и e8-server
|
|
31
31
|
// (дев-раунды для Vite-плагина).
|
|
@@ -69,6 +69,29 @@ export interface NativeSimulationConfig {
|
|
|
69
69
|
* analysis of the full round log.
|
|
70
70
|
*/
|
|
71
71
|
dump?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Path for the light per-round CSV (`round,payoutCents` per line, no JSON at
|
|
74
|
+
* all). This is the first half of the two-pass book build: the pipeline
|
|
75
|
+
* curates off these numbers, then re-runs with `onlyRounds` to serialize only
|
|
76
|
+
* the rounds that survived. `.gz` compresses as it writes, same as `dump`.
|
|
77
|
+
*/
|
|
78
|
+
dumpCsv?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Path to a file of round indices (one per line) limiting which rounds `dump`
|
|
81
|
+
* serializes. Every round is still simulated, so the RNG stream — and each
|
|
82
|
+
* kept round's content — is identical to a full run.
|
|
83
|
+
*/
|
|
84
|
+
onlyRounds?: string;
|
|
85
|
+
/**
|
|
86
|
+
* Book map (`round,id,payoutCents` per line) + destination. With both set the
|
|
87
|
+
* engine writes the FINAL Stake books itself — `{id,payoutMultiplier,events,criteria}`,
|
|
88
|
+
* zstd-compressed when the path ends in `.zst` — instead of a round dump the
|
|
89
|
+
* pipeline would have to parse and re-serialize.
|
|
90
|
+
*/
|
|
91
|
+
booksMap?: string;
|
|
92
|
+
booksOut?: string;
|
|
93
|
+
/** Max-win cap in cents; drives `criteria: "wincap"`. */
|
|
94
|
+
booksCap?: number;
|
|
72
95
|
/** Progress callback */
|
|
73
96
|
onProgress?: (completed: number, total: number) => void;
|
|
74
97
|
}
|
|
@@ -111,6 +134,17 @@ export interface NativeSimulationResult extends SimulationResult {
|
|
|
111
134
|
workerSeeds?: string[];
|
|
112
135
|
/** Echo of replay params when the run was in replay mode. */
|
|
113
136
|
replay?: NativeReplayParams;
|
|
137
|
+
/** Set when the engine wrote the final Stake books itself (`booksMap`/`booksOut`). */
|
|
138
|
+
books?: {
|
|
139
|
+
/** Book lines written. */
|
|
140
|
+
written: number;
|
|
141
|
+
/** Largest serialized `events` field, in bytes. */
|
|
142
|
+
maxEventsBytes: number;
|
|
143
|
+
/** Book id holding it (-1 when no books). */
|
|
144
|
+
maxEventsBookId: number;
|
|
145
|
+
/** Books over Stake's 1 MiB `events` limit. */
|
|
146
|
+
overEventsLimit: number;
|
|
147
|
+
};
|
|
114
148
|
/** Round-win standard deviation (currency units). */
|
|
115
149
|
stddev?: number;
|
|
116
150
|
/** Coefficient of variation (stddev / mean round win). */
|
|
@@ -153,6 +187,10 @@ interface GoSimulationOutput {
|
|
|
153
187
|
pct: number;
|
|
154
188
|
}>;
|
|
155
189
|
rng_kind?: NativeRNGKind;
|
|
190
|
+
books_written?: number;
|
|
191
|
+
books_max_events_bytes?: number;
|
|
192
|
+
books_max_events_book_id?: number;
|
|
193
|
+
books_over_events_limit?: number;
|
|
156
194
|
master_seed?: string;
|
|
157
195
|
worker_seeds?: string[];
|
|
158
196
|
stddev?: number;
|
|
@@ -177,6 +215,11 @@ export interface NativeArgsInput {
|
|
|
177
215
|
rng?: string;
|
|
178
216
|
seed?: string;
|
|
179
217
|
dump?: string;
|
|
218
|
+
dumpCsv?: string;
|
|
219
|
+
onlyRounds?: string;
|
|
220
|
+
booksMap?: string;
|
|
221
|
+
booksOut?: string;
|
|
222
|
+
booksCap?: number;
|
|
180
223
|
replay?: { serverSeed: string; clientSeed: string; nonceStart: number };
|
|
181
224
|
}
|
|
182
225
|
|
|
@@ -193,6 +236,11 @@ export function buildNativeArgs(a: NativeArgsInput): string[] {
|
|
|
193
236
|
if (a.rng) args.push('-rng', a.rng);
|
|
194
237
|
if (a.seed) args.push('-seed', a.seed);
|
|
195
238
|
if (a.dump) args.push('-dump', a.dump);
|
|
239
|
+
if (a.dumpCsv) args.push('-dump-csv', a.dumpCsv);
|
|
240
|
+
if (a.onlyRounds) args.push('-only-rounds', a.onlyRounds);
|
|
241
|
+
if (a.booksMap) args.push('-books-map', a.booksMap);
|
|
242
|
+
if (a.booksOut) args.push('-books-out', a.booksOut);
|
|
243
|
+
if (a.booksCap !== undefined) args.push('-books-cap', String(a.booksCap));
|
|
196
244
|
if (a.replay) {
|
|
197
245
|
args.push(
|
|
198
246
|
'-replay-server-seed', a.replay.serverSeed,
|
|
@@ -213,7 +261,7 @@ export class NativeSimulationRunner {
|
|
|
213
261
|
}
|
|
214
262
|
|
|
215
263
|
async run(): Promise<NativeSimulationResult> {
|
|
216
|
-
const { binaryPath, script, scriptExt, argsPrefix, gameDefinition, iterations, bet, action, params, seed, rng, replay, dump } = this.config;
|
|
264
|
+
const { binaryPath, script, scriptExt, argsPrefix, gameDefinition, iterations, bet, action, params, seed, rng, replay, dump, dumpCsv, onlyRounds, booksMap, booksOut, booksCap } = this.config;
|
|
217
265
|
|
|
218
266
|
if (replay && rng && rng !== 'provably-fair') {
|
|
219
267
|
throw new Error(`Replay mode requires rng="provably-fair" (got rng="${rng}")`);
|
|
@@ -232,7 +280,7 @@ export class NativeSimulationRunner {
|
|
|
232
280
|
]);
|
|
233
281
|
|
|
234
282
|
// Build CLI args
|
|
235
|
-
const args = buildNativeArgs({ configPath, iterations, bet, action, params, rng, seed, dump, replay });
|
|
283
|
+
const args = buildNativeArgs({ configPath, iterations, bet, action, params, rng, seed, dump, dumpCsv, onlyRounds, booksMap, booksOut, booksCap, replay });
|
|
236
284
|
|
|
237
285
|
// Execute binary
|
|
238
286
|
const output = await this.exec(binaryPath, [...(argsPrefix ?? []), ...args]);
|
|
@@ -325,6 +373,13 @@ function mapGoResult(json: GoSimulationOutput): NativeSimulationResult {
|
|
|
325
373
|
cv: json.cv,
|
|
326
374
|
volatility: json.volatility,
|
|
327
375
|
volatilityLabel: json.volatility_label,
|
|
376
|
+
// Present only when the engine wrote the books itself (`-books-map`).
|
|
377
|
+
books: json.books_written === undefined ? undefined : {
|
|
378
|
+
written: json.books_written,
|
|
379
|
+
maxEventsBytes: json.books_max_events_bytes ?? 0,
|
|
380
|
+
maxEventsBookId: json.books_max_events_book_id ?? -1,
|
|
381
|
+
overEventsLimit: json.books_over_events_limit ?? 0,
|
|
382
|
+
},
|
|
328
383
|
replay: json.replay
|
|
329
384
|
? {
|
|
330
385
|
serverSeed: json.replay.server_seed,
|