@sharpee/stdlib 3.1.0 → 3.3.0

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 (712) hide show
  1. package/actions/author/index.d.ts +1 -1
  2. package/actions/author/index.d.ts.map +1 -1
  3. package/actions/author/index.js +2 -2
  4. package/actions/author/index.js.map +1 -1
  5. package/actions/author/trace.d.ts +3 -3
  6. package/actions/author/trace.d.ts.map +1 -1
  7. package/actions/author/trace.js +2 -2
  8. package/actions/author/trace.js.map +1 -1
  9. package/actions/base/index.d.ts +2 -2
  10. package/actions/base/index.d.ts.map +1 -1
  11. package/actions/base/index.js +2 -2
  12. package/actions/base/index.js.map +1 -1
  13. package/actions/base/migration-shim.d.ts +1 -1
  14. package/actions/base/migration-shim.d.ts.map +1 -1
  15. package/actions/base/report-helpers.d.ts +1 -1
  16. package/actions/base/report-helpers.d.ts.map +1 -1
  17. package/actions/base/report-helpers.js +3 -3
  18. package/actions/base/report-helpers.js.map +1 -1
  19. package/actions/capability-dispatch.d.ts +3 -3
  20. package/actions/capability-dispatch.d.ts.map +1 -1
  21. package/actions/capability-dispatch.js +18 -8
  22. package/actions/capability-dispatch.js.map +1 -1
  23. package/actions/context-adapter.d.ts +2 -2
  24. package/actions/context-adapter.d.ts.map +1 -1
  25. package/actions/data-builder-types.d.ts +1 -1
  26. package/actions/data-builder-types.d.ts.map +1 -1
  27. package/actions/enhanced-context.d.ts +5 -4
  28. package/actions/enhanced-context.d.ts.map +1 -1
  29. package/actions/enhanced-context.js +85 -67
  30. package/actions/enhanced-context.js.map +1 -1
  31. package/actions/enhanced-types.d.ts +29 -3
  32. package/actions/enhanced-types.d.ts.map +1 -1
  33. package/actions/enhanced-types.js.map +1 -1
  34. package/actions/helpers/emit-illustrations.d.ts +1 -1
  35. package/actions/helpers/emit-illustrations.d.ts.map +1 -1
  36. package/actions/index.d.ts +10 -10
  37. package/actions/index.d.ts.map +1 -1
  38. package/actions/index.js +12 -12
  39. package/actions/index.js.map +1 -1
  40. package/actions/lifecycle/descriptor.d.ts +1 -1
  41. package/actions/lifecycle/descriptor.d.ts.map +1 -1
  42. package/actions/lifecycle/index.d.ts +3 -3
  43. package/actions/lifecycle/index.d.ts.map +1 -1
  44. package/actions/lifecycle/index.js +15 -14
  45. package/actions/lifecycle/index.js.map +1 -1
  46. package/actions/lifecycle/lifecycle-engine.d.ts +18 -2
  47. package/actions/lifecycle/lifecycle-engine.d.ts.map +1 -1
  48. package/actions/lifecycle/lifecycle-engine.js +26 -1
  49. package/actions/lifecycle/lifecycle-engine.js.map +1 -1
  50. package/actions/lifecycle/multi-object-lifecycle.d.ts +13 -5
  51. package/actions/lifecycle/multi-object-lifecycle.d.ts.map +1 -1
  52. package/actions/lifecycle/multi-object-lifecycle.js +14 -12
  53. package/actions/lifecycle/multi-object-lifecycle.js.map +1 -1
  54. package/actions/lifecycle/registry.d.ts +4 -3
  55. package/actions/lifecycle/registry.d.ts.map +1 -1
  56. package/actions/lifecycle/registry.js +79 -76
  57. package/actions/lifecycle/registry.js.map +1 -1
  58. package/actions/meta-action.d.ts +1 -1
  59. package/actions/meta-action.d.ts.map +1 -1
  60. package/actions/meta-action.js +2 -2
  61. package/actions/meta-action.js.map +1 -1
  62. package/actions/registry.d.ts +2 -2
  63. package/actions/registry.d.ts.map +1 -1
  64. package/actions/standard/about/about.d.ts +2 -2
  65. package/actions/standard/about/about.d.ts.map +1 -1
  66. package/actions/standard/about/about.js +4 -3
  67. package/actions/standard/about/about.js.map +1 -1
  68. package/actions/standard/about/index.d.ts +2 -2
  69. package/actions/standard/about/index.d.ts.map +1 -1
  70. package/actions/standard/about/index.js +2 -2
  71. package/actions/standard/about/index.js.map +1 -1
  72. package/actions/standard/again/again.d.ts +2 -2
  73. package/actions/standard/again/again.d.ts.map +1 -1
  74. package/actions/standard/again/again.js +4 -3
  75. package/actions/standard/again/again.js.map +1 -1
  76. package/actions/standard/again/index.d.ts +2 -2
  77. package/actions/standard/again/index.d.ts.map +1 -1
  78. package/actions/standard/again/index.js +2 -2
  79. package/actions/standard/again/index.js.map +1 -1
  80. package/actions/standard/asking/asking.d.ts +3 -3
  81. package/actions/standard/asking/asking.d.ts.map +1 -1
  82. package/actions/standard/asking/asking.js +35 -26
  83. package/actions/standard/asking/asking.js.map +1 -1
  84. package/actions/standard/asking/index.d.ts +1 -1
  85. package/actions/standard/asking/index.d.ts.map +1 -1
  86. package/actions/standard/asking/index.js +3 -3
  87. package/actions/standard/asking/index.js.map +1 -1
  88. package/actions/standard/attacking/attacking-data.d.ts +2 -2
  89. package/actions/standard/attacking/attacking-data.d.ts.map +1 -1
  90. package/actions/standard/attacking/attacking-events.d.ts +1 -1
  91. package/actions/standard/attacking/attacking-events.d.ts.map +1 -1
  92. package/actions/standard/attacking/attacking-types.d.ts +3 -0
  93. package/actions/standard/attacking/attacking-types.d.ts.map +1 -1
  94. package/actions/standard/attacking/attacking-types.js.map +1 -1
  95. package/actions/standard/attacking/attacking.d.ts +3 -3
  96. package/actions/standard/attacking/attacking.d.ts.map +1 -1
  97. package/actions/standard/attacking/attacking.js +75 -52
  98. package/actions/standard/attacking/attacking.js.map +1 -1
  99. package/actions/standard/attacking/index.d.ts +2 -2
  100. package/actions/standard/attacking/index.d.ts.map +1 -1
  101. package/actions/standard/attacking/index.js +4 -4
  102. package/actions/standard/attacking/index.js.map +1 -1
  103. package/actions/standard/climbing/climbing.d.ts +3 -3
  104. package/actions/standard/climbing/climbing.d.ts.map +1 -1
  105. package/actions/standard/climbing/climbing.js +72 -30
  106. package/actions/standard/climbing/climbing.js.map +1 -1
  107. package/actions/standard/climbing/index.d.ts +2 -2
  108. package/actions/standard/climbing/index.d.ts.map +1 -1
  109. package/actions/standard/climbing/index.js +2 -2
  110. package/actions/standard/climbing/index.js.map +1 -1
  111. package/actions/standard/closing/closing-data.d.ts +1 -1
  112. package/actions/standard/closing/closing-data.d.ts.map +1 -1
  113. package/actions/standard/closing/closing-data.js +3 -3
  114. package/actions/standard/closing/closing-data.js.map +1 -1
  115. package/actions/standard/closing/closing-event-data.d.ts +1 -1
  116. package/actions/standard/closing/closing-event-data.d.ts.map +1 -1
  117. package/actions/standard/closing/closing.d.ts +3 -3
  118. package/actions/standard/closing/closing.d.ts.map +1 -1
  119. package/actions/standard/closing/closing.js +36 -38
  120. package/actions/standard/closing/closing.js.map +1 -1
  121. package/actions/standard/closing/index.d.ts +3 -3
  122. package/actions/standard/closing/index.d.ts.map +1 -1
  123. package/actions/standard/closing/index.js +2 -2
  124. package/actions/standard/closing/index.js.map +1 -1
  125. package/actions/standard/cutting/cutting.d.ts +3 -3
  126. package/actions/standard/cutting/cutting.d.ts.map +1 -1
  127. package/actions/standard/cutting/cutting.js +40 -36
  128. package/actions/standard/cutting/cutting.js.map +1 -1
  129. package/actions/standard/cutting/index.d.ts +3 -3
  130. package/actions/standard/cutting/index.d.ts.map +1 -1
  131. package/actions/standard/cutting/index.js +5 -5
  132. package/actions/standard/cutting/index.js.map +1 -1
  133. package/actions/standard/deadly-room-death/deadly-room-death.d.ts +1 -1
  134. package/actions/standard/deadly-room-death/deadly-room-death.d.ts.map +1 -1
  135. package/actions/standard/deadly-room-death/deadly-room-death.js +5 -5
  136. package/actions/standard/deadly-room-death/deadly-room-death.js.map +1 -1
  137. package/actions/standard/deadly-room-death/index.d.ts +1 -1
  138. package/actions/standard/deadly-room-death/index.d.ts.map +1 -1
  139. package/actions/standard/deadly-room-death/index.js +2 -2
  140. package/actions/standard/deadly-room-death/index.js.map +1 -1
  141. package/actions/standard/digging/digging.d.ts +3 -3
  142. package/actions/standard/digging/digging.d.ts.map +1 -1
  143. package/actions/standard/digging/digging.js +40 -36
  144. package/actions/standard/digging/digging.js.map +1 -1
  145. package/actions/standard/digging/index.d.ts +3 -3
  146. package/actions/standard/digging/index.d.ts.map +1 -1
  147. package/actions/standard/digging/index.js +5 -5
  148. package/actions/standard/digging/index.js.map +1 -1
  149. package/actions/standard/drinking/drinking.d.ts +3 -3
  150. package/actions/standard/drinking/drinking.d.ts.map +1 -1
  151. package/actions/standard/drinking/drinking.js +25 -25
  152. package/actions/standard/drinking/drinking.js.map +1 -1
  153. package/actions/standard/drinking/index.d.ts +2 -2
  154. package/actions/standard/drinking/index.d.ts.map +1 -1
  155. package/actions/standard/drinking/index.js +3 -3
  156. package/actions/standard/drinking/index.js.map +1 -1
  157. package/actions/standard/dropping/dropping-data.d.ts +2 -2
  158. package/actions/standard/dropping/dropping-data.d.ts.map +1 -1
  159. package/actions/standard/dropping/dropping-data.js +9 -9
  160. package/actions/standard/dropping/dropping-data.js.map +1 -1
  161. package/actions/standard/dropping/dropping-events.d.ts +1 -1
  162. package/actions/standard/dropping/dropping-events.d.ts.map +1 -1
  163. package/actions/standard/dropping/dropping.d.ts +3 -3
  164. package/actions/standard/dropping/dropping.d.ts.map +1 -1
  165. package/actions/standard/dropping/dropping.js +74 -63
  166. package/actions/standard/dropping/dropping.js.map +1 -1
  167. package/actions/standard/dropping/index.d.ts +2 -2
  168. package/actions/standard/dropping/index.d.ts.map +1 -1
  169. package/actions/standard/dropping/index.js +2 -2
  170. package/actions/standard/dropping/index.js.map +1 -1
  171. package/actions/standard/eating/eating.d.ts +3 -3
  172. package/actions/standard/eating/eating.d.ts.map +1 -1
  173. package/actions/standard/eating/eating.js +25 -25
  174. package/actions/standard/eating/eating.js.map +1 -1
  175. package/actions/standard/eating/index.d.ts +2 -2
  176. package/actions/standard/eating/index.d.ts.map +1 -1
  177. package/actions/standard/eating/index.js +3 -3
  178. package/actions/standard/eating/index.js.map +1 -1
  179. package/actions/standard/entering/entering.d.ts +3 -3
  180. package/actions/standard/entering/entering.d.ts.map +1 -1
  181. package/actions/standard/entering/entering.js +32 -32
  182. package/actions/standard/entering/entering.js.map +1 -1
  183. package/actions/standard/entering/index.d.ts +2 -2
  184. package/actions/standard/entering/index.d.ts.map +1 -1
  185. package/actions/standard/entering/index.js +2 -2
  186. package/actions/standard/entering/index.js.map +1 -1
  187. package/actions/standard/examining/examining-data.d.ts +1 -1
  188. package/actions/standard/examining/examining-data.d.ts.map +1 -1
  189. package/actions/standard/examining/examining-data.js +72 -17
  190. package/actions/standard/examining/examining-data.js.map +1 -1
  191. package/actions/standard/examining/examining.d.ts +3 -3
  192. package/actions/standard/examining/examining.d.ts.map +1 -1
  193. package/actions/standard/examining/examining.js +31 -29
  194. package/actions/standard/examining/examining.js.map +1 -1
  195. package/actions/standard/examining/index.d.ts +2 -2
  196. package/actions/standard/examining/index.d.ts.map +1 -1
  197. package/actions/standard/examining/index.js +2 -2
  198. package/actions/standard/examining/index.js.map +1 -1
  199. package/actions/standard/exiting/exiting-messages.d.ts +2 -0
  200. package/actions/standard/exiting/exiting-messages.d.ts.map +1 -1
  201. package/actions/standard/exiting/exiting-messages.js +2 -0
  202. package/actions/standard/exiting/exiting-messages.js.map +1 -1
  203. package/actions/standard/exiting/exiting.d.ts +3 -3
  204. package/actions/standard/exiting/exiting.d.ts.map +1 -1
  205. package/actions/standard/exiting/exiting.js +46 -27
  206. package/actions/standard/exiting/exiting.js.map +1 -1
  207. package/actions/standard/exiting/index.d.ts +2 -2
  208. package/actions/standard/exiting/index.d.ts.map +1 -1
  209. package/actions/standard/exiting/index.js +2 -2
  210. package/actions/standard/exiting/index.js.map +1 -1
  211. package/actions/standard/giving/giving.d.ts +3 -3
  212. package/actions/standard/giving/giving.d.ts.map +1 -1
  213. package/actions/standard/giving/giving.js +39 -38
  214. package/actions/standard/giving/giving.js.map +1 -1
  215. package/actions/standard/giving/index.d.ts +2 -2
  216. package/actions/standard/giving/index.d.ts.map +1 -1
  217. package/actions/standard/giving/index.js +3 -3
  218. package/actions/standard/giving/index.js.map +1 -1
  219. package/actions/standard/going/going-data.d.ts +1 -1
  220. package/actions/standard/going/going-data.d.ts.map +1 -1
  221. package/actions/standard/going/going-data.js +6 -6
  222. package/actions/standard/going/going-data.js.map +1 -1
  223. package/actions/standard/going/going.d.ts +11 -3
  224. package/actions/standard/going/going.d.ts.map +1 -1
  225. package/actions/standard/going/going.js +80 -47
  226. package/actions/standard/going/going.js.map +1 -1
  227. package/actions/standard/going/index.d.ts +2 -2
  228. package/actions/standard/going/index.d.ts.map +1 -1
  229. package/actions/standard/going/index.js +5 -3
  230. package/actions/standard/going/index.js.map +1 -1
  231. package/actions/standard/help/help.d.ts +2 -2
  232. package/actions/standard/help/help.d.ts.map +1 -1
  233. package/actions/standard/help/help.js +4 -3
  234. package/actions/standard/help/help.js.map +1 -1
  235. package/actions/standard/help/index.d.ts +2 -2
  236. package/actions/standard/help/index.d.ts.map +1 -1
  237. package/actions/standard/help/index.js +2 -2
  238. package/actions/standard/help/index.js.map +1 -1
  239. package/actions/standard/hiding/concealment-break.js +19 -19
  240. package/actions/standard/hiding/concealment-break.js.map +1 -1
  241. package/actions/standard/hiding/hiding.d.ts +4 -4
  242. package/actions/standard/hiding/hiding.d.ts.map +1 -1
  243. package/actions/standard/hiding/hiding.js +28 -23
  244. package/actions/standard/hiding/hiding.js.map +1 -1
  245. package/actions/standard/hiding/index.d.ts +4 -4
  246. package/actions/standard/hiding/index.d.ts.map +1 -1
  247. package/actions/standard/hiding/index.js +6 -6
  248. package/actions/standard/hiding/index.js.map +1 -1
  249. package/actions/standard/hiding/revealing.d.ts +2 -2
  250. package/actions/standard/hiding/revealing.d.ts.map +1 -1
  251. package/actions/standard/hiding/revealing.js +4 -3
  252. package/actions/standard/hiding/revealing.js.map +1 -1
  253. package/actions/standard/index.d.ts +61 -61
  254. package/actions/standard/index.d.ts.map +1 -1
  255. package/actions/standard/index.js +179 -179
  256. package/actions/standard/index.js.map +1 -1
  257. package/actions/standard/inserting/index.d.ts +2 -2
  258. package/actions/standard/inserting/index.d.ts.map +1 -1
  259. package/actions/standard/inserting/index.js +3 -3
  260. package/actions/standard/inserting/index.js.map +1 -1
  261. package/actions/standard/inserting/inserting-data.d.ts +1 -1
  262. package/actions/standard/inserting/inserting-data.d.ts.map +1 -1
  263. package/actions/standard/inserting/inserting-data.js +3 -3
  264. package/actions/standard/inserting/inserting-data.js.map +1 -1
  265. package/actions/standard/inserting/inserting-events.d.ts +2 -2
  266. package/actions/standard/inserting/inserting-events.d.ts.map +1 -1
  267. package/actions/standard/inserting/inserting.d.ts +3 -3
  268. package/actions/standard/inserting/inserting.d.ts.map +1 -1
  269. package/actions/standard/inserting/inserting.js +40 -39
  270. package/actions/standard/inserting/inserting.js.map +1 -1
  271. package/actions/standard/inventory/index.d.ts +2 -2
  272. package/actions/standard/inventory/index.d.ts.map +1 -1
  273. package/actions/standard/inventory/index.js +3 -3
  274. package/actions/standard/inventory/index.js.map +1 -1
  275. package/actions/standard/inventory/inventory.d.ts +2 -2
  276. package/actions/standard/inventory/inventory.d.ts.map +1 -1
  277. package/actions/standard/inventory/inventory.js +20 -31
  278. package/actions/standard/inventory/inventory.js.map +1 -1
  279. package/actions/standard/listening/index.d.ts +2 -2
  280. package/actions/standard/listening/index.d.ts.map +1 -1
  281. package/actions/standard/listening/index.js +3 -3
  282. package/actions/standard/listening/index.js.map +1 -1
  283. package/actions/standard/listening/listening.d.ts +3 -3
  284. package/actions/standard/listening/listening.d.ts.map +1 -1
  285. package/actions/standard/listening/listening.js +20 -20
  286. package/actions/standard/listening/listening.js.map +1 -1
  287. package/actions/standard/lock-shared.d.ts +1 -1
  288. package/actions/standard/lock-shared.d.ts.map +1 -1
  289. package/actions/standard/lock-shared.js +10 -10
  290. package/actions/standard/lock-shared.js.map +1 -1
  291. package/actions/standard/locking/index.d.ts +2 -2
  292. package/actions/standard/locking/index.d.ts.map +1 -1
  293. package/actions/standard/locking/index.js +2 -2
  294. package/actions/standard/locking/index.js.map +1 -1
  295. package/actions/standard/locking/locking.d.ts +3 -3
  296. package/actions/standard/locking/locking.d.ts.map +1 -1
  297. package/actions/standard/locking/locking.js +37 -37
  298. package/actions/standard/locking/locking.js.map +1 -1
  299. package/actions/standard/looking/index.d.ts +4 -4
  300. package/actions/standard/looking/index.d.ts.map +1 -1
  301. package/actions/standard/looking/index.js +9 -9
  302. package/actions/standard/looking/index.js.map +1 -1
  303. package/actions/standard/looking/looking-data.d.ts +2 -2
  304. package/actions/standard/looking/looking-data.d.ts.map +1 -1
  305. package/actions/standard/looking/looking-data.js +15 -13
  306. package/actions/standard/looking/looking-data.js.map +1 -1
  307. package/actions/standard/looking/looking.d.ts +2 -2
  308. package/actions/standard/looking/looking.d.ts.map +1 -1
  309. package/actions/standard/looking/looking.js +15 -14
  310. package/actions/standard/looking/looking.js.map +1 -1
  311. package/actions/standard/looking/snippet-resolver.js +2 -2
  312. package/actions/standard/looking/snippet-resolver.js.map +1 -1
  313. package/actions/standard/lowering/index.d.ts +1 -1
  314. package/actions/standard/lowering/index.d.ts.map +1 -1
  315. package/actions/standard/lowering/index.js +2 -2
  316. package/actions/standard/lowering/index.js.map +1 -1
  317. package/actions/standard/lowering/lowering.d.ts +2 -2
  318. package/actions/standard/lowering/lowering.js +4 -4
  319. package/actions/standard/lowering/lowering.js.map +1 -1
  320. package/actions/standard/opening/index.d.ts +2 -2
  321. package/actions/standard/opening/index.d.ts.map +1 -1
  322. package/actions/standard/opening/index.js +2 -2
  323. package/actions/standard/opening/index.js.map +1 -1
  324. package/actions/standard/opening/opening-data.d.ts +2 -2
  325. package/actions/standard/opening/opening-data.d.ts.map +1 -1
  326. package/actions/standard/opening/opening.d.ts +3 -3
  327. package/actions/standard/opening/opening.d.ts.map +1 -1
  328. package/actions/standard/opening/opening.js +36 -38
  329. package/actions/standard/opening/opening.js.map +1 -1
  330. package/actions/standard/pulling/index.d.ts +2 -2
  331. package/actions/standard/pulling/index.d.ts.map +1 -1
  332. package/actions/standard/pulling/index.js +3 -3
  333. package/actions/standard/pulling/index.js.map +1 -1
  334. package/actions/standard/pulling/pulling.d.ts +3 -3
  335. package/actions/standard/pulling/pulling.d.ts.map +1 -1
  336. package/actions/standard/pulling/pulling.js +25 -25
  337. package/actions/standard/pulling/pulling.js.map +1 -1
  338. package/actions/standard/pushing/index.d.ts +2 -2
  339. package/actions/standard/pushing/index.d.ts.map +1 -1
  340. package/actions/standard/pushing/index.js +3 -3
  341. package/actions/standard/pushing/index.js.map +1 -1
  342. package/actions/standard/pushing/pushing-original.d.ts +2 -2
  343. package/actions/standard/pushing/pushing-original.d.ts.map +1 -1
  344. package/actions/standard/pushing/pushing-original.js +4 -4
  345. package/actions/standard/pushing/pushing-original.js.map +1 -1
  346. package/actions/standard/pushing/pushing.d.ts +3 -3
  347. package/actions/standard/pushing/pushing.d.ts.map +1 -1
  348. package/actions/standard/pushing/pushing.js +31 -31
  349. package/actions/standard/pushing/pushing.js.map +1 -1
  350. package/actions/standard/putting/index.d.ts +2 -2
  351. package/actions/standard/putting/index.d.ts.map +1 -1
  352. package/actions/standard/putting/index.js +3 -3
  353. package/actions/standard/putting/index.js.map +1 -1
  354. package/actions/standard/putting/putting-data.d.ts +1 -1
  355. package/actions/standard/putting/putting-data.d.ts.map +1 -1
  356. package/actions/standard/putting/putting-data.js +3 -3
  357. package/actions/standard/putting/putting-data.js.map +1 -1
  358. package/actions/standard/putting/putting.d.ts +3 -3
  359. package/actions/standard/putting/putting.d.ts.map +1 -1
  360. package/actions/standard/putting/putting.js +84 -84
  361. package/actions/standard/putting/putting.js.map +1 -1
  362. package/actions/standard/quitting/index.d.ts +2 -2
  363. package/actions/standard/quitting/index.d.ts.map +1 -1
  364. package/actions/standard/quitting/index.js +3 -3
  365. package/actions/standard/quitting/index.js.map +1 -1
  366. package/actions/standard/quitting/quitting.d.ts +2 -2
  367. package/actions/standard/quitting/quitting.d.ts.map +1 -1
  368. package/actions/standard/quitting/quitting.js +4 -3
  369. package/actions/standard/quitting/quitting.js.map +1 -1
  370. package/actions/standard/raising/index.d.ts +1 -1
  371. package/actions/standard/raising/index.d.ts.map +1 -1
  372. package/actions/standard/raising/index.js +2 -2
  373. package/actions/standard/raising/index.js.map +1 -1
  374. package/actions/standard/raising/raising.d.ts +2 -2
  375. package/actions/standard/raising/raising.js +4 -4
  376. package/actions/standard/raising/raising.js.map +1 -1
  377. package/actions/standard/reading/index.d.ts +2 -2
  378. package/actions/standard/reading/index.d.ts.map +1 -1
  379. package/actions/standard/reading/index.js +2 -2
  380. package/actions/standard/reading/index.js.map +1 -1
  381. package/actions/standard/reading/reading.d.ts +2 -2
  382. package/actions/standard/reading/reading.d.ts.map +1 -1
  383. package/actions/standard/reading/reading.js +25 -25
  384. package/actions/standard/reading/reading.js.map +1 -1
  385. package/actions/standard/removing/index.d.ts +1 -1
  386. package/actions/standard/removing/index.d.ts.map +1 -1
  387. package/actions/standard/removing/index.js +2 -2
  388. package/actions/standard/removing/index.js.map +1 -1
  389. package/actions/standard/removing/removing-data.d.ts +1 -1
  390. package/actions/standard/removing/removing-data.d.ts.map +1 -1
  391. package/actions/standard/removing/removing-data.js +4 -4
  392. package/actions/standard/removing/removing-data.js.map +1 -1
  393. package/actions/standard/removing/removing-events.d.ts +2 -2
  394. package/actions/standard/removing/removing-events.d.ts.map +1 -1
  395. package/actions/standard/removing/removing.d.ts +3 -3
  396. package/actions/standard/removing/removing.d.ts.map +1 -1
  397. package/actions/standard/removing/removing.js +83 -83
  398. package/actions/standard/removing/removing.js.map +1 -1
  399. package/actions/standard/restarting/index.d.ts +2 -2
  400. package/actions/standard/restarting/index.d.ts.map +1 -1
  401. package/actions/standard/restarting/index.js +3 -3
  402. package/actions/standard/restarting/index.js.map +1 -1
  403. package/actions/standard/restarting/restarting.d.ts +2 -2
  404. package/actions/standard/restarting/restarting.d.ts.map +1 -1
  405. package/actions/standard/restarting/restarting.js +4 -3
  406. package/actions/standard/restarting/restarting.js.map +1 -1
  407. package/actions/standard/restoring/index.d.ts +2 -2
  408. package/actions/standard/restoring/index.d.ts.map +1 -1
  409. package/actions/standard/restoring/index.js +3 -3
  410. package/actions/standard/restoring/index.js.map +1 -1
  411. package/actions/standard/restoring/restoring.d.ts +2 -2
  412. package/actions/standard/restoring/restoring.d.ts.map +1 -1
  413. package/actions/standard/restoring/restoring.js +4 -3
  414. package/actions/standard/restoring/restoring.js.map +1 -1
  415. package/actions/standard/saving/index.d.ts +2 -2
  416. package/actions/standard/saving/index.d.ts.map +1 -1
  417. package/actions/standard/saving/index.js +3 -3
  418. package/actions/standard/saving/index.js.map +1 -1
  419. package/actions/standard/saving/saving.d.ts +2 -2
  420. package/actions/standard/saving/saving.d.ts.map +1 -1
  421. package/actions/standard/saving/saving.js +4 -3
  422. package/actions/standard/saving/saving.js.map +1 -1
  423. package/actions/standard/scoring/index.d.ts +2 -2
  424. package/actions/standard/scoring/index.d.ts.map +1 -1
  425. package/actions/standard/scoring/index.js +2 -2
  426. package/actions/standard/scoring/index.js.map +1 -1
  427. package/actions/standard/scoring/scoring.d.ts +2 -2
  428. package/actions/standard/scoring/scoring.d.ts.map +1 -1
  429. package/actions/standard/scoring/scoring.js +4 -3
  430. package/actions/standard/scoring/scoring.js.map +1 -1
  431. package/actions/standard/searching/index.d.ts +2 -2
  432. package/actions/standard/searching/index.d.ts.map +1 -1
  433. package/actions/standard/searching/index.js +2 -2
  434. package/actions/standard/searching/index.js.map +1 -1
  435. package/actions/standard/searching/searching.d.ts +3 -3
  436. package/actions/standard/searching/searching.d.ts.map +1 -1
  437. package/actions/standard/searching/searching.js +29 -27
  438. package/actions/standard/searching/searching.js.map +1 -1
  439. package/actions/standard/searching-helpers.d.ts +1 -1
  440. package/actions/standard/searching-helpers.d.ts.map +1 -1
  441. package/actions/standard/searching-helpers.js +35 -23
  442. package/actions/standard/searching-helpers.js.map +1 -1
  443. package/actions/standard/showing/index.d.ts +2 -2
  444. package/actions/standard/showing/index.d.ts.map +1 -1
  445. package/actions/standard/showing/index.js +3 -3
  446. package/actions/standard/showing/index.js.map +1 -1
  447. package/actions/standard/showing/showing.d.ts +3 -3
  448. package/actions/standard/showing/showing.d.ts.map +1 -1
  449. package/actions/standard/showing/showing.js +28 -28
  450. package/actions/standard/showing/showing.js.map +1 -1
  451. package/actions/standard/sleeping/index.d.ts +2 -2
  452. package/actions/standard/sleeping/index.d.ts.map +1 -1
  453. package/actions/standard/sleeping/index.js +2 -2
  454. package/actions/standard/sleeping/index.js.map +1 -1
  455. package/actions/standard/sleeping/sleeping.d.ts +2 -2
  456. package/actions/standard/sleeping/sleeping.d.ts.map +1 -1
  457. package/actions/standard/sleeping/sleeping.js +4 -3
  458. package/actions/standard/sleeping/sleeping.js.map +1 -1
  459. package/actions/standard/smelling/index.d.ts +2 -2
  460. package/actions/standard/smelling/index.d.ts.map +1 -1
  461. package/actions/standard/smelling/index.js +3 -3
  462. package/actions/standard/smelling/index.js.map +1 -1
  463. package/actions/standard/smelling/smelling.d.ts +3 -3
  464. package/actions/standard/smelling/smelling.d.ts.map +1 -1
  465. package/actions/standard/smelling/smelling.js +21 -21
  466. package/actions/standard/smelling/smelling.js.map +1 -1
  467. package/actions/standard/switching-shared.d.ts +1 -1
  468. package/actions/standard/switching-shared.d.ts.map +1 -1
  469. package/actions/standard/switching_off/index.d.ts +2 -2
  470. package/actions/standard/switching_off/index.d.ts.map +1 -1
  471. package/actions/standard/switching_off/index.js +2 -2
  472. package/actions/standard/switching_off/index.js.map +1 -1
  473. package/actions/standard/switching_off/switching_off.d.ts +3 -3
  474. package/actions/standard/switching_off/switching_off.d.ts.map +1 -1
  475. package/actions/standard/switching_off/switching_off.js +29 -29
  476. package/actions/standard/switching_off/switching_off.js.map +1 -1
  477. package/actions/standard/switching_on/index.d.ts +2 -2
  478. package/actions/standard/switching_on/index.d.ts.map +1 -1
  479. package/actions/standard/switching_on/index.js +2 -2
  480. package/actions/standard/switching_on/index.js.map +1 -1
  481. package/actions/standard/switching_on/switching_on.d.ts +3 -3
  482. package/actions/standard/switching_on/switching_on.d.ts.map +1 -1
  483. package/actions/standard/switching_on/switching_on.js +34 -34
  484. package/actions/standard/switching_on/switching_on.js.map +1 -1
  485. package/actions/standard/taking/index.d.ts +1 -1
  486. package/actions/standard/taking/index.d.ts.map +1 -1
  487. package/actions/standard/taking/index.js +2 -2
  488. package/actions/standard/taking/index.js.map +1 -1
  489. package/actions/standard/taking/taking-data.d.ts +1 -1
  490. package/actions/standard/taking/taking-data.d.ts.map +1 -1
  491. package/actions/standard/taking/taking-data.js +5 -5
  492. package/actions/standard/taking/taking-data.js.map +1 -1
  493. package/actions/standard/taking/taking.d.ts +3 -3
  494. package/actions/standard/taking/taking.d.ts.map +1 -1
  495. package/actions/standard/taking/taking.js +69 -75
  496. package/actions/standard/taking/taking.js.map +1 -1
  497. package/actions/standard/taking_off/index.d.ts +1 -1
  498. package/actions/standard/taking_off/index.d.ts.map +1 -1
  499. package/actions/standard/taking_off/index.js +2 -2
  500. package/actions/standard/taking_off/index.js.map +1 -1
  501. package/actions/standard/taking_off/taking-off.d.ts +3 -3
  502. package/actions/standard/taking_off/taking-off.d.ts.map +1 -1
  503. package/actions/standard/taking_off/taking-off.js +34 -34
  504. package/actions/standard/taking_off/taking-off.js.map +1 -1
  505. package/actions/standard/talking/index.d.ts +2 -2
  506. package/actions/standard/talking/index.d.ts.map +1 -1
  507. package/actions/standard/talking/index.js +3 -3
  508. package/actions/standard/talking/index.js.map +1 -1
  509. package/actions/standard/talking/talking.d.ts +3 -3
  510. package/actions/standard/talking/talking.d.ts.map +1 -1
  511. package/actions/standard/talking/talking.js +22 -26
  512. package/actions/standard/talking/talking.js.map +1 -1
  513. package/actions/standard/telling/index.d.ts +1 -1
  514. package/actions/standard/telling/index.d.ts.map +1 -1
  515. package/actions/standard/telling/index.js +3 -3
  516. package/actions/standard/telling/index.js.map +1 -1
  517. package/actions/standard/telling/telling.d.ts +3 -3
  518. package/actions/standard/telling/telling.d.ts.map +1 -1
  519. package/actions/standard/telling/telling.js +35 -26
  520. package/actions/standard/telling/telling.js.map +1 -1
  521. package/actions/standard/throwing/index.d.ts +1 -1
  522. package/actions/standard/throwing/index.d.ts.map +1 -1
  523. package/actions/standard/throwing/index.js +2 -2
  524. package/actions/standard/throwing/index.js.map +1 -1
  525. package/actions/standard/throwing/throwing.d.ts +3 -3
  526. package/actions/standard/throwing/throwing.d.ts.map +1 -1
  527. package/actions/standard/throwing/throwing.js +40 -40
  528. package/actions/standard/throwing/throwing.js.map +1 -1
  529. package/actions/standard/tool-shared.d.ts +1 -1
  530. package/actions/standard/tool-shared.d.ts.map +1 -1
  531. package/actions/standard/tool-shared.js +5 -5
  532. package/actions/standard/tool-shared.js.map +1 -1
  533. package/actions/standard/touching/index.d.ts +2 -2
  534. package/actions/standard/touching/index.d.ts.map +1 -1
  535. package/actions/standard/touching/index.js +3 -3
  536. package/actions/standard/touching/index.js.map +1 -1
  537. package/actions/standard/touching/touching.d.ts +3 -3
  538. package/actions/standard/touching/touching.d.ts.map +1 -1
  539. package/actions/standard/touching/touching.js +22 -22
  540. package/actions/standard/touching/touching.js.map +1 -1
  541. package/actions/standard/turning/index.d.ts +4 -2
  542. package/actions/standard/turning/index.d.ts.map +1 -1
  543. package/actions/standard/turning/index.js +8 -4
  544. package/actions/standard/turning/index.js.map +1 -1
  545. package/actions/standard/turning/turning-messages.d.ts +14 -0
  546. package/actions/standard/turning/turning-messages.d.ts.map +1 -0
  547. package/actions/standard/turning/turning-messages.js +18 -0
  548. package/actions/standard/turning/turning-messages.js.map +1 -0
  549. package/actions/standard/turning/turning.d.ts +29 -6
  550. package/actions/standard/turning/turning.d.ts.map +1 -1
  551. package/actions/standard/turning/turning.js +184 -12
  552. package/actions/standard/turning/turning.js.map +1 -1
  553. package/actions/standard/undoing/index.d.ts +2 -2
  554. package/actions/standard/undoing/index.d.ts.map +1 -1
  555. package/actions/standard/undoing/index.js +3 -3
  556. package/actions/standard/undoing/index.js.map +1 -1
  557. package/actions/standard/undoing/undoing.d.ts +2 -2
  558. package/actions/standard/undoing/undoing.d.ts.map +1 -1
  559. package/actions/standard/undoing/undoing.js +2 -2
  560. package/actions/standard/undoing/undoing.js.map +1 -1
  561. package/actions/standard/unlocking/index.d.ts +2 -2
  562. package/actions/standard/unlocking/index.d.ts.map +1 -1
  563. package/actions/standard/unlocking/index.js +2 -2
  564. package/actions/standard/unlocking/index.js.map +1 -1
  565. package/actions/standard/unlocking/unlocking.d.ts +3 -3
  566. package/actions/standard/unlocking/unlocking.d.ts.map +1 -1
  567. package/actions/standard/unlocking/unlocking.js +35 -35
  568. package/actions/standard/unlocking/unlocking.js.map +1 -1
  569. package/actions/standard/version/engine-version.d.ts +6 -0
  570. package/actions/standard/version/engine-version.d.ts.map +1 -0
  571. package/actions/standard/version/engine-version.js +9 -0
  572. package/actions/standard/version/engine-version.js.map +1 -0
  573. package/actions/standard/version/index.d.ts +2 -2
  574. package/actions/standard/version/index.d.ts.map +1 -1
  575. package/actions/standard/version/index.js +3 -3
  576. package/actions/standard/version/index.js.map +1 -1
  577. package/actions/standard/version/version.d.ts +4 -4
  578. package/actions/standard/version/version.d.ts.map +1 -1
  579. package/actions/standard/version/version.js +10 -6
  580. package/actions/standard/version/version.js.map +1 -1
  581. package/actions/standard/waiting/index.d.ts +2 -2
  582. package/actions/standard/waiting/index.d.ts.map +1 -1
  583. package/actions/standard/waiting/index.js +2 -2
  584. package/actions/standard/waiting/index.js.map +1 -1
  585. package/actions/standard/waiting/waiting.d.ts +2 -2
  586. package/actions/standard/waiting/waiting.d.ts.map +1 -1
  587. package/actions/standard/waiting/waiting.js +4 -3
  588. package/actions/standard/waiting/waiting.js.map +1 -1
  589. package/actions/standard/wearable-shared.d.ts +1 -1
  590. package/actions/standard/wearable-shared.d.ts.map +1 -1
  591. package/actions/standard/wearable-shared.js +2 -2
  592. package/actions/standard/wearable-shared.js.map +1 -1
  593. package/actions/standard/wearing/index.d.ts +1 -1
  594. package/actions/standard/wearing/index.d.ts.map +1 -1
  595. package/actions/standard/wearing/index.js +2 -2
  596. package/actions/standard/wearing/index.js.map +1 -1
  597. package/actions/standard/wearing/wearing.d.ts +3 -3
  598. package/actions/standard/wearing/wearing.d.ts.map +1 -1
  599. package/actions/standard/wearing/wearing.js +31 -31
  600. package/actions/standard/wearing/wearing.js.map +1 -1
  601. package/capabilities/index.d.ts +6 -6
  602. package/capabilities/index.d.ts.map +1 -1
  603. package/capabilities/index.js +21 -21
  604. package/capabilities/index.js.map +1 -1
  605. package/chains/index.d.ts +2 -2
  606. package/chains/index.d.ts.map +1 -1
  607. package/chains/index.js +7 -7
  608. package/chains/index.js.map +1 -1
  609. package/channels/index.d.ts +5 -5
  610. package/channels/index.d.ts.map +1 -1
  611. package/channels/index.js +43 -43
  612. package/channels/index.js.map +1 -1
  613. package/channels/registry.js +6 -6
  614. package/channels/registry.js.map +1 -1
  615. package/channels/standard.js +9 -9
  616. package/channels/standard.js.map +1 -1
  617. package/combat/index.d.ts +1 -1
  618. package/combat/index.d.ts.map +1 -1
  619. package/combat/index.js +2 -2
  620. package/combat/index.js.map +1 -1
  621. package/death/index.d.ts +4 -4
  622. package/death/index.d.ts.map +1 -1
  623. package/death/index.js +11 -11
  624. package/death/index.js.map +1 -1
  625. package/death/kill-player.js +2 -2
  626. package/death/kill-player.js.map +1 -1
  627. package/events/event-registry.d.ts +34 -34
  628. package/events/event-registry.d.ts.map +1 -1
  629. package/events/index.d.ts +4 -4
  630. package/events/index.d.ts.map +1 -1
  631. package/events/index.js +4 -4
  632. package/events/index.js.map +1 -1
  633. package/helpers/index.d.ts +1 -1
  634. package/helpers/index.d.ts.map +1 -1
  635. package/helpers/index.js +1 -1
  636. package/helpers/index.js.map +1 -1
  637. package/helpers/multi-object-handler.d.ts +1 -1
  638. package/helpers/multi-object-handler.d.ts.map +1 -1
  639. package/helpers/multi-object-handler.js +8 -5
  640. package/helpers/multi-object-handler.js.map +1 -1
  641. package/index.d.ts +16 -16
  642. package/index.d.ts.map +1 -1
  643. package/index.js +16 -16
  644. package/index.js.map +1 -1
  645. package/inference/implicit-inference.d.ts +1 -1
  646. package/inference/implicit-inference.d.ts.map +1 -1
  647. package/inference/index.d.ts +1 -1
  648. package/inference/index.d.ts.map +1 -1
  649. package/inference/index.js +4 -4
  650. package/inference/index.js.map +1 -1
  651. package/npc/behaviors.d.ts +1 -1
  652. package/npc/behaviors.d.ts.map +1 -1
  653. package/npc/behaviors.js +11 -11
  654. package/npc/behaviors.js.map +1 -1
  655. package/npc/character-observer.js +6 -6
  656. package/npc/character-observer.js.map +1 -1
  657. package/npc/index.d.ts +7 -7
  658. package/npc/index.d.ts.map +1 -1
  659. package/npc/index.js +23 -23
  660. package/npc/index.js.map +1 -1
  661. package/npc/lucidity-decay.js +2 -2
  662. package/npc/lucidity-decay.js.map +1 -1
  663. package/npc/npc-service.d.ts +1 -1
  664. package/npc/npc-service.d.ts.map +1 -1
  665. package/npc/npc-service.js +14 -14
  666. package/npc/npc-service.js.map +1 -1
  667. package/package.json +7 -7
  668. package/query-handlers/index.d.ts +2 -2
  669. package/query-handlers/index.d.ts.map +1 -1
  670. package/query-handlers/index.js +3 -3
  671. package/query-handlers/index.js.map +1 -1
  672. package/scope/index.d.ts +3 -3
  673. package/scope/index.d.ts.map +1 -1
  674. package/scope/index.js +3 -3
  675. package/scope/index.js.map +1 -1
  676. package/scope/scope-resolver.d.ts +1 -1
  677. package/scope/scope-resolver.d.ts.map +1 -1
  678. package/scope/scope-resolver.js +13 -15
  679. package/scope/scope-resolver.js.map +1 -1
  680. package/scope/witness-system.d.ts +1 -1
  681. package/scope/witness-system.d.ts.map +1 -1
  682. package/scope/witness-system.js +16 -16
  683. package/scope/witness-system.js.map +1 -1
  684. package/services/index.d.ts +1 -1
  685. package/services/index.d.ts.map +1 -1
  686. package/services/index.js +2 -2
  687. package/services/index.js.map +1 -1
  688. package/utils/index.d.ts +1 -1
  689. package/utils/index.d.ts.map +1 -1
  690. package/utils/index.js +2 -2
  691. package/utils/index.js.map +1 -1
  692. package/utils/noun-phrase.d.ts.map +1 -1
  693. package/utils/noun-phrase.js +5 -0
  694. package/utils/noun-phrase.js.map +1 -1
  695. package/validation/command-validator.d.ts +68 -16
  696. package/validation/command-validator.d.ts.map +1 -1
  697. package/validation/command-validator.js +275 -211
  698. package/validation/command-validator.js.map +1 -1
  699. package/validation/index.d.ts +3 -3
  700. package/validation/index.d.ts.map +1 -1
  701. package/validation/index.js +2 -2
  702. package/validation/index.js.map +1 -1
  703. package/validation/types.d.ts +1 -1
  704. package/validation/types.d.ts.map +1 -1
  705. package/vocabulary/index.d.ts +1 -1
  706. package/vocabulary/index.d.ts.map +1 -1
  707. package/vocabulary/index.js +1 -1
  708. package/vocabulary/index.js.map +1 -1
  709. package/vocabulary/standard-english.d.ts +1 -1
  710. package/vocabulary/standard-english.d.ts.map +1 -1
  711. package/vocabulary/standard-english.js +5 -5
  712. package/vocabulary/standard-english.js.map +1 -1
