@reicek/neataptic-ts 0.1.24 → 0.1.26

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.
Files changed (215) hide show
  1. package/.github/copilot-instructions.md +11 -0
  2. package/.github/skills/trace-analyzer-extension/SKILL.md +3 -3
  3. package/.github/skills/trace-analyzer-extension/assets/extension-checklist.md +1 -1
  4. package/.github/skills/trace-analyzer-extension/references/analyzer-extension-workflow.md +1 -1
  5. package/.github/skills/trace-audit-reporting/SKILL.md +3 -3
  6. package/.github/skills/trace-audit-reporting/references/trace-analysis-workflow.md +1 -1
  7. package/.github/workflows/ci.yml +3 -3
  8. package/.github/workflows/deploy-pages.yml +6 -6
  9. package/.github/workflows/manual_release_pipeline.yml +3 -3
  10. package/.github/workflows/publish.yml +18 -19
  11. package/.github/workflows/release_dispatch.yml +3 -3
  12. package/package.json +26 -20
  13. package/plans/Flappy_Bird_Folder_Documentation_Pass.md +4 -4
  14. package/plans/README.md +24 -0
  15. package/plans/Roadmap.md +62 -40
  16. package/plans/analyze-trace-solid-split.plans.md +66 -0
  17. package/plans/architecture-solid-split.plans.md +9 -15
  18. package/plans/asciiMaze-typescript-repair.plans.md +1 -1
  19. package/plans/generate-docs-solid-split.plans.md +87 -0
  20. package/plans/methods-docs.plans.md +25 -1
  21. package/plans/methods-solid-split.plans.md +14 -14
  22. package/plans/neat-docs.plans.md +9 -1
  23. package/plans/neat-test-surface-repair.plans.md +1 -1
  24. package/plans/render-docs-html-solid-split.plans.md +68 -0
  25. package/plans/src-no-explicit-any-cleanup.plans.md +1 -1
  26. package/plans/utils-docs.plans.md +6 -1
  27. package/scripts/analyze-trace/analyze-trace.analysis.ts +479 -0
  28. package/scripts/analyze-trace/analyze-trace.constants.ts +35 -0
  29. package/scripts/analyze-trace/analyze-trace.io.ts +69 -0
  30. package/scripts/analyze-trace/analyze-trace.report.ts +100 -0
  31. package/scripts/analyze-trace/analyze-trace.shared.ts +116 -0
  32. package/scripts/analyze-trace/analyze-trace.ts +45 -0
  33. package/scripts/analyze-trace/analyze-trace.types.ts +72 -0
  34. package/scripts/assets/theme.css +80 -23
  35. package/scripts/copy-examples.ts +239 -0
  36. package/scripts/export-onnx.ts +223 -0
  37. package/scripts/generate-bench-tables.ts +378 -37
  38. package/scripts/generate-docs/generate-docs.constants.ts +107 -0
  39. package/scripts/generate-docs/generate-docs.order.ts +355 -0
  40. package/scripts/generate-docs/generate-docs.state.ts +31 -0
  41. package/scripts/generate-docs/generate-docs.targets.ts +165 -0
  42. package/scripts/generate-docs/generate-docs.ts +63 -0
  43. package/scripts/generate-docs/generate-docs.types.ts +112 -0
  44. package/scripts/generate-docs/output/generate-docs.output.folder-index.utils.ts +167 -0
  45. package/scripts/generate-docs/output/generate-docs.output.ordering.utils.ts +353 -0
  46. package/scripts/generate-docs/output/generate-docs.output.readme.utils.ts +420 -0
  47. package/scripts/generate-docs/output/generate-docs.output.ts +123 -0
  48. package/scripts/generate-docs/output/generate-docs.output.warnings.utils.ts +219 -0
  49. package/scripts/generate-docs/symbols/generate-docs.symbols.collection.utils.ts +365 -0
  50. package/scripts/generate-docs/symbols/generate-docs.symbols.jsdoc.utils.ts +373 -0
  51. package/scripts/generate-docs/symbols/generate-docs.symbols.normalize.utils.ts +155 -0
  52. package/scripts/generate-docs/symbols/generate-docs.symbols.render.utils.ts +149 -0
  53. package/scripts/generate-docs/symbols/generate-docs.symbols.signature.utils.ts +289 -0
  54. package/scripts/generate-docs/symbols/generate-docs.symbols.ts +11 -0
  55. package/scripts/mermaid-cli.mjs +102 -22
  56. package/scripts/mermaid-cli.ts +736 -0
  57. package/scripts/render-docs-html/render-docs-html.assets.ts +54 -0
  58. package/scripts/render-docs-html/render-docs-html.mermaid.ts +245 -0
  59. package/scripts/{render-docs-html.sidebar.ts → render-docs-html/render-docs-html.navigation.ts} +141 -144
  60. package/scripts/render-docs-html/render-docs-html.pages.ts +333 -0
  61. package/scripts/render-docs-html/render-docs-html.shared.ts +333 -0
  62. package/scripts/render-docs-html/render-docs-html.types.ts +42 -0
  63. package/scripts/render-docs-html.ts +23 -587
  64. package/scripts/run-docs.ts +238 -0
  65. package/scripts/write-dist-docs-pkg.ts +40 -0
  66. package/src/README.md +75 -75
  67. package/src/architecture/connection/README.md +5 -5
  68. package/src/architecture/layer/README.md +508 -508
  69. package/src/architecture/network/README.md +1458 -1458
  70. package/src/architecture/network/activate/README.md +694 -694
  71. package/src/architecture/network/bootstrap/README.md +77 -77
  72. package/src/architecture/network/connect/README.md +74 -74
  73. package/src/architecture/network/deterministic/README.md +135 -135
  74. package/src/architecture/network/evolve/README.md +364 -364
  75. package/src/architecture/network/gating/README.md +130 -130
  76. package/src/architecture/network/genetic/README.md +399 -399
  77. package/src/architecture/network/mutate/README.md +897 -897
  78. package/src/architecture/network/onnx/README.md +720 -720
  79. package/src/architecture/network/onnx/export/README.md +728 -728
  80. package/src/architecture/network/onnx/export/layers/README.md +450 -450
  81. package/src/architecture/network/onnx/import/README.md +618 -618
  82. package/src/architecture/network/onnx/schema/README.md +32 -32
  83. package/src/architecture/network/prune/README.md +245 -245
  84. package/src/architecture/network/remove/README.md +135 -135
  85. package/src/architecture/network/runtime/README.md +106 -106
  86. package/src/architecture/network/serialize/README.md +542 -542
  87. package/src/architecture/network/slab/README.md +608 -608
  88. package/src/architecture/network/standalone/README.md +212 -212
  89. package/src/architecture/network/stats/README.md +84 -84
  90. package/src/architecture/network/topology/README.md +465 -465
  91. package/src/architecture/network/training/README.md +200 -200
  92. package/src/architecture/node/README.md +5 -5
  93. package/src/architecture/nodePool/README.md +14 -14
  94. package/src/methods/README.md +99 -99
  95. package/src/methods/activation/README.md +189 -189
  96. package/src/methods/cost/README.md +131 -131
  97. package/src/methods/rate/README.md +86 -86
  98. package/src/multithreading/README.md +77 -77
  99. package/src/multithreading/workers/browser/README.md +8 -8
  100. package/src/multithreading/workers/node/README.md +8 -8
  101. package/src/neat/README.md +148 -148
  102. package/src/neat/adaptive/README.md +120 -120
  103. package/src/neat/adaptive/acceptance/README.md +40 -40
  104. package/src/neat/adaptive/complexity/README.md +137 -137
  105. package/src/neat/adaptive/core/README.md +197 -197
  106. package/src/neat/adaptive/lineage/README.md +90 -90
  107. package/src/neat/adaptive/mutation/README.md +284 -284
  108. package/src/neat/compat/README.md +43 -43
  109. package/src/neat/compat/core/README.md +90 -90
  110. package/src/neat/diversity/README.md +35 -35
  111. package/src/neat/diversity/core/README.md +88 -88
  112. package/src/neat/evaluate/README.md +85 -85
  113. package/src/neat/evaluate/auto-distance/README.md +75 -75
  114. package/src/neat/evaluate/entropy-compat/README.md +37 -37
  115. package/src/neat/evaluate/entropy-sharing/README.md +43 -43
  116. package/src/neat/evaluate/fitness/README.md +23 -23
  117. package/src/neat/evaluate/novelty/README.md +120 -120
  118. package/src/neat/evaluate/objectives/README.md +17 -17
  119. package/src/neat/evaluate/shared/README.md +94 -94
  120. package/src/neat/evolve/README.md +96 -96
  121. package/src/neat/evolve/adaptive/README.md +60 -60
  122. package/src/neat/evolve/objectives/README.md +63 -63
  123. package/src/neat/evolve/offspring/README.md +56 -56
  124. package/src/neat/evolve/population/README.md +171 -171
  125. package/src/neat/evolve/runtime/README.md +79 -79
  126. package/src/neat/evolve/speciation/README.md +74 -74
  127. package/src/neat/evolve/warnings/README.md +10 -10
  128. package/src/neat/export/README.md +114 -114
  129. package/src/neat/helpers/README.md +50 -50
  130. package/src/neat/init/README.md +9 -9
  131. package/src/neat/lineage/core/README.md +101 -101
  132. package/src/neat/multiobjective/category/README.md +74 -74
  133. package/src/neat/multiobjective/crowding/README.md +272 -272
  134. package/src/neat/multiobjective/dominance/README.md +171 -171
  135. package/src/neat/multiobjective/fronts/README.md +68 -68
  136. package/src/neat/multiobjective/metrics/README.md +43 -43
  137. package/src/neat/multiobjective/objectives/README.md +31 -31
  138. package/src/neat/multiobjective/shared/README.md +27 -27
  139. package/src/neat/mutation/README.md +97 -97
  140. package/src/neat/mutation/add-conn/README.md +115 -115
  141. package/src/neat/mutation/add-node/README.md +126 -126
  142. package/src/neat/mutation/flow/README.md +149 -149
  143. package/src/neat/mutation/repair/README.md +185 -185
  144. package/src/neat/mutation/select/README.md +117 -117
  145. package/src/neat/mutation/shared/README.md +32 -32
  146. package/src/neat/objectives/README.md +25 -25
  147. package/src/neat/objectives/core/README.md +67 -67
  148. package/src/neat/pruning/README.md +40 -40
  149. package/src/neat/pruning/core/README.md +171 -171
  150. package/src/neat/pruning/facade/README.md +32 -32
  151. package/src/neat/rng/README.md +104 -104
  152. package/src/neat/rng/core/README.md +137 -137
  153. package/src/neat/rng/facade/README.md +50 -50
  154. package/src/neat/selection/README.md +111 -111
  155. package/src/neat/selection/core/README.md +227 -227
  156. package/src/neat/selection/facade/README.md +61 -61
  157. package/src/neat/shared/README.md +163 -163
  158. package/src/neat/speciation/README.md +31 -31
  159. package/src/neat/speciation/threshold/README.md +35 -35
  160. package/src/neat/species/README.md +25 -25
  161. package/src/neat/species/core/README.md +20 -20
  162. package/src/neat/species/core/shared/README.md +18 -18
  163. package/src/neat/species/history/context/README.md +22 -22
  164. package/src/neat/telemetry/accessors/README.md +58 -58
  165. package/src/neat/telemetry/exports/README.md +233 -233
  166. package/src/neat/telemetry/facade/README.md +252 -252
  167. package/src/neat/telemetry/facade/archive/README.md +57 -57
  168. package/src/neat/telemetry/facade/buffer/README.md +43 -43
  169. package/src/neat/telemetry/facade/lineage/README.md +12 -12
  170. package/src/neat/telemetry/facade/objectives/README.md +44 -44
  171. package/src/neat/telemetry/facade/runtime/README.md +26 -26
  172. package/src/neat/telemetry/facade/species/README.md +27 -27
  173. package/src/neat/telemetry/metrics/README.md +696 -696
  174. package/src/neat/telemetry/recorder/README.md +57 -57
  175. package/src/neat/telemetry/types/README.md +32 -32
  176. package/src/neat/topology-intent/README.md +75 -75
  177. package/src/utils/README.md +193 -193
  178. package/test/examples/asciiMaze/browser-entry/README.md +92 -92
  179. package/test/examples/asciiMaze/dashboardManager/README.md +109 -109
  180. package/test/examples/asciiMaze/dashboardManager/telemetry/README.md +28 -28
  181. package/test/examples/asciiMaze/evolutionEngine/README.md +1527 -1527
  182. package/test/examples/asciiMaze/mazeMovement/README.md +105 -105
  183. package/test/examples/asciiMaze/mazeMovement/finalization/README.md +16 -16
  184. package/test/examples/asciiMaze/mazeMovement/policy/README.md +57 -57
  185. package/test/examples/asciiMaze/mazeMovement/runtime/README.md +52 -52
  186. package/test/examples/asciiMaze/mazeMovement/shaping/README.md +46 -46
  187. package/test/examples/flappy_bird/browser-entry/README.md +508 -508
  188. package/test/examples/flappy_bird/browser-entry/host/README.md +101 -101
  189. package/test/examples/flappy_bird/browser-entry/host/resize/README.md +144 -144
  190. package/test/examples/flappy_bird/browser-entry/network-view/README.md +194 -194
  191. package/test/examples/flappy_bird/browser-entry/playback/README.md +278 -278
  192. package/test/examples/flappy_bird/browser-entry/playback/background/README.md +129 -129
  193. package/test/examples/flappy_bird/browser-entry/playback/background/ground-grid/README.md +502 -502
  194. package/test/examples/flappy_bird/browser-entry/playback/frame-render/README.md +139 -139
  195. package/test/examples/flappy_bird/browser-entry/playback/snapshot/README.md +10 -10
  196. package/test/examples/flappy_bird/browser-entry/playback/trail/README.md +43 -43
  197. package/test/examples/flappy_bird/browser-entry/playback/worker-channel/README.md +30 -30
  198. package/test/examples/flappy_bird/browser-entry/runtime/README.md +59 -59
  199. package/test/examples/flappy_bird/browser-entry/visualization/README.md +276 -276
  200. package/test/examples/flappy_bird/browser-entry/worker-channel/README.md +16 -16
  201. package/test/examples/flappy_bird/constants/README.md +1070 -1070
  202. package/test/examples/flappy_bird/environment/README.md +22 -22
  203. package/test/examples/flappy_bird/evaluation/README.md +32 -32
  204. package/test/examples/flappy_bird/evaluation/rollout/README.md +141 -141
  205. package/test/examples/flappy_bird/flappy-evolution-worker/README.md +425 -425
  206. package/test/examples/flappy_bird/simulation-shared/README.md +170 -170
  207. package/test/examples/flappy_bird/simulation-shared/observation/README.md +109 -109
  208. package/test/examples/flappy_bird/trainer/README.md +325 -325
  209. package/test/examples/flappy_bird/trainer/evaluation/README.md +74 -74
  210. package/scripts/analyze-trace.ts +0 -590
  211. package/scripts/copy-examples.mjs +0 -114
  212. package/scripts/export-onnx.mjs +0 -86
  213. package/scripts/generate-bench-tables.mjs +0 -182
  214. package/scripts/generate-docs.ts +0 -2900
  215. package/scripts/write-dist-docs-pkg.mjs +0 -16
