@aephia/atlas-kit 0.6.0-next.10 → 0.6.0-next.100

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 (620) hide show
  1. package/README.md +3 -1
  2. package/dist/cargo/actions/deposit.d.ts +1 -1
  3. package/dist/cargo/actions/deposit.d.ts.map +1 -1
  4. package/dist/cargo/actions/deposit.js +27 -14
  5. package/dist/cargo/actions/deposit.js.map +1 -1
  6. package/dist/cargo/actions/index.d.ts.map +1 -1
  7. package/dist/cargo/actions/index.js +10 -15
  8. package/dist/cargo/actions/index.js.map +1 -1
  9. package/dist/cargo/actions/wallet-token.d.ts +1 -1
  10. package/dist/cargo/actions/wallet-token.d.ts.map +1 -1
  11. package/dist/cargo/actions/wallet-token.js +1 -9
  12. package/dist/cargo/actions/wallet-token.js.map +1 -1
  13. package/dist/cargo/actions/withdrawal.d.ts.map +1 -1
  14. package/dist/cargo/actions/withdrawal.js +30 -29
  15. package/dist/cargo/actions/withdrawal.js.map +1 -1
  16. package/dist/claim-stakes/actions/index.d.ts +13 -0
  17. package/dist/claim-stakes/actions/index.d.ts.map +1 -1
  18. package/dist/claim-stakes/actions/index.js +137 -111
  19. package/dist/claim-stakes/actions/index.js.map +1 -1
  20. package/dist/claim-stakes/index.d.ts +14 -0
  21. package/dist/claim-stakes/index.d.ts.map +1 -1
  22. package/dist/claim-stakes/index.js +23 -2
  23. package/dist/claim-stakes/index.js.map +1 -1
  24. package/dist/client/context.d.ts.map +1 -1
  25. package/dist/client/context.js +1 -1
  26. package/dist/client/context.js.map +1 -1
  27. package/dist/client/contracts.d.ts +16 -6
  28. package/dist/client/contracts.d.ts.map +1 -1
  29. package/dist/client/errors.d.ts +6 -2
  30. package/dist/client/errors.d.ts.map +1 -1
  31. package/dist/client/errors.js +31 -1
  32. package/dist/client/errors.js.map +1 -1
  33. package/dist/client/index.d.ts +35 -0
  34. package/dist/client/index.d.ts.map +1 -1
  35. package/dist/client/index.js +35 -0
  36. package/dist/client/index.js.map +1 -1
  37. package/dist/client/rpc-subscription-provider.d.ts +35 -0
  38. package/dist/client/rpc-subscription-provider.d.ts.map +1 -0
  39. package/dist/client/rpc-subscription-provider.js +190 -0
  40. package/dist/client/rpc-subscription-provider.js.map +1 -0
  41. package/dist/combat/actions/index.d.ts.map +1 -1
  42. package/dist/combat/actions/index.js +104 -67
  43. package/dist/combat/actions/index.js.map +1 -1
  44. package/dist/crafting/actions/index.d.ts +11 -0
  45. package/dist/crafting/actions/index.d.ts.map +1 -1
  46. package/dist/crafting/actions/index.js +101 -108
  47. package/dist/crafting/actions/index.js.map +1 -1
  48. package/dist/crafting/index.d.ts +33 -3
  49. package/dist/crafting/index.d.ts.map +1 -1
  50. package/dist/crafting/index.js +44 -15
  51. package/dist/crafting/index.js.map +1 -1
  52. package/dist/factions/actions/index.d.ts +1 -0
  53. package/dist/factions/actions/index.d.ts.map +1 -1
  54. package/dist/factions/actions/index.js +2 -1
  55. package/dist/factions/actions/index.js.map +1 -1
  56. package/dist/factions/index.d.ts +1 -1
  57. package/dist/factions/index.d.ts.map +1 -1
  58. package/dist/factions/index.js +14 -8
  59. package/dist/factions/index.js.map +1 -1
  60. package/dist/factions/profile-faction.d.ts +20 -8
  61. package/dist/factions/profile-faction.d.ts.map +1 -1
  62. package/dist/factions/profile-faction.js +20 -8
  63. package/dist/factions/profile-faction.js.map +1 -1
  64. package/dist/fleets/actions/add-ship.d.ts +35 -0
  65. package/dist/fleets/actions/add-ship.d.ts.map +1 -0
  66. package/dist/fleets/actions/add-ship.js +149 -0
  67. package/dist/fleets/actions/add-ship.js.map +1 -0
  68. package/dist/fleets/actions/create-fleet.d.ts +36 -0
  69. package/dist/fleets/actions/create-fleet.d.ts.map +1 -0
  70. package/dist/fleets/actions/create-fleet.js +138 -0
  71. package/dist/fleets/actions/create-fleet.js.map +1 -0
  72. package/dist/fleets/actions/crew-transfer.d.ts +41 -0
  73. package/dist/fleets/actions/crew-transfer.d.ts.map +1 -0
  74. package/dist/fleets/actions/crew-transfer.js +114 -0
  75. package/dist/fleets/actions/crew-transfer.js.map +1 -0
  76. package/dist/fleets/actions/dock-bounds.d.ts +38 -0
  77. package/dist/fleets/actions/dock-bounds.d.ts.map +1 -0
  78. package/dist/fleets/actions/dock-bounds.js +46 -0
  79. package/dist/fleets/actions/dock-bounds.js.map +1 -0
  80. package/dist/fleets/actions/index.d.ts +37 -16
  81. package/dist/fleets/actions/index.d.ts.map +1 -1
  82. package/dist/fleets/actions/index.js +245 -153
  83. package/dist/fleets/actions/index.js.map +1 -1
  84. package/dist/fleets/actions/respawn.d.ts +38 -0
  85. package/dist/fleets/actions/respawn.d.ts.map +1 -0
  86. package/dist/fleets/actions/respawn.js +122 -0
  87. package/dist/fleets/actions/respawn.js.map +1 -0
  88. package/dist/fleets/actions/ship-import.d.ts.map +1 -1
  89. package/dist/fleets/actions/ship-import.js +41 -13
  90. package/dist/fleets/actions/ship-import.js.map +1 -1
  91. package/dist/fleets/cooldown.d.ts +44 -0
  92. package/dist/fleets/cooldown.d.ts.map +1 -0
  93. package/dist/fleets/cooldown.js +43 -0
  94. package/dist/fleets/cooldown.js.map +1 -0
  95. package/dist/fleets/coordinate-warp-estimate.d.ts +70 -0
  96. package/dist/fleets/coordinate-warp-estimate.d.ts.map +1 -0
  97. package/dist/fleets/coordinate-warp-estimate.js +46 -0
  98. package/dist/fleets/coordinate-warp-estimate.js.map +1 -0
  99. package/dist/fleets/index.d.ts +35 -0
  100. package/dist/fleets/index.d.ts.map +1 -1
  101. package/dist/fleets/index.js +52 -2
  102. package/dist/fleets/index.js.map +1 -1
  103. package/dist/fleets/movement-arithmetic.d.ts +21 -0
  104. package/dist/fleets/movement-arithmetic.d.ts.map +1 -0
  105. package/dist/fleets/movement-arithmetic.js +41 -0
  106. package/dist/fleets/movement-arithmetic.js.map +1 -0
  107. package/dist/fleets/subwarp-estimate.d.ts +70 -0
  108. package/dist/fleets/subwarp-estimate.d.ts.map +1 -0
  109. package/dist/fleets/subwarp-estimate.js +38 -0
  110. package/dist/fleets/subwarp-estimate.js.map +1 -0
  111. package/dist/fleets/travel-profile.d.ts +102 -0
  112. package/dist/fleets/travel-profile.d.ts.map +1 -0
  113. package/dist/fleets/travel-profile.js +120 -0
  114. package/dist/fleets/travel-profile.js.map +1 -0
  115. package/dist/fleets/warp-lane-estimate.d.ts +59 -0
  116. package/dist/fleets/warp-lane-estimate.d.ts.map +1 -0
  117. package/dist/fleets/warp-lane-estimate.js +36 -0
  118. package/dist/fleets/warp-lane-estimate.js.map +1 -0
  119. package/dist/fleets/warp-lane-policy.d.ts +68 -0
  120. package/dist/fleets/warp-lane-policy.d.ts.map +1 -0
  121. package/dist/fleets/warp-lane-policy.js +91 -0
  122. package/dist/fleets/warp-lane-policy.js.map +1 -0
  123. package/dist/fleets/warp-lane-toll.d.ts +55 -0
  124. package/dist/fleets/warp-lane-toll.d.ts.map +1 -0
  125. package/dist/fleets/warp-lane-toll.js +79 -0
  126. package/dist/fleets/warp-lane-toll.js.map +1 -0
  127. package/dist/identity/actions/create-profile.d.ts +2 -0
  128. package/dist/identity/actions/create-profile.d.ts.map +1 -1
  129. package/dist/identity/actions/create-profile.js +14 -9
  130. package/dist/identity/actions/create-profile.js.map +1 -1
  131. package/dist/identity/actions/index.d.ts +3 -3
  132. package/dist/identity/actions/index.d.ts.map +1 -1
  133. package/dist/identity/actions/index.js +48 -27
  134. package/dist/identity/actions/index.js.map +1 -1
  135. package/dist/identity/index.d.ts +8 -0
  136. package/dist/identity/index.d.ts.map +1 -1
  137. package/dist/identity/index.js +8 -0
  138. package/dist/identity/index.js.map +1 -1
  139. package/dist/identity/permissions.d.ts +19 -6
  140. package/dist/identity/permissions.d.ts.map +1 -1
  141. package/dist/identity/permissions.js +27 -10
  142. package/dist/identity/permissions.js.map +1 -1
  143. package/dist/identity/research-state.d.ts +60 -0
  144. package/dist/identity/research-state.d.ts.map +1 -0
  145. package/dist/identity/research-state.js +68 -0
  146. package/dist/identity/research-state.js.map +1 -0
  147. package/dist/index.d.ts +24 -0
  148. package/dist/index.d.ts.map +1 -1
  149. package/dist/index.js +20 -3
  150. package/dist/index.js.map +1 -1
  151. package/dist/internal/c4/cargo-bytes-config.d.ts +7 -0
  152. package/dist/internal/c4/cargo-bytes-config.d.ts.map +1 -0
  153. package/dist/internal/c4/cargo-bytes-config.js +19 -0
  154. package/dist/internal/c4/cargo-bytes-config.js.map +1 -0
  155. package/dist/internal/c4/character-registration.d.ts +2 -0
  156. package/dist/internal/c4/character-registration.d.ts.map +1 -1
  157. package/dist/internal/c4/character-registration.js +2 -0
  158. package/dist/internal/c4/character-registration.js.map +1 -1
  159. package/dist/internal/c4/claim-stake-definitions.d.ts +4 -4
  160. package/dist/internal/c4/claim-stake-definitions.d.ts.map +1 -1
  161. package/dist/internal/c4/claim-stake-definitions.js.map +1 -1
  162. package/dist/internal/c4/claim-stake.d.ts +4 -27
  163. package/dist/internal/c4/claim-stake.d.ts.map +1 -1
  164. package/dist/internal/c4/claim-stake.js +25 -38
  165. package/dist/internal/c4/claim-stake.js.map +1 -1
  166. package/dist/internal/c4/combat.d.ts +0 -27
  167. package/dist/internal/c4/combat.d.ts.map +1 -1
  168. package/dist/internal/c4/combat.js +0 -33
  169. package/dist/internal/c4/combat.js.map +1 -1
  170. package/dist/internal/c4/crafting-process-codec.d.ts +13 -0
  171. package/dist/internal/c4/crafting-process-codec.d.ts.map +1 -0
  172. package/dist/internal/c4/crafting-process-codec.js +34 -0
  173. package/dist/internal/c4/crafting-process-codec.js.map +1 -0
  174. package/dist/internal/c4/crafting.d.ts +25 -33
  175. package/dist/internal/c4/crafting.d.ts.map +1 -1
  176. package/dist/internal/c4/crafting.js +53 -44
  177. package/dist/internal/c4/crafting.js.map +1 -1
  178. package/dist/internal/c4/currency-cache.d.ts +6 -0
  179. package/dist/internal/c4/currency-cache.d.ts.map +1 -0
  180. package/dist/internal/c4/currency-cache.js +30 -0
  181. package/dist/internal/c4/currency-cache.js.map +1 -0
  182. package/dist/internal/c4/docking-funding.d.ts +4 -0
  183. package/dist/internal/c4/docking-funding.d.ts.map +1 -0
  184. package/dist/internal/c4/docking-funding.js +11 -0
  185. package/dist/internal/c4/docking-funding.js.map +1 -0
  186. package/dist/internal/c4/faction-adapter.d.ts +12 -0
  187. package/dist/internal/c4/faction-adapter.d.ts.map +1 -0
  188. package/dist/internal/c4/faction-adapter.js +52 -0
  189. package/dist/internal/c4/faction-adapter.js.map +1 -0
  190. package/dist/internal/c4/faction-epoch-meter.d.ts +10 -0
  191. package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -0
  192. package/dist/internal/c4/faction-epoch-meter.js +31 -0
  193. package/dist/internal/c4/faction-epoch-meter.js.map +1 -0
  194. package/dist/internal/c4/faction-treasury.d.ts +23 -0
  195. package/dist/internal/c4/faction-treasury.d.ts.map +1 -0
  196. package/dist/internal/c4/faction-treasury.js +48 -0
  197. package/dist/internal/c4/faction-treasury.js.map +1 -0
  198. package/dist/internal/c4/factions.d.ts +9 -57
  199. package/dist/internal/c4/factions.d.ts.map +1 -1
  200. package/dist/internal/c4/factions.js +21 -139
  201. package/dist/internal/c4/factions.js.map +1 -1
  202. package/dist/internal/c4/fleet-arrival.d.ts +28 -0
  203. package/dist/internal/c4/fleet-arrival.d.ts.map +1 -0
  204. package/dist/internal/c4/fleet-arrival.js +42 -0
  205. package/dist/internal/c4/fleet-arrival.js.map +1 -0
  206. package/dist/internal/c4/fleet-creation.d.ts +7 -0
  207. package/dist/internal/c4/fleet-creation.d.ts.map +1 -0
  208. package/dist/internal/c4/fleet-creation.js +180 -0
  209. package/dist/internal/c4/fleet-creation.js.map +1 -0
  210. package/dist/internal/c4/fleet-crew-binding.d.ts +9 -0
  211. package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
  212. package/dist/internal/c4/fleet-crew-binding.js +15 -0
  213. package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
  214. package/dist/internal/c4/fleet-respawn.d.ts +17 -0
  215. package/dist/internal/c4/fleet-respawn.d.ts.map +1 -0
  216. package/dist/internal/c4/fleet-respawn.js +62 -0
  217. package/dist/internal/c4/fleet-respawn.js.map +1 -0
  218. package/dist/internal/c4/fleet-ship-assembly.d.ts +11 -0
  219. package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -0
  220. package/dist/internal/c4/fleet-ship-assembly.js +44 -0
  221. package/dist/internal/c4/fleet-ship-assembly.js.map +1 -0
  222. package/dist/internal/c4/fleet.d.ts +45 -19
  223. package/dist/internal/c4/fleet.d.ts.map +1 -1
  224. package/dist/internal/c4/fleet.js +26 -7
  225. package/dist/internal/c4/fleet.js.map +1 -1
  226. package/dist/internal/c4/game-definition-layout.d.ts +2 -0
  227. package/dist/internal/c4/game-definition-layout.d.ts.map +1 -1
  228. package/dist/internal/c4/game-definition-layout.js +4 -0
  229. package/dist/internal/c4/game-definition-layout.js.map +1 -1
  230. package/dist/internal/c4/game.d.ts +46 -11
  231. package/dist/internal/c4/game.d.ts.map +1 -1
  232. package/dist/internal/c4/game.js +108 -20
  233. package/dist/internal/c4/game.js.map +1 -1
  234. package/dist/internal/c4/identity.d.ts +4 -2
  235. package/dist/internal/c4/identity.d.ts.map +1 -1
  236. package/dist/internal/c4/identity.js +1 -1
  237. package/dist/internal/c4/identity.js.map +1 -1
  238. package/dist/internal/c4/local-market-order.d.ts +31 -0
  239. package/dist/internal/c4/local-market-order.d.ts.map +1 -0
  240. package/dist/internal/c4/local-market-order.js +47 -0
  241. package/dist/internal/c4/local-market-order.js.map +1 -0
  242. package/dist/internal/c4/loyalty.d.ts +0 -27
  243. package/dist/internal/c4/loyalty.d.ts.map +1 -1
  244. package/dist/internal/c4/loyalty.js +0 -33
  245. package/dist/internal/c4/loyalty.js.map +1 -1
  246. package/dist/internal/c4/market.d.ts +2 -38
  247. package/dist/internal/c4/market.d.ts.map +1 -1
  248. package/dist/internal/c4/market.js +13 -51
  249. package/dist/internal/c4/market.js.map +1 -1
  250. package/dist/internal/c4/mining-instructions.d.ts +2 -0
  251. package/dist/internal/c4/mining-instructions.d.ts.map +1 -0
  252. package/dist/internal/c4/mining-instructions.js +3 -0
  253. package/dist/internal/c4/mining-instructions.js.map +1 -0
  254. package/dist/internal/c4/open-signal.d.ts +8 -0
  255. package/dist/internal/c4/open-signal.d.ts.map +1 -0
  256. package/dist/internal/c4/open-signal.js +37 -0
  257. package/dist/internal/c4/open-signal.js.map +1 -0
  258. package/dist/internal/c4/profile-permissions.d.ts +5 -3
  259. package/dist/internal/c4/profile-permissions.d.ts.map +1 -1
  260. package/dist/internal/c4/profile-permissions.js +61 -8
  261. package/dist/internal/c4/profile-permissions.js.map +1 -1
  262. package/dist/internal/c4/region-geometry.d.ts +8 -0
  263. package/dist/internal/c4/region-geometry.d.ts.map +1 -0
  264. package/dist/internal/c4/region-geometry.js +43 -0
  265. package/dist/internal/c4/region-geometry.js.map +1 -0
  266. package/dist/internal/c4/rewards.d.ts +0 -27
  267. package/dist/internal/c4/rewards.d.ts.map +1 -1
  268. package/dist/internal/c4/rewards.js +0 -33
  269. package/dist/internal/c4/rewards.js.map +1 -1
  270. package/dist/internal/c4/runtime-bindings.d.ts +4 -0
  271. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -0
  272. package/dist/internal/c4/runtime-bindings.js +4 -0
  273. package/dist/internal/c4/runtime-bindings.js.map +1 -0
  274. package/dist/internal/c4/scan-detection-codecs.d.ts +3 -0
  275. package/dist/internal/c4/scan-detection-codecs.d.ts.map +1 -0
  276. package/dist/internal/c4/scan-detection-codecs.js +3 -0
  277. package/dist/internal/c4/scan-detection-codecs.js.map +1 -0
  278. package/dist/internal/c4/scan-lifecycle.d.ts +306 -0
  279. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -0
  280. package/dist/internal/c4/scan-lifecycle.js +258 -0
  281. package/dist/internal/c4/scan-lifecycle.js.map +1 -0
  282. package/dist/internal/c4/scanning.d.ts +1 -28
  283. package/dist/internal/c4/scanning.d.ts.map +1 -1
  284. package/dist/internal/c4/scanning.js +2 -33
  285. package/dist/internal/c4/scanning.js.map +1 -1
  286. package/dist/internal/c4/ship-import.d.ts +4 -0
  287. package/dist/internal/c4/ship-import.d.ts.map +1 -0
  288. package/dist/internal/c4/ship-import.js +13 -0
  289. package/dist/internal/c4/ship-import.js.map +1 -0
  290. package/dist/internal/c4/ship-stats.d.ts.map +1 -1
  291. package/dist/internal/c4/ship-stats.js +25 -21
  292. package/dist/internal/c4/ship-stats.js.map +1 -1
  293. package/dist/internal/c4/starbase.d.ts +0 -32
  294. package/dist/internal/c4/starbase.d.ts.map +1 -1
  295. package/dist/internal/c4/starbase.js +3 -41
  296. package/dist/internal/c4/starbase.js.map +1 -1
  297. package/dist/internal/c4/world.d.ts +36 -7
  298. package/dist/internal/c4/world.d.ts.map +1 -1
  299. package/dist/internal/c4/world.js +58 -25
  300. package/dist/internal/c4/world.js.map +1 -1
  301. package/dist/internal/cargo.d.ts +2 -0
  302. package/dist/internal/cargo.d.ts.map +1 -1
  303. package/dist/internal/cargo.js +8 -0
  304. package/dist/internal/cargo.js.map +1 -1
  305. package/dist/internal/fleet.d.ts +1 -0
  306. package/dist/internal/fleet.d.ts.map +1 -1
  307. package/dist/internal/fleet.js +3 -1
  308. package/dist/internal/fleet.js.map +1 -1
  309. package/dist/internal/loyalty-atlas-bank-state.d.ts +16 -0
  310. package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -0
  311. package/dist/internal/loyalty-atlas-bank-state.js +10 -0
  312. package/dist/internal/loyalty-atlas-bank-state.js.map +1 -0
  313. package/dist/internal/planning/action-runtime.d.ts +38 -0
  314. package/dist/internal/planning/action-runtime.d.ts.map +1 -0
  315. package/dist/internal/planning/action-runtime.js +63 -0
  316. package/dist/internal/planning/action-runtime.js.map +1 -0
  317. package/dist/internal/planning/arrival-guards.d.ts +20 -0
  318. package/dist/internal/planning/arrival-guards.d.ts.map +1 -0
  319. package/dist/internal/planning/arrival-guards.js +187 -0
  320. package/dist/internal/planning/arrival-guards.js.map +1 -0
  321. package/dist/internal/planning/authorization-adapter.d.ts +45 -37
  322. package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
  323. package/dist/internal/planning/authorization-adapter.js +165 -76
  324. package/dist/internal/planning/authorization-adapter.js.map +1 -1
  325. package/dist/internal/planning/character-registration-guard.d.ts +4 -0
  326. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -0
  327. package/dist/internal/planning/character-registration-guard.js +58 -0
  328. package/dist/internal/planning/character-registration-guard.js.map +1 -0
  329. package/dist/internal/planning/character-registration.d.ts +23 -0
  330. package/dist/internal/planning/character-registration.d.ts.map +1 -0
  331. package/dist/internal/planning/character-registration.js +86 -0
  332. package/dist/internal/planning/character-registration.js.map +1 -0
  333. package/dist/internal/planning/currency-cache-guard.d.ts +4 -0
  334. package/dist/internal/planning/currency-cache-guard.d.ts.map +1 -0
  335. package/dist/internal/planning/currency-cache-guard.js +32 -0
  336. package/dist/internal/planning/currency-cache-guard.js.map +1 -0
  337. package/dist/internal/planning/democracy-history.d.ts +50 -0
  338. package/dist/internal/planning/democracy-history.d.ts.map +1 -0
  339. package/dist/internal/planning/democracy-history.js +198 -0
  340. package/dist/internal/planning/democracy-history.js.map +1 -0
  341. package/dist/internal/planning/faction-enrollment.d.ts +0 -2
  342. package/dist/internal/planning/faction-enrollment.d.ts.map +1 -1
  343. package/dist/internal/planning/faction-enrollment.js +1 -22
  344. package/dist/internal/planning/faction-enrollment.js.map +1 -1
  345. package/dist/internal/planning/faction-trade-guards.d.ts +30 -0
  346. package/dist/internal/planning/faction-trade-guards.d.ts.map +1 -0
  347. package/dist/internal/planning/faction-trade-guards.js +15 -0
  348. package/dist/internal/planning/faction-trade-guards.js.map +1 -0
  349. package/dist/internal/planning/faction-trade-state.d.ts +16 -0
  350. package/dist/internal/planning/faction-trade-state.d.ts.map +1 -0
  351. package/dist/internal/planning/faction-trade-state.js +43 -0
  352. package/dist/internal/planning/faction-trade-state.js.map +1 -0
  353. package/dist/internal/planning/fleet-arrival.d.ts +40 -0
  354. package/dist/internal/planning/fleet-arrival.d.ts.map +1 -0
  355. package/dist/internal/planning/fleet-arrival.js +105 -0
  356. package/dist/internal/planning/fleet-arrival.js.map +1 -0
  357. package/dist/internal/planning/fleet-attack-xp.d.ts +20 -0
  358. package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -0
  359. package/dist/internal/planning/fleet-attack-xp.js +110 -0
  360. package/dist/internal/planning/fleet-attack-xp.js.map +1 -0
  361. package/dist/internal/planning/fleet-creation.d.ts +30 -0
  362. package/dist/internal/planning/fleet-creation.d.ts.map +1 -0
  363. package/dist/internal/planning/fleet-creation.js +108 -0
  364. package/dist/internal/planning/fleet-creation.js.map +1 -0
  365. package/dist/internal/planning/fleet-crew-guard.d.ts +28 -0
  366. package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -0
  367. package/dist/internal/planning/fleet-crew-guard.js +47 -0
  368. package/dist/internal/planning/fleet-crew-guard.js.map +1 -0
  369. package/dist/internal/planning/fleet-crew-transfer.d.ts +7 -0
  370. package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -0
  371. package/dist/internal/planning/fleet-crew-transfer.js +131 -0
  372. package/dist/internal/planning/fleet-crew-transfer.js.map +1 -0
  373. package/dist/internal/planning/fleet-dock-funding-guard.d.ts +42 -0
  374. package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -0
  375. package/dist/internal/planning/fleet-dock-funding-guard.js +225 -0
  376. package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -0
  377. package/dist/internal/planning/fleet-dock-funding.d.ts +9 -0
  378. package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -0
  379. package/dist/internal/planning/fleet-dock-funding.js +154 -0
  380. package/dist/internal/planning/fleet-dock-funding.js.map +1 -0
  381. package/dist/internal/planning/fleet-docking-guard.d.ts +4 -0
  382. package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -0
  383. package/dist/internal/planning/fleet-docking-guard.js +42 -0
  384. package/dist/internal/planning/fleet-docking-guard.js.map +1 -0
  385. package/dist/internal/planning/fleet-docking.d.ts +10 -0
  386. package/dist/internal/planning/fleet-docking.d.ts.map +1 -0
  387. package/dist/internal/planning/fleet-docking.js +85 -0
  388. package/dist/internal/planning/fleet-docking.js.map +1 -0
  389. package/dist/internal/planning/fleet-respawn.d.ts +28 -0
  390. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -0
  391. package/dist/internal/planning/fleet-respawn.js +166 -0
  392. package/dist/internal/planning/fleet-respawn.js.map +1 -0
  393. package/dist/internal/planning/fleet-ship-assembly.d.ts +36 -0
  394. package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -0
  395. package/dist/internal/planning/fleet-ship-assembly.js +137 -0
  396. package/dist/internal/planning/fleet-ship-assembly.js.map +1 -0
  397. package/dist/internal/planning/governance-fees.d.ts +64 -0
  398. package/dist/internal/planning/governance-fees.d.ts.map +1 -0
  399. package/dist/internal/planning/governance-fees.js +239 -0
  400. package/dist/internal/planning/governance-fees.js.map +1 -0
  401. package/dist/internal/planning/local-market-order-funding.d.ts +8 -0
  402. package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -0
  403. package/dist/internal/planning/local-market-order-funding.js +126 -0
  404. package/dist/internal/planning/local-market-order-funding.js.map +1 -0
  405. package/dist/internal/planning/local-market-order.d.ts +40 -0
  406. package/dist/internal/planning/local-market-order.d.ts.map +1 -0
  407. package/dist/internal/planning/local-market-order.js +166 -0
  408. package/dist/internal/planning/local-market-order.js.map +1 -0
  409. package/dist/internal/planning/mining-stop.d.ts +14 -0
  410. package/dist/internal/planning/mining-stop.d.ts.map +1 -0
  411. package/dist/internal/planning/mining-stop.js +41 -0
  412. package/dist/internal/planning/mining-stop.js.map +1 -0
  413. package/dist/internal/planning/movement-character.d.ts +7 -0
  414. package/dist/internal/planning/movement-character.d.ts.map +1 -0
  415. package/dist/internal/planning/movement-character.js +41 -0
  416. package/dist/internal/planning/movement-character.js.map +1 -0
  417. package/dist/internal/planning/movement-xp-guard.d.ts +4 -0
  418. package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -0
  419. package/dist/internal/planning/movement-xp-guard.js +103 -0
  420. package/dist/internal/planning/movement-xp-guard.js.map +1 -0
  421. package/dist/internal/planning/open-signal-guard.d.ts +3 -0
  422. package/dist/internal/planning/open-signal-guard.d.ts.map +1 -0
  423. package/dist/internal/planning/open-signal-guard.js +31 -0
  424. package/dist/internal/planning/open-signal-guard.js.map +1 -0
  425. package/dist/internal/planning/open-signal.d.ts +31 -0
  426. package/dist/internal/planning/open-signal.d.ts.map +1 -0
  427. package/dist/internal/planning/open-signal.js +85 -0
  428. package/dist/internal/planning/open-signal.js.map +1 -0
  429. package/dist/internal/planning/recipe-state.d.ts +6 -0
  430. package/dist/internal/planning/recipe-state.d.ts.map +1 -0
  431. package/dist/internal/planning/recipe-state.js +20 -0
  432. package/dist/internal/planning/recipe-state.js.map +1 -0
  433. package/dist/internal/planning/rent.d.ts +19 -0
  434. package/dist/internal/planning/rent.d.ts.map +1 -0
  435. package/dist/internal/planning/rent.js +35 -0
  436. package/dist/internal/planning/rent.js.map +1 -0
  437. package/dist/internal/planning/respawn-guards.d.ts +3 -0
  438. package/dist/internal/planning/respawn-guards.d.ts.map +1 -0
  439. package/dist/internal/planning/respawn-guards.js +41 -0
  440. package/dist/internal/planning/respawn-guards.js.map +1 -0
  441. package/dist/internal/planning/runtime-guards.d.ts +43 -0
  442. package/dist/internal/planning/runtime-guards.d.ts.map +1 -0
  443. package/dist/internal/planning/runtime-guards.js +638 -0
  444. package/dist/internal/planning/runtime-guards.js.map +1 -0
  445. package/dist/internal/planning/scan-completion-guard.d.ts +43 -0
  446. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -0
  447. package/dist/internal/planning/scan-completion-guard.js +94 -0
  448. package/dist/internal/planning/scan-completion-guard.js.map +1 -0
  449. package/dist/internal/planning/scan-completion.d.ts +20 -0
  450. package/dist/internal/planning/scan-completion.d.ts.map +1 -0
  451. package/dist/internal/planning/scan-completion.js +196 -0
  452. package/dist/internal/planning/scan-completion.js.map +1 -0
  453. package/dist/internal/planning/scan-detect-guard.d.ts +34 -0
  454. package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -0
  455. package/dist/internal/planning/scan-detect-guard.js +77 -0
  456. package/dist/internal/planning/scan-detect-guard.js.map +1 -0
  457. package/dist/internal/planning/scan-detect.d.ts +24 -0
  458. package/dist/internal/planning/scan-detect.d.ts.map +1 -0
  459. package/dist/internal/planning/scan-detect.js +244 -0
  460. package/dist/internal/planning/scan-detect.js.map +1 -0
  461. package/dist/internal/planning/scan-input.d.ts +9 -0
  462. package/dist/internal/planning/scan-input.d.ts.map +1 -0
  463. package/dist/internal/planning/scan-input.js +58 -0
  464. package/dist/internal/planning/scan-input.js.map +1 -0
  465. package/dist/internal/planning/ship-import-funding.d.ts +22 -0
  466. package/dist/internal/planning/ship-import-funding.d.ts.map +1 -0
  467. package/dist/internal/planning/ship-import-funding.js +52 -0
  468. package/dist/internal/planning/ship-import-funding.js.map +1 -0
  469. package/dist/internal/planning/ship-token.d.ts +0 -1
  470. package/dist/internal/planning/ship-token.d.ts.map +1 -1
  471. package/dist/internal/planning/ship-token.js +2 -5
  472. package/dist/internal/planning/ship-token.js.map +1 -1
  473. package/dist/internal/planning/starbase-system-guard.d.ts +6 -0
  474. package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -0
  475. package/dist/internal/planning/starbase-system-guard.js +93 -0
  476. package/dist/internal/planning/starbase-system-guard.js.map +1 -0
  477. package/dist/internal/planning/starbase-system.d.ts +15 -0
  478. package/dist/internal/planning/starbase-system.d.ts.map +1 -0
  479. package/dist/internal/planning/starbase-system.js +25 -0
  480. package/dist/internal/planning/starbase-system.js.map +1 -0
  481. package/dist/internal/planning/token-mint.d.ts +4 -0
  482. package/dist/internal/planning/token-mint.d.ts.map +1 -0
  483. package/dist/internal/planning/token-mint.js +15 -0
  484. package/dist/internal/planning/token-mint.js.map +1 -0
  485. package/dist/internal/planning/trade-faction-market.d.ts +20 -0
  486. package/dist/internal/planning/trade-faction-market.d.ts.map +1 -0
  487. package/dist/internal/planning/trade-faction-market.js +56 -0
  488. package/dist/internal/planning/trade-faction-market.js.map +1 -0
  489. package/dist/internal/planning/xp-runtime.d.ts +36 -0
  490. package/dist/internal/planning/xp-runtime.d.ts.map +1 -0
  491. package/dist/internal/planning/xp-runtime.js +126 -0
  492. package/dist/internal/planning/xp-runtime.js.map +1 -0
  493. package/dist/internal/system-program.d.ts +4 -0
  494. package/dist/internal/system-program.d.ts.map +1 -0
  495. package/dist/internal/system-program.js +3 -0
  496. package/dist/internal/system-program.js.map +1 -0
  497. package/dist/loyalty/actions/index.d.ts.map +1 -1
  498. package/dist/loyalty/actions/index.js +7 -20
  499. package/dist/loyalty/actions/index.js.map +1 -1
  500. package/dist/loyalty/index.d.ts.map +1 -1
  501. package/dist/loyalty/index.js +2 -6
  502. package/dist/loyalty/index.js.map +1 -1
  503. package/dist/markets/actions/index.d.ts +61 -3
  504. package/dist/markets/actions/index.d.ts.map +1 -1
  505. package/dist/markets/actions/index.js +142 -36
  506. package/dist/markets/actions/index.js.map +1 -1
  507. package/dist/markets/actions/trade-faction-market.d.ts +43 -0
  508. package/dist/markets/actions/trade-faction-market.d.ts.map +1 -0
  509. package/dist/markets/actions/trade-faction-market.js +282 -0
  510. package/dist/markets/actions/trade-faction-market.js.map +1 -0
  511. package/dist/markets/index.d.ts +38 -7
  512. package/dist/markets/index.d.ts.map +1 -1
  513. package/dist/markets/index.js +57 -10
  514. package/dist/markets/index.js.map +1 -1
  515. package/dist/mining/actions/index.d.ts +87 -0
  516. package/dist/mining/actions/index.d.ts.map +1 -0
  517. package/dist/mining/actions/index.js +332 -0
  518. package/dist/mining/actions/index.js.map +1 -0
  519. package/dist/mining/estimate.d.ts +114 -0
  520. package/dist/mining/estimate.d.ts.map +1 -0
  521. package/dist/mining/estimate.js +127 -0
  522. package/dist/mining/estimate.js.map +1 -0
  523. package/dist/mining/index.d.ts +9 -2
  524. package/dist/mining/index.d.ts.map +1 -1
  525. package/dist/mining/index.js +7 -2
  526. package/dist/mining/index.js.map +1 -1
  527. package/dist/mining/profile.d.ts +82 -0
  528. package/dist/mining/profile.d.ts.map +1 -0
  529. package/dist/mining/profile.js +109 -0
  530. package/dist/mining/profile.js.map +1 -0
  531. package/dist/planning/assembly.d.ts +5 -0
  532. package/dist/planning/assembly.d.ts.map +1 -1
  533. package/dist/planning/assembly.js +30 -2
  534. package/dist/planning/assembly.js.map +1 -1
  535. package/dist/planning/execution.d.ts +18 -3
  536. package/dist/planning/execution.d.ts.map +1 -1
  537. package/dist/planning/execution.js +492 -40
  538. package/dist/planning/execution.js.map +1 -1
  539. package/dist/planning/index.d.ts +196 -149
  540. package/dist/planning/index.d.ts.map +1 -1
  541. package/dist/planning/index.js +910 -121
  542. package/dist/planning/index.js.map +1 -1
  543. package/dist/planning/plan-sequence-checkpoint.d.ts +9 -0
  544. package/dist/planning/plan-sequence-checkpoint.d.ts.map +1 -1
  545. package/dist/planning/plan-sequence-checkpoint.js +16 -7
  546. package/dist/planning/plan-sequence-checkpoint.js.map +1 -1
  547. package/dist/planning/plan-sequence-execution.d.ts +5 -0
  548. package/dist/planning/plan-sequence-execution.d.ts.map +1 -1
  549. package/dist/planning/plan-sequence-execution.js +74 -30
  550. package/dist/planning/plan-sequence-execution.js.map +1 -1
  551. package/dist/planning/plan-sequence.d.ts +2 -1
  552. package/dist/planning/plan-sequence.d.ts.map +1 -1
  553. package/dist/planning/plan-sequence.js +8 -1
  554. package/dist/planning/plan-sequence.js.map +1 -1
  555. package/dist/planning/simulation.d.ts +25 -1
  556. package/dist/planning/simulation.d.ts.map +1 -1
  557. package/dist/planning/simulation.js +111 -11
  558. package/dist/planning/simulation.js.map +1 -1
  559. package/dist/registry/cargo.d.ts +7 -12
  560. package/dist/registry/cargo.d.ts.map +1 -1
  561. package/dist/registry/cargo.js +19 -19
  562. package/dist/registry/cargo.js.map +1 -1
  563. package/dist/registry/docking.d.ts +10 -0
  564. package/dist/registry/docking.d.ts.map +1 -0
  565. package/dist/registry/docking.js +12 -0
  566. package/dist/registry/docking.js.map +1 -0
  567. package/dist/registry/index.d.ts +4 -0
  568. package/dist/registry/index.d.ts.map +1 -1
  569. package/dist/registry/index.js.map +1 -1
  570. package/dist/registry/onboarding.d.ts +10 -2
  571. package/dist/registry/onboarding.d.ts.map +1 -1
  572. package/dist/registry/onboarding.js +20 -7
  573. package/dist/registry/onboarding.js.map +1 -1
  574. package/dist/registry/scanning.d.ts +7 -0
  575. package/dist/registry/scanning.d.ts.map +1 -0
  576. package/dist/registry/scanning.js +13 -0
  577. package/dist/registry/scanning.js.map +1 -0
  578. package/dist/registry/ship-stats-snapshot.js +19 -19
  579. package/dist/registry/ship-stats-snapshot.js.map +1 -1
  580. package/dist/registry/ships.d.ts +22 -2
  581. package/dist/registry/ships.d.ts.map +1 -1
  582. package/dist/registry/ships.js +31 -4
  583. package/dist/registry/ships.js.map +1 -1
  584. package/dist/registry/xp-runtime.d.ts +4 -0
  585. package/dist/registry/xp-runtime.d.ts.map +1 -0
  586. package/dist/registry/xp-runtime.js +14 -0
  587. package/dist/registry/xp-runtime.js.map +1 -0
  588. package/dist/scanning/actions/index.d.ts +116 -0
  589. package/dist/scanning/actions/index.d.ts.map +1 -0
  590. package/dist/scanning/actions/index.js +185 -0
  591. package/dist/scanning/actions/index.js.map +1 -0
  592. package/dist/scanning/index.d.ts +4 -1
  593. package/dist/scanning/index.d.ts.map +1 -1
  594. package/dist/scanning/index.js +12 -8
  595. package/dist/scanning/index.js.map +1 -1
  596. package/dist/scanning/lifecycle.d.ts +77 -0
  597. package/dist/scanning/lifecycle.d.ts.map +1 -0
  598. package/dist/scanning/lifecycle.js +93 -0
  599. package/dist/scanning/lifecycle.js.map +1 -0
  600. package/dist/scanning/odds.d.ts +111 -0
  601. package/dist/scanning/odds.d.ts.map +1 -0
  602. package/dist/scanning/odds.js +294 -0
  603. package/dist/scanning/odds.js.map +1 -0
  604. package/dist/scanning/signals.d.ts +121 -0
  605. package/dist/scanning/signals.d.ts.map +1 -0
  606. package/dist/scanning/signals.js +171 -0
  607. package/dist/scanning/signals.js.map +1 -0
  608. package/dist/world/index.d.ts +110 -5
  609. package/dist/world/index.d.ts.map +1 -1
  610. package/dist/world/index.js +109 -4
  611. package/dist/world/index.js.map +1 -1
  612. package/dist/world/planet-claim-stake-plots.d.ts +130 -0
  613. package/dist/world/planet-claim-stake-plots.d.ts.map +1 -0
  614. package/dist/world/planet-claim-stake-plots.js +110 -0
  615. package/dist/world/planet-claim-stake-plots.js.map +1 -0
  616. package/dist/world/starbase-status.d.ts +176 -0
  617. package/dist/world/starbase-status.d.ts.map +1 -0
  618. package/dist/world/starbase-status.js +153 -0
  619. package/dist/world/starbase-status.js.map +1 -0
  620. package/package.json +10 -2
