mons-rust 0.1.125 → 0.1.128
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 +21 -29
- package/mons-rust.d.ts +49 -41
- package/mons-rust.js +24 -19
- package/mons-rust_bg.wasm +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -7,45 +7,37 @@ or
|
|
|
7
7
|
|
|
8
8
|
## automove
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
Docs:
|
|
11
11
|
|
|
12
12
|
- runbook: `HOW_TO_ITERATE_ON_AUTOMOVE.md`
|
|
13
13
|
- live board: `AUTOMOVE_IDEAS.md`
|
|
14
14
|
- durable lessons: `docs/automove-knowledge.md`
|
|
15
15
|
- archive: `docs/automove-archive.md`
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
Public Pro runtime currently routes through `frontier_pro_v2_guarded`; `shipping_pro_search` remains the retained search-only baseline profile.
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
- `pro-triage`
|
|
21
|
-
- `runtime-preflight`
|
|
22
|
-
- `pro-reliability`
|
|
23
|
-
- `pro-reliability-confirm`
|
|
19
|
+
Quickstart:
|
|
24
20
|
|
|
25
|
-
|
|
21
|
+
- canonical Pro loop: `./scripts/run-automove-canonical-loop.sh frontier_pro_v2_guarded`
|
|
22
|
+
- larger confirmation pass: `./scripts/run-automove-canonical-loop.sh --confirm frontier_pro_v2_guarded`
|
|
23
|
+
- single-stage or diagnostic run: `./scripts/run-automove-experiment.sh <stage> frontier_pro_v2_guarded`
|
|
24
|
+
- cleanup preview: `./scripts/clean-experiment-artifacts.sh --dry-run`
|
|
26
25
|
|
|
27
|
-
|
|
28
|
-
- `SMART_TRIAGE_SURFACE=primary_pro ./scripts/run-automove-experiment.sh pro-triage runtime_pro_turn_engine_v30`
|
|
29
|
-
- `./scripts/run-automove-experiment.sh runtime-preflight runtime_pro_turn_engine_v30`
|
|
30
|
-
- `./scripts/run-automove-experiment.sh pro-reliability runtime_pro_turn_engine_v30`
|
|
31
|
-
- `./scripts/run-automove-experiment.sh pro-reliability-confirm runtime_pro_turn_engine_v30`
|
|
32
|
-
- `./scripts/clean-experiment-artifacts.sh --dry-run`
|
|
26
|
+
Retained profile surface:
|
|
33
27
|
|
|
34
|
-
|
|
28
|
+
- `shipping_pro_search`
|
|
29
|
+
- `frontier_pro_v2_guarded`
|
|
35
30
|
|
|
36
|
-
|
|
37
|
-
- `runtime_pro_turn_engine_v30`
|
|
31
|
+
Glossary:
|
|
38
32
|
|
|
39
|
-
|
|
33
|
+
- `shipping`: the deployed Pro path, currently `frontier_pro_v2_guarded`
|
|
34
|
+
- `baseline`: the retained search-only comparison profile, currently `shipping_pro_search`
|
|
35
|
+
- `frontier`: the guarded ProV2 selector/runtime line, currently `frontier_pro_v2_guarded`
|
|
36
|
+
- `probe`: forced turn-engine diagnostics that inspect search/acceptance behavior without changing shipping
|
|
40
37
|
|
|
41
|
-
|
|
42
|
-
- `runtime_pro_turn_engine_v30` is the only retained Pro frontier for offline experiments.
|
|
43
|
-
- Archive profiles, including `runtime_pro_turn_engine_v1`, are not valid active experiment targets.
|
|
44
|
-
- Post-promotion maintenance runs may show `pro-triage` `0/0` for `runtime_pro_turn_engine_v30` vs `runtime_current`; that is the expected stable-equivalence result, not a failed challenger attempt.
|
|
38
|
+
Artifact layout:
|
|
45
39
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
- logs: `target/experiment-runs/<candidate>/`
|
|
40
|
+
- selected-profile logs: `target/experiment-runs/<profile>/`
|
|
49
41
|
- workflow-only logs: `target/experiment-runs/misc/`
|
|
50
42
|
- runtime-preflight stamps: `target/experiment-stamps/`
|
|
51
43
|
|
|
@@ -95,8 +87,8 @@ Pack a directory back into chunks:
|
|
|
95
87
|
Release checklist:
|
|
96
88
|
|
|
97
89
|
- Review `git status` before publish and confirm only intentional committed changes are present.
|
|
98
|
-
- Confirm
|
|
99
|
-
- Confirm `
|
|
90
|
+
- Confirm public Pro still routes through `frontier_pro_v2_guarded`.
|
|
91
|
+
- Confirm `shipping_pro_search` remains available as the retained search-only baseline profile.
|
|
100
92
|
- Run `cargo test`.
|
|
101
93
|
- Run `cargo test --release --lib smart_automove_release_opening_black_reply_speed_gate -- --ignored --nocapture`.
|
|
102
94
|
- Run `cargo test --release --lib smart_automove_release_mixed_runtime_speed_gate -- --ignored --nocapture`.
|
|
@@ -107,10 +99,10 @@ Production blockers:
|
|
|
107
99
|
|
|
108
100
|
- build/test failures
|
|
109
101
|
- release speed gate failures
|
|
110
|
-
- any regression
|
|
102
|
+
- any regression in the deployed `frontier_pro_v2_guarded` Pro path
|
|
111
103
|
|
|
112
104
|
Non-blocking retained experiment state:
|
|
113
105
|
|
|
114
|
-
- the retained `
|
|
106
|
+
- the retained `shipping_pro_search` baseline, the retained `frontier_pro_v2_guarded` frontier, and ignored probes
|
|
115
107
|
- experiment workflow/logging helpers
|
|
116
108
|
- compressed automove backlog / knowledge / archive docs
|
package/mons-rust.d.ts
CHANGED
|
@@ -10,29 +10,6 @@
|
|
|
10
10
|
export function winner(fen_w: string, fen_b: string, flat_moves_string_w: string, flat_moves_string_b: string): string;
|
|
11
11
|
/**
|
|
12
12
|
*/
|
|
13
|
-
export enum ItemModelKind {
|
|
14
|
-
Mon = 0,
|
|
15
|
-
Mana = 1,
|
|
16
|
-
MonWithMana = 2,
|
|
17
|
-
MonWithConsumable = 3,
|
|
18
|
-
Consumable = 4,
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
*/
|
|
22
|
-
export enum ManaKind {
|
|
23
|
-
Regular = 0,
|
|
24
|
-
Supermana = 1,
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
*/
|
|
28
|
-
export enum AvailableMoveKind {
|
|
29
|
-
MonMove = 0,
|
|
30
|
-
ManaMove = 1,
|
|
31
|
-
Action = 2,
|
|
32
|
-
Potion = 3,
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
*/
|
|
36
13
|
export enum SquareModelKind {
|
|
37
14
|
Regular = 0,
|
|
38
15
|
ConsumableBase = 1,
|
|
@@ -43,23 +20,29 @@ export enum SquareModelKind {
|
|
|
43
20
|
}
|
|
44
21
|
/**
|
|
45
22
|
*/
|
|
46
|
-
export enum
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
23
|
+
export enum OutputModelKind {
|
|
24
|
+
InvalidInput = 0,
|
|
25
|
+
LocationsToStartFrom = 1,
|
|
26
|
+
NextInputOptions = 2,
|
|
27
|
+
Events = 3,
|
|
50
28
|
}
|
|
51
29
|
/**
|
|
52
30
|
*/
|
|
53
|
-
export enum
|
|
54
|
-
|
|
55
|
-
|
|
31
|
+
export enum GameVariant {
|
|
32
|
+
Classic = 0,
|
|
33
|
+
SwappedManaRows = 1,
|
|
56
34
|
}
|
|
57
35
|
/**
|
|
58
36
|
*/
|
|
59
|
-
export enum
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
37
|
+
export enum ManaKind {
|
|
38
|
+
Regular = 0,
|
|
39
|
+
Supermana = 1,
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
*/
|
|
43
|
+
export enum Color {
|
|
44
|
+
White = 0,
|
|
45
|
+
Black = 1,
|
|
63
46
|
}
|
|
64
47
|
/**
|
|
65
48
|
*/
|
|
@@ -72,6 +55,15 @@ export enum MonKind {
|
|
|
72
55
|
}
|
|
73
56
|
/**
|
|
74
57
|
*/
|
|
58
|
+
export enum ItemModelKind {
|
|
59
|
+
Mon = 0,
|
|
60
|
+
Mana = 1,
|
|
61
|
+
MonWithMana = 2,
|
|
62
|
+
MonWithConsumable = 3,
|
|
63
|
+
Consumable = 4,
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
*/
|
|
75
67
|
export enum EventModelKind {
|
|
76
68
|
MonMove = 0,
|
|
77
69
|
ManaMove = 1,
|
|
@@ -96,11 +88,25 @@ export enum EventModelKind {
|
|
|
96
88
|
}
|
|
97
89
|
/**
|
|
98
90
|
*/
|
|
99
|
-
export enum
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
91
|
+
export enum AvailableMoveKind {
|
|
92
|
+
MonMove = 0,
|
|
93
|
+
ManaMove = 1,
|
|
94
|
+
Action = 2,
|
|
95
|
+
Potion = 3,
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
*/
|
|
99
|
+
export enum Consumable {
|
|
100
|
+
Potion = 0,
|
|
101
|
+
Bomb = 1,
|
|
102
|
+
BombOrPotion = 2,
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
*/
|
|
106
|
+
export enum Modifier {
|
|
107
|
+
SelectPotion = 0,
|
|
108
|
+
SelectBomb = 1,
|
|
109
|
+
Cancel = 2,
|
|
104
110
|
}
|
|
105
111
|
/**
|
|
106
112
|
*/
|
|
@@ -293,9 +299,10 @@ export class MonsGameModel {
|
|
|
293
299
|
*/
|
|
294
300
|
without_last_turn(takeback_fens: (string)[]): MonsGameModel | undefined;
|
|
295
301
|
/**
|
|
302
|
+
* @param {GameVariant} variant
|
|
296
303
|
* @returns {MonsGameModel}
|
|
297
304
|
*/
|
|
298
|
-
static newForSimulation(): MonsGameModel;
|
|
305
|
+
static newForSimulation(variant: GameVariant): MonsGameModel;
|
|
299
306
|
/**
|
|
300
307
|
* @returns {Int32Array}
|
|
301
308
|
*/
|
|
@@ -326,9 +333,10 @@ export class MonsGameModel {
|
|
|
326
333
|
*/
|
|
327
334
|
fen(): string;
|
|
328
335
|
/**
|
|
336
|
+
* @param {GameVariant} variant
|
|
329
337
|
* @returns {MonsGameModel}
|
|
330
338
|
*/
|
|
331
|
-
static new(): MonsGameModel;
|
|
339
|
+
static new(variant: GameVariant): MonsGameModel;
|
|
332
340
|
/**
|
|
333
341
|
* @param {Location} at
|
|
334
342
|
* @returns {ItemModel | undefined}
|
package/mons-rust.js
CHANGED
|
@@ -201,34 +201,37 @@ function handleError(f, args) {
|
|
|
201
201
|
}
|
|
202
202
|
/**
|
|
203
203
|
*/
|
|
204
|
-
module.exports.
|
|
205
|
-
/**
|
|
206
|
-
*/
|
|
207
|
-
module.exports.ManaKind = Object.freeze({ Regular:0,"0":"Regular",Supermana:1,"1":"Supermana", });
|
|
204
|
+
module.exports.SquareModelKind = Object.freeze({ Regular:0,"0":"Regular",ConsumableBase:1,"1":"ConsumableBase",SupermanaBase:2,"2":"SupermanaBase",ManaBase:3,"3":"ManaBase",ManaPool:4,"4":"ManaPool",MonBase:5,"5":"MonBase", });
|
|
208
205
|
/**
|
|
209
206
|
*/
|
|
210
|
-
module.exports.
|
|
207
|
+
module.exports.OutputModelKind = Object.freeze({ InvalidInput:0,"0":"InvalidInput",LocationsToStartFrom:1,"1":"LocationsToStartFrom",NextInputOptions:2,"2":"NextInputOptions",Events:3,"3":"Events", });
|
|
211
208
|
/**
|
|
212
209
|
*/
|
|
213
|
-
module.exports.
|
|
210
|
+
module.exports.GameVariant = Object.freeze({ Classic:0,"0":"Classic",SwappedManaRows:1,"1":"SwappedManaRows", });
|
|
214
211
|
/**
|
|
215
212
|
*/
|
|
216
|
-
module.exports.
|
|
213
|
+
module.exports.ManaKind = Object.freeze({ Regular:0,"0":"Regular",Supermana:1,"1":"Supermana", });
|
|
217
214
|
/**
|
|
218
215
|
*/
|
|
219
216
|
module.exports.Color = Object.freeze({ White:0,"0":"White",Black:1,"1":"Black", });
|
|
220
217
|
/**
|
|
221
218
|
*/
|
|
222
|
-
module.exports.
|
|
219
|
+
module.exports.MonKind = Object.freeze({ Demon:0,"0":"Demon",Drainer:1,"1":"Drainer",Angel:2,"2":"Angel",Spirit:3,"3":"Spirit",Mystic:4,"4":"Mystic", });
|
|
223
220
|
/**
|
|
224
221
|
*/
|
|
225
|
-
module.exports.
|
|
222
|
+
module.exports.ItemModelKind = Object.freeze({ Mon:0,"0":"Mon",Mana:1,"1":"Mana",MonWithMana:2,"2":"MonWithMana",MonWithConsumable:3,"3":"MonWithConsumable",Consumable:4,"4":"Consumable", });
|
|
226
223
|
/**
|
|
227
224
|
*/
|
|
228
225
|
module.exports.EventModelKind = Object.freeze({ MonMove:0,"0":"MonMove",ManaMove:1,"1":"ManaMove",ManaScored:2,"2":"ManaScored",MysticAction:3,"3":"MysticAction",DemonAction:4,"4":"DemonAction",DemonAdditionalStep:5,"5":"DemonAdditionalStep",SpiritTargetMove:6,"6":"SpiritTargetMove",PickupBomb:7,"7":"PickupBomb",PickupPotion:8,"8":"PickupPotion",PickupMana:9,"9":"PickupMana",MonFainted:10,"10":"MonFainted",ManaDropped:11,"11":"ManaDropped",SupermanaBackToBase:12,"12":"SupermanaBackToBase",BombAttack:13,"13":"BombAttack",MonAwake:14,"14":"MonAwake",BombExplosion:15,"15":"BombExplosion",NextTurn:16,"16":"NextTurn",GameOver:17,"17":"GameOver",Takeback:18,"18":"Takeback",UsePotion:19,"19":"UsePotion", });
|
|
229
226
|
/**
|
|
230
227
|
*/
|
|
231
|
-
module.exports.
|
|
228
|
+
module.exports.AvailableMoveKind = Object.freeze({ MonMove:0,"0":"MonMove",ManaMove:1,"1":"ManaMove",Action:2,"2":"Action",Potion:3,"3":"Potion", });
|
|
229
|
+
/**
|
|
230
|
+
*/
|
|
231
|
+
module.exports.Consumable = Object.freeze({ Potion:0,"0":"Potion",Bomb:1,"1":"Bomb",BombOrPotion:2,"2":"BombOrPotion", });
|
|
232
|
+
/**
|
|
233
|
+
*/
|
|
234
|
+
module.exports.Modifier = Object.freeze({ SelectPotion:0,"0":"SelectPotion",SelectBomb:1,"1":"SelectBomb",Cancel:2,"2":"Cancel", });
|
|
232
235
|
/**
|
|
233
236
|
*/
|
|
234
237
|
module.exports.NextInputKind = Object.freeze({ MonMove:0,"0":"MonMove",ManaMove:1,"1":"ManaMove",MysticAction:2,"2":"MysticAction",DemonAction:3,"3":"DemonAction",DemonAdditionalStep:4,"4":"DemonAdditionalStep",SpiritTargetCapture:5,"5":"SpiritTargetCapture",SpiritTargetMove:6,"6":"SpiritTargetMove",SelectConsumable:7,"7":"SelectConsumable",BombAttack:8,"8":"BombAttack", });
|
|
@@ -871,10 +874,11 @@ class MonsGameModel {
|
|
|
871
874
|
return ret === 0 ? undefined : MonsGameModel.__wrap(ret);
|
|
872
875
|
}
|
|
873
876
|
/**
|
|
877
|
+
* @param {GameVariant} variant
|
|
874
878
|
* @returns {MonsGameModel}
|
|
875
879
|
*/
|
|
876
|
-
static newForSimulation() {
|
|
877
|
-
const ret = wasm.monsgamemodel_newForSimulation();
|
|
880
|
+
static newForSimulation(variant) {
|
|
881
|
+
const ret = wasm.monsgamemodel_newForSimulation(variant);
|
|
878
882
|
return MonsGameModel.__wrap(ret);
|
|
879
883
|
}
|
|
880
884
|
/**
|
|
@@ -977,10 +981,11 @@ class MonsGameModel {
|
|
|
977
981
|
}
|
|
978
982
|
}
|
|
979
983
|
/**
|
|
984
|
+
* @param {GameVariant} variant
|
|
980
985
|
* @returns {MonsGameModel}
|
|
981
986
|
*/
|
|
982
|
-
static new() {
|
|
983
|
-
const ret = wasm.monsgamemodel_new();
|
|
987
|
+
static new(variant) {
|
|
988
|
+
const ret = wasm.monsgamemodel_new(variant);
|
|
984
989
|
return MonsGameModel.__wrap(ret);
|
|
985
990
|
}
|
|
986
991
|
/**
|
|
@@ -1397,11 +1402,6 @@ module.exports.__wbindgen_string_new = function(arg0, arg1) {
|
|
|
1397
1402
|
return addHeapObject(ret);
|
|
1398
1403
|
};
|
|
1399
1404
|
|
|
1400
|
-
module.exports.__wbg_nextinputmodel_new = function(arg0) {
|
|
1401
|
-
const ret = NextInputModel.__wrap(arg0);
|
|
1402
|
-
return addHeapObject(ret);
|
|
1403
|
-
};
|
|
1404
|
-
|
|
1405
1405
|
module.exports.__wbg_location_new = function(arg0) {
|
|
1406
1406
|
const ret = Location.__wrap(arg0);
|
|
1407
1407
|
return addHeapObject(ret);
|
|
@@ -1412,6 +1412,11 @@ module.exports.__wbg_eventmodel_new = function(arg0) {
|
|
|
1412
1412
|
return addHeapObject(ret);
|
|
1413
1413
|
};
|
|
1414
1414
|
|
|
1415
|
+
module.exports.__wbg_nextinputmodel_new = function(arg0) {
|
|
1416
|
+
const ret = NextInputModel.__wrap(arg0);
|
|
1417
|
+
return addHeapObject(ret);
|
|
1418
|
+
};
|
|
1419
|
+
|
|
1415
1420
|
module.exports.__wbg_location_unwrap = function(arg0) {
|
|
1416
1421
|
const ret = Location.__unwrap(takeObject(arg0));
|
|
1417
1422
|
return ret;
|
package/mons-rust_bg.wasm
CHANGED
|
Binary file
|