mons-rust 0.1.130 → 0.1.132

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
@@ -12,26 +12,31 @@ Docs:
12
12
 
13
13
  - runbook: `HOW_TO_ITERATE_ON_AUTOMOVE.md`
14
14
  - live board: `AUTOMOVE_IDEAS.md`
15
+ - structural review: `docs/automove-structural-review.md`
15
16
  - durable rules: `docs/automove-knowledge.md`
16
17
  - archive: `docs/automove-archive.md`
17
18
 
18
19
  Live surface:
19
20
 
20
- - retained profiles: `shipping_pro_search`, `frontier_pro_v2_guarded`
21
+ - retained profiles: `shipping_pro_search`, previous-production `frontier_pro_v2_guarded`, promoted `frontier_pro_v10_bounded_tactical`
21
22
  - canonical stages: `guardrails`, `pro-triage`, `runtime-preflight`, `pro-reliability`, `pro-reliability-confirm`
22
23
 
23
24
  Quickstart:
24
25
 
25
- - `./scripts/run-automove-canonical-loop.sh frontier_pro_v2_guarded`
26
- - `./scripts/run-automove-canonical-loop.sh --confirm frontier_pro_v2_guarded`
27
- - `./scripts/run-automove-experiment.sh <stage> frontier_pro_v2_guarded`
26
+ - `./scripts/run-automove-canonical-loop.sh frontier_pro_v10_bounded_tactical`
27
+ - `./scripts/run-automove-canonical-loop.sh --confirm frontier_pro_v10_bounded_tactical`
28
+ - `./scripts/run-automove-experiment.sh <stage> frontier_pro_v10_bounded_tactical`
29
+ - `./scripts/run-automove-experiment.sh pro-profile-sweep frontier_pro_v2_raw`
30
+ - `./scripts/check-automove-hygiene.sh`
28
31
  - `./scripts/clean-experiment-artifacts.sh --dry-run`
32
+ - `./scripts/clean-experiment-artifacts.sh --dry-run --all-target`
29
33
 
30
34
  Artifacts:
31
35
 
32
36
  - selected-profile logs: `target/experiment-runs/<profile>/`
33
37
  - workflow-only logs: `target/experiment-runs/misc/`
34
38
  - runtime-preflight stamps: `target/experiment-stamps/`
39
+ - full local build/artifact cache: `target/` via `--all-target`
35
40
 
36
41
  ## Rules Tests
37
42
 
@@ -56,10 +61,14 @@ Use `keep/<name>` for any branch that should survive repo cleanup.
56
61
 
57
62
  ## Publishing
58
63
 
64
+ - Set the release version in `Cargo.toml` and `Cargo.lock`, then commit the complete release change set. `publish.sh` refuses a dirty worktree and no longer mutates the version after validation.
59
65
  - `./publish.sh`
60
- - Confirm public Pro still routes through `frontier_pro_v2_guarded`.
61
- - Confirm `shipping_pro_search` remains available as the retained baseline.
66
+ - Confirm public Pro routes through `frontier_pro_v10_bounded_tactical`.
67
+ - Confirm `frontier_pro_v2_guarded` and `shipping_pro_search` remain available as the previous-production comparator and search-only baseline.
62
68
  - Run `cargo test`.
63
- - Run `cargo test --release --lib smart_automove_release_opening_black_reply_speed_gate -- --ignored --nocapture`.
64
- - Run `cargo test --release --lib smart_automove_release_mixed_runtime_speed_gate -- --ignored --nocapture`.
69
+ - Run `cargo test --release --lib smart_automove_pro_matches_frontier_bounded_tactical_selector_on_release_fixture`.
70
+ - Run `cargo test --release --lib automove_runtime_black_turn_eight_deadline_tail_probe -- --ignored --nocapture` to enforce the whole-call `700ms` ceiling.
71
+ - Run `./scripts/check-automove-hygiene.sh`.
72
+ - Run `./scripts/assert-release-package-surface.sh pkg/web pkg/node` after the Wasm packages are built.
73
+ - Run `node ./scripts/assert-release-automove-route.cjs pkg/node/mons-rust.js` to verify the generated package routes public Pro through bounded tactical v10 on a fixture that differs from both retained v2 and shipping search.
65
74
  - Clean disposable experiment artifacts after validation with `./scripts/clean-experiment-artifacts.sh`.