@@ -19,46 +19,25 @@ define the world state that policy, shaping, and finalization build on top of.
19
19
 
20
20
  ## mazeMovement/runtime/mazeMovement.runtime.ts
21
21
 
22
- ### isMazeMovementCellOpen
23
-
24
- ```ts
25
- isMazeMovementCellOpen(
26
- encodedMaze: readonly (readonly number[])[],
27
- x: number,
28
- y: number,
29
- coordinateScratch: Int32Array<ArrayBufferLike>,
30
- ): boolean
31
- ```
32
-
33
- Determine whether a maze cell is inside bounds and not a wall.
34
-
35
- Parameters:
36
- - `encodedMaze` - - Maze grid to inspect.
37
- - `x` - - Zero-based maze column.
38
- - `y` - - Zero-based maze row.
39
- - `coordinateScratch` - - Reused integer scratch buffer for coordinate coercion.
40
-
41
- Returns: True when the target cell is within bounds and open.
42
-
43
- ### getMazeMovementDistance
22
+ ### buildMazeMovementVisionAndDistance
44
23
 
45
24
  ```ts
46
- getMazeMovementDistance(
47
- encodedMaze: readonly (readonly number[])[],
48
- __1: readonly [number, number],
25
+ buildMazeMovementVisionAndDistance(
26
+ state: SimulationState,
27
+ encodedMaze: number[][],
28
+ exitPos: readonly [number, number],
49
29
  distanceMap: number[][] | undefined,
50
- ): number
30
+ ): void
51
31
  ```
