mons-web 0.1.124 → 0.1.125

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 CHANGED
@@ -10,34 +10,45 @@ or
10
10
  Canonical automove workflow:
11
11
 
12
12
  - runbook: `HOW_TO_ITERATE_ON_AUTOMOVE.md`
13
- - active backlog: `AUTOMOVE_IDEAS.md`
13
+ - live board: `AUTOMOVE_IDEAS.md`
14
14
  - durable lessons: `docs/automove-knowledge.md`
15
15
  - archive: `docs/automove-archive.md`
16
- - compatibility pointer: `docs/automove-experiments.md`
17
16
 
18
- Session-start commands:
17
+ Active experiment stages:
19
18
 
20
- - `./scripts/run-automove-experiment.sh guardrails <candidate>`
21
- - `SMART_TRIAGE_SURFACE=<surface> ./scripts/run-automove-experiment.sh triage <candidate>`
22
- - `SMART_TRIAGE_SURFACE=<opening_reply|primary_pro> ./scripts/run-automove-experiment.sh pro-triage <candidate>`
23
- - `./scripts/run-automove-experiment.sh runtime-preflight <candidate>`
24
- - `SMART_PROMOTION_TARGET_MODE=<fast|normal> ./scripts/run-automove-experiment.sh fast-screen <candidate>`
25
- - `./scripts/run-automove-experiment.sh pro-fast-screen <candidate>`
19
+ - `guardrails`
20
+ - `pro-triage`
21
+ - `runtime-preflight`
22
+ - `pro-reliability`
23
+ - `pro-reliability-confirm`
24
+
25
+ Canonical commands:
26
+
27
+ - `./scripts/run-automove-experiment.sh guardrails runtime_pro_turn_engine_v30`
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`
26
32
  - `./scripts/clean-experiment-artifacts.sh --dry-run`
27
33
 
34
+ Active retained profile surface:
35
+
36
+ - `runtime_current`
37
+ - `runtime_pro_turn_engine_v30`
38
+
39
+ Notes:
40
+
41
+ - Shipping runtime is `runtime_current`.
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.
45
+
28
46
  Default artifact layout:
29
47
 
30
48
  - logs: `target/experiment-runs/<candidate>/`
31
49
  - workflow-only logs: `target/experiment-runs/misc/`
32
50
  - runtime-preflight stamps: `target/experiment-stamps/`
33
51
 
34
- Compatibility notes:
35
-
36
- - `preflight`, `pre-screen`, and `pro-pre-screen` still exist, but they are legacy diagnostics.
37
- - `audit-screen` and `pro-audit-screen` are spot checks for clean triage rejects, not promotion evidence.
38
- - Unless a note says otherwise, new candidates should branch from `runtime_current`.
39
- - Shipping runtime note: the package release ships `runtime_current`; `runtime_pro_turn_engine_v30` is the retained Pro frontier for offline experiments, and `runtime_pro_turn_engine_v1` remains reference-only history.
40
-
41
52
  ## rules-tests runner
42
53
 
43
54
  Fixtures are stored as chunk archives in `rules-tests-chunks/` (default: `100000` fixtures per chunk).
@@ -85,7 +96,7 @@ Release checklist:
85
96
 
86
97
  - Review `git status` before publish and confirm only intentional committed changes are present.
87
98
  - Confirm `runtime_current` is still the shipping automove path.
88
- - Confirm retained Pro experiment frontiers (`runtime_pro_turn_engine_v30` and newer candidate-only follow-ups) remain fenced off from production.
99
+ - Confirm `runtime_pro_turn_engine_v30` remains fenced off as an offline experiment frontier.
89
100
  - Run `cargo test`.
90
101
  - Run `cargo test --release --lib smart_automove_release_opening_black_reply_speed_gate -- --ignored --nocapture`.
91
102
  - Run `cargo test --release --lib smart_automove_release_mixed_runtime_speed_gate -- --ignored --nocapture`.
@@ -100,6 +111,6 @@ Production blockers:
100
111
 
101
112
  Non-blocking retained experiment state:
102
113
 
103
- - retained Pro frontier profiles (`runtime_pro_turn_engine_v30`, candidate-only follow-ups, and `runtime_pro_turn_engine_v1` as reference history) plus ignored probes
114
+ - the retained `runtime_pro_turn_engine_v30` frontier plus ignored probes
104
115
  - experiment workflow/logging helpers
105
116
  - compressed automove backlog / knowledge / archive docs
package/mons-web.d.ts CHANGED
@@ -10,23 +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 AvailableMoveKind {
23
- MonMove = 0,
24
- ManaMove = 1,
25
- Action = 2,
26
- Potion = 3,
27
- }
28
- /**
29
- */
30
13
  export enum SquareModelKind {
31
14
  Regular = 0,
32
15
  ConsumableBase = 1,
@@ -37,24 +20,17 @@ export enum SquareModelKind {
37
20
  }
38
21
  /**
39
22
  */
40
- export enum Modifier {
41
- SelectPotion = 0,
42
- SelectBomb = 1,
43
- Cancel = 2,
44
- }
45
- /**
46
- */
47
23
  export enum ManaKind {
48
24
  Regular = 0,
49
25
  Supermana = 1,
50
26
  }
51
27
  /**
52
28
  */
53
- export enum OutputModelKind {
54
- InvalidInput = 0,
55
- LocationsToStartFrom = 1,
56
- NextInputOptions = 2,
57
- Events = 3,
29
+ export enum AvailableMoveKind {
30
+ MonMove = 0,
31
+ ManaMove = 1,
32
+ Action = 2,
33
+ Potion = 3,
58
34
  }
59
35
  /**
60
36
  */
@@ -82,18 +58,12 @@ export enum EventModelKind {
82
58
  }
83
59
  /**
84
60
  */
85
- export enum MonKind {
86
- Demon = 0,
87
- Drainer = 1,
88
- Angel = 2,
89
- Spirit = 3,
90
- Mystic = 4,
91
- }
92
- /**
93
- */
94
- export enum Color {
95
- White = 0,
96
- Black = 1,
61
+ export enum ItemModelKind {
62
+ Mon = 0,
63
+ Mana = 1,
64
+ MonWithMana = 2,
65
+ MonWithConsumable = 3,
66
+ Consumable = 4,
97
67
  }
98
68
  /**
99
69
  */
@@ -104,6 +74,22 @@ export enum Consumable {
104
74
  }
105
75
  /**
106
76
  */
77
+ export enum Modifier {
78
+ SelectPotion = 0,
79
+ SelectBomb = 1,
80
+ Cancel = 2,
81
+ }
82
+ /**
83
+ */
84
+ export enum MonKind {
85
+ Demon = 0,
86
+ Drainer = 1,
87
+ Angel = 2,
88
+ Spirit = 3,
89
+ Mystic = 4,
90
+ }
91
+ /**
92
+ */
107
93
  export enum NextInputKind {
108
94
  MonMove = 0,
109
95
  ManaMove = 1,
@@ -117,6 +103,20 @@ export enum NextInputKind {
117
103
  }
118
104
  /**
119
105
  */
106
+ export enum OutputModelKind {
107
+ InvalidInput = 0,
108
+ LocationsToStartFrom = 1,
109
+ NextInputOptions = 2,
110
+ Events = 3,
111
+ }
112
+ /**
113
+ */
114
+ export enum Color {
115
+ White = 0,
116
+ Black = 1,
117
+ }
118
+ /**
119
+ */
120
120
  export class EventModel {
121
121
  free(): void;
122
122
  /**
@@ -522,24 +522,24 @@ export interface InitOutput {
522
522
  readonly __wbg_set_nextinputmodel_location: (a: number, b: number) => void;
523
523
  readonly __wbg_get_nextinputmodel_location: (a: number) => number;
524
524
  readonly __wbg_squaremodel_free: (a: number) => void;
525
+ readonly __wbg_get_location_i: (a: number) => number;
526
+ readonly __wbg_get_location_j: (a: number) => number;
525
527
  readonly __wbg_get_mon_color: (a: number) => number;
526
- readonly __wbg_get_mon_cooldown: (a: number) => number;
527
528
  readonly __wbg_get_mon_kind: (a: number) => number;
529
+ readonly __wbg_location_free: (a: number) => void;
528
530
  readonly __wbg_mon_free: (a: number) => void;
531
+ readonly __wbg_set_location_i: (a: number, b: number) => void;
532
+ readonly __wbg_set_location_j: (a: number, b: number) => void;
529
533
  readonly __wbg_set_mon_color: (a: number, b: number) => void;
530
- readonly __wbg_set_mon_cooldown: (a: number, b: number) => void;
531
534
  readonly __wbg_set_mon_kind: (a: number, b: number) => void;
535
+ readonly location_new: (a: number, b: number) => number;
532
536
  readonly mon_decrease_cooldown: (a: number) => void;
533
537
  readonly mon_faint: (a: number) => void;
534
538
  readonly mon_is_fainted: (a: number) => number;
535
539
  readonly mon_new: (a: number, b: number, c: number) => number;
540
+ readonly __wbg_set_mon_cooldown: (a: number, b: number) => void;
541
+ readonly __wbg_get_mon_cooldown: (a: number) => number;
536
542
  readonly winner: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => void;
537
- readonly __wbg_get_location_i: (a: number) => number;
538
- readonly __wbg_get_location_j: (a: number) => number;
539
- readonly __wbg_location_free: (a: number) => void;
540
- readonly __wbg_set_location_i: (a: number, b: number) => void;
541
- readonly __wbg_set_location_j: (a: number, b: number) => void;
542
- readonly location_new: (a: number, b: number) => number;
543
543
  readonly __wbindgen_malloc: (a: number, b: number) => number;
544
544
  readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
545
545
  readonly __wbindgen_add_to_stack_pointer: (a: number) => number;
package/mons-web.js CHANGED
@@ -198,37 +198,37 @@ function handleError(f, args) {
198
198
  }
199
199
  /**
200
200
  */
201
- 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", });
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
202
  /**
203
203
  */
204
- export const AvailableMoveKind = Object.freeze({ MonMove:0,"0":"MonMove",ManaMove:1,"1":"ManaMove",Action:2,"2":"Action",Potion:3,"3":"Potion", });
204
+ export const ManaKind = Object.freeze({ Regular:0,"0":"Regular",Supermana:1,"1":"Supermana", });
205
205
  /**
206
206
  */
207
- 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", });
207
+ export const AvailableMoveKind = Object.freeze({ MonMove:0,"0":"MonMove",ManaMove:1,"1":"ManaMove",Action:2,"2":"Action",Potion:3,"3":"Potion", });
208
208
  /**
209
209
  */
210
- export const Modifier = Object.freeze({ SelectPotion:0,"0":"SelectPotion",SelectBomb:1,"1":"SelectBomb",Cancel:2,"2":"Cancel", });
210
+ 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", });
211
211
  /**
212
212
  */
213
- export const ManaKind = Object.freeze({ Regular:0,"0":"Regular",Supermana:1,"1":"Supermana", });
213
+ 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
214
  /**
215
215
  */
216
- export const OutputModelKind = Object.freeze({ InvalidInput:0,"0":"InvalidInput",LocationsToStartFrom:1,"1":"LocationsToStartFrom",NextInputOptions:2,"2":"NextInputOptions",Events:3,"3":"Events", });
216
+ export const Consumable = Object.freeze({ Potion:0,"0":"Potion",Bomb:1,"1":"Bomb",BombOrPotion:2,"2":"BombOrPotion", });
217
217
  /**
218
218
  */
219
- 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", });
219
+ export const Modifier = Object.freeze({ SelectPotion:0,"0":"SelectPotion",SelectBomb:1,"1":"SelectBomb",Cancel:2,"2":"Cancel", });
220
220
  /**
221
221
  */
222
222
  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
223
  /**
224
224
  */
225
- export const Color = Object.freeze({ White:0,"0":"White",Black:1,"1":"Black", });
225
+ 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", });
226
226
  /**
227
227
  */
228
- export const Consumable = Object.freeze({ Potion:0,"0":"Potion",Bomb:1,"1":"Bomb",BombOrPotion:2,"2":"BombOrPotion", });
228
+ export const OutputModelKind = Object.freeze({ InvalidInput:0,"0":"InvalidInput",LocationsToStartFrom:1,"1":"LocationsToStartFrom",NextInputOptions:2,"2":"NextInputOptions",Events:3,"3":"Events", });
229
229
  /**
230
230
  */
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", });
231
+ export const Color = Object.freeze({ White:0,"0":"White",Black:1,"1":"Black", });
232
232
 
233
233
  const EventModelFinalization = (typeof FinalizationRegistry === 'undefined')
234
234
  ? { register: () => {}, unregister: () => {} }
@@ -644,14 +644,14 @@ export class Mon {
644
644
  * @returns {number}
645
645
  */
646
646
  get cooldown() {
647
- const ret = wasm.__wbg_get_mon_cooldown(this.__wbg_ptr);
647
+ const ret = wasm.__wbg_get_location_i(this.__wbg_ptr);
648
648
  return ret;
649
649
  }
650
650
  /**
651
651
  * @param {number} arg0
652
652
  */
653
653
  set cooldown(arg0) {
654
- wasm.__wbg_set_mon_cooldown(this.__wbg_ptr, arg0);
654
+ wasm.__wbg_set_location_i(this.__wbg_ptr, arg0);
655
655
  }
656
656
  /**
657
657
  * @returns {boolean}
@@ -1416,26 +1416,26 @@ function __wbg_get_imports() {
1416
1416
  const ret = getStringFromWasm0(arg0, arg1);
1417
1417
  return addHeapObject(ret);
1418
1418
  };
1419
- imports.wbg.__wbg_location_new = function(arg0) {
1420
- const ret = Location.__wrap(arg0);
1421
- return addHeapObject(ret);
1422
- };
1423
1419
  imports.wbg.__wbg_nextinputmodel_new = function(arg0) {
1424
1420
  const ret = NextInputModel.__wrap(arg0);
1425
1421
  return addHeapObject(ret);
1426
1422
  };
1427
- imports.wbg.__wbg_eventmodel_new = function(arg0) {
1428
- const ret = EventModel.__wrap(arg0);
1423
+ imports.wbg.__wbg_location_new = function(arg0) {
1424
+ const ret = Location.__wrap(arg0);
1429
1425
  return addHeapObject(ret);
1430
1426
  };
1431
- imports.wbg.__wbg_verbosetrackingentitymodel_new = function(arg0) {
1432
- const ret = VerboseTrackingEntityModel.__wrap(arg0);
1427
+ imports.wbg.__wbg_eventmodel_new = function(arg0) {
1428
+ const ret = EventModel.__wrap(arg0);
1433
1429
  return addHeapObject(ret);
1434
1430
  };
1435
1431
  imports.wbg.__wbg_location_unwrap = function(arg0) {
1436
1432
  const ret = Location.__unwrap(takeObject(arg0));
1437
1433
  return ret;
1438
1434
  };
1435
+ imports.wbg.__wbg_verbosetrackingentitymodel_new = function(arg0) {
1436
+ const ret = VerboseTrackingEntityModel.__wrap(arg0);
1437
+ return addHeapObject(ret);
1438
+ };
1439
1439
  imports.wbg.__wbg_crypto_1d1f22824a6a080c = function(arg0) {
1440
1440
  const ret = getObject(arg0).crypto;
1441
1441
  return addHeapObject(ret);
package/mons-web_bg.wasm CHANGED
Binary file
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "mons-web",
3
3
  "type": "module",
4
4
  "description": "super metal mons",
5
- "version": "0.1.124",
5
+ "version": "0.1.125",
6
6
  "license": "CC0-1.0",
7
7
  "repository": {
8
8
  "type": "git",