@@ -1 +1 @@
1
- {"version":3,"file":"create-profile.js","sourceRoot":"","sources":["../../../src/identity/actions/create-profile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-profile.js","sourceRoot":"","sources":["../../../src/identity/actions/create-profile.ts"],"names":[],"mappings":"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"}
@@ -17,9 +17,9 @@ export interface PlanRegisterCharacterOptions {
17
17
  * enrollment are not prerequisites for this instruction. Planning never creates
18
18
  * an account, signs, submits, or retains a signer. Existing Characters are rejected;
19
19
  * reuse them through `getCharacterForProfile` or `maybeGetCharacterForProfile`.
20
- * New Plans tolerate unrelated Game definition changes while requiring a valid
21
- * C4 Game, unchanged Profile state, and an absent canonical Character.
22
- * Rent, funder balance, and final creation remain chain-authoritative. Simulate
20
+ * New Plans bind the current Game-2 Character and Career XP creation intent.
21
+ * The canonical accounts, absence, storage pricing, and funder balance are
22
+ * revalidated before signing. Final creation remains chain-authoritative. Simulate
23
23
  * before signing and read the Character after confirmed execution to verify its
24
24
  * exact Profile/Game identity. Submission alone does not prove creation.
25
25
  * @example
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAUzE,OAAO,EAEL,KAAK,IAAI,EAEV,MAAM,yBAAyB,CAAC;AAGjC;;;;;;;GAOG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AA2CD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAChB,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,IAAI,CAAC,CA4Ef;AAED,OAAO,EACL,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAY7D,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;GAOG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AA+BD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAChB,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,IAAI,CAAC,CAsHf;AAED,OAAO,EACL,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,qBAAqB,CAAC"}
@@ -1,12 +1,15 @@
1
- import { hashAccountState } from '../../internal/planning/account-state.js';
1
+ import { readCharacterInitialization } from '../../registry/onboarding.js';
2
+ import { calculateRegistrationFunding, isEmptySystemAccount, } from '../../internal/planning/character-registration.js';
2
3
  import { isAddress, isOffCurveAddress } from '@solana/kit';
4
+ import { hashAccountState } from '../../internal/planning/account-state.js';
3
5
  import { InvalidActionInputError, SageSdkError } from '../../client/errors.js';
4
6
  import { readContextRawAccounts } from '../../client/reconciliation.js';
5
7
  import { createRegisterCharacterInstruction } from '../../internal/c4/character-registration.js';
6
8
  import { characterAccountDefinition, profileAccountDefinition, findCharacterPda, } from '../../internal/c4/identity.js';
7
9
  import { requireGameAddress } from '../../internal/game-context.js';
8
- import { createPlan, } from '../../planning/index.js';
9
- import { readFreshGameForCharacterRegistration } from '../../registry/onboarding.js';
10
+ import { RENT_ADDRESS, readRent } from '../../internal/planning/rent.js';
11
+ import { resolveCharacterRegistrationXpRuntime } from '../../internal/planning/xp-runtime.js';
12
+ import { createPlan } from '../../planning/index.js';
10
13
  function validateOptions(input) {
11
14
  if (input === null || typeof input !== 'object' || Array.isArray(input))
12
15
  throw new InvalidActionInputError('options', input, 'an object containing only funder', 'Pass { funder } with the address that will pay for Character account storage.');
@@ -22,22 +25,14 @@ function validateOptions(input) {
22
25
  function fail(message, address) {
23
26
  throw new SageSdkError('ACTION_PRECONDITION_FAILED', message, { address });
24
27
  }
25
- async function observe(account, describes) {
26
- return {
27
- kind: 'account-state',
28
- address: account.address,
29
- dataHash: await hashAccountState(account.owner, account.data),
30
- describes,
31
- };
32
- }
33
28
  /** Plans creation of an existing Profile's canonical Character in the configured Game.
34
29
  * Only the explicit storage funder signs. The Profile's authority and faction
35
30
  * enrollment are not prerequisites for this instruction. Planning never creates
36
31
  * an account, signs, submits, or retains a signer. Existing Characters are rejected;
37
32
  * reuse them through `getCharacterForProfile` or `maybeGetCharacterForProfile`.
38
- * New Plans tolerate unrelated Game definition changes while requiring a valid
39
- * C4 Game, unchanged Profile state, and an absent canonical Character.
40
- * Rent, funder balance, and final creation remain chain-authoritative. Simulate
33
+ * New Plans bind the current Game-2 Character and Career XP creation intent.
34
+ * The canonical accounts, absence, storage pricing, and funder balance are
35
+ * revalidated before signing. Final creation remains chain-authoritative. Simulate
41
36
  * before signing and read the Character after confirmed execution to verify its
42
37
  * exact Profile/Game identity. Submission alone does not prove creation.
43
38
  * @example
@@ -57,16 +52,19 @@ export async function planRegisterCharacter(ctx, profileAddress, input) {
57
52
  throw new InvalidActionInputError('profileAddress', profileAddress, 'an existing Profile account address', 'Pass the Profile address, not a wallet address or loaded signer.');
58
53
  const game = requireGameAddress(ctx);
59
54
  const character = await findCharacterPda(profileAddress, game);
60
- const [gameAccount, [profileAccount, characterAccount]] = await Promise.all([
61
- readFreshGameForCharacterRegistration(ctx),
62
- readContextRawAccounts(ctx, [profileAddress, character]),
55
+ const raw = await readContextRawAccounts(ctx, [
56
+ profileAddress,
57
+ character,
58
+ RENT_ADDRESS,
59
+ funder,
63
60
  ]);
61
+ const [profileAccount, characterAccount, rentAccount, funderAccount] = raw;
64
62
  if (!profileAccount)
65
63
  fail(`Profile ${profileAddress} does not exist. Create or select an existing Profile before registering its Character.`, profileAddress);
66
64
  if (profileAccount.executable)
67
65
  fail(`Profile ${profileAddress} is executable instead of Profile state. Select a valid Player Profile account and retry.`, profileAddress);
68
66
  profileAccountDefinition.decode(profileAccount);
69
- if (characterAccount) {
67
+ if (characterAccount && !isEmptySystemAccount(characterAccount)) {
70
68
  if (characterAccount.executable)
71
69
  fail(`Canonical Character ${character} is executable instead of Character state. Verify the configured Game and account data before retrying.`, character);
72
70
  const existing = characterAccountDefinition.decode(characterAccount);
@@ -74,21 +72,42 @@ export async function planRegisterCharacter(ctx, profileAddress, input) {
74
72
  fail(`Canonical Character ${character} contains a different Profile or Game relationship. Verify the deployment and refresh the account; do not treat it as a missing Character.`, character);
75
73
  fail(`Character ${character} is already registered for Profile ${profileAddress} in Game ${game}. Read and reuse it with getCharacterForProfile or maybeGetCharacterForProfile; registration is not idempotent.`, character);
76
74
  }
77
- const summary = `Register canonical Character ${character} for existing Profile ${profileAddress} in Game ${game}. Funder ${funder} is the sole instruction signer and pays Character account storage; transaction fees are separate. No Profile-authority or faction signature is required. Storage rent, funder balance and final creation remain chain-authoritative: simulate before signing, then use getCharacterForProfile after confirmed execution to verify the Profile/Game identity.`;
75
+ const initialization = await readCharacterInitialization(ctx);
76
+ const xp = await resolveCharacterRegistrationXpRuntime(ctx, {
77
+ game,
78
+ character,
79
+ });
80
+ if (!rentAccount)
81
+ fail(`Rent sysvar ${RENT_ADDRESS} is missing. Refresh the configured deployment before calculating Character storage funding.`, RENT_ADDRESS);
82
+ if (!funderAccount ||
83
+ funderAccount.executable ||
84
+ funderAccount.owner !== '11111111111111111111111111111111' ||
85
+ funderAccount.data.length !== 0)
86
+ fail(`Character storage funder ${funder} must be an existing non-executable System wallet. Select and fund that signer separately, then prepare registration again.`, funder);
87
+ const minimum = readRent(rentAccount);
88
+ const storage = calculateRegistrationFunding(minimum, initialization.characterSize, characterAccount?.lamports ?? 0n, xp.budgetLamports);
89
+ const funding = storage.requiredLamports;
90
+ if (funderAccount.lamports < funding)
91
+ fail(`Character storage funder ${funder} needs ${funding - funderAccount.lamports} more native lamports. Fund it separately and recreate registration.`, funder);
92
+ const summary = `Register canonical Character ${character} and Career XP budget ${xp.xpBudget} for existing Profile ${profileAddress} in Game ${game}. Funder ${funder} is the sole instruction signer and provides the observed ${funding} lamports of account storage funding; transaction fees are separate. Character v0 allocates ${initialization.characterSize} bytes, Career XP budget v1 allocates 280 bytes with reconciliation marker 1. Net storage debit is ${storage.netDebit} lamports, including a ${storage.refund} lamport Character refund after budget funding; excess budget funding is retained. Valid empty System pre-funded targets are supported. XP budget configuration ${xp.xpBudgetConfig} remains Game-owned and is not created. No Profile-authority or faction signature is required. Funding is revalidated before signing; fees, intervening changes and final creation remain chain-authoritative. Simulate before signing, then use getCharacterForProfile after confirmed execution to verify the Profile/Game identity.`;
78
93
  return createPlan({
79
94
  kind: 'identity.register-character',
80
95
  summary,
81
96
  preconditions: [
82
- await observe(profileAccount, `Profile ${profileAddress} retains its validated Player Profile state.`),
83
- {
84
- kind: 'game-account',
85
- address: gameAccount.address,
86
- describes: `Game ${game} remains a valid non-executable C4 Game; unrelated definition changes do not invalidate Character registration.`,
87
- },
88
97
  {
89
- kind: 'account-absent',
98
+ kind: 'character-registration',
90
99
  address: character,
91
- describes: `Canonical Character ${character} remains absent; if another transaction registers it, read and reuse it instead.`,
100
+ game,
101
+ profile: profileAddress,
102
+ profileDataHash: await hashAccountState(profileAccount.owner, profileAccount.data),
103
+ funder,
104
+ xpBudget: xp.xpBudget,
105
+ xpBudgetConfig: xp.xpBudgetConfig,
106
+ maximumFunderDebit: funding,
107
+ ...initialization,
108
+ characterLamports: characterAccount?.lamports ?? 0n,
109
+ budgetLamports: xp.budgetLamports,
110
+ describes: `Create canonical Character ${character} and Career XP budget ${xp.xpBudget} with at most ${funding} lamports of storage funding from System wallet ${funder}; require current Game 2, valid Profile and XP configuration, and both targets to remain absent or valid empty System accounts. Initial allocation, refunds and final funder rent status are rechecked before signing.`,
92
111
  },
93
112
  ],
94
113
  steps: [
@@ -100,6 +119,8 @@ export async function planRegisterCharacter(ctx, profileAddress, input) {
100
119
  funder,
101
120
  character,
102
121
  game,
122
+ xpBudget: xp.xpBudget,
123
+ xpBudgetConfig: xp.xpBudgetConfig,
103
124
  }),
104
125
  },
105
126
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"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"}
@@ -229,5 +229,13 @@ export declare function getCharactersForWallet(ctx: SageContext, wallet: Address
229
229
  * ```
230
230
  */
231
231
  export { PROFILE_PERMISSION_SCOPE } from './permissions.js';
232
+ /** Pinned SAGE scope for recognized gameplay permission bits, not Profile AUTH.
233
+ * @example
234
+ * ```ts
235
+ * const mask = composeProfilePermissions(SAGE_PERMISSION_SCOPE, ['moveFleet']);
236
+ * ```
237
+ */
238
+ export { SAGE_PERMISSION_SCOPE } from './permissions.js';
232
239
  export { composeProfilePermissions, unionProfilePermissionMasks, containsProfilePermissions, inspectProfilePermissions, inspectProfileKeys, type ProfilePermissionInspection, type ProfileKeyRequirement, type ProfileKeyDiagnostic, type ProfileKeyInspection, } from './permissions.js';
240
+ export { deriveCharacterResearchState, type CharacterResearchState, } from './research-state.js';
233
241
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
@@ -345,5 +345,13 @@ export async function getCharactersForWallet(ctx, wallet, options) {
345
345
  * ```
346
346
  */
347
347
  export { PROFILE_PERMISSION_SCOPE } from './permissions.js';
348
+ /** Pinned SAGE scope for recognized gameplay permission bits, not Profile AUTH.
349
+ * @example
350
+ * ```ts
351
+ * const mask = composeProfilePermissions(SAGE_PERMISSION_SCOPE, ['moveFleet']);
352
+ * ```
353
+ */
354
+ export { SAGE_PERMISSION_SCOPE } from './permissions.js';
348
355
  export { composeProfilePermissions, unionProfilePermissionMasks, containsProfilePermissions, inspectProfilePermissions, inspectProfileKeys, } from './permissions.js';
356
+ export { deriveCharacterResearchState, } from './research-state.js';
349
357
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,18 @@ import type { ProfileSnapshot } from './index.js';
8
8
  * ```
9
9
  */
10
10
  export declare const PROFILE_PERMISSION_SCOPE: Address;
11
+ /** Pinned supported SAGE program scope, where bit zero means manageGame.
12
+ * Recognized names describe bits, not complete action authorization policies.
13
+ * @example
14
+ * ```ts
15
+ * const mask = composeProfilePermissions(SAGE_PERMISSION_SCOPE, ['moveFleet']);
16
+ * ```
17
+ */
18
+ export declare const SAGE_PERMISSION_SCOPE: Address;
11
19
  /** Compose only verified names under an explicit scope. Empty input returns zero.
12
- * Profile-only names are rejected outside the Profile scope; drainSolVault is
13
- * recognized across scopes. No authority policy or all-permissions default is added.
20
+ * Profile and SAGE names require their exact supported program scope;
21
+ * drainSolVault is recognized across scopes. Names identify verified bits, not
22
+ * complete action authorization policies. No default authority mask is added.
14
23
  * @example
15
24
  * ```ts
16
25
  * const raw = composeProfilePermissions(PROFILE_PERMISSION_SCOPE, ['addKeys', 'removeKeys']);
@@ -18,19 +27,23 @@ export declare const PROFILE_PERMISSION_SCOPE: Address;
18
27
  */
19
28
  export declare function composeProfilePermissions(scope: Address, names: readonly ProfilePermission[]): bigint;
20
29
  /** Union exact raw masks, preserving unknown bits. Empty input returns zero.
30
+ * This is a pure bit operation. Callers must track the scope each mask belongs to;
31
+ * combining masks does not establish permission meanings or authorization.
21
32
  * @example
22
33
  * ```ts
23
- * const raw = unionProfilePermissionMasks(PROFILE_PERMISSION_SCOPE, [4n, 0n]);
34
+ * const raw = unionProfilePermissionMasks([4n, 0n]);
24
35
  * ```
25
36
  */
26
- export declare function unionProfilePermissionMasks(scope: Address, masks: readonly bigint[]): bigint;
37
+ export declare function unionProfilePermissionMasks(masks: readonly bigint[]): bigint;
27
38
  /** Numeric bit containment only, including unknown bits; this is not authorization.
39
+ * Callers must track the scope each mask belongs to; this pure bit operation
40
+ * neither checks scope compatibility nor interprets permission meanings.
28
41
  * @example
29
42
  * ```ts
30
- * const contains = containsProfilePermissions(PROFILE_PERMISSION_SCOPE, 6n, 4n);
43
+ * const contains = containsProfilePermissions(6n, 4n);
31
44
  * ```
32
45
  */
33
- export declare function containsProfilePermissions(scope: Address, availableRaw: bigint, requiredRaw: bigint): boolean;
46
+ export declare function containsProfilePermissions(availableRaw: bigint, requiredRaw: bigint): boolean;
34
47
  /** Immutable scoped permission meanings with all raw bits retained.
35
48
  * @example
36
49
  * ```ts
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/identity/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAGzE,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,OAAuB,CAAC;AA8B/D;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,SAAS,iBAAiB,EAAE,GAClC,MAAM,CAoBR;AACD;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,SAAS,MAAM,EAAE,GACvB,MAAM,CAQR;AACD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAKT;AACD;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACnD,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,MAAM,IAAI,OAAO,CAAC;CACnB;AACD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,MAAM,GACrB,2BAA2B,CAa7B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AACD;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAC5B,kBAAkB,GAClB,gBAAgB,GAChB,SAAS,GACT,qBAAqB,GACrB,0BAA0B,CAAC;AAC/B;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,eAAe,CAAC;IACxD,MAAM,IAAI,OAAO,CAAC;CACnB;AACD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,qBAAqB,GACjC,SAAS,oBAAoB,EAAE,CAmEjC"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/identity/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAGzE,OAAO,EAKL,KAAK,iBAAiB,EACvB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,OAAuB,CAAC;AAE/D;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,EAAE,OAAoB,CAAC;AA8BzD;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,SAAS,iBAAiB,EAAE,GAClC,MAAM,CAoBR;AACD;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAO5E;AACD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAIT;AACD;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACnD,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,MAAM,IAAI,OAAO,CAAC;CACnB;AACD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,MAAM,GACrB,2BAA2B,CAa7B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AACD;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAC5B,kBAAkB,GAClB,gBAAgB,GAChB,SAAS,GACT,qBAAqB,GACrB,0BAA0B,CAAC;AAC/B;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,eAAe,CAAC;IACxD,MAAM,IAAI,OAAO,CAAC;CACnB;AACD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,qBAAqB,GACjC,SAAS,oBAAoB,EAAE,CA+EjC"}
@@ -1,7 +1,7 @@
1
1
  import { isAddress, isOffCurveAddress } from '@solana/kit';
2
2
  import { InvalidActionInputError } from '../client/errors.js';
3
3
  import { attachJsonSerialization } from '../internal/json.js';
4
- import { PROFILE_SCOPE, permissionBitsForScope, translatePermissions, } from '../internal/c4/profile-permissions.js';
4
+ import { PROFILE_SCOPE, SAGE_SCOPE, permissionBitsForScope, translatePermissions, } from '../internal/c4/profile-permissions.js';
5
5
  /** Pinned supported Player Profile program scope, where bit zero means AUTH.
6
6
  * @example
7
7
  * ```ts
@@ -9,6 +9,14 @@ import { PROFILE_SCOPE, permissionBitsForScope, translatePermissions, } from '..
9
9
  * ```
10
10
  */
11
11
  export const PROFILE_PERMISSION_SCOPE = PROFILE_SCOPE;
12
+ /** Pinned supported SAGE program scope, where bit zero means manageGame.
13
+ * Recognized names describe bits, not complete action authorization policies.
14
+ * @example
15
+ * ```ts
16
+ * const mask = composeProfilePermissions(SAGE_PERMISSION_SCOPE, ['moveFleet']);
17
+ * ```
18
+ */
19
+ export const SAGE_PERMISSION_SCOPE = SAGE_SCOPE;
12
20
  function invalid(field, value, remedy) {
13
21
  throw new InvalidActionInputError(field, value, 'explicit valid scoped Profile permission input', remedy);
14
22
  }
@@ -24,8 +32,9 @@ function knownMask(scope) {
24
32
  return permissionBitsForScope(scope).reduce((raw, [flag]) => raw | flag, 0n);
25
33
  }
26
34
  /** Compose only verified names under an explicit scope. Empty input returns zero.
27
- * Profile-only names are rejected outside the Profile scope; drainSolVault is
28
- * recognized across scopes. No authority policy or all-permissions default is added.
35
+ * Profile and SAGE names require their exact supported program scope;
36
+ * drainSolVault is recognized across scopes. Names identify verified bits, not
37
+ * complete action authorization policies. No default authority mask is added.
29
38
  * @example
30
39
  * ```ts
31
40
  * const raw = composeProfilePermissions(PROFILE_PERMISSION_SCOPE, ['addKeys', 'removeKeys']);
@@ -38,18 +47,19 @@ export function composeProfilePermissions(scope, names) {
38
47
  return names.reduce((raw, name) => {
39
48
  const entry = permissionBitsForScope(scope).find(([, permission]) => permission === name);
40
49
  if (!entry)
41
- invalid('permission', name, 'Select a verified permission name for this exact scope; Profile-only names require PROFILE_PERMISSION_SCOPE.');
50
+ invalid('permission', name, 'Select a verified permission name for this exact scope: Profile names require PROFILE_PERMISSION_SCOPE and SAGE names require SAGE_PERMISSION_SCOPE.');
42
51
  return raw | entry[0];
43
52
  }, 0n);
44
53
  }
45
54
  /** Union exact raw masks, preserving unknown bits. Empty input returns zero.
55
+ * This is a pure bit operation. Callers must track the scope each mask belongs to;
56
+ * combining masks does not establish permission meanings or authorization.
46
57
  * @example
47
58
  * ```ts
48
- * const raw = unionProfilePermissionMasks(PROFILE_PERMISSION_SCOPE, [4n, 0n]);
59
+ * const raw = unionProfilePermissionMasks([4n, 0n]);
49
60
  * ```
50
61
  */
51
- export function unionProfilePermissionMasks(scope, masks) {
52
- validateScope(scope);
62
+ export function unionProfilePermissionMasks(masks) {
53
63
  if (!Array.isArray(masks))
54
64
  invalid('masks', masks, 'Supply an array of unsigned 64-bit bigint masks.');
55
65
  return masks.reduce((raw, mask) => {
@@ -58,13 +68,14 @@ export function unionProfilePermissionMasks(scope, masks) {
58
68
  }, 0n);
59
69
  }
60
70
  /** Numeric bit containment only, including unknown bits; this is not authorization.
71
+ * Callers must track the scope each mask belongs to; this pure bit operation
72
+ * neither checks scope compatibility nor interprets permission meanings.
61
73
  * @example
62
74
  * ```ts
63
- * const contains = containsProfilePermissions(PROFILE_PERMISSION_SCOPE, 6n, 4n);
75
+ * const contains = containsProfilePermissions(6n, 4n);
64
76
  * ```
65
77
  */
66
- export function containsProfilePermissions(scope, availableRaw, requiredRaw) {
67
- validateScope(scope);
78
+ export function containsProfilePermissions(availableRaw, requiredRaw) {
68
79
  validateMask(availableRaw);
69
80
  validateMask(requiredRaw);
70
81
  return (availableRaw & requiredRaw) === requiredRaw;
@@ -103,6 +114,12 @@ export function inspectProfilePermissions(scope, permissionsRaw) {
103
114
  * ```
104
115
  */
105
116
  export function inspectProfileKeys(profile, requirement) {
117
+ if (profile === null ||
118
+ typeof profile !== 'object' ||
119
+ Array.isArray(profile) ||
120
+ profile.kind !== 'profile' ||
121
+ !Array.isArray(profile.keys))
122
+ invalid('profile', profile, 'Load a ProfileSnapshot with getProfile and pass that loaded Profile, not a Character or raw account.');
106
123
  if (requirement === null ||
107
124
  typeof requirement !== 'object' ||
108
125
  Array.isArray(requirement) ||
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/identity/permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/identity/permissions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import type { CharacterSnapshot } from './index.js';
2
+ declare const careers: readonly ["pilot", "dataRunner", "mining", "building", "crafting", "combat"];
3
+ /** Display balances derived from one Character, not research purchase eligibility.
4
+ * Sequences describe the input; no current Game definitions are consulted.
5
+ * @example
6
+ * ```ts
7
+ * declare const state: CharacterResearchState;
8
+ * console.log(state.careers.mining.researchPointsAvailable, state.renown.available);
9
+ * ```
10
+ */
11
+ export interface CharacterResearchState {
12
+ readonly characterAddress: CharacterSnapshot['address'];
13
+ readonly xpSequenceId: number;
14
+ readonly researchSequenceId: number;
15
+ readonly pendingNodeUpdates: number;
16
+ readonly careers: Readonly<Record<(typeof careers)[number], {
17
+ readonly earnedXp: bigint;
18
+ readonly level: number;
19
+ readonly researchPointsSpent: bigint;
20
+ readonly researchPointsAvailable: bigint;
21
+ }>>;
22
+ readonly renown: {
23
+ readonly earned: bigint;
24
+ readonly spent: bigint;
25
+ readonly available: bigint;
26
+ readonly level: number;
27
+ readonly careerLevelCarry: number;
28
+ };
29
+ /** Acquired nodes only. Stored levels are reported as-is, including 0;
30
+ * only a missing entry defaults to 1. This preserves observed state rather
31
+ * than applying the official client's minimum-1 sync-step estimate. */
32
+ readonly nodes: readonly {
33
+ readonly nodeId: number;
34
+ readonly level: number;
35
+ }[];
36
+ toJSON(): unknown;
37
+ }
38
+ /** Projects stored XP, career research points, Renown and acquired nodes without
39
+ * I/O, mutation, or a separate cache. Career points use level minus spent;
40
+ * Renown uses earned minus spent. Daily XP is not a career and is excluded.
41
+ * Balances clamp at zero; bigint values serialize as decimal strings.
42
+ *
43
+ * Input must be an SDK-loaded Character. The result reflects that read's state,
44
+ * not necessarily current Game rules: compare researchSequenceId with the
45
+ * catalog sequence and require pendingNodeUpdates === 0 before treating perks
46
+ * as synchronized. Use getCharacterProgressionForProfile for the optional
47
+ * sequence-matched XP-definition join. This helper does not authorize research.
48
+ * @example
49
+ * ```ts
50
+ * declare const ctx: SageContext;
51
+ * declare const profileAddress: Address;
52
+ * const character = await getCharacterForProfile(ctx, profileAddress);
53
+ * const state = deriveCharacterResearchState(character);
54
+ * console.log(state.careers.pilot.earnedXp, state.careers.pilot.level);
55
+ * console.log(state.renown.available, state.nodes);
56
+ * ```
57
+ */
58
+ export declare function deriveCharacterResearchState(character: Pick<CharacterSnapshot, 'address' | 'xp' | 'modifiers'>): CharacterResearchState;
59
+ export {};
60
+ //# sourceMappingURL=research-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"research-state.d.ts","sourceRoot":"","sources":["../../src/identity/research-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAIpD,QAAA,MAAM,OAAO,8EAOH,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACxD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CACxB,MAAM,CACJ,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,EACxB;QACE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;QACrC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;KAC1C,CACF,CACF,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;KACnC,CAAC;IACF;;2EAEuE;IACvE,QAAQ,CAAC,KAAK,EAAE,SAAS;QACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;IACJ,MAAM,IAAI,OAAO,CAAC;CACnB;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,IAAI,GAAG,WAAW,CAAC,GACjE,sBAAsB,CAuCxB"}
@@ -0,0 +1,68 @@
1
+ import { attachJsonSerialization } from '../internal/json.js';
2
+ import { freezeResolvedSnapshot } from '../internal/resolved-snapshot.js';
3
+ const careers = [
4
+ 'pilot',
5
+ 'dataRunner',
6
+ 'mining',
7
+ 'building',
8
+ 'crafting',
9
+ 'combat',
10
+ ];
11
+ function remaining(earned, spent) {
12
+ return earned > spent ? earned - spent : 0n;
13
+ }
14
+ /** Projects stored XP, career research points, Renown and acquired nodes without
15
+ * I/O, mutation, or a separate cache. Career points use level minus spent;
16
+ * Renown uses earned minus spent. Daily XP is not a career and is excluded.
17
+ * Balances clamp at zero; bigint values serialize as decimal strings.
18
+ *
19
+ * Input must be an SDK-loaded Character. The result reflects that read's state,
20
+ * not necessarily current Game rules: compare researchSequenceId with the
21
+ * catalog sequence and require pendingNodeUpdates === 0 before treating perks
22
+ * as synchronized. Use getCharacterProgressionForProfile for the optional
23
+ * sequence-matched XP-definition join. This helper does not authorize research.
24
+ * @example
25
+ * ```ts
26
+ * declare const ctx: SageContext;
27
+ * declare const profileAddress: Address;
28
+ * const character = await getCharacterForProfile(ctx, profileAddress);
29
+ * const state = deriveCharacterResearchState(character);
30
+ * console.log(state.careers.pilot.earnedXp, state.careers.pilot.level);
31
+ * console.log(state.renown.available, state.nodes);
32
+ * ```
33
+ */
34
+ export function deriveCharacterResearchState(character) {
35
+ const balances = Object.fromEntries(careers.map((career) => {
36
+ const xp = character.xp[career];
37
+ return [
38
+ career,
39
+ {
40
+ earnedXp: xp.earned,
41
+ level: xp.level,
42
+ researchPointsSpent: xp.spent,
43
+ researchPointsAvailable: remaining(BigInt(xp.level), xp.spent),
44
+ },
45
+ ];
46
+ }));
47
+ const council = character.xp.councilRank;
48
+ const levels = new Map(character.modifiers.nodeLevels.map(({ nodeId, level }) => [nodeId, level]));
49
+ return freezeResolvedSnapshot(attachJsonSerialization({
50
+ characterAddress: character.address,
51
+ xpSequenceId: character.xp.seqId,
52
+ researchSequenceId: character.modifiers.seqId,
53
+ pendingNodeUpdates: character.modifiers.unupdatedCount,
54
+ careers: balances,
55
+ renown: {
56
+ earned: council.earned,
57
+ spent: council.spent,
58
+ available: remaining(council.earned, council.spent),
59
+ level: council.level,
60
+ careerLevelCarry: character.xp.councilRankLevelCarry,
61
+ },
62
+ nodes: character.modifiers.unlockedNodes.map((nodeId) => ({
63
+ nodeId,
64
+ level: levels.get(nodeId) ?? 1,
65
+ })),
66
+ }));
67
+ }
68
+ //# sourceMappingURL=research-state.js.map