52
32
 
53
- Resolve the current distance value for a maze coordinate.
33
+ Build the current perception vector and update distance-tracking state.
54
34
 
55
35
  Parameters:
56
- - `encodedMaze` - - Maze grid aligned with the optional distance map.
57
- - `coordinates` - - Zero-based `[x, y]` coordinate tuple.
36
+ - `state` - - Mutable simulation state for the active run.
37
+ - `encodedMaze` - - Maze grid used for perception and distance lookup.
38
+ - `exitPos` - - Goal coordinate for the current run.
58
39
  - `distanceMap` - - Optional precomputed distance map.
59
40
 
60
- Returns: Finite distance when present, otherwise `Infinity`.
61
-
62
41
  ### createMazeMovementRunState
63
42
 
64
43
  ```ts
@@ -80,20 +59,24 @@ Parameters:
80
59
 
81
60
  Returns: Fresh simulation state backed by the shared buffer pools.
82
61
 
83
- ### pushMazeMovementHistory
62
+ ### getMazeMovementDistance
84
63
 
85
64
  ```ts
86
- pushMazeMovementHistory(
87
- state: SimulationState,
88
- cellIndex: number,
89
- ): void
65
+ getMazeMovementDistance(
66
+ encodedMaze: readonly (readonly number[])[],
67
+ __1: readonly [number, number],
68
+ distanceMap: number[][] | undefined,
69
+ ): number
90
70
  ```
91
71
 
92
- Push a cell index into the circular visit-history ring.
72
+ Resolve the current distance value for a maze coordinate.
93
73
 
94
74
  Parameters:
95
- - `state` - - Mutable simulation state containing the ring buffer.
96
- - `cellIndex` - - Linearized cell index to append.
75
+ - `encodedMaze` - - Maze grid aligned with the optional distance map.
76
+ - `coordinates` - - Zero-based `[x, y]` coordinate tuple.
77
+ - `distanceMap` - - Optional precomputed distance map.
78
+
79
+ Returns: Finite distance when present, otherwise `Infinity`.
97
80
 
98
81
  ### getMazeMovementHistoryFromEnd
99
82
 
@@ -112,34 +95,51 @@ Parameters:
112
95
 
113
96
  Returns: The requested cell index or `undefined` when out of range.
114
97
 
115
- ### recordMazeMovementVisitAndPenalties
98
+ ### isMazeMovementCellOpen
116
99
 
117
100
  ```ts
