mons-web 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-web.d.ts +42 -34
- package/mons-web.js +22 -17
- package/mons-web_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-web.d.ts
CHANGED
|
@@ -10,30 +10,12 @@
|
|
|
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 SquareModelKind {
|
|
14
|
-
Regular = 0,
|
|
15
|
-
ConsumableBase = 1,
|
|
16
|
-
SupermanaBase = 2,
|
|
17
|
-
ManaBase = 3,
|
|
18
|
-
ManaPool = 4,
|
|
19
|
-
MonBase = 5,
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
*/
|
|
23
13
|
export enum ManaKind {
|
|
24
14
|
Regular = 0,
|
|
25
15
|
Supermana = 1,
|
|
26
16
|
}
|
|
27
17
|
/**
|
|
28
18
|
*/
|
|
29
|
-
export enum AvailableMoveKind {
|
|
30
|
-
MonMove = 0,
|
|
31
|
-
ManaMove = 1,
|
|
32
|
-
Action = 2,
|
|
33
|
-
Potion = 3,
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
*/
|
|
37
19
|
export enum EventModelKind {
|
|
38
20
|
MonMove = 0,
|
|
39
21
|
ManaMove = 1,
|
|
@@ -58,6 +40,13 @@ export enum EventModelKind {
|
|
|
58
40
|
}
|
|
59
41
|
/**
|
|
60
42
|
*/
|
|
43
|
+
export enum Consumable {
|
|
44
|
+
Potion = 0,
|
|
45
|
+
Bomb = 1,
|
|
46
|
+
BombOrPotion = 2,
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
*/
|
|
61
50
|
export enum ItemModelKind {
|
|
62
51
|
Mon = 0,
|
|
63
52
|
Mana = 1,
|
|
@@ -67,10 +56,23 @@ export enum ItemModelKind {
|
|
|
67
56
|
}
|
|
68
57
|
/**
|
|
69
58
|
*/
|
|
70
|
-
export enum
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
59
|
+
export enum GameVariant {
|
|
60
|
+
Classic = 0,
|
|
61
|
+
SwappedManaRows = 1,
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
*/
|
|
65
|
+
export enum AvailableMoveKind {
|
|
66
|
+
MonMove = 0,
|
|
67
|
+
ManaMove = 1,
|
|
68
|
+
Action = 2,
|
|
69
|
+
Potion = 3,
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
*/
|
|
73
|
+
export enum Color {
|
|
74
|
+
White = 0,
|
|
75
|
+
Black = 1,
|
|
74
76
|
}
|
|
75
77
|
/**
|
|
76
78
|
*/
|
|
@@ -90,6 +92,16 @@ export enum MonKind {
|
|
|
90
92
|
}
|
|
91
93
|
/**
|
|
92
94
|
*/
|
|
95
|
+
export enum SquareModelKind {
|
|
96
|
+
Regular = 0,
|
|
97
|
+
ConsumableBase = 1,
|
|
98
|
+
SupermanaBase = 2,
|
|
99
|
+
ManaBase = 3,
|
|
100
|
+
ManaPool = 4,
|
|
101
|
+
MonBase = 5,
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
*/
|
|
93
105
|
export enum NextInputKind {
|
|
94
106
|
MonMove = 0,
|
|
95
107
|
ManaMove = 1,
|
|
@@ -111,12 +123,6 @@ export enum OutputModelKind {
|
|
|
111
123
|
}
|
|
112
124
|
/**
|
|
113
125
|
*/
|
|
114
|
-
export enum Color {
|
|
115
|
-
White = 0,
|
|
116
|
-
Black = 1,
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
*/
|
|
120
126
|
export class EventModel {
|
|
121
127
|
free(): void;
|
|
122
128
|
/**
|
|
@@ -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}
|
|
@@ -495,8 +503,8 @@ export interface InitOutput {
|
|
|
495
503
|
readonly monsgamemodel_is_moves_verified: (a: number) => number;
|
|
496
504
|
readonly monsgamemodel_item: (a: number, b: number) => number;
|
|
497
505
|
readonly monsgamemodel_locations_with_content: (a: number, b: number) => void;
|
|
498
|
-
readonly monsgamemodel_new: () => number;
|
|
499
|
-
readonly monsgamemodel_newForSimulation: () => number;
|
|
506
|
+
readonly monsgamemodel_new: (a: number) => number;
|
|
507
|
+
readonly monsgamemodel_newForSimulation: (a: number) => number;
|
|
500
508
|
readonly monsgamemodel_process_input: (a: number, b: number, c: number, d: number) => number;
|
|
501
509
|
readonly monsgamemodel_process_input_fen: (a: number, b: number, c: number) => number;
|
|
502
510
|
readonly monsgamemodel_remove_item: (a: number, b: number) => void;
|
|
@@ -522,6 +530,7 @@ export interface InitOutput {
|
|
|
522
530
|
readonly __wbg_set_nextinputmodel_location: (a: number, b: number) => void;
|
|
523
531
|
readonly __wbg_get_nextinputmodel_location: (a: number) => number;
|
|
524
532
|
readonly __wbg_squaremodel_free: (a: number) => void;
|
|
533
|
+
readonly winner: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => void;
|
|
525
534
|
readonly __wbg_get_location_i: (a: number) => number;
|
|
526
535
|
readonly __wbg_get_location_j: (a: number) => number;
|
|
527
536
|
readonly __wbg_get_mon_color: (a: number) => number;
|
|
@@ -532,14 +541,13 @@ export interface InitOutput {
|
|
|
532
541
|
readonly __wbg_set_location_j: (a: number, b: number) => void;
|
|
533
542
|
readonly __wbg_set_mon_color: (a: number, b: number) => void;
|
|
534
543
|
readonly __wbg_set_mon_kind: (a: number, b: number) => void;
|
|
535
|
-
readonly location_new: (a: number, b: number) => number;
|
|
536
544
|
readonly mon_decrease_cooldown: (a: number) => void;
|
|
537
545
|
readonly mon_faint: (a: number) => void;
|
|
538
546
|
readonly mon_is_fainted: (a: number) => number;
|
|
539
547
|
readonly mon_new: (a: number, b: number, c: number) => number;
|
|
548
|
+
readonly location_new: (a: number, b: number) => number;
|
|
540
549
|
readonly __wbg_set_mon_cooldown: (a: number, b: number) => void;
|
|
541
550
|
readonly __wbg_get_mon_cooldown: (a: number) => number;
|
|
542
|
-
readonly winner: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => void;
|
|
543
551
|
readonly __wbindgen_malloc: (a: number, b: number) => number;
|
|
544
552
|
readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
545
553
|
readonly __wbindgen_add_to_stack_pointer: (a: number) => number;
|
package/mons-web.js
CHANGED
|
@@ -198,22 +198,25 @@ function handleError(f, args) {
|
|
|
198
198
|
}
|
|
199
199
|
/**
|
|
200
200
|
*/
|
|
201
|
-
export const 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", });
|
|
202
|
-
/**
|
|
203
|
-
*/
|
|
204
201
|
export const ManaKind = Object.freeze({ Regular:0,"0":"Regular",Supermana:1,"1":"Supermana", });
|
|
205
202
|
/**
|
|
206
203
|
*/
|
|
207
|
-
export const
|
|
204
|
+
export const 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", });
|
|
208
205
|
/**
|
|
209
206
|
*/
|
|
210
|
-
export const
|
|
207
|
+
export const Consumable = Object.freeze({ Potion:0,"0":"Potion",Bomb:1,"1":"Bomb",BombOrPotion:2,"2":"BombOrPotion", });
|
|
211
208
|
/**
|
|
212
209
|
*/
|
|
213
210
|
export const ItemModelKind = Object.freeze({ Mon:0,"0":"Mon",Mana:1,"1":"Mana",MonWithMana:2,"2":"MonWithMana",MonWithConsumable:3,"3":"MonWithConsumable",Consumable:4,"4":"Consumable", });
|
|
214
211
|
/**
|
|
215
212
|
*/
|
|
216
|
-
export const
|
|
213
|
+
export const GameVariant = Object.freeze({ Classic:0,"0":"Classic",SwappedManaRows:1,"1":"SwappedManaRows", });
|
|
214
|
+
/**
|
|
215
|
+
*/
|
|
216
|
+
export const AvailableMoveKind = Object.freeze({ MonMove:0,"0":"MonMove",ManaMove:1,"1":"ManaMove",Action:2,"2":"Action",Potion:3,"3":"Potion", });
|
|
217
|
+
/**
|
|
218
|
+
*/
|
|
219
|
+
export const Color = Object.freeze({ White:0,"0":"White",Black:1,"1":"Black", });
|
|
217
220
|
/**
|
|
218
221
|
*/
|
|
219
222
|
export const Modifier = Object.freeze({ SelectPotion:0,"0":"SelectPotion",SelectBomb:1,"1":"SelectBomb",Cancel:2,"2":"Cancel", });
|
|
@@ -222,13 +225,13 @@ export const Modifier = Object.freeze({ SelectPotion:0,"0":"SelectPotion",Select
|
|
|
222
225
|
export const MonKind = Object.freeze({ Demon:0,"0":"Demon",Drainer:1,"1":"Drainer",Angel:2,"2":"Angel",Spirit:3,"3":"Spirit",Mystic:4,"4":"Mystic", });
|
|
223
226
|
/**
|
|
224
227
|
*/
|
|
225
|
-
export const
|
|
228
|
+
export const 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", });
|
|
226
229
|
/**
|
|
227
230
|
*/
|
|
228
|
-
export const
|
|
231
|
+
export const 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", });
|
|
229
232
|
/**
|
|
230
233
|
*/
|
|
231
|
-
export const
|
|
234
|
+
export const OutputModelKind = Object.freeze({ InvalidInput:0,"0":"InvalidInput",LocationsToStartFrom:1,"1":"LocationsToStartFrom",NextInputOptions:2,"2":"NextInputOptions",Events:3,"3":"Events", });
|
|
232
235
|
|
|
233
236
|
const EventModelFinalization = (typeof FinalizationRegistry === 'undefined')
|
|
234
237
|
? { register: () => {}, unregister: () => {} }
|
|
@@ -863,10 +866,11 @@ export class MonsGameModel {
|
|
|
863
866
|
return ret === 0 ? undefined : MonsGameModel.__wrap(ret);
|
|
864
867
|
}
|
|
865
868
|
/**
|
|
869
|
+
* @param {GameVariant} variant
|
|
866
870
|
* @returns {MonsGameModel}
|
|
867
871
|
*/
|
|
868
|
-
static newForSimulation() {
|
|
869
|
-
const ret = wasm.monsgamemodel_newForSimulation();
|
|
872
|
+
static newForSimulation(variant) {
|
|
873
|
+
const ret = wasm.monsgamemodel_newForSimulation(variant);
|
|
870
874
|
return MonsGameModel.__wrap(ret);
|
|
871
875
|
}
|
|
872
876
|
/**
|
|
@@ -969,10 +973,11 @@ export class MonsGameModel {
|
|
|
969
973
|
}
|
|
970
974
|
}
|
|
971
975
|
/**
|
|
976
|
+
* @param {GameVariant} variant
|
|
972
977
|
* @returns {MonsGameModel}
|
|
973
978
|
*/
|
|
974
|
-
static new() {
|
|
975
|
-
const ret = wasm.monsgamemodel_new();
|
|
979
|
+
static new(variant) {
|
|
980
|
+
const ret = wasm.monsgamemodel_new(variant);
|
|
976
981
|
return MonsGameModel.__wrap(ret);
|
|
977
982
|
}
|
|
978
983
|
/**
|
|
@@ -1416,10 +1421,6 @@ function __wbg_get_imports() {
|
|
|
1416
1421
|
const ret = getStringFromWasm0(arg0, arg1);
|
|
1417
1422
|
return addHeapObject(ret);
|
|
1418
1423
|
};
|
|
1419
|
-
imports.wbg.__wbg_nextinputmodel_new = function(arg0) {
|
|
1420
|
-
const ret = NextInputModel.__wrap(arg0);
|
|
1421
|
-
return addHeapObject(ret);
|
|
1422
|
-
};
|
|
1423
1424
|
imports.wbg.__wbg_location_new = function(arg0) {
|
|
1424
1425
|
const ret = Location.__wrap(arg0);
|
|
1425
1426
|
return addHeapObject(ret);
|
|
@@ -1428,6 +1429,10 @@ function __wbg_get_imports() {
|
|
|
1428
1429
|
const ret = EventModel.__wrap(arg0);
|
|
1429
1430
|
return addHeapObject(ret);
|
|
1430
1431
|
};
|
|
1432
|
+
imports.wbg.__wbg_nextinputmodel_new = function(arg0) {
|
|
1433
|
+
const ret = NextInputModel.__wrap(arg0);
|
|
1434
|
+
return addHeapObject(ret);
|
|
1435
|
+
};
|
|
1431
1436
|
imports.wbg.__wbg_location_unwrap = function(arg0) {
|
|
1432
1437
|
const ret = Location.__unwrap(takeObject(arg0));
|
|
1433
1438
|
return ret;
|
package/mons-web_bg.wasm
CHANGED
|
Binary file
|