@@ -16,12 +16,12 @@
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.attackingAction = exports.attackingLifecycle = void 0;
18
18
  const world_model_1 = require("@sharpee/world-model");
19
- const constants_1 = require("../../constants");
20
- const death_1 = require("../../../death");
21
- const types_1 = require("../../../scope/types");
22
- const combat_1 = require("../../../combat");
23
- const utils_1 = require("../../../utils");
24
- const lifecycle_1 = require("../../lifecycle");
19
+ const constants_js_1 = require("../../constants.js");
20
+ const index_js_1 = require("../../../death/index.js");
21
+ const types_js_1 = require("../../../scope/types.js");
22
+ const index_js_2 = require("../../../combat/index.js");
23
+ const index_js_3 = require("../../../utils/index.js");
24
+ const index_js_4 = require("../../lifecycle/index.js");
25
25
  /**
26
26
  * Interceptor surface (ADR-228): the attacked target AND the wielded
27
27
  * weapon/instrument are consulted (the weapon was the audit's dead
@@ -35,17 +35,17 @@ const lifecycle_1 = require("../../lifecycle");
35
35
  * sharedData with weapon/verb context and reads attackResult back.
36
36
  */
37
37
  exports.attackingLifecycle = {
38
- actionId: constants_1.IFActions.ATTACKING,
38
+ actionId: constants_js_1.IFActions.ATTACKING,
39
39
  slots: [
40
40
  {
41
41
  id: 'target',
42
- actionIds: [constants_1.IFActions.ATTACKING],
42
+ actionIds: [constants_js_1.IFActions.ATTACKING],
43
43
  resolve: (ctx) => ctx.command.directObject?.entity
44
44
  },
45
45
  {
46
46
  id: 'weapon',
47
47
  // ADR-080: Prefer instrument field (from .instrument() patterns), fall back to indirectObject
48
- actionIds: [constants_1.IFActions.ATTACKING],
48
+ actionIds: [constants_js_1.IFActions.ATTACKING],
49
49
  resolve: (ctx) => ctx.command.instrument?.entity ?? ctx.command.indirectObject?.entity,
50
50
  seedData: (ctx, entity) => ({
51
51
  weaponId: entity.id,
@@ -65,12 +65,12 @@ function targetConsultation(state) {
65
65
  return state?.consultations.find(c => c.slotId === 'target');
66
66
  }
67
67
  exports.attackingAction = {
68
- id: constants_1.IFActions.ATTACKING,
68
+ id: constants_js_1.IFActions.ATTACKING,
69
69
  group: "interaction",
70
70
  metadata: {
71
71
  requiresDirectObject: true,
72
72
  requiresIndirectObject: false,
73
- directObjectScope: types_1.ScopeLevel.REACHABLE
73
+ directObjectScope: types_js_1.ScopeLevel.REACHABLE
74
74
  },
75
75
  requiredMessages: [
76
76
  'no_target',
@@ -99,7 +99,11 @@ exports.attackingAction = {
99
99
  'flees',
100
100
  'peaceful_solution',
101
101
  'no_fighting',
102
- 'unnecessary_violence'
102
+ 'unnecessary_violence',
103
+ 'attack_ineffective',
104
+ 'attack_requires_weapon',
105
+ 'attack_wrong_weapon_type',
106
+ 'attack_invulnerable'
103
107
  ],
104
108
  /**
105
109
  * Validate whether the attack action can be executed
@@ -114,17 +118,17 @@ exports.attackingAction = {
114
118
  if (!target) {
115
119
  return { valid: false, error: 'no_target' };
116
120
  }
117
- const state = (0, lifecycle_1.resolveLifecycle)(context, exports.attackingLifecycle);
118
- const preVeto = (0, lifecycle_1.runPreValidate)(context, state);
121
+ const state = (0, index_js_4.resolveLifecycle)(context, exports.attackingLifecycle);
122
+ const preVeto = (0, index_js_4.runPreValidate)(context, state);
119
123
  if (preVeto)
120
124
  return preVeto;
121
125
  // Check if target is visible
122
126
  if (!context.canSee(target)) {
123
- return { valid: false, error: 'not_visible', params: { target: (0, utils_1.nounPhraseFor)(target) } };
127
+ return { valid: false, error: 'not_visible', params: { target: (0, index_js_3.nounPhraseFor)(target) } };
124
128
  }
125
129
  // Check if target is reachable
126
130
  if (!context.canReach(target)) {
127
- return { valid: false, error: 'not_reachable', params: { target: (0, utils_1.nounPhraseFor)(target) } };
131
+ return { valid: false, error: 'not_reachable', params: { target: (0, index_js_3.nounPhraseFor)(target) } };
128
132
  }
129
133
  // Prevent attacking self
130
134
  if (target.id === actor.id) {
@@ -141,15 +145,15 @@ exports.attackingAction = {
141
145
  if (target.has(world_model_1.TraitType.COMBATANT)) {
142
146
  const health = target.get(world_model_1.TraitType.HEALTH);
143
147
  if (health && !world_model_1.HealthBehavior.isAlive(health)) {
144
- return { valid: false, error: 'already_dead', params: { target: (0, utils_1.nounPhraseFor)(target) } };
148
+ return { valid: false, error: 'already_dead', params: { target: (0, index_js_3.nounPhraseFor)(target) } };
145
149
  }
146
150
  // No combat interceptor registered on the target — block with standard IF response
147
151
  if (!targetConsultation(state)) {
148
- return { valid: false, error: 'violence_not_the_answer', params: { target: (0, utils_1.nounPhraseFor)(target) } };
152
+ return { valid: false, error: 'violence_not_the_answer', params: { target: (0, index_js_3.nounPhraseFor)(target) } };
149
153
  }
150
154
  }
151
155
  // Canonical placement (ADR-228): postValidate runs after ALL standard validation
152
- const postVeto = (0, lifecycle_1.runPostValidate)(context, state);
156
+ const postVeto = (0, index_js_4.runPostValidate)(context, state);
153
157
  if (postVeto)
154
158
  return postVeto;
155
159
  return { valid: true };
@@ -174,7 +178,7 @@ exports.attackingAction = {
174
178
  const shouldInferWeapon = verb === 'stab' || verb === 'slash' || verb === 'cut' ||
175
179
  target.has(world_model_1.TraitType.COMBATANT);
176
180
  if (shouldInferWeapon) {
177
- weapon = (0, combat_1.findWieldedWeapon)(context.player, context.world);
181
+ weapon = (0, index_js_2.findWieldedWeapon)(context.player, context.world);
178
182
  if (!weapon) {
179
183
  // Fall back to AttackBehavior's inference
180
184
  const inventory = context.world.getContents(context.player.id);
@@ -183,7 +187,7 @@ exports.attackingAction = {
183
187
  weaponInferred = !!weapon;
184
188
  }
185
189
  }
186
- const state = (0, lifecycle_1.getLifecycleState)(context);
190
+ const state = (0, index_js_4.getLifecycleState)(context);
187
191
  const targetC = targetConsultation(state);
188
192
  // Seed combat context onto the target consultation's sharedData so the
189
193
  // combat interceptor knows what's swinging (weapon may be inferred here
@@ -212,7 +216,7 @@ exports.attackingAction = {
212
216
  // The engine runs ALL consultations' hooks (weapon-slot hooks fire
213
217
  // too — the audit's dead second-entity surface).
214
218
  if (state)
215
- (0, lifecycle_1.runPostExecute)(context, state);
219
+ (0, index_js_4.runPostExecute)(context, state);
216
220
  // Copy interceptor's result data to sharedData
217
221
  const attackResult = targetC.data.attackResult;
218
222
  Object.assign(context.sharedData, {
@@ -246,12 +250,12 @@ exports.attackingAction = {
246
250
  usedCombatService: false,
247
251
  });
248
252
  if (state)
249
- (0, lifecycle_1.runPostExecute)(context, state);
253
+ (0, index_js_4.runPostExecute)(context, state);
250
254
  }
251
255
  }
252
256
  else {
253
257
  // Use AttackBehavior for object destruction
254
- const result = world_model_1.AttackBehavior.attack(target, weapon, context.world);
258
+ const result = world_model_1.AttackBehavior.attack(target, weapon, context.world, context.random);
255
259
  // Convert to our AttackResult type for consistency
256
260
  const attackResult = {
257
261
  success: result.success,
@@ -263,7 +267,8 @@ exports.attackingAction = {
263
267
  itemsDropped: result.itemsDropped,
264
268
  debrisCreated: result.debrisCreated,
265
269
  exitRevealed: result.exitRevealed,
266
- transformedTo: result.transformedTo
270
+ transformedTo: result.transformedTo,
271
+ reason: result.reason
267
272
  };
268
273
  // Store result for report phase
269
274
  Object.assign(context.sharedData, {
@@ -276,7 +281,7 @@ exports.attackingAction = {
276
281
  // ADR-228 D7.3: hooks run unconditionally — the non-combatant branch
277
282
  // previously skipped postExecute entirely.
278
283
  if (state)
279
- (0, lifecycle_1.runPostExecute)(context, state);
284
+ (0, index_js_4.runPostExecute)(context, state);
280
285
  }
281
286
  },
282
287
  /**
@@ -286,17 +291,17 @@ exports.attackingAction = {
286
291
  const target = context.command.directObject?.entity;
287
292
  const events = [context.event('if.event.attacked', {
288
293
  blocked: true,
289
- messageId: `${context.action.id}.${result.error}`,
294
+ messageId: (0, index_js_4.blockedMessageId)(context, result),
290
295
  // params carry EntityInfo for the formatter chain (ADR-158)
291
- params: { target: target ? (0, utils_1.nounPhraseFor)(target) : undefined, ...result.params },
296
+ params: { target: target ? (0, index_js_3.nounPhraseFor)(target) : undefined, ...result.params },
292
297
  reason: result.error,
293
298
  targetId: target?.id,
294
299
  targetName: target?.name
295
300
  })];
296
301
  if (result.error) {
297
- const state = (0, lifecycle_1.getLifecycleState)(context);
302
+ const state = (0, index_js_4.getLifecycleState)(context);
298
303
  if (state)
299
- (0, lifecycle_1.runOnBlocked)(context, state, events, 'if.event.attacked', result.error);
304
+ (0, index_js_4.runOnBlocked)(context, state, events, 'if.event.attacked', result.error);
300
305
  }
301
306
  return events;
302
307
  },
@@ -313,22 +318,34 @@ exports.attackingAction = {
313
318
  const customMessage = context.sharedData.customMessage;
314
319
  const usedCombatService = context.sharedData.usedCombatService;
315
320
  const combatResult = context.sharedData.combatResult;
316
- const state = (0, lifecycle_1.getLifecycleState)(context);
321
+ const state = (0, index_js_4.getLifecycleState)(context);
317
322
  const events = [];
318
323
  // Prepend any implicit take events (from requireCarriedOrImplicitTake)
319
324
  if (context.sharedData.implicitTakeEvents) {
320
325
  events.push(...context.sharedData.implicitTakeEvents);
321
326
  }
322
- // Check if attack failed (for non-combat attacks)
327
+ // Check if attack failed (for non-combat attacks). World-model emits a
328
+ // reason CODE on failure (never prose — Phase 3c); each maps to its
329
+ // lang-en-us template. An interceptor-supplied customMessage is honored
330
+ // only when it is a plausible message id/key (no whitespace — a real
331
+ // message ID never contains it).
323
332
  if (!result.success && !usedCombatService) {
324
- const failMessageId = customMessage || 'attack_ineffective';
333
+ const reasonMessageIds = {
334
+ requires_weapon: 'attack_requires_weapon',
335
+ wrong_weapon_type: 'attack_wrong_weapon_type',
336
+ invulnerable: 'attack_invulnerable',
337
+ no_effect: 'attack_ineffective'
338
+ };
339
+ const failMessageId = (customMessage && !/\s/.test(customMessage))
340
+ ? customMessage
341
+ : reasonMessageIds[result.reason ?? 'no_effect'] ?? 'attack_ineffective';
325
342
  const fullFailMessageId = failMessageId.includes('.')
326
343
  ? failMessageId
327
344
  : `${context.action.id}.${failMessageId}`;
328
345
  events.push(context.event('if.event.attacked', {
329
346
  messageId: fullFailMessageId,
330
347
  // params carry EntityInfo for the formatter chain (ADR-158)
331
- params: { target: (0, utils_1.nounPhraseFor)(target) },
348
+ params: { target: (0, index_js_3.nounPhraseFor)(target) },
332
349
  target: target.id,
333
350
  targetName: target.name,
334
351
  failed: true
@@ -337,7 +354,7 @@ exports.attackingAction = {
337
354
  // attacks previously returned before the hooks (and dropped the
338
355
  // implicit-take events above).
339
356
  if (state)
340
- (0, lifecycle_1.runPostReport)(context, state, events, 'if.event.attacked');
357
+ (0, index_js_4.runPostReport)(context, state, events, 'if.event.attacked');
341
358
  return events;
342
359
  }
343
360
  // Build event data
@@ -350,8 +367,8 @@ exports.attackingAction = {
350
367
  };
351
368
  // params carry EntityInfo for the formatter chain (ADR-158)
352
369
  const params = {
353
- target: (0, utils_1.nounPhraseFor)(target),
354
- weapon: weapon ? (0, utils_1.nounPhraseFor)(weapon) : undefined
370
+ target: (0, index_js_3.nounPhraseFor)(target),
371
+ weapon: weapon ? (0, index_js_3.nounPhraseFor)(weapon) : undefined
355
372
  };
356
373
  // Create ATTACKED event for world model
357
374
  events.push(context.event('if.event.attacked', eventData));
@@ -366,7 +383,7 @@ exports.attackingAction = {
366
383
  params.damage = combatResult.damage;
367
384
  params.attackerName = context.player.name;
368
385
  params.targetName = target.name; // string for combat service compat
369
- params.target = (0, utils_1.nounPhraseFor)(target);
386
+ params.target = (0, index_js_3.nounPhraseFor)(target);
370
387
  // Add any extra data from combat result
371
388
  if (combatResult.messageData) {
372
389
  Object.assign(params, combatResult.messageData);
@@ -417,20 +434,26 @@ exports.attackingAction = {
417
434
  messageId = 'attacked';
418
435
  }
419
436
  }
420
- // Update the main attacked event with messageId for text rendering
421
- // The first event in the array is the attacked event - update it
422
- // customMessage from story interceptors may be fully-qualified (e.g., dungeo.melee.hero_attack)
423
- // and should not be prefixed. Standard messageId from the switch block above is always
424
- // action-scoped and must be prefixed.
425
- const resolvedMessageId = customMessage || messageId;
426
- const fullMessageId = customMessage && customMessage.includes('.')
437
+ // Update the main attacked event with messageId for text rendering.
438
+ // customMessage semantics under the tightened heuristic (Phase 3c):
439
+ // - whitespace-free with a dot fully-qualified message ID from a story
440
+ // interceptor (e.g. dungeo.melee.hero_attack), pass through unprefixed
441
+ // - whitespace-free, no dot → action-scoped key, prefix as usual
442
+ // - contains whitespace AUTHOR trait prose (breakable/destructible/
443
+ // combatant message fields, passed through by AttackBehavior): not an
444
+ // ID at all. Emit it as inline `message` WITHOUT a messageId so the
445
+ // pipeline's generic handler renders the prose verbatim — the old
446
+ // includes('.') heuristic let the sentence's own period satisfy the
447
+ // "fully-qualified" check and emitted raw English as a message ID the
448
+ // text service could not resolve (rendered blank).
449
+ const proseMessage = customMessage && /\s/.test(customMessage) ? customMessage : undefined;
450
+ const resolvedMessageId = (customMessage && !proseMessage) ? customMessage : messageId;
451
+ const fullMessageId = customMessage && !proseMessage && customMessage.includes('.')
427
452
  ? customMessage
428
453
  : `${context.action.id}.${resolvedMessageId}`;
429
- events[0] = context.event('if.event.attacked', {
430
- messageId: fullMessageId,
431
- params,
432
- ...eventData
433
- });
454
+ events[0] = context.event('if.event.attacked', proseMessage
455
+ ? { message: proseMessage, params, ...eventData }
456
+ : { messageId: fullMessageId, params, ...eventData });
434
457
  // Additional events based on result
435
458
  if (result.itemsDropped?.length) {
436
459
  for (const itemId of result.itemsDropped) {
@@ -456,7 +479,7 @@ exports.attackingAction = {
456
479
  // smoke). postReport may override the if.event.attacked messageId or
457
480
  // emit additional narration events (ISSUE-074 / ADR-228).
458
481
  if (state)
459
- (0, lifecycle_1.runPostReport)(context, state, events, 'if.event.attacked');
482
+ (0, index_js_4.runPostReport)(context, state, events, 'if.event.attacked');
460
483
  // For killed targets, emit a death event.
461
484
  if (result.targetKilled) {
462
485
  if (target.id === context.player.id) {
@@ -465,7 +488,7 @@ exports.attackingAction = {
465
488
  // looking: the attack grammar blocks self-attack, so this branch is not a
466
489
  // live path today; Dungeo's real combat-death path is its own melee engine,
467
490
  // migrated in Phase 4.)
468
- const deathEvent = (0, death_1.killPlayer)(context.world, context.player, {
491
+ const deathEvent = (0, index_js_1.killPlayer)(context.world, context.player, {
469
492
  cause: 'combat',
470
493
  messageId: 'combat.player_died',
471
494
  terminal: true,
@@ -1 +1 @@
1
- {"version":3,"file":"attacking.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/attacking/attacking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attacking.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/attacking/attacking.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Attacking action module exports
3
3
  */
4
- export { attackingAction, attackingLifecycle } from './attacking';
5
- export * from './attacking-events';
4
+ export { attackingAction, attackingLifecycle } from './attacking.js';
5
+ export * from './attacking-events.js';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/attacking/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAClE,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/attacking/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACrE,cAAc,uBAAuB,CAAC"}
@@ -18,8 +18,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  exports.attackingLifecycle = exports.attackingAction = void 0;
21
- var attacking_1 = require("./attacking");
22
- Object.defineProperty(exports, "attackingAction", { enumerable: true, get: function () { return attacking_1.attackingAction; } });
23
- Object.defineProperty(exports, "attackingLifecycle", { enumerable: true, get: function () { return attacking_1.attackingLifecycle; } });
24
- __exportStar(require("./attacking-events"), exports);
21
+ var attacking_js_1 = require("./attacking.js");
22
+ Object.defineProperty(exports, "attackingAction", { enumerable: true, get: function () { return attacking_js_1.attackingAction; } });
23
+ Object.defineProperty(exports, "attackingLifecycle", { enumerable: true, get: function () { return attacking_js_1.attackingLifecycle; } });
24
+ __exportStar(require("./attacking-events.js"), exports);
25
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/attacking/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,yCAAkE;AAAzD,4GAAA,eAAe,OAAA;AAAE,+GAAA,kBAAkB,OAAA;AAC5C,qDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/attacking/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,+CAAqE;AAA5D,+GAAA,eAAe,OAAA;AAAE,kHAAA,kBAAkB,OAAA;AAC5C,wDAAsC"}
@@ -13,9 +13,9 @@
13
13
  * Interceptor consultation (ADR-118) runs through the shared lifecycle
14
14
  * engine (ADR-228) via `climbingLifecycle` — no hand-rolled hook plumbing.
15
15
  */
16
- import { Action } from '../../enhanced-types';
17
- import { ActionMetadata } from '../../../validation';
18
- import { ActionLifecycleDescriptor } from '../../lifecycle';
16
+ import { Action } from '../../enhanced-types.js';
17
+ import { ActionMetadata } from '../../../validation/index.js';
18
+ import { ActionLifecycleDescriptor } from '../../lifecycle/index.js';
19
19
  /**
20
20
  * Interceptor surface (ADR-228): the climbed object is the only consultable
21
21
  * entity of a CLIMB command. Directional climbing ("climb up") has no direct
@@ -1 +1 @@
1
- {"version":3,"file":"climbing.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/climbing/climbing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAmC,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAOrD,OAAO,EACL,yBAAyB,EAQ1B,MAAM,iBAAiB,CAAC;AAEzB;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,yBAS/B,CAAC;AAkBF,eAAO,MAAM,cAAc,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,cAAc,CAAA;CA6K/D,CAAC"}
1
+ {"version":3,"file":"climbing.d.ts","sourceRoot":"","sources":["../../../../../../../../../repos/sharpee_v2/packages/stdlib/src/actions/standard/climbing/climbing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAmC,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAO9D,OAAO,EACL,yBAAyB,EAS1B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,yBAS/B,CAAC;AAkBF,eAAO,MAAM,cAAc,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,cAAc,CAAA;CA0M/D,CAAC"}
@@ -16,22 +16,22 @@
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.climbingAction = exports.climbingLifecycle = void 0;
19
- const types_1 = require("../../../scope/types");
19
+ const types_js_1 = require("../../../scope/types.js");
20
20
  const world_model_1 = require("@sharpee/world-model");
21
- const constants_1 = require("../../constants");
22
- const utils_1 = require("../../../utils");
23
- const lifecycle_1 = require("../../lifecycle");
21
+ const constants_js_1 = require("../../constants.js");
22
+ const index_js_1 = require("../../../utils/index.js");
23
+ const index_js_2 = require("../../lifecycle/index.js");
24
24
  /**
25
25
  * Interceptor surface (ADR-228): the climbed object is the only consultable
26
26
  * entity of a CLIMB command. Directional climbing ("climb up") has no direct
27
27
  * object, so the slot resolves to undefined — zero consultations.
28
28
  */
29
29
  exports.climbingLifecycle = {
30
- actionId: constants_1.IFActions.CLIMBING,
30
+ actionId: constants_js_1.IFActions.CLIMBING,
31
31
  slots: [
32
32
  {
33
33
  id: 'target',
34
- actionIds: [constants_1.IFActions.CLIMBING],
34
+ actionIds: [constants_js_1.IFActions.CLIMBING],
35
35
  resolve: (ctx) => ctx.command.directObject?.entity
36
36
  }
37
37
  ]
@@ -40,10 +40,11 @@ function getClimbingSharedData(context) {
40
40
  return context.sharedData;
41
41
  }
42
42
  exports.climbingAction = {
43
- id: constants_1.IFActions.CLIMBING,
43
+ id: constants_js_1.IFActions.CLIMBING,
44
44
  requiredMessages: [
45
45
  'no_target',
46
46
  'not_climbable',
47
+ 'climb_nowhere',
47
48
  'cant_go_that_way',
48
49
  'climbed_up',
49
50
  'climbed_down',
@@ -56,7 +57,7 @@ exports.climbingAction = {
56
57
  metadata: {
57
58
  requiresDirectObject: false,
58
59
  requiresIndirectObject: false,
59
- directObjectScope: types_1.ScopeLevel.REACHABLE
60
+ directObjectScope: types_js_1.ScopeLevel.REACHABLE
60
61
  },
61
62
  validate(context) {
62
63
  const target = context.command.directObject?.entity;
@@ -65,8 +66,8 @@ exports.climbingAction = {
65
66
  if (!direction && !target) {
66
67
  return { valid: false, error: 'no_target' };
67
68
  }
68
- const state = (0, lifecycle_1.resolveLifecycle)(context, exports.climbingLifecycle);
69
- const preVeto = (0, lifecycle_1.runPreValidate)(context, state);
69
+ const state = (0, index_js_2.resolveLifecycle)(context, exports.climbingLifecycle);
70
+ const preVeto = (0, index_js_2.runPreValidate)(context, state);
70
71
  if (preVeto)
71
72
  return preVeto;
72
73
  // Handle directional climbing (climb up, climb down) or object climbing
@@ -76,7 +77,7 @@ exports.climbingAction = {
76
77
  if (!result.valid)
77
78
  return result;
78
79
  // Canonical placement (ADR-228): postValidate runs after ALL standard validation
79
- const postVeto = (0, lifecycle_1.runPostValidate)(context, state);
80
+ const postVeto = (0, index_js_2.runPostValidate)(context, state);
80
81
  if (postVeto)
81
82
  return postVeto;
82
83
  return result;
@@ -116,12 +117,27 @@ exports.climbingAction = {
116
117
  sharedData.mode = 'object';
117
118
  sharedData.targetId = target.id;
118
119
  sharedData.targetName = target.name;
119
- // Move player onto the target
120
- context.world.moveEntity(context.player.id, target.id);
120
+ // A configured climb destination (top of tree, far side of fence) wins;
121
+ // otherwise the player moves onto the target itself.
122
+ const climbable = target.has(world_model_1.TraitType.CLIMBABLE)
123
+ ? target.get(world_model_1.TraitType.CLIMBABLE)
124
+ : undefined;
125
+ const moveTarget = climbable?.destination ?? target.id;
126
+ if (climbable?.destination) {
127
+ sharedData.destinationId = climbable.destination;
128
+ }
129
+ const moved = context.world.moveEntity(context.player.id, moveTarget);
130
+ if (!moved) {
131
+ // Invariant (belt-and-suspenders, same pattern as the loader's door
132
+ // guard): validate already established the target/destination can
133
+ // receive the player — a refusal here is a platform bug and must
134
+ // never become a silent no-op with success narration.
135
+ throw new Error(`climbing: moveEntity refused after validation passed (player ${context.player.id} -> ${moveTarget})`);
136
+ }
121
137
  }
122
- const state = (0, lifecycle_1.getLifecycleState)(context);
138
+ const state = (0, index_js_2.getLifecycleState)(context);
123
139
  if (state)
124
- (0, lifecycle_1.runPostExecute)(context, state);
140
+ (0, index_js_2.runPostExecute)(context, state);
125
141
  },
126
142
  /**
127
143
  * Generate events when validation fails
@@ -131,18 +147,18 @@ exports.climbingAction = {
131
147
  const direction = context.command.parsed.extras?.direction;
132
148
  const events = [context.event('if.event.climbed', {
133
149
  blocked: true,
134
- messageId: `${context.action.id}.${result.error}`,
150
+ messageId: (0, index_js_2.blockedMessageId)(context, result),
135
151
  // params carry EntityInfo for the formatter chain (ADR-158)
136
- params: { target: target ? (0, utils_1.nounPhraseFor)(target) : undefined, ...result.params },
152
+ params: { target: target ? (0, index_js_1.nounPhraseFor)(target) : undefined, ...result.params },
137
153
  reason: result.error,
138
154
  targetId: target?.id,
139
155
  targetName: target?.name,
140
156
  direction
141
157
  })];
142
158
  if (result.error) {
143
- const state = (0, lifecycle_1.getLifecycleState)(context);
159
+ const state = (0, index_js_2.getLifecycleState)(context);
144
160
  if (state)
145
- (0, lifecycle_1.runOnBlocked)(context, state, events, 'if.event.climbed', result.error);
161
+ (0, index_js_2.runOnBlocked)(context, state, events, 'if.event.climbed', result.error);
146
162
  }
147
163
  return events;
148
164
  },
@@ -179,21 +195,32 @@ exports.climbingAction = {
179
195
  const target = context.command.directObject?.entity;
180
196
  events.push(context.event('if.event.climbed', {
181
197
  messageId: `${context.action.id}.climbed_onto`,
182
- params: { target: target ? (0, utils_1.nounPhraseFor)(target) : { name: sharedData.targetName ?? '' } },
198
+ params: { target: target ? (0, index_js_1.nounPhraseFor)(target) : { name: sharedData.targetName ?? '' } },
183
199
  targetId: sharedData.targetId,
184
200
  targetName: sharedData.targetName,
185
201
  method: 'onto'
186
202
  }));
187
- // Entered event for climbing onto
188
- events.push(context.event('if.event.entered', {
189
- targetId: sharedData.targetId,
190
- method: 'climbing',
191
- preposition: 'onto'
192
- }));
203
+ if (sharedData.destinationId) {
204
+ // Destination climb (configured on the ClimbableTrait): the player
205
+ // ended up somewhere else — emit moved, matching the directional path
206
+ events.push(context.event('if.event.moved', {
207
+ fromRoom: sharedData.fromLocationId,
208
+ toRoom: sharedData.destinationId,
209
+ method: 'climbing'
210
+ }));
211
+ }
212
+ else {
213
+ // Entered event for climbing onto
214
+ events.push(context.event('if.event.entered', {
215
+ targetId: sharedData.targetId,
216
+ method: 'climbing',
217
+ preposition: 'onto'
218
+ }));
219
+ }
193
220
  }
194
- const state = (0, lifecycle_1.getLifecycleState)(context);
221
+ const state = (0, index_js_2.getLifecycleState)(context);
195
222
  if (state)
196
- (0, lifecycle_1.runPostReport)(context, state, events, 'if.event.climbed');
223
+ (0, index_js_2.runPostReport)(context, state, events, 'if.event.climbed');
197
224
  return events;
198
225
  }
199
226
  };
@@ -240,12 +267,27 @@ function validateObjectClimbing(target, context) {
240
267
  }
241
268
  }
242
269
  if (!isClimbable) {
243
- return { valid: false, error: 'not_climbable', params: { object: (0, utils_1.nounPhraseFor)(target) } };
270
+ return { valid: false, error: 'not_climbable', params: { object: (0, index_js_1.nounPhraseFor)(target) } };
244
271
  }
245
272
  // Check if already on/in the target
246
273
  const currentLocation = context.world.getLocation(context.player.id);
247
274
  if (currentLocation === target.id) {
248
- return { valid: false, error: 'already_there', params: { place: (0, utils_1.nounPhraseFor)(target) } };
275
+ return { valid: false, error: 'already_there', params: { place: (0, index_js_1.nounPhraseFor)(target) } };
276
+ }
277
+ // David's ruling (2026-07-20): a bare `climbable` does NOT imply a place to
278
+ // be — no auto-composed destination. The target must actually be able to
279
+ // receive the player: a configured climb destination that exists, or a
280
+ // shape the world-model's own move authority accepts (supporter, enterable,
281
+ // container, …). Consulting canMoveEntity keeps validate and execute on ONE
282
+ // definition of "receivable" — the same predicate execute's mutation uses.
283
+ if (target.has(world_model_1.TraitType.CLIMBABLE)) {
284
+ const climbable = target.get(world_model_1.TraitType.CLIMBABLE);
285
+ const destinationExists = climbable.destination
286
+ ? !!context.world.getEntity(climbable.destination)
287
+ : false;
288
+ if (!destinationExists && !context.world.canMoveEntity(context.player.id, target.id)) {
289
+ return { valid: false, error: 'climb_nowhere', params: { object: (0, index_js_1.nounPhraseFor)(target) } };
290
+ }
249
291
  }
250
292
  return { valid: true };
251
293
  }