118
- recordMazeMovementVisitAndPenalties(
101
+ isMazeMovementCellOpen(
102
+ encodedMaze: readonly (readonly number[])[],
103
+ x: number,
104
+ y: number,
105
+ coordinateScratch: Int32Array<ArrayBufferLike>,
106
+ ): boolean
107
+ ```
108
+
109
+ Determine whether a maze cell is inside bounds and not a wall.
110
+
111
+ Parameters:
112
+ - `encodedMaze` - - Maze grid to inspect.
113
+ - `x` - - Zero-based maze column.
114
+ - `y` - - Zero-based maze row.
115
+ - `coordinateScratch` - - Reused integer scratch buffer for coordinate coercion.
116
+
117
+ Returns: True when the target cell is within bounds and open.
118
+
119
+ ### pushMazeMovementHistory
120
+
121
+ ```ts
122
+ pushMazeMovementHistory(
119
123
  state: SimulationState,
124
+ cellIndex: number,
120
125
  ): void
121
126
  ```
122
127
 
123
- Record the current cell visit and update visit-driven penalties.
128
+ Push a cell index into the circular visit-history ring.
124
129
 
125
130
  Parameters:
126
- - `state` - - Mutable simulation state for the active run.
131
+ - `state` - - Mutable simulation state containing the ring buffer.
132
+ - `cellIndex` - - Linearized cell index to append.
127
133
 
128
- ### buildMazeMovementVisionAndDistance
134
+ ### recordMazeMovementVisitAndPenalties
129
135
 
130
136
  ```ts
131
- buildMazeMovementVisionAndDistance(
137
+ recordMazeMovementVisitAndPenalties(
132
138
  state: SimulationState,
133
- encodedMaze: number[][],
134
- exitPos: readonly [number, number],
135
- distanceMap: number[][] | undefined,
136
139
  ): void
137
140
  ```
138
141
 
139
- Build the current perception vector and update distance-tracking state.
142
+ Record the current cell visit and update visit-driven penalties.
140
143
 
141
144
  Parameters:
142
145
  - `state` - - Mutable simulation state for the active run.
143
- - `encodedMaze` - - Maze grid used for perception and distance lookup.
144
- - `exitPos` - - Goal coordinate for the current run.
145
- - `distanceMap` - - Optional precomputed distance map.
@@ -18,113 +18,111 @@ this boundary turns the aftermath into training signal.
18
18
 
19
19
  ## mazeMovement/shaping/mazeMovement.shaping.ts
20
20
 
21
- ### executeMazeMovementAndRewards
21
+ ### applyMazeMovementEntropyGuidanceShaping
22
22
 
23
23
  ```ts
24
- executeMazeMovementAndRewards(
24
+ applyMazeMovementEntropyGuidanceShaping(
25
25
  state: SimulationState,
26
- encodedMaze: number[][],
27
- distanceMap: number[][] | undefined,
26
+ rewardScale: number,
28
27
  coordinateScratch: Int32Array<ArrayBufferLike>,
29
28
  ): void
30
29
  ```
31
30
 
32
- Execute the chosen move and apply the shaping terms tied to that move.
31
+ Apply entropy-guided shaping based on confidence and perceptual guidance.
33
32
 
34
33
  Parameters:
35
34
  - `state` - - Mutable simulation state for the active run.
36
- - `encodedMaze` - - Maze grid used for move validity and distance lookup.
37
- - `distanceMap` - - Optional precomputed distance map.
35
+ - `rewardScale` - - Global reward scale used by the penalties and bonuses.
38
36
  - `coordinateScratch` - - Reused coordinate scratch buffer.
39
37
 
40
- ### applyMazeMovementPostActionPenalties
38
+ ### applyMazeMovementExplorationVisitAdjustment
41
39
 
42
40
  ```ts
43
- applyMazeMovementPostActionPenalties(
41
+ applyMazeMovementExplorationVisitAdjustment(
44
42
  state: SimulationState,
43
+ rewardScale: number,
45
44
  coordinateScratch: Int32Array<ArrayBufferLike>,
46
45
  ): void
47
46
  ```
48
47
 
49
- Apply the post-action shaping and penalty aggregation phase.
48
+ Apply the per-cell exploration bonus or revisit penalty.
50
49
 
51
50
  Parameters:
52
51
  - `state` - - Mutable simulation state for the active run.
52
+ - `rewardScale` - - Global reward scale used by the adjustment.
53
53
  - `coordinateScratch` - - Reused coordinate scratch buffer.
54
54
 
55
- ### applyMazeMovementLocalAreaPenalty
55
+ ### applyMazeMovementGlobalDistanceImprovementBonus
56
56
 
57
57
  ```ts
58
- applyMazeMovementLocalAreaPenalty(
58
+ applyMazeMovementGlobalDistanceImprovementBonus(
59
59
  state: SimulationState,
60
+ encodedMaze: number[][],
60
61
  rewardScale: number,
61
62
  coordinateScratch: Int32Array<ArrayBufferLike>,
62
63
  ): void
63
64
  ```
64
65
 
65
- Apply a local-area stagnation penalty when the run oscillates in a tight window.
66
+ Apply the long-horizon global-distance improvement bonus.
66
67
 
67
68
  Parameters:
68
69
  - `state` - - Mutable simulation state for the active run.
69
- - `rewardScale` - - Global reward scale used for the penalty magnitude.
70
+ - `encodedMaze` - - Maze grid used for distance lookup.
71
+ - `rewardScale` - - Global reward scale used by the bonus magnitude.
70
72
  - `coordinateScratch` - - Reused coordinate scratch buffer.
71
73
 
72
- ### applyMazeMovementProgressShaping
74
+ ### applyMazeMovementLocalAreaPenalty
73
75
 
74
76
  ```ts
75
- applyMazeMovementProgressShaping(
77
+ applyMazeMovementLocalAreaPenalty(
76
78
  state: SimulationState,
77
- distanceDelta: number,
78
- improved: boolean,
79
- worsened: boolean,
80
79
  rewardScale: number,
80
+ coordinateScratch: Int32Array<ArrayBufferLike>,
81
81
  ): void
82
82
  ```
83
83
 
84
- Apply progress and away-from-goal shaping after a move.
84
+ Apply a local-area stagnation penalty when the run oscillates in a tight window.
85
85
 
86
86
  Parameters:
87
87
  - `state` - - Mutable simulation state for the active run.
88
- - `distanceDelta` - - Positive when the agent moved closer to the goal.
89
- - `improved` - - True when the move improved distance to the goal.
90
- - `worsened` - - True when the move increased distance to the goal.
91
- - `rewardScale` - - Global reward scale used by the shaping terms.
88
+ - `rewardScale` - - Global reward scale used for the penalty magnitude.
89
+ - `coordinateScratch` - - Reused coordinate scratch buffer.
92
90
 
93
- ### applyMazeMovementExplorationVisitAdjustment
91
+ ### applyMazeMovementPostActionPenalties
94
92
 
95
93
  ```ts
96
- applyMazeMovementExplorationVisitAdjustment(
94
+ applyMazeMovementPostActionPenalties(
97
95
  state: SimulationState,
98
- rewardScale: number,
99
96
  coordinateScratch: Int32Array<ArrayBufferLike>,
100
97
  ): void
101
98
  ```
102
99
 
103
- Apply the per-cell exploration bonus or revisit penalty.
100
+ Apply the post-action shaping and penalty aggregation phase.
104
101
 
105
102
  Parameters:
106
103
  - `state` - - Mutable simulation state for the active run.
107
- - `rewardScale` - - Global reward scale used by the adjustment.
108
104
  - `coordinateScratch` - - Reused coordinate scratch buffer.
109
105
 
110
- ### applyMazeMovementGlobalDistanceImprovementBonus
106
+ ### applyMazeMovementProgressShaping
111
107
 
112
108
  ```ts
113
- applyMazeMovementGlobalDistanceImprovementBonus(
109
+ applyMazeMovementProgressShaping(
114
110
  state: SimulationState,
115
- encodedMaze: number[][],
111
+ distanceDelta: number,
112
+ improved: boolean,
113
+ worsened: boolean,
116
114
  rewardScale: number,
117
- coordinateScratch: Int32Array<ArrayBufferLike>,
118
115
  ): void
119
116
  ```
120
117
 
121
- Apply the long-horizon global-distance improvement bonus.
118
+ Apply progress and away-from-goal shaping after a move.
122
119
 
123
120
  Parameters:
124
121
  - `state` - - Mutable simulation state for the active run.
125
- - `encodedMaze` - - Maze grid used for distance lookup.
126
- - `rewardScale` - - Global reward scale used by the bonus magnitude.
127
- - `coordinateScratch` - - Reused coordinate scratch buffer.
122
+ - `distanceDelta` - - Positive when the agent moved closer to the goal.
123
+ - `improved` - - True when the move improved distance to the goal.
124
+ - `worsened` - - True when the move increased distance to the goal.
125
+ - `rewardScale` - - Global reward scale used by the shaping terms.
128
126
 
129
127
  ### applyMazeMovementRepetitionAndBacktrackPenalties
130
128
 
@@ -143,38 +141,40 @@ Parameters:
143
141
  - `rewardScale` - - Global reward scale used by the penalties.
144
142
  - `coordinateScratch` - - Reused coordinate scratch buffer.
145
143
 
146
- ### applyMazeMovementEntropyGuidanceShaping
144
+ ### applyMazeMovementSaturationPenaltyCycle
147
145
 
148
146
  ```ts
149
- applyMazeMovementEntropyGuidanceShaping(
147
+ applyMazeMovementSaturationPenaltyCycle(
150
148
  state: SimulationState,
151
149
  rewardScale: number,
152
150
  coordinateScratch: Int32Array<ArrayBufferLike>,
153
151
  ): void
154
152
  ```
155
153
 
156
- Apply entropy-guided shaping based on confidence and perceptual guidance.
154
+ Apply the periodic saturation penalty cycle.
157
155
 
158
156
  Parameters:
159
157
  - `state` - - Mutable simulation state for the active run.
160
- - `rewardScale` - - Global reward scale used by the penalties and bonuses.
158
+ - `rewardScale` - - Global reward scale used by the penalties.
161
159
  - `coordinateScratch` - - Reused coordinate scratch buffer.
162
160
 
163
- ### applyMazeMovementSaturationPenaltyCycle
161
+ ### executeMazeMovementAndRewards
164
162
 
165
163
  ```ts
166
- applyMazeMovementSaturationPenaltyCycle(
164
+ executeMazeMovementAndRewards(
167
165
  state: SimulationState,
168
- rewardScale: number,
166
+ encodedMaze: number[][],
167
+ distanceMap: number[][] | undefined,
169
168
  coordinateScratch: Int32Array<ArrayBufferLike>,
170
169
  ): void
171
170
  ```
172
171
 
173
- Apply the periodic saturation penalty cycle.
172
+ Execute the chosen move and apply the shaping terms tied to that move.
174
173
 
175
174
  Parameters:
176
175
  - `state` - - Mutable simulation state for the active run.
177
- - `rewardScale` - - Global reward scale used by the penalties.
176
+ - `encodedMaze` - - Maze grid used for move validity and distance lookup.
177
+ - `distanceMap` - - Optional precomputed distance map.
178
178
  - `coordinateScratch` - - Reused coordinate scratch buffer.
179
179
 
180
180
  ### maybeTerminateMazeMovementDeepStagnation