package/mons-rust.d.ts CHANGED
@@ -10,25 +10,11 @@
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 NextInputKind {
13
+ export enum AvailableMoveKind {
14
14
  MonMove = 0,
15
15
  ManaMove = 1,
16
- MysticAction = 2,
17
- DemonAction = 3,
18
- DemonAdditionalStep = 4,
19
- SpiritTargetCapture = 5,
20
- SpiritTargetMove = 6,
21
- SelectConsumable = 7,
22
- BombAttack = 8,
23
- }
24
- /**
25
- */
26
- export enum ItemModelKind {
27
- Mon = 0,
28
- Mana = 1,
29
- MonWithMana = 2,
30
- MonWithConsumable = 3,
31
- Consumable = 4,
16
+ Action = 2,
17
+ Potion = 3,
32
18
  }
33
19
  /**
34
20
  */
@@ -56,11 +42,35 @@ export enum EventModelKind {
56
42
  }
57
43
  /**
58
44
  */
59
- export enum AvailableMoveKind {
45
+ export enum SquareModelKind {
46
+ Regular = 0,
47
+ ConsumableBase = 1,
48
+ SupermanaBase = 2,
49
+ ManaBase = 3,
50
+ ManaPool = 4,
51
+ MonBase = 5,
52
+ }
53
+ /**
54
+ */
55
+ export enum MonKind {
56
+ Demon = 0,
57
+ Drainer = 1,
58
+ Angel = 2,
59
+ Spirit = 3,
60
+ Mystic = 4,
61
+ }
62
+ /**
63
+ */
64
+ export enum NextInputKind {
60
65
  MonMove = 0,
61
66
  ManaMove = 1,
62
- Action = 2,
63
- Potion = 3,
67
+ MysticAction = 2,
68
+ DemonAction = 3,
69
+ DemonAdditionalStep = 4,
70
+ SpiritTargetCapture = 5,
71
+ SpiritTargetMove = 6,
72
+ SelectConsumable = 7,
73
+ BombAttack = 8,
64
74
  }
65
75
  /**
66
76
  */
@@ -71,26 +81,15 @@ export enum Consumable {
71
81
  }
72
82
  /**
73
83
  */
74
- export enum OutputModelKind {
75
- InvalidInput = 0,
76
- LocationsToStartFrom = 1,
77
- NextInputOptions = 2,
78
- Events = 3,
79
- }
80
- /**
81
- */
82
84
  export enum Color {
83
85
  White = 0,
84
86
  Black = 1,
85
87
  }
86
88
  /**
87
89
  */
88
- export enum MonKind {
89
- Demon = 0,
90
- Drainer = 1,
91
- Angel = 2,
92
- Spirit = 3,
93
- Mystic = 4,
90
+ export enum ManaKind {
91
+ Regular = 0,
92
+ Supermana = 1,
94
93
  }
95
94
  /**
96
95
  */
@@ -101,6 +100,23 @@ export enum Modifier {
101
100
  }
102
101
  /**
103
102
  */
103
+ export enum ItemModelKind {
104
+ Mon = 0,
105
+ Mana = 1,
106
+ MonWithMana = 2,
107
+ MonWithConsumable = 3,
108
+ Consumable = 4,
109
+ }
110
+ /**
111
+ */
112
+ export enum OutputModelKind {
113
+ InvalidInput = 0,
114
+ LocationsToStartFrom = 1,
115
+ NextInputOptions = 2,
116
+ Events = 3,
117
+ }
118
+ /**
119
+ */
104
120
  export enum GameVariant {
105
121
  Classic = 0,
106
122
  SwappedManaRows = 1,
@@ -117,22 +133,6 @@ export enum GameVariant {
117
133
  }
118
134
  /**
119
135
  */
120
- export enum SquareModelKind {
121
- Regular = 0,
122
- ConsumableBase = 1,
123
- SupermanaBase = 2,
124
- ManaBase = 3,
125
- ManaPool = 4,
126
- MonBase = 5,
127
- }
128
- /**
129
- */
130
- export enum ManaKind {
131
- Regular = 0,
132
- Supermana = 1,
133
- }
134
- /**
135
- */
136
136
  export class EventModel {
137
137
  free(): void;
138
138
  /**
package/mons-rust.js CHANGED
@@ -1,4 +1,5 @@
1
1
  let imports = {};
2
+ imports['./snippets/mons-rust-2106594ecd9a3eb2/inline0.js'] = require('./snippets/mons-rust-2106594ecd9a3eb2/inline0.js');
2
3
  imports['__wbindgen_placeholder__'] = module.exports;
3
4
  let wasm;
4
5
  const { TextDecoder, TextEncoder } = require(`util`);
@@ -201,40 +202,40 @@ function handleError(f, args) {
201
202
  }
202
203
  /**
203
204
  */
204
- 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", });
205
+ module.exports.AvailableMoveKind = Object.freeze({ MonMove:0,"0":"MonMove",ManaMove:1,"1":"ManaMove",Action:2,"2":"Action",Potion:3,"3":"Potion", });
205
206
  /**
206
207
  */
207
- 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", });
208
+ 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", });
208
209
  /**
209
210
  */
210
- 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", });
211
+ 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", });
211
212
  /**
212
213
  */
213
- module.exports.AvailableMoveKind = Object.freeze({ MonMove:0,"0":"MonMove",ManaMove:1,"1":"ManaMove",Action:2,"2":"Action",Potion:3,"3":"Potion", });
214
+ 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", });
214
215
  /**
215
216
  */
216
- module.exports.Consumable = Object.freeze({ Potion:0,"0":"Potion",Bomb:1,"1":"Bomb",BombOrPotion:2,"2":"BombOrPotion", });
217
+ 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", });
217
218
  /**
218
219
  */
219
- module.exports.OutputModelKind = Object.freeze({ InvalidInput:0,"0":"InvalidInput",LocationsToStartFrom:1,"1":"LocationsToStartFrom",NextInputOptions:2,"2":"NextInputOptions",Events:3,"3":"Events", });
220
+ module.exports.Consumable = Object.freeze({ Potion:0,"0":"Potion",Bomb:1,"1":"Bomb",BombOrPotion:2,"2":"BombOrPotion", });
220
221
  /**
221
222
  */
222
223
  module.exports.Color = Object.freeze({ White:0,"0":"White",Black:1,"1":"Black", });
223
224
  /**
224
225
  */
225
- 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", });
226
+ module.exports.ManaKind = Object.freeze({ Regular:0,"0":"Regular",Supermana:1,"1":"Supermana", });
226
227
  /**
227
228
  */
228
229
  module.exports.Modifier = Object.freeze({ SelectPotion:0,"0":"SelectPotion",SelectBomb:1,"1":"SelectBomb",Cancel:2,"2":"Cancel", });
229
230
  /**
230
231
  */
231
- module.exports.GameVariant = Object.freeze({ Classic:0,"0":"Classic",SwappedManaRows:1,"1":"SwappedManaRows",OffsetArcManaRows:2,"2":"OffsetArcManaRows",CenterSpokeManaRows:3,"3":"CenterSpokeManaRows",AlternatingManaRows:4,"4":"AlternatingManaRows",InnerWedgeManaRows:5,"5":"InnerWedgeManaRows",OuterWedgeManaRows:6,"6":"OuterWedgeManaRows",BentCenterManaRows:7,"7":"BentCenterManaRows",OuterEdgeManaRows:8,"8":"OuterEdgeManaRows",SplitFlankManaRows:9,"9":"SplitFlankManaRows",ForwardBridgeManaRows:10,"10":"ForwardBridgeManaRows",CornerChainManaRows:11,"11":"CornerChainManaRows", });
232
+ 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", });
232
233
  /**
233
234
  */
234
- 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", });
235
+ module.exports.OutputModelKind = Object.freeze({ InvalidInput:0,"0":"InvalidInput",LocationsToStartFrom:1,"1":"LocationsToStartFrom",NextInputOptions:2,"2":"NextInputOptions",Events:3,"3":"Events", });
235
236
  /**
236
237
  */
237
- module.exports.ManaKind = Object.freeze({ Regular:0,"0":"Regular",Supermana:1,"1":"Supermana", });
238
+ module.exports.GameVariant = Object.freeze({ Classic:0,"0":"Classic",SwappedManaRows:1,"1":"SwappedManaRows",OffsetArcManaRows:2,"2":"OffsetArcManaRows",CenterSpokeManaRows:3,"3":"CenterSpokeManaRows",AlternatingManaRows:4,"4":"AlternatingManaRows",InnerWedgeManaRows:5,"5":"InnerWedgeManaRows",OuterWedgeManaRows:6,"6":"OuterWedgeManaRows",BentCenterManaRows:7,"7":"BentCenterManaRows",OuterEdgeManaRows:8,"8":"OuterEdgeManaRows",SplitFlankManaRows:9,"9":"SplitFlankManaRows",ForwardBridgeManaRows:10,"10":"ForwardBridgeManaRows",CornerChainManaRows:11,"11":"CornerChainManaRows", });
238
239
 
239
240
  const EventModelFinalization = (typeof FinalizationRegistry === 'undefined')
240
241
  ? { register: () => {}, unregister: () => {} }
@@ -1417,16 +1418,16 @@ module.exports.__wbg_nextinputmodel_new = function(arg0) {
1417
1418
  return addHeapObject(ret);
1418
1419
  };
1419
1420
 
1420
- module.exports.__wbg_location_unwrap = function(arg0) {
1421
- const ret = Location.__unwrap(takeObject(arg0));
1422
- return ret;
1423
- };
1424
-
1425
1421
  module.exports.__wbg_verbosetrackingentitymodel_new = function(arg0) {
1426
1422
  const ret = VerboseTrackingEntityModel.__wrap(arg0);
1427
1423
  return addHeapObject(ret);
1428
1424
  };
1429
1425
 
1426
+ module.exports.__wbg_location_unwrap = function(arg0) {
1427
+ const ret = Location.__unwrap(takeObject(arg0));
1428
+ return ret;
1429
+ };
1430
+
1430
1431
  module.exports.__wbg_crypto_1d1f22824a6a080c = function(arg0) {
1431
1432
  const ret = getObject(arg0).crypto;
1432
1433
  return addHeapObject(ret);
package/mons-rust_bg.wasm CHANGED
Binary file
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mons-rust",
3
3
  "description": "super metal mons",
4
- "version": "0.1.130",
4
+ "version": "0.1.132",
5
5
  "license": "CC0-1.0",
6
6
  "repository": {
7
7
  "type": "git",