@aephia/atlas-kit 0.6.0-next.1 → 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.
- package/README.md +7 -3
- package/dist/cargo/actions/deposit.d.ts +44 -0
- package/dist/cargo/actions/deposit.d.ts.map +1 -0
- package/dist/cargo/actions/deposit.js +212 -0
- package/dist/cargo/actions/deposit.js.map +1 -0
- package/dist/cargo/actions/index.d.ts +2 -0
- package/dist/cargo/actions/index.d.ts.map +1 -1
- package/dist/cargo/actions/index.js +12 -15
- package/dist/cargo/actions/index.js.map +1 -1
- package/dist/cargo/actions/wallet-context.d.ts +14 -0
- package/dist/cargo/actions/wallet-context.d.ts.map +1 -0
- package/dist/cargo/actions/wallet-context.js +12 -0
- package/dist/cargo/actions/wallet-context.js.map +1 -0
- package/dist/cargo/actions/wallet-token.d.ts +8 -0
- package/dist/cargo/actions/wallet-token.d.ts.map +1 -0
- package/dist/cargo/actions/wallet-token.js +50 -0
- package/dist/cargo/actions/wallet-token.js.map +1 -0
- package/dist/cargo/actions/withdrawal.d.ts +46 -0
- package/dist/cargo/actions/withdrawal.d.ts.map +1 -0
- package/dist/cargo/actions/withdrawal.js +266 -0
- package/dist/cargo/actions/withdrawal.js.map +1 -0
- package/dist/claim-stakes/actions/index.d.ts +13 -0
- package/dist/claim-stakes/actions/index.d.ts.map +1 -1
- package/dist/claim-stakes/actions/index.js +137 -111
- package/dist/claim-stakes/actions/index.js.map +1 -1
- package/dist/claim-stakes/index.d.ts +14 -0
- package/dist/claim-stakes/index.d.ts.map +1 -1
- package/dist/claim-stakes/index.js +23 -2
- package/dist/claim-stakes/index.js.map +1 -1
- package/dist/client/context.d.ts.map +1 -1
- package/dist/client/context.js +1 -1
- package/dist/client/context.js.map +1 -1
- package/dist/client/contracts.d.ts +16 -6
- package/dist/client/contracts.d.ts.map +1 -1
- package/dist/client/errors.d.ts +6 -2
- package/dist/client/errors.d.ts.map +1 -1
- package/dist/client/errors.js +31 -1
- package/dist/client/errors.js.map +1 -1
- package/dist/client/index.d.ts +35 -0
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +35 -0
- package/dist/client/index.js.map +1 -1
- package/dist/client/rpc-subscription-provider.d.ts +35 -0
- package/dist/client/rpc-subscription-provider.d.ts.map +1 -0
- package/dist/client/rpc-subscription-provider.js +190 -0
- package/dist/client/rpc-subscription-provider.js.map +1 -0
- package/dist/combat/actions/index.d.ts.map +1 -1
- package/dist/combat/actions/index.js +104 -67
- package/dist/combat/actions/index.js.map +1 -1
- package/dist/crafting/actions/index.d.ts +11 -0
- package/dist/crafting/actions/index.d.ts.map +1 -1
- package/dist/crafting/actions/index.js +101 -108
- package/dist/crafting/actions/index.js.map +1 -1
- package/dist/crafting/index.d.ts +33 -3
- package/dist/crafting/index.d.ts.map +1 -1
- package/dist/crafting/index.js +44 -15
- package/dist/crafting/index.js.map +1 -1
- package/dist/factions/actions/index.d.ts +36 -0
- package/dist/factions/actions/index.d.ts.map +1 -0
- package/dist/factions/actions/index.js +137 -0
- package/dist/factions/actions/index.js.map +1 -0
- package/dist/factions/index.d.ts +1 -0
- package/dist/factions/index.d.ts.map +1 -1
- package/dist/factions/index.js +14 -7
- package/dist/factions/index.js.map +1 -1
- package/dist/factions/profile-faction.d.ts +58 -0
- package/dist/factions/profile-faction.d.ts.map +1 -0
- package/dist/factions/profile-faction.js +63 -0
- package/dist/factions/profile-faction.js.map +1 -0
- package/dist/fleets/actions/add-ship.d.ts +35 -0
- package/dist/fleets/actions/add-ship.d.ts.map +1 -0
- package/dist/fleets/actions/add-ship.js +149 -0
- package/dist/fleets/actions/add-ship.js.map +1 -0
- package/dist/fleets/actions/create-fleet.d.ts +36 -0
- package/dist/fleets/actions/create-fleet.d.ts.map +1 -0
- package/dist/fleets/actions/create-fleet.js +138 -0
- package/dist/fleets/actions/create-fleet.js.map +1 -0
- package/dist/fleets/actions/crew-transfer.d.ts +41 -0
- package/dist/fleets/actions/crew-transfer.d.ts.map +1 -0
- package/dist/fleets/actions/crew-transfer.js +114 -0
- package/dist/fleets/actions/crew-transfer.js.map +1 -0
- package/dist/fleets/actions/dock-bounds.d.ts +38 -0
- package/dist/fleets/actions/dock-bounds.d.ts.map +1 -0
- package/dist/fleets/actions/dock-bounds.js +46 -0
- package/dist/fleets/actions/dock-bounds.js.map +1 -0
- package/dist/fleets/actions/index.d.ts +38 -16
- package/dist/fleets/actions/index.d.ts.map +1 -1
- package/dist/fleets/actions/index.js +246 -153
- package/dist/fleets/actions/index.js.map +1 -1
- package/dist/fleets/actions/respawn.d.ts +38 -0
- package/dist/fleets/actions/respawn.d.ts.map +1 -0
- package/dist/fleets/actions/respawn.js +122 -0
- package/dist/fleets/actions/respawn.js.map +1 -0
- package/dist/fleets/actions/ship-import.d.ts +48 -0
- package/dist/fleets/actions/ship-import.d.ts.map +1 -0
- package/dist/fleets/actions/ship-import.js +332 -0
- package/dist/fleets/actions/ship-import.js.map +1 -0
- package/dist/fleets/cooldown.d.ts +44 -0
- package/dist/fleets/cooldown.d.ts.map +1 -0
- package/dist/fleets/cooldown.js +43 -0
- package/dist/fleets/cooldown.js.map +1 -0
- package/dist/fleets/coordinate-warp-estimate.d.ts +70 -0
- package/dist/fleets/coordinate-warp-estimate.d.ts.map +1 -0
- package/dist/fleets/coordinate-warp-estimate.js +46 -0
- package/dist/fleets/coordinate-warp-estimate.js.map +1 -0
- package/dist/fleets/index.d.ts +35 -0
- package/dist/fleets/index.d.ts.map +1 -1
- package/dist/fleets/index.js +52 -2
- package/dist/fleets/index.js.map +1 -1
- package/dist/fleets/movement-arithmetic.d.ts +21 -0
- package/dist/fleets/movement-arithmetic.d.ts.map +1 -0
- package/dist/fleets/movement-arithmetic.js +41 -0
- package/dist/fleets/movement-arithmetic.js.map +1 -0
- package/dist/fleets/subwarp-estimate.d.ts +70 -0
- package/dist/fleets/subwarp-estimate.d.ts.map +1 -0
- package/dist/fleets/subwarp-estimate.js +38 -0
- package/dist/fleets/subwarp-estimate.js.map +1 -0
- package/dist/fleets/travel-profile.d.ts +102 -0
- package/dist/fleets/travel-profile.d.ts.map +1 -0
- package/dist/fleets/travel-profile.js +120 -0
- package/dist/fleets/travel-profile.js.map +1 -0
- package/dist/fleets/warp-lane-estimate.d.ts +59 -0
- package/dist/fleets/warp-lane-estimate.d.ts.map +1 -0
- package/dist/fleets/warp-lane-estimate.js +36 -0
- package/dist/fleets/warp-lane-estimate.js.map +1 -0
- package/dist/fleets/warp-lane-policy.d.ts +68 -0
- package/dist/fleets/warp-lane-policy.d.ts.map +1 -0
- package/dist/fleets/warp-lane-policy.js +91 -0
- package/dist/fleets/warp-lane-policy.js.map +1 -0
- package/dist/fleets/warp-lane-toll.d.ts +55 -0
- package/dist/fleets/warp-lane-toll.d.ts.map +1 -0
- package/dist/fleets/warp-lane-toll.js +79 -0
- package/dist/fleets/warp-lane-toll.js.map +1 -0
- package/dist/identity/actions/create-profile.d.ts +56 -0
- package/dist/identity/actions/create-profile.d.ts.map +1 -0
- package/dist/identity/actions/create-profile.js +139 -0
- package/dist/identity/actions/create-profile.js.map +1 -0
- package/dist/identity/actions/index.d.ts +38 -0
- package/dist/identity/actions/index.d.ts.map +1 -0
- package/dist/identity/actions/index.js +130 -0
- package/dist/identity/actions/index.js.map +1 -0
- package/dist/identity/index.d.ts +16 -0
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +16 -0
- package/dist/identity/index.js.map +1 -1
- package/dist/identity/permissions.d.ts +124 -0
- package/dist/identity/permissions.d.ts.map +1 -0
- package/dist/identity/permissions.js +171 -0
- package/dist/identity/permissions.js.map +1 -0
- package/dist/identity/research-state.d.ts +60 -0
- package/dist/identity/research-state.d.ts.map +1 -0
- package/dist/identity/research-state.js +68 -0
- package/dist/identity/research-state.js.map +1 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -3
- package/dist/index.js.map +1 -1
- package/dist/internal/c4/cargo-bytes-config.d.ts +7 -0
- package/dist/internal/c4/cargo-bytes-config.d.ts.map +1 -0
- package/dist/internal/c4/cargo-bytes-config.js +19 -0
- package/dist/internal/c4/cargo-bytes-config.js.map +1 -0
- package/dist/internal/c4/character-registration.d.ts +11 -0
- package/dist/internal/c4/character-registration.d.ts.map +1 -0
- package/dist/internal/c4/character-registration.js +23 -0
- package/dist/internal/c4/character-registration.js.map +1 -0
- package/dist/internal/c4/claim-stake-definitions.d.ts +4 -4
- package/dist/internal/c4/claim-stake-definitions.d.ts.map +1 -1
- package/dist/internal/c4/claim-stake-definitions.js.map +1 -1
- package/dist/internal/c4/claim-stake.d.ts +4 -27
- package/dist/internal/c4/claim-stake.d.ts.map +1 -1
- package/dist/internal/c4/claim-stake.js +25 -38
- package/dist/internal/c4/claim-stake.js.map +1 -1
- package/dist/internal/c4/combat.d.ts +0 -27
- package/dist/internal/c4/combat.d.ts.map +1 -1
- package/dist/internal/c4/combat.js +0 -33
- package/dist/internal/c4/combat.js.map +1 -1
- package/dist/internal/c4/crafting-process-codec.d.ts +13 -0
- package/dist/internal/c4/crafting-process-codec.d.ts.map +1 -0
- package/dist/internal/c4/crafting-process-codec.js +34 -0
- package/dist/internal/c4/crafting-process-codec.js.map +1 -0
- package/dist/internal/c4/crafting.d.ts +25 -33
- package/dist/internal/c4/crafting.d.ts.map +1 -1
- package/dist/internal/c4/crafting.js +53 -44
- package/dist/internal/c4/crafting.js.map +1 -1
- package/dist/internal/c4/currency-cache.d.ts +6 -0
- package/dist/internal/c4/currency-cache.d.ts.map +1 -0
- package/dist/internal/c4/currency-cache.js +30 -0
- package/dist/internal/c4/currency-cache.js.map +1 -0
- package/dist/internal/c4/docking-funding.d.ts +4 -0
- package/dist/internal/c4/docking-funding.d.ts.map +1 -0
- package/dist/internal/c4/docking-funding.js +11 -0
- package/dist/internal/c4/docking-funding.js.map +1 -0
- package/dist/internal/c4/faction-adapter.d.ts +12 -0
- package/dist/internal/c4/faction-adapter.d.ts.map +1 -0
- package/dist/internal/c4/faction-adapter.js +52 -0
- package/dist/internal/c4/faction-adapter.js.map +1 -0
- package/dist/internal/c4/faction-enrollment.d.ts +6 -0
- package/dist/internal/c4/faction-enrollment.d.ts.map +1 -0
- package/dist/internal/c4/faction-enrollment.js +8 -0
- package/dist/internal/c4/faction-enrollment.js.map +1 -0
- package/dist/internal/c4/faction-epoch-meter.d.ts +10 -0
- package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -0
- package/dist/internal/c4/faction-epoch-meter.js +31 -0
- package/dist/internal/c4/faction-epoch-meter.js.map +1 -0
- package/dist/internal/c4/faction-treasury.d.ts +23 -0
- package/dist/internal/c4/faction-treasury.d.ts.map +1 -0
- package/dist/internal/c4/faction-treasury.js +48 -0
- package/dist/internal/c4/faction-treasury.js.map +1 -0
- package/dist/internal/c4/factions.d.ts +9 -57
- package/dist/internal/c4/factions.d.ts.map +1 -1
- package/dist/internal/c4/factions.js +21 -139
- package/dist/internal/c4/factions.js.map +1 -1
- package/dist/internal/c4/fleet-arrival.d.ts +28 -0
- package/dist/internal/c4/fleet-arrival.d.ts.map +1 -0
- package/dist/internal/c4/fleet-arrival.js +42 -0
- package/dist/internal/c4/fleet-arrival.js.map +1 -0
- package/dist/internal/c4/fleet-creation.d.ts +7 -0
- package/dist/internal/c4/fleet-creation.d.ts.map +1 -0
- package/dist/internal/c4/fleet-creation.js +180 -0
- package/dist/internal/c4/fleet-creation.js.map +1 -0
- package/dist/internal/c4/fleet-crew-binding.d.ts +9 -0
- package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
- package/dist/internal/c4/fleet-crew-binding.js +15 -0
- package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
- package/dist/internal/c4/fleet-respawn.d.ts +17 -0
- package/dist/internal/c4/fleet-respawn.d.ts.map +1 -0
- package/dist/internal/c4/fleet-respawn.js +62 -0
- package/dist/internal/c4/fleet-respawn.js.map +1 -0
- package/dist/internal/c4/fleet-ship-assembly.d.ts +11 -0
- package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -0
- package/dist/internal/c4/fleet-ship-assembly.js +44 -0
- package/dist/internal/c4/fleet-ship-assembly.js.map +1 -0
- package/dist/internal/c4/fleet.d.ts +45 -19
- package/dist/internal/c4/fleet.d.ts.map +1 -1
- package/dist/internal/c4/fleet.js +26 -7
- package/dist/internal/c4/fleet.js.map +1 -1
- package/dist/internal/c4/game-definition-layout.d.ts +2 -0
- package/dist/internal/c4/game-definition-layout.d.ts.map +1 -1
- package/dist/internal/c4/game-definition-layout.js +4 -0
- package/dist/internal/c4/game-definition-layout.js.map +1 -1
- package/dist/internal/c4/game.d.ts +53 -0
- package/dist/internal/c4/game.d.ts.map +1 -1
- package/dist/internal/c4/game.js +130 -5
- package/dist/internal/c4/game.js.map +1 -1
- package/dist/internal/c4/identity.d.ts +6 -9
- package/dist/internal/c4/identity.d.ts.map +1 -1
- package/dist/internal/c4/identity.js +3 -24
- package/dist/internal/c4/identity.js.map +1 -1
- package/dist/internal/c4/local-market-order.d.ts +31 -0
- package/dist/internal/c4/local-market-order.d.ts.map +1 -0
- package/dist/internal/c4/local-market-order.js +47 -0
- package/dist/internal/c4/local-market-order.js.map +1 -0
- package/dist/internal/c4/loyalty.d.ts +0 -27
- package/dist/internal/c4/loyalty.d.ts.map +1 -1
- package/dist/internal/c4/loyalty.js +0 -33
- package/dist/internal/c4/loyalty.js.map +1 -1
- package/dist/internal/c4/market.d.ts +2 -38
- package/dist/internal/c4/market.d.ts.map +1 -1
- package/dist/internal/c4/market.js +13 -51
- package/dist/internal/c4/market.js.map +1 -1
- package/dist/internal/c4/mining-instructions.d.ts +2 -0
- package/dist/internal/c4/mining-instructions.d.ts.map +1 -0
- package/dist/internal/c4/mining-instructions.js +3 -0
- package/dist/internal/c4/mining-instructions.js.map +1 -0
- package/dist/internal/c4/open-signal.d.ts +8 -0
- package/dist/internal/c4/open-signal.d.ts.map +1 -0
- package/dist/internal/c4/open-signal.js +37 -0
- package/dist/internal/c4/open-signal.js.map +1 -0
- package/dist/internal/c4/profile-creation.d.ts +17 -0
- package/dist/internal/c4/profile-creation.d.ts.map +1 -0
- package/dist/internal/c4/profile-creation.js +36 -0
- package/dist/internal/c4/profile-creation.js.map +1 -0
- package/dist/internal/c4/profile-faction.d.ts.map +1 -1
- package/dist/internal/c4/profile-faction.js +2 -0
- package/dist/internal/c4/profile-faction.js.map +1 -1
- package/dist/internal/c4/profile-permissions.d.ts +14 -0
- package/dist/internal/c4/profile-permissions.d.ts.map +1 -0
- package/dist/internal/c4/profile-permissions.js +81 -0
- package/dist/internal/c4/profile-permissions.js.map +1 -0
- package/dist/internal/c4/region-geometry.d.ts +8 -0
- package/dist/internal/c4/region-geometry.d.ts.map +1 -0
- package/dist/internal/c4/region-geometry.js +43 -0
- package/dist/internal/c4/region-geometry.js.map +1 -0
- package/dist/internal/c4/rewards.d.ts +0 -27
- package/dist/internal/c4/rewards.d.ts.map +1 -1
- package/dist/internal/c4/rewards.js +0 -33
- package/dist/internal/c4/rewards.js.map +1 -1
- package/dist/internal/c4/runtime-bindings.d.ts +4 -0
- package/dist/internal/c4/runtime-bindings.d.ts.map +1 -0
- package/dist/internal/c4/runtime-bindings.js +4 -0
- package/dist/internal/c4/runtime-bindings.js.map +1 -0
- package/dist/internal/c4/scan-detection-codecs.d.ts +3 -0
- package/dist/internal/c4/scan-detection-codecs.d.ts.map +1 -0
- package/dist/internal/c4/scan-detection-codecs.js +3 -0
- package/dist/internal/c4/scan-detection-codecs.js.map +1 -0
- package/dist/internal/c4/scan-lifecycle.d.ts +306 -0
- package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -0
- package/dist/internal/c4/scan-lifecycle.js +258 -0
- package/dist/internal/c4/scan-lifecycle.js.map +1 -0
- package/dist/internal/c4/scanning.d.ts +1 -28
- package/dist/internal/c4/scanning.d.ts.map +1 -1
- package/dist/internal/c4/scanning.js +2 -33
- package/dist/internal/c4/scanning.js.map +1 -1
- package/dist/internal/c4/ship-import.d.ts +4 -0
- package/dist/internal/c4/ship-import.d.ts.map +1 -0
- package/dist/internal/c4/ship-import.js +13 -0
- package/dist/internal/c4/ship-import.js.map +1 -0
- package/dist/internal/c4/ship-stats.d.ts.map +1 -1
- package/dist/internal/c4/ship-stats.js +25 -21
- package/dist/internal/c4/ship-stats.js.map +1 -1
- package/dist/internal/c4/starbase.d.ts +0 -32
- package/dist/internal/c4/starbase.d.ts.map +1 -1
- package/dist/internal/c4/starbase.js +3 -41
- package/dist/internal/c4/starbase.js.map +1 -1
- package/dist/internal/c4/wallet-cargo-cache.d.ts +3 -0
- package/dist/internal/c4/wallet-cargo-cache.d.ts.map +1 -0
- package/dist/internal/c4/wallet-cargo-cache.js +24 -0
- package/dist/internal/c4/wallet-cargo-cache.js.map +1 -0
- package/dist/internal/c4/world.d.ts +36 -7
- package/dist/internal/c4/world.d.ts.map +1 -1
- package/dist/internal/c4/world.js +58 -25
- package/dist/internal/c4/world.js.map +1 -1
- package/dist/internal/cargo.d.ts +2 -0
- package/dist/internal/cargo.d.ts.map +1 -1
- package/dist/internal/cargo.js +8 -0
- package/dist/internal/cargo.js.map +1 -1
- package/dist/internal/fleet.d.ts +1 -0
- package/dist/internal/fleet.d.ts.map +1 -1
- package/dist/internal/fleet.js +3 -1
- package/dist/internal/fleet.js.map +1 -1
- package/dist/internal/loyalty-atlas-bank-state.d.ts +16 -0
- package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -0
- package/dist/internal/loyalty-atlas-bank-state.js +10 -0
- package/dist/internal/loyalty-atlas-bank-state.js.map +1 -0
- package/dist/internal/planning/account-state.d.ts +4 -0
- package/dist/internal/planning/account-state.d.ts.map +1 -0
- package/dist/internal/planning/account-state.js +11 -0
- package/dist/internal/planning/account-state.js.map +1 -0
- package/dist/internal/planning/action-runtime.d.ts +38 -0
- package/dist/internal/planning/action-runtime.d.ts.map +1 -0
- package/dist/internal/planning/action-runtime.js +63 -0
- package/dist/internal/planning/action-runtime.js.map +1 -0
- package/dist/internal/planning/arrival-guards.d.ts +20 -0
- package/dist/internal/planning/arrival-guards.d.ts.map +1 -0
- package/dist/internal/planning/arrival-guards.js +187 -0
- package/dist/internal/planning/arrival-guards.js.map +1 -0
- package/dist/internal/planning/authorization-adapter.d.ts +65 -35
- package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
- package/dist/internal/planning/authorization-adapter.js +217 -70
- package/dist/internal/planning/authorization-adapter.js.map +1 -1
- package/dist/internal/planning/character-registration-guard.d.ts +4 -0
- package/dist/internal/planning/character-registration-guard.d.ts.map +1 -0
- package/dist/internal/planning/character-registration-guard.js +58 -0
- package/dist/internal/planning/character-registration-guard.js.map +1 -0
- package/dist/internal/planning/character-registration.d.ts +23 -0
- package/dist/internal/planning/character-registration.d.ts.map +1 -0
- package/dist/internal/planning/character-registration.js +86 -0
- package/dist/internal/planning/character-registration.js.map +1 -0
- package/dist/internal/planning/currency-cache-guard.d.ts +4 -0
- package/dist/internal/planning/currency-cache-guard.d.ts.map +1 -0
- package/dist/internal/planning/currency-cache-guard.js +32 -0
- package/dist/internal/planning/currency-cache-guard.js.map +1 -0
- package/dist/internal/planning/democracy-history.d.ts +50 -0
- package/dist/internal/planning/democracy-history.d.ts.map +1 -0
- package/dist/internal/planning/democracy-history.js +198 -0
- package/dist/internal/planning/democracy-history.js.map +1 -0
- package/dist/internal/planning/faction-enrollment.d.ts +10 -0
- package/dist/internal/planning/faction-enrollment.d.ts.map +1 -0
- package/dist/internal/planning/faction-enrollment.js +46 -0
- package/dist/internal/planning/faction-enrollment.js.map +1 -0
- package/dist/internal/planning/faction-trade-guards.d.ts +30 -0
- package/dist/internal/planning/faction-trade-guards.d.ts.map +1 -0
- package/dist/internal/planning/faction-trade-guards.js +15 -0
- package/dist/internal/planning/faction-trade-guards.js.map +1 -0
- package/dist/internal/planning/faction-trade-state.d.ts +16 -0
- package/dist/internal/planning/faction-trade-state.d.ts.map +1 -0
- package/dist/internal/planning/faction-trade-state.js +43 -0
- package/dist/internal/planning/faction-trade-state.js.map +1 -0
- package/dist/internal/planning/fleet-arrival.d.ts +40 -0
- package/dist/internal/planning/fleet-arrival.d.ts.map +1 -0
- package/dist/internal/planning/fleet-arrival.js +105 -0
- package/dist/internal/planning/fleet-arrival.js.map +1 -0
- package/dist/internal/planning/fleet-attack-xp.d.ts +20 -0
- package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -0
- package/dist/internal/planning/fleet-attack-xp.js +110 -0
- package/dist/internal/planning/fleet-attack-xp.js.map +1 -0
- package/dist/internal/planning/fleet-creation.d.ts +30 -0
- package/dist/internal/planning/fleet-creation.d.ts.map +1 -0
- package/dist/internal/planning/fleet-creation.js +108 -0
- package/dist/internal/planning/fleet-creation.js.map +1 -0
- package/dist/internal/planning/fleet-crew-guard.d.ts +28 -0
- package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -0
- package/dist/internal/planning/fleet-crew-guard.js +47 -0
- package/dist/internal/planning/fleet-crew-guard.js.map +1 -0
- package/dist/internal/planning/fleet-crew-transfer.d.ts +7 -0
- package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -0
- package/dist/internal/planning/fleet-crew-transfer.js +131 -0
- package/dist/internal/planning/fleet-crew-transfer.js.map +1 -0
- package/dist/internal/planning/fleet-dock-funding-guard.d.ts +42 -0
- package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -0
- package/dist/internal/planning/fleet-dock-funding-guard.js +225 -0
- package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -0
- package/dist/internal/planning/fleet-dock-funding.d.ts +9 -0
- package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -0
- package/dist/internal/planning/fleet-dock-funding.js +154 -0
- package/dist/internal/planning/fleet-dock-funding.js.map +1 -0
- package/dist/internal/planning/fleet-docking-guard.d.ts +4 -0
- package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -0
- package/dist/internal/planning/fleet-docking-guard.js +42 -0
- package/dist/internal/planning/fleet-docking-guard.js.map +1 -0
- package/dist/internal/planning/fleet-docking.d.ts +10 -0
- package/dist/internal/planning/fleet-docking.d.ts.map +1 -0
- package/dist/internal/planning/fleet-docking.js +85 -0
- package/dist/internal/planning/fleet-docking.js.map +1 -0
- package/dist/internal/planning/fleet-respawn.d.ts +28 -0
- package/dist/internal/planning/fleet-respawn.d.ts.map +1 -0
- package/dist/internal/planning/fleet-respawn.js +166 -0
- package/dist/internal/planning/fleet-respawn.js.map +1 -0
- package/dist/internal/planning/fleet-ship-assembly.d.ts +36 -0
- package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -0
- package/dist/internal/planning/fleet-ship-assembly.js +137 -0
- package/dist/internal/planning/fleet-ship-assembly.js.map +1 -0
- package/dist/internal/planning/governance-fees.d.ts +64 -0
- package/dist/internal/planning/governance-fees.d.ts.map +1 -0
- package/dist/internal/planning/governance-fees.js +239 -0
- package/dist/internal/planning/governance-fees.js.map +1 -0
- package/dist/internal/planning/local-market-order-funding.d.ts +8 -0
- package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -0
- package/dist/internal/planning/local-market-order-funding.js +126 -0
- package/dist/internal/planning/local-market-order-funding.js.map +1 -0
- package/dist/internal/planning/local-market-order.d.ts +40 -0
- package/dist/internal/planning/local-market-order.d.ts.map +1 -0
- package/dist/internal/planning/local-market-order.js +166 -0
- package/dist/internal/planning/local-market-order.js.map +1 -0
- package/dist/internal/planning/mining-stop.d.ts +14 -0
- package/dist/internal/planning/mining-stop.d.ts.map +1 -0
- package/dist/internal/planning/mining-stop.js +41 -0
- package/dist/internal/planning/mining-stop.js.map +1 -0
- package/dist/internal/planning/movement-character.d.ts +7 -0
- package/dist/internal/planning/movement-character.d.ts.map +1 -0
- package/dist/internal/planning/movement-character.js +41 -0
- package/dist/internal/planning/movement-character.js.map +1 -0
- package/dist/internal/planning/movement-xp-guard.d.ts +4 -0
- package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -0
- package/dist/internal/planning/movement-xp-guard.js +103 -0
- package/dist/internal/planning/movement-xp-guard.js.map +1 -0
- package/dist/internal/planning/open-signal-guard.d.ts +3 -0
- package/dist/internal/planning/open-signal-guard.d.ts.map +1 -0
- package/dist/internal/planning/open-signal-guard.js +31 -0
- package/dist/internal/planning/open-signal-guard.js.map +1 -0
- package/dist/internal/planning/open-signal.d.ts +31 -0
- package/dist/internal/planning/open-signal.d.ts.map +1 -0
- package/dist/internal/planning/open-signal.js +85 -0
- package/dist/internal/planning/open-signal.js.map +1 -0
- package/dist/internal/planning/recipe-state.d.ts +6 -0
- package/dist/internal/planning/recipe-state.d.ts.map +1 -0
- package/dist/internal/planning/recipe-state.js +20 -0
- package/dist/internal/planning/recipe-state.js.map +1 -0
- package/dist/internal/planning/rent.d.ts +19 -0
- package/dist/internal/planning/rent.d.ts.map +1 -0
- package/dist/internal/planning/rent.js +35 -0
- package/dist/internal/planning/rent.js.map +1 -0
- package/dist/internal/planning/respawn-guards.d.ts +3 -0
- package/dist/internal/planning/respawn-guards.d.ts.map +1 -0
- package/dist/internal/planning/respawn-guards.js +41 -0
- package/dist/internal/planning/respawn-guards.js.map +1 -0
- package/dist/internal/planning/runtime-guards.d.ts +43 -0
- package/dist/internal/planning/runtime-guards.d.ts.map +1 -0
- package/dist/internal/planning/runtime-guards.js +638 -0
- package/dist/internal/planning/runtime-guards.js.map +1 -0
- package/dist/internal/planning/scan-completion-guard.d.ts +43 -0
- package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -0
- package/dist/internal/planning/scan-completion-guard.js +94 -0
- package/dist/internal/planning/scan-completion-guard.js.map +1 -0
- package/dist/internal/planning/scan-completion.d.ts +20 -0
- package/dist/internal/planning/scan-completion.d.ts.map +1 -0
- package/dist/internal/planning/scan-completion.js +196 -0
- package/dist/internal/planning/scan-completion.js.map +1 -0
- package/dist/internal/planning/scan-detect-guard.d.ts +34 -0
- package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -0
- package/dist/internal/planning/scan-detect-guard.js +77 -0
- package/dist/internal/planning/scan-detect-guard.js.map +1 -0
- package/dist/internal/planning/scan-detect.d.ts +24 -0
- package/dist/internal/planning/scan-detect.d.ts.map +1 -0
- package/dist/internal/planning/scan-detect.js +244 -0
- package/dist/internal/planning/scan-detect.js.map +1 -0
- package/dist/internal/planning/scan-input.d.ts +9 -0
- package/dist/internal/planning/scan-input.d.ts.map +1 -0
- package/dist/internal/planning/scan-input.js +58 -0
- package/dist/internal/planning/scan-input.js.map +1 -0
- package/dist/internal/planning/ship-import-funding.d.ts +22 -0
- package/dist/internal/planning/ship-import-funding.d.ts.map +1 -0
- package/dist/internal/planning/ship-import-funding.js +52 -0
- package/dist/internal/planning/ship-import-funding.js.map +1 -0
- package/dist/internal/planning/ship-token.d.ts +9 -0
- package/dist/internal/planning/ship-token.d.ts.map +1 -0
- package/dist/internal/planning/ship-token.js +46 -0
- package/dist/internal/planning/ship-token.js.map +1 -0
- package/dist/internal/planning/starbase-system-guard.d.ts +6 -0
- package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -0
- package/dist/internal/planning/starbase-system-guard.js +93 -0
- package/dist/internal/planning/starbase-system-guard.js.map +1 -0
- package/dist/internal/planning/starbase-system.d.ts +15 -0
- package/dist/internal/planning/starbase-system.d.ts.map +1 -0
- package/dist/internal/planning/starbase-system.js +25 -0
- package/dist/internal/planning/starbase-system.js.map +1 -0
- package/dist/internal/planning/token-mint.d.ts +4 -0
- package/dist/internal/planning/token-mint.d.ts.map +1 -0
- package/dist/internal/planning/token-mint.js +15 -0
- package/dist/internal/planning/token-mint.js.map +1 -0
- package/dist/internal/planning/trade-faction-market.d.ts +20 -0
- package/dist/internal/planning/trade-faction-market.d.ts.map +1 -0
- package/dist/internal/planning/trade-faction-market.js +56 -0
- package/dist/internal/planning/trade-faction-market.js.map +1 -0
- package/dist/internal/planning/xp-runtime.d.ts +36 -0
- package/dist/internal/planning/xp-runtime.d.ts.map +1 -0
- package/dist/internal/planning/xp-runtime.js +126 -0
- package/dist/internal/planning/xp-runtime.js.map +1 -0
- package/dist/internal/system-program.d.ts +4 -0
- package/dist/internal/system-program.d.ts.map +1 -0
- package/dist/internal/system-program.js +3 -0
- package/dist/internal/system-program.js.map +1 -0
- package/dist/loyalty/actions/index.d.ts.map +1 -1
- package/dist/loyalty/actions/index.js +7 -20
- package/dist/loyalty/actions/index.js.map +1 -1
- package/dist/loyalty/index.d.ts.map +1 -1
- package/dist/loyalty/index.js +2 -6
- package/dist/loyalty/index.js.map +1 -1
- package/dist/markets/actions/index.d.ts +61 -3
- package/dist/markets/actions/index.d.ts.map +1 -1
- package/dist/markets/actions/index.js +142 -36
- package/dist/markets/actions/index.js.map +1 -1
- package/dist/markets/actions/trade-faction-market.d.ts +43 -0
- package/dist/markets/actions/trade-faction-market.d.ts.map +1 -0
- package/dist/markets/actions/trade-faction-market.js +282 -0
- package/dist/markets/actions/trade-faction-market.js.map +1 -0
- package/dist/markets/index.d.ts +38 -7
- package/dist/markets/index.d.ts.map +1 -1
- package/dist/markets/index.js +57 -10
- package/dist/markets/index.js.map +1 -1
- package/dist/mining/actions/index.d.ts +87 -0
- package/dist/mining/actions/index.d.ts.map +1 -0
- package/dist/mining/actions/index.js +332 -0
- package/dist/mining/actions/index.js.map +1 -0
- package/dist/mining/estimate.d.ts +114 -0
- package/dist/mining/estimate.d.ts.map +1 -0
- package/dist/mining/estimate.js +127 -0
- package/dist/mining/estimate.js.map +1 -0
- package/dist/mining/index.d.ts +9 -2
- package/dist/mining/index.d.ts.map +1 -1
- package/dist/mining/index.js +7 -2
- package/dist/mining/index.js.map +1 -1
- package/dist/mining/profile.d.ts +82 -0
- package/dist/mining/profile.d.ts.map +1 -0
- package/dist/mining/profile.js +109 -0
- package/dist/mining/profile.js.map +1 -0
- package/dist/planning/assembly.d.ts +5 -0
- package/dist/planning/assembly.d.ts.map +1 -1
- package/dist/planning/assembly.js +30 -2
- package/dist/planning/assembly.js.map +1 -1
- package/dist/planning/execution.d.ts +18 -3
- package/dist/planning/execution.d.ts.map +1 -1
- package/dist/planning/execution.js +580 -38
- package/dist/planning/execution.js.map +1 -1
- package/dist/planning/index.d.ts +243 -64
- package/dist/planning/index.d.ts.map +1 -1
- package/dist/planning/index.js +1012 -57
- package/dist/planning/index.js.map +1 -1
- package/dist/planning/plan-sequence-checkpoint.d.ts +9 -0
- package/dist/planning/plan-sequence-checkpoint.d.ts.map +1 -1
- package/dist/planning/plan-sequence-checkpoint.js +16 -7
- package/dist/planning/plan-sequence-checkpoint.js.map +1 -1
- package/dist/planning/plan-sequence-execution.d.ts +5 -0
- package/dist/planning/plan-sequence-execution.d.ts.map +1 -1
- package/dist/planning/plan-sequence-execution.js +74 -30
- package/dist/planning/plan-sequence-execution.js.map +1 -1
- package/dist/planning/plan-sequence.d.ts +2 -1
- package/dist/planning/plan-sequence.d.ts.map +1 -1
- package/dist/planning/plan-sequence.js +8 -1
- package/dist/planning/plan-sequence.js.map +1 -1
- package/dist/planning/simulation.d.ts +25 -1
- package/dist/planning/simulation.d.ts.map +1 -1
- package/dist/planning/simulation.js +111 -11
- package/dist/planning/simulation.js.map +1 -1
- package/dist/registry/cargo.d.ts +11 -1
- package/dist/registry/cargo.d.ts.map +1 -1
- package/dist/registry/cargo.js +42 -1
- package/dist/registry/cargo.js.map +1 -1
- package/dist/registry/docking.d.ts +10 -0
- package/dist/registry/docking.d.ts.map +1 -0
- package/dist/registry/docking.js +12 -0
- package/dist/registry/docking.js.map +1 -0
- package/dist/registry/index.d.ts +4 -0
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js.map +1 -1
- package/dist/registry/onboarding.d.ts +14 -0
- package/dist/registry/onboarding.d.ts.map +1 -0
- package/dist/registry/onboarding.js +37 -0
- package/dist/registry/onboarding.js.map +1 -0
- package/dist/registry/scanning.d.ts +7 -0
- package/dist/registry/scanning.d.ts.map +1 -0
- package/dist/registry/scanning.js +13 -0
- package/dist/registry/scanning.js.map +1 -0
- package/dist/registry/ship-stats-snapshot.js +19 -19
- package/dist/registry/ship-stats-snapshot.js.map +1 -1
- package/dist/registry/ships.d.ts +30 -0
- package/dist/registry/ships.d.ts.map +1 -0
- package/dist/registry/ships.js +62 -0
- package/dist/registry/ships.js.map +1 -0
- package/dist/registry/xp-runtime.d.ts +4 -0
- package/dist/registry/xp-runtime.d.ts.map +1 -0
- package/dist/registry/xp-runtime.js +14 -0
- package/dist/registry/xp-runtime.js.map +1 -0
- package/dist/scanning/actions/index.d.ts +116 -0
- package/dist/scanning/actions/index.d.ts.map +1 -0
- package/dist/scanning/actions/index.js +185 -0
- package/dist/scanning/actions/index.js.map +1 -0
- package/dist/scanning/index.d.ts +4 -1
- package/dist/scanning/index.d.ts.map +1 -1
- package/dist/scanning/index.js +12 -8
- package/dist/scanning/index.js.map +1 -1
- package/dist/scanning/lifecycle.d.ts +77 -0
- package/dist/scanning/lifecycle.d.ts.map +1 -0
- package/dist/scanning/lifecycle.js +93 -0
- package/dist/scanning/lifecycle.js.map +1 -0
- package/dist/scanning/odds.d.ts +111 -0
- package/dist/scanning/odds.d.ts.map +1 -0
- package/dist/scanning/odds.js +294 -0
- package/dist/scanning/odds.js.map +1 -0
- package/dist/scanning/signals.d.ts +121 -0
- package/dist/scanning/signals.d.ts.map +1 -0
- package/dist/scanning/signals.js +171 -0
- package/dist/scanning/signals.js.map +1 -0
- package/dist/world/index.d.ts +110 -5
- package/dist/world/index.d.ts.map +1 -1
- package/dist/world/index.js +109 -4
- package/dist/world/index.js.map +1 -1
- package/dist/world/planet-claim-stake-plots.d.ts +130 -0
- package/dist/world/planet-claim-stake-plots.d.ts.map +1 -0
- package/dist/world/planet-claim-stake-plots.js +110 -0
- package/dist/world/planet-claim-stake-plots.js.map +1 -0
- package/dist/world/starbase-status.d.ts +176 -0
- package/dist/world/starbase-status.d.ts.map +1 -0
- package/dist/world/starbase-status.js +153 -0
- package/dist/world/starbase-status.js.map +1 -0
- package/package.json +18 -2
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { SageSdkError } from '../client/errors.js';
|
|
2
|
+
import { readContextRawAccounts } from '../client/reconciliation.js';
|
|
3
|
+
import { decodeCharacterInitialization, validateGameAccountLayout, } from '../internal/c4/game.js';
|
|
4
|
+
import { hashAccountState } from '../internal/planning/account-state.js';
|
|
5
|
+
import { characterAccountDefinition } from '../internal/c4/identity.js';
|
|
6
|
+
import { requireGameAddress } from '../internal/game-context.js';
|
|
7
|
+
/** Fresh Game validation for Character creation, without loading retained catalogs. */
|
|
8
|
+
export async function readFreshGameForCharacterRegistration(ctx, options) {
|
|
9
|
+
const game = requireGameAddress(ctx);
|
|
10
|
+
const [account] = await readContextRawAccounts(ctx, [game], options);
|
|
11
|
+
if (!account)
|
|
12
|
+
throw new SageSdkError('ACTION_PRECONDITION_FAILED', `The configured Game ${game} is missing. Select an existing C4 Game before planning this action.`, { address: game });
|
|
13
|
+
validateGameForCharacterRegistration(account);
|
|
14
|
+
return account;
|
|
15
|
+
}
|
|
16
|
+
/** Validates fresh Game identity and the full pinned layout without retaining catalogs or hashing definitions. */
|
|
17
|
+
export function validateGameForCharacterRegistration(account, scope) {
|
|
18
|
+
const game = account.address;
|
|
19
|
+
if (account.executable)
|
|
20
|
+
throw new SageSdkError('ACTION_PRECONDITION_FAILED', `The configured Game ${game} is executable instead of Game state. Select a valid C4 Game account and plan again.`, { address: game });
|
|
21
|
+
// Prefix validation alone cannot detect truncated variable-length Game data.
|
|
22
|
+
// The registry's pinned exact codec validates the whole account transiently;
|
|
23
|
+
// the validation-only entry retains no catalog translation dispatcher.
|
|
24
|
+
validateGameAccountLayout(account, scope);
|
|
25
|
+
}
|
|
26
|
+
/** Fresh, finite initialization shape for the qualified current registration. */
|
|
27
|
+
export async function readCharacterInitialization(ctx, options) {
|
|
28
|
+
const raw = await readFreshGameForCharacterRegistration(ctx, options);
|
|
29
|
+
const value = decodeCharacterInitialization(raw);
|
|
30
|
+
if (value.version !== 2)
|
|
31
|
+
throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'Character registration requires current Game 2; migration-sealed or unsupported Games require a supported deployment.', { address: raw.address });
|
|
32
|
+
return {
|
|
33
|
+
characterSize: characterAccountDefinition.minimumDataLength + value.characterGrowth,
|
|
34
|
+
initializationHash: await hashAccountState(raw.owner, value.bytes),
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=onboarding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/registry/onboarding.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,6BAA6B,EAC7B,yBAAyB,GAE1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,qCAAqC,CACzD,GAAgB,EAChB,OAAsD;IAEtD,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACrE,IAAI,CAAC,OAAO;QACV,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,uBAAuB,IAAI,sEAAsE,EACjG,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;IACJ,oCAAoC,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,kHAAkH;AAClH,MAAM,UAAU,oCAAoC,CAClD,OAAmB,EACnB,KAAuB;IAEvB,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAC7B,IAAI,OAAO,CAAC,UAAU;QACpB,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,uBAAuB,IAAI,sFAAsF,EACjH,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;IACJ,6EAA6E;IAC7E,6EAA6E;IAC7E,uEAAuE;IACvE,yBAAyB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC5C,CAAC;AAMD,iFAAiF;AACjF,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,GAAgB,EAChB,OAAsD;IAEtD,MAAM,GAAG,GAAG,MAAM,qCAAqC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;IACjD,IAAI,KAAK,CAAC,OAAO,KAAK,CAAC;QACrB,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,uHAAuH,EACvH,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CACzB,CAAC;IACJ,OAAO;QACL,aAAa,EACX,0BAA0B,CAAC,iBAAiB,GAAG,KAAK,CAAC,eAAe;QACtE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;KACnE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SageContext, ReadAccountOptions } from '../client/contracts.js';
|
|
2
|
+
/** Fresh scanning configuration without retaining a Game snapshot or resolving unrelated definitions. */
|
|
3
|
+
export declare function readFreshGameScanningConfiguration(ctx: SageContext, options?: ReadAccountOptions): Promise<{
|
|
4
|
+
shipSequenceId: number;
|
|
5
|
+
cargo: import("../internal/c4/game.js").GameCargoDefinitionsSectionData;
|
|
6
|
+
}>;
|
|
7
|
+
//# sourceMappingURL=scanning.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scanning.d.ts","sourceRoot":"","sources":["../../src/registry/scanning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAK9E,yGAAyG;AACzG,wBAAsB,kCAAkC,CACtD,GAAG,EAAE,WAAW,EAChB,OAAO,CAAC,EAAE,kBAAkB;;;GAU7B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { SageSdkError } from '../client/errors.js';
|
|
2
|
+
import { readContextRawAccounts } from '../client/reconciliation.js';
|
|
3
|
+
import { requireGameAddress } from '../internal/game-context.js';
|
|
4
|
+
import { decodeGameScanningConfiguration } from '../internal/c4/game.js';
|
|
5
|
+
/** Fresh scanning configuration without retaining a Game snapshot or resolving unrelated definitions. */
|
|
6
|
+
export async function readFreshGameScanningConfiguration(ctx, options) {
|
|
7
|
+
const game = requireGameAddress(ctx);
|
|
8
|
+
const [raw] = await readContextRawAccounts(ctx, [game], options);
|
|
9
|
+
if (!raw)
|
|
10
|
+
throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'Scanning requires the configured Game. Restore the correct deployment context and refresh before detection.');
|
|
11
|
+
return decodeGameScanningConfiguration(raw);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=scanning.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scanning.js","sourceRoot":"","sources":["../../src/registry/scanning.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AACzE,yGAAyG;AACzG,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,GAAgB,EAChB,OAA4B;IAE5B,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACjE,IAAI,CAAC,GAAG;QACN,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,6GAA6G,CAC9G,CAAC;IACJ,OAAO,+BAA+B,CAAC,GAAG,CAAC,CAAC;AAC9C,CAAC"}
|
|
@@ -75,21 +75,21 @@ const rules = {
|
|
|
75
75
|
shieldBreakDelaySeconds: U16,
|
|
76
76
|
warpSpoolTimeSeconds: U16,
|
|
77
77
|
damageKinetic: U32,
|
|
78
|
-
damageKineticVariance:
|
|
78
|
+
damageKineticVariance: U26F6,
|
|
79
79
|
damageEnergy: U32,
|
|
80
|
-
damageEnergyVariance:
|
|
80
|
+
damageEnergyVariance: U26F6,
|
|
81
81
|
damageEmp: U32,
|
|
82
|
-
damageEmpVariance:
|
|
82
|
+
damageEmpVariance: U26F6,
|
|
83
83
|
damageSuperchill: U32,
|
|
84
|
-
damageSuperchillVariance:
|
|
84
|
+
damageSuperchillVariance: U26F6,
|
|
85
85
|
damageShockwave: U32,
|
|
86
|
-
damageShockwaveVariance:
|
|
86
|
+
damageShockwaveVariance: U26F6,
|
|
87
87
|
damageGraygoo: U32,
|
|
88
|
-
damageGraygooVariance:
|
|
88
|
+
damageGraygooVariance: U26F6,
|
|
89
89
|
damageHeat: U32,
|
|
90
|
-
damageHeatVariance:
|
|
90
|
+
damageHeatVariance: U26F6,
|
|
91
91
|
damageBomb: U32,
|
|
92
|
-
damageBombVariance:
|
|
92
|
+
damageBombVariance: U26F6,
|
|
93
93
|
counterDecoy: U32,
|
|
94
94
|
counterEnergyCapacitor: U32,
|
|
95
95
|
counterFireSuppressor: U32,
|
|
@@ -99,14 +99,14 @@ const rules = {
|
|
|
99
99
|
counterNegativeRemPlating: U32,
|
|
100
100
|
counterWarmingPlates: U32,
|
|
101
101
|
counterFaradayShielding: U32,
|
|
102
|
-
stealthPower:
|
|
103
|
-
hitChance:
|
|
104
|
-
aimAbility:
|
|
105
|
-
critChance:
|
|
106
|
-
critMultiplier:
|
|
107
|
-
fuelConsumptionRate:
|
|
108
|
-
missileDamage:
|
|
109
|
-
missileFireRate:
|
|
102
|
+
stealthPower: U26F6,
|
|
103
|
+
hitChance: U26F6,
|
|
104
|
+
aimAbility: U26F6,
|
|
105
|
+
critChance: U26F6,
|
|
106
|
+
critMultiplier: U26F6,
|
|
107
|
+
fuelConsumptionRate: U26F6,
|
|
108
|
+
missileDamage: U26F6,
|
|
109
|
+
missileFireRate: U26F6,
|
|
110
110
|
},
|
|
111
111
|
misc: {
|
|
112
112
|
requiredCrew: U16,
|
|
@@ -114,13 +114,13 @@ const rules = {
|
|
|
114
114
|
respawnTimeWithoutFeeSeconds: U16,
|
|
115
115
|
respawnTimeWithFeeSeconds: U16,
|
|
116
116
|
respawnFeeRaw: U64,
|
|
117
|
-
scanCoolDownSeconds:
|
|
118
|
-
scanPower:
|
|
117
|
+
scanCoolDownSeconds: U16F16,
|
|
118
|
+
scanPower: U26F6,
|
|
119
119
|
scanCost: U32,
|
|
120
120
|
scanBonus: I32,
|
|
121
121
|
lpValue: U32,
|
|
122
122
|
medallionValue: U32,
|
|
123
|
-
xpValue:
|
|
123
|
+
xpValue: U16F16,
|
|
124
124
|
respawnFeeAtlas: (value) => typeof value === 'number' && Number.isFinite(value) && value >= 0
|
|
125
125
|
? value
|
|
126
126
|
: undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ship-stats-snapshot.js","sourceRoot":"","sources":["../../src/registry/ship-stats-snapshot.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ship-stats-snapshot.js","sourceRoot":"","sources":["../../src/registry/ship-stats-snapshot.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { Address } from '@solana/kit';
|
|
2
|
+
import type { RawAccount, ReadAccountOptions, SageContext } from '../client/contracts.js';
|
|
3
|
+
import { type GameDecodeScope, type GameShipConfigurationRow } from '../internal/c4/game.js';
|
|
4
|
+
/** Resolves one explicit ship configuration from a fresh, registry-owned Game read. */
|
|
5
|
+
export declare function readFreshGameShipConfiguration(context: SageContext, shipId: number): Promise<Readonly<{
|
|
6
|
+
rawAccount: RawAccount;
|
|
7
|
+
ship: import("@staratlas/dev-sage").Ship;
|
|
8
|
+
configHash: string;
|
|
9
|
+
}>>;
|
|
10
|
+
/** Decodes one fresh Game once and hashes each requested ship; missing IDs have no hash. */
|
|
11
|
+
export declare function hashGameShipConfigurations(account: RawAccount, shipIds: readonly number[], catalog?: ShipAssemblyCatalog, scope?: GameDecodeScope): Promise<ReadonlyMap<number, string>>;
|
|
12
|
+
/** Invocation-local validated raw ship catalog; never retained by a context. */
|
|
13
|
+
export interface ShipAssemblyCatalog {
|
|
14
|
+
readonly owner: Address;
|
|
15
|
+
readonly sequenceId: number;
|
|
16
|
+
readonly maxFleetSize: number;
|
|
17
|
+
readonly rows: readonly GameShipConfigurationRow[];
|
|
18
|
+
}
|
|
19
|
+
/** Validates and decodes the Game exactly once behind the registry boundary. */
|
|
20
|
+
export declare function decodeGameShipAssemblyCatalog(account: RawAccount, scope?: GameDecodeScope): ShipAssemblyCatalog;
|
|
21
|
+
/** Reads fresh assembly configuration without loading public registry sections. */
|
|
22
|
+
export declare function readFreshGameShipAssemblyCatalog(ctx: SageContext, options?: ReadAccountOptions): Promise<{
|
|
23
|
+
rawAccount: RawAccount;
|
|
24
|
+
catalog: ShipAssemblyCatalog;
|
|
25
|
+
}>;
|
|
26
|
+
/** Hashes only the selected pinned configuration, allowing unrelated Game updates. */
|
|
27
|
+
export declare function hashShipAssemblyConfiguration(catalog: ShipAssemblyCatalog, ship: GameShipConfigurationRow): Promise<string>;
|
|
28
|
+
/** Reads fresh ship-definition generation, without retaining a catalog or validating every ship index. */
|
|
29
|
+
export declare function readFreshGameShipDefinitionSequence(ctx: SageContext, options?: ReadAccountOptions): Promise<number>;
|
|
30
|
+
//# sourceMappingURL=ships.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ships.d.ts","sourceRoot":"","sources":["../../src/registry/ships.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EACV,UAAU,EACV,kBAAkB,EAClB,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAKL,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC9B,MAAM,wBAAwB,CAAC;AAYhC,uFAAuF;AACvF,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,MAAM;;;;IA0Bf;AAED,4FAA4F;AAC5F,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,OAAO,CAAC,EAAE,mBAAmB,EAC7B,KAAK,CAAC,EAAE,eAAe,GACtB,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAQtC;AAED,gFAAgF;AAChF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,SAAS,wBAAwB,EAAE,CAAC;CACpD;AACD,gFAAgF;AAChF,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,UAAU,EACnB,KAAK,CAAC,EAAE,eAAe,GACtB,mBAAmB,CAKrB;AACD,mFAAmF;AACnF,wBAAsB,gCAAgC,CACpD,GAAG,EAAE,WAAW,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC;IAAE,UAAU,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,mBAAmB,CAAA;CAAE,CAAC,CAWnE;AACD,sFAAsF;AACtF,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,mBAAmB,EAC5B,IAAI,EAAE,wBAAwB,GAC7B,OAAO,CAAC,MAAM,CAAC,CAEjB;AAED,0GAA0G;AAC1G,wBAAsB,mCAAmC,CACvD,GAAG,EAAE,WAAW,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,MAAM,CAAC,CASjB"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { InvalidActionInputError, SageSdkError } from '../client/errors.js';
|
|
2
|
+
import { readContextRawAccounts } from '../client/reconciliation.js';
|
|
3
|
+
import { decodeGameShipConfigurations, decodeGameShipDefinitionSequence, decodeGameShipConfigurationRows, encodeGameShipConfiguration, } from '../internal/c4/game.js';
|
|
4
|
+
import { requireGameAddress } from '../internal/game-context.js';
|
|
5
|
+
import { hashAccountState } from '../internal/planning/account-state.js';
|
|
6
|
+
/** Hashes the complete pinned Ship encoding, including its ID, mint and requirements. */
|
|
7
|
+
function hashShip(account, ship) {
|
|
8
|
+
return hashAccountState(account.owner, encodeGameShipConfiguration(ship));
|
|
9
|
+
}
|
|
10
|
+
/** Resolves one explicit ship configuration from a fresh, registry-owned Game read. */
|
|
11
|
+
export async function readFreshGameShipConfiguration(context, shipId) {
|
|
12
|
+
const game = requireGameAddress(context);
|
|
13
|
+
const [rawAccount] = await readContextRawAccounts(context, [game]);
|
|
14
|
+
if (!rawAccount)
|
|
15
|
+
throw new InvalidActionInputError('game', game, 'an existing Game in the configured deployment', 'Refresh the configured Game before importing a ship.');
|
|
16
|
+
const ship = decodeGameShipConfigurations(rawAccount).find((row) => row.id === shipId);
|
|
17
|
+
if (!ship)
|
|
18
|
+
throw new InvalidActionInputError('shipId', shipId, 'a ship configuration ID defined in this Game', 'Select a ship configuration from this deployment before importing.');
|
|
19
|
+
return Object.freeze({
|
|
20
|
+
rawAccount,
|
|
21
|
+
ship,
|
|
22
|
+
configHash: await hashShip(rawAccount, ship),
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
/** Decodes one fresh Game once and hashes each requested ship; missing IDs have no hash. */
|
|
26
|
+
export async function hashGameShipConfigurations(account, shipIds, catalog, scope) {
|
|
27
|
+
const ships = catalog?.rows ?? decodeGameShipConfigurations(account, scope);
|
|
28
|
+
const selected = new Set(shipIds);
|
|
29
|
+
const hashes = new Map();
|
|
30
|
+
for (const ship of ships)
|
|
31
|
+
if (selected.has(ship.id))
|
|
32
|
+
hashes.set(ship.id, await hashShip(account, ship));
|
|
33
|
+
return hashes;
|
|
34
|
+
}
|
|
35
|
+
/** Validates and decodes the Game exactly once behind the registry boundary. */
|
|
36
|
+
export function decodeGameShipAssemblyCatalog(account, scope) {
|
|
37
|
+
return {
|
|
38
|
+
owner: account.owner,
|
|
39
|
+
...decodeGameShipConfigurationRows(account, scope),
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/** Reads fresh assembly configuration without loading public registry sections. */
|
|
43
|
+
export async function readFreshGameShipAssemblyCatalog(ctx, options) {
|
|
44
|
+
const game = requireGameAddress(ctx);
|
|
45
|
+
const [rawAccount] = await readContextRawAccounts(ctx, [game], options);
|
|
46
|
+
if (!rawAccount)
|
|
47
|
+
throw new InvalidActionInputError('game', game, 'an existing Game', 'Refresh the configured Game before assembling ships.');
|
|
48
|
+
return { rawAccount, catalog: decodeGameShipAssemblyCatalog(rawAccount) };
|
|
49
|
+
}
|
|
50
|
+
/** Hashes only the selected pinned configuration, allowing unrelated Game updates. */
|
|
51
|
+
export function hashShipAssemblyConfiguration(catalog, ship) {
|
|
52
|
+
return hashAccountState(catalog.owner, encodeGameShipConfiguration(ship));
|
|
53
|
+
}
|
|
54
|
+
/** Reads fresh ship-definition generation, without retaining a catalog or validating every ship index. */
|
|
55
|
+
export async function readFreshGameShipDefinitionSequence(ctx, options) {
|
|
56
|
+
const game = requireGameAddress(ctx);
|
|
57
|
+
const [account] = await readContextRawAccounts(ctx, [game], options);
|
|
58
|
+
if (!account || account.executable)
|
|
59
|
+
throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'The configured Game must exist and contain non-executable Game state. Refresh the deployment Game before transferring crew.');
|
|
60
|
+
return decodeGameShipDefinitionSequence(account);
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=ships.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ships.js","sourceRoot":"","sources":["../../src/registry/ships.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Address, ReadAccountOptions, SageContext } from '../client/contracts.js';
|
|
2
|
+
/** Fresh runtime eligibility uses full Game validation, without retaining catalogs. */
|
|
3
|
+
export declare function readFreshGameRuntimeVersion(ctx: SageContext, game: Address, options?: ReadAccountOptions): Promise<number>;
|
|
4
|
+
//# sourceMappingURL=xp-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xp-runtime.d.ts","sourceRoot":"","sources":["../../src/registry/xp-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,kBAAkB,EAClB,WAAW,EACZ,MAAM,wBAAwB,CAAC;AAMhC,uFAAuF;AACvF,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,MAAM,CAAC,CAejB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { SageSdkError } from '../client/errors.js';
|
|
2
|
+
import { readContextRawAccounts } from '../client/reconciliation.js';
|
|
3
|
+
import { decodeGameRuntimeVersion } from '../internal/c4/game.js';
|
|
4
|
+
import { requireGameAddress } from '../internal/game-context.js';
|
|
5
|
+
/** Fresh runtime eligibility uses full Game validation, without retaining catalogs. */
|
|
6
|
+
export async function readFreshGameRuntimeVersion(ctx, game, options) {
|
|
7
|
+
if (requireGameAddress(ctx) !== game)
|
|
8
|
+
throw new SageSdkError('ACTION_PRECONDITION_FAILED', `XP runtime Game ${game} differs from the configured Game. Use this deployment's Game and prepare a new Plan.`, { address: game });
|
|
9
|
+
const [account] = await readContextRawAccounts(ctx, [game], options);
|
|
10
|
+
if (!account || account.address !== game || account.executable)
|
|
11
|
+
throw new SageSdkError('ACTION_PRECONDITION_FAILED', `Game ${game} must be an existing, non-executable Game account. Refresh the configured Game and prepare a new Plan.`, { address: game });
|
|
12
|
+
return decodeGameRuntimeVersion(account);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=xp-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xp-runtime.js","sourceRoot":"","sources":["../../src/registry/xp-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,GAAgB,EAChB,IAAa,EACb,OAA4B;IAE5B,IAAI,kBAAkB,CAAC,GAAG,CAAC,KAAK,IAAI;QAClC,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,mBAAmB,IAAI,uFAAuF,EAC9G,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;IACJ,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACrE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,UAAU;QAC5D,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,QAAQ,IAAI,wGAAwG,EACpH,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;IACJ,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import type { Address } from '@solana/kit';
|
|
2
|
+
import type { SageContext } from '../../client/contracts.js';
|
|
3
|
+
import type { PlanAuthorization } from '../../internal/planning/authorization-adapter.js';
|
|
4
|
+
import { type Plan } from '../../planning/index.js';
|
|
5
|
+
export type { PlanAuthorization };
|
|
6
|
+
/** Explicit address-only direct Profile authorization for signal setup. Certificates are unsupported.
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* declare const authorization: PlanAuthorization;
|
|
10
|
+
* const options: PlanOpenScanSignalOptions = { authorization };
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
export interface PlanOpenScanSignalOptions {
|
|
14
|
+
readonly authorization: PlanAuthorization;
|
|
15
|
+
}
|
|
16
|
+
/** Plans one absent canonical signal for a directly owned Fleet, including Docked Fleets.
|
|
17
|
+
* Planning reads fresh state but never signs, submits, deposits funds or detects a signal.
|
|
18
|
+
* The Profile funds signal rent while retaining its own reserve; transaction fees are separate.
|
|
19
|
+
* Restricted-key least privilege is unqualified: instruction permission acceptance remains
|
|
20
|
+
* chain-authoritative, and legacy SCAN bit 38 is not established as sufficient. Simulate before signing.
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* declare const ctx: SageContext, fleet: Address, authorization: PlanAuthorization;
|
|
24
|
+
* const plan = await planOpenScanSignal(ctx, fleet, { authorization });
|
|
25
|
+
* console.log(plan.describe());
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export declare function planOpenScanSignal(ctx: SageContext, fleet: Address, options: PlanOpenScanSignalOptions): Promise<Plan>;
|
|
29
|
+
import { type DetectOptions } from '../../internal/planning/scan-detect.js';
|
|
30
|
+
/** Explicit choices for one Idle Fleet's detection; setup and funding are separate.
|
|
31
|
+
* @example
|
|
32
|
+
* ```ts
|
|
33
|
+
* declare const profile: Address, authority: Address;
|
|
34
|
+
* const authorization = { profile, authority, keyIndex: 0 };
|
|
35
|
+
* const options: PlanDetectSignalOptions = { authorization, patternId: 0, focus: 'any' };
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export interface PlanDetectSignalOptions extends DetectOptions {
|
|
39
|
+
}
|
|
40
|
+
/** Plans one signal detection for an existing Empty signal and directly owned Idle Fleet.
|
|
41
|
+
* Reads fresh prerequisites without signing. Restricted-key sufficiency, cooldown
|
|
42
|
+
* rejection and final gameplay outcomes remain chain-authoritative; use simulatePlan.
|
|
43
|
+
* No automatic opening, deposits, loading, undocking or resolution occurs.
|
|
44
|
+
* @example
|
|
45
|
+
* ```ts
|
|
46
|
+
* declare const ctx: SageContext, fleet: Address, options: PlanDetectSignalOptions;
|
|
47
|
+
* const plan = await planDetectSignal(ctx, fleet, options);
|
|
48
|
+
* console.log(plan.describe());
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
51
|
+
export declare function planDetectSignal(ctx: SageContext, fleet: Address, options: PlanDetectSignalOptions): Promise<Plan>;
|
|
52
|
+
import { type ScanCompletionOptions } from '../../internal/planning/scan-completion.js';
|
|
53
|
+
/** Direct address-only authority for recovery, abandonment and receipt acknowledgement.
|
|
54
|
+
* @example
|
|
55
|
+
* ```ts
|
|
56
|
+
* declare const authorization: PlanAuthorization;
|
|
57
|
+
* const options: PlanScanCompletionOptions = { authorization };
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
export interface PlanScanCompletionOptions extends ScanCompletionOptions {
|
|
61
|
+
}
|
|
62
|
+
/** Resolve one PendingEntropy signal using its committed policy and regional loot configuration. Requires current Character XP accounts; no gameplay authority is needed.
|
|
63
|
+
* @example
|
|
64
|
+
* ```ts
|
|
65
|
+
* declare const ctx: SageContext, fleet: Address;
|
|
66
|
+
* const plan = await planResolveSignal(ctx, fleet);
|
|
67
|
+
* console.log(plan.describe());
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
export declare function planResolveSignal(ctx: SageContext, fleet: Address): Promise<Plan>;
|
|
71
|
+
/** Recover one unexpired Contact with an Idle Fleet inside its stored radius. Cargo acceptance, clipping and XP remain chain-authoritative.
|
|
72
|
+
* @example
|
|
73
|
+
* ```ts
|
|
74
|
+
* declare const ctx: SageContext, fleet: Address, options: PlanScanCompletionOptions;
|
|
75
|
+
* const plan = await planRecoverSignal(ctx, fleet, options);
|
|
76
|
+
* console.log(plan.describe());
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
export declare function planRecoverSignal(ctx: SageContext, fleet: Address, options: PlanScanCompletionOptions): Promise<Plan>;
|
|
80
|
+
/** Clear one terminal receipt to Empty while retaining the funded signal. Explicitly includes the Fleet for current abandoned-receipt cooldown handling.
|
|
81
|
+
* @example
|
|
82
|
+
* ```ts
|
|
83
|
+
* declare const ctx: SageContext, fleet: Address, options: PlanScanCompletionOptions;
|
|
84
|
+
* const plan = await planAcknowledgeScanResult(ctx, fleet, options);
|
|
85
|
+
* console.log(plan.describe());
|
|
86
|
+
* ```
|
|
87
|
+
*/
|
|
88
|
+
export declare function planAcknowledgeScanResult(ctx: SageContext, fleet: Address, options: PlanScanCompletionOptions): Promise<Plan>;
|
|
89
|
+
/** Abandon one unexpired Contact without attempting recovery. Acknowledgement remains a separate explicit action.
|
|
90
|
+
* @example
|
|
91
|
+
* ```ts
|
|
92
|
+
* declare const ctx: SageContext, fleet: Address, options: PlanScanCompletionOptions;
|
|
93
|
+
* const plan = await planAbandonSignal(ctx, fleet, options);
|
|
94
|
+
* console.log(plan.describe());
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
export declare function planAbandonSignal(ctx: SageContext, fleet: Address, options: PlanScanCompletionOptions): Promise<Plan>;
|
|
98
|
+
/** Expire one Contact after its deadline. No gameplay authority is needed; acknowledgement remains separate.
|
|
99
|
+
* @example
|
|
100
|
+
* ```ts
|
|
101
|
+
* declare const ctx: SageContext, fleet: Address;
|
|
102
|
+
* const plan = await planExpireSignal(ctx, fleet);
|
|
103
|
+
* console.log(plan.describe());
|
|
104
|
+
* ```
|
|
105
|
+
*/
|
|
106
|
+
export declare function planExpireSignal(ctx: SageContext, fleet: Address): Promise<Plan>;
|
|
107
|
+
/** Forfeit one PendingEntropy attempt after the supported reveal deadline. No gameplay authority is needed; acknowledgement remains separate.
|
|
108
|
+
* @example
|
|
109
|
+
* ```ts
|
|
110
|
+
* declare const ctx: SageContext, fleet: Address;
|
|
111
|
+
* const plan = await planForfeitScanSignalEntropy(ctx, fleet);
|
|
112
|
+
* console.log(plan.describe());
|
|
113
|
+
* ```
|
|
114
|
+
*/
|
|
115
|
+
export declare function planForfeitScanSignalEntropy(ctx: SageContext, fleet: Address): Promise<Plan>;
|
|
116
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/scanning/actions/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAG7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AAa1F,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAChE,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAClC;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;CAC3C;AACD;;;;;;;;;;;GAWG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAiDf;AAED,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,wCAAwC,CAAC;AAChD;;;;;;;GAOG;AACH,MAAM,WAAW,uBAAwB,SAAQ,aAAa;CAAG;AACjE;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,4CAA4C,CAAC;AAKpD;;;;;;GAMG;AACH,MAAM,WAAW,yBAA0B,SAAQ,qBAAqB;CAAG;AAyC3E;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC,CAEf;AACD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAEf;AACD;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAEf;AACD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAEf;AACD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC,CAEf;AACD;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC,CAEf"}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { readContextRawAccounts } from '../../client/reconciliation.js';
|
|
2
|
+
import { requireGameAddress } from '../../internal/game-context.js';
|
|
3
|
+
import { validateScanAuthorizationOptions, validateScanFleetAddress, } from '../../internal/planning/scan-input.js';
|
|
4
|
+
import { resolveOpenSignal, openSignalAddresses, validateOpenSignal, openSignalInstruction, } from '../../internal/planning/open-signal.js';
|
|
5
|
+
import { readFreshGameForCharacterRegistration } from '../../registry/onboarding.js';
|
|
6
|
+
import { createPlan } from '../../planning/index.js';
|
|
7
|
+
/** Plans one absent canonical signal for a directly owned Fleet, including Docked Fleets.
|
|
8
|
+
* Planning reads fresh state but never signs, submits, deposits funds or detects a signal.
|
|
9
|
+
* The Profile funds signal rent while retaining its own reserve; transaction fees are separate.
|
|
10
|
+
* Restricted-key least privilege is unqualified: instruction permission acceptance remains
|
|
11
|
+
* chain-authoritative, and legacy SCAN bit 38 is not established as sufficient. Simulate before signing.
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* declare const ctx: SageContext, fleet: Address, authorization: PlanAuthorization;
|
|
15
|
+
* const plan = await planOpenScanSignal(ctx, fleet, { authorization });
|
|
16
|
+
* console.log(plan.describe());
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export async function planOpenScanSignal(ctx, fleet, options) {
|
|
20
|
+
validateScanFleetAddress(fleet);
|
|
21
|
+
const a = validateScanAuthorizationOptions(options);
|
|
22
|
+
const intent = {
|
|
23
|
+
game: requireGameAddress(ctx),
|
|
24
|
+
fleet,
|
|
25
|
+
profile: a.profile,
|
|
26
|
+
authority: a.authority,
|
|
27
|
+
keyIndex: a.keyIndex,
|
|
28
|
+
};
|
|
29
|
+
const guard = {
|
|
30
|
+
...intent,
|
|
31
|
+
...(await resolveOpenSignal(intent)),
|
|
32
|
+
kind: 'scan-signal-open',
|
|
33
|
+
authorityHash: '',
|
|
34
|
+
maximumProfileDebit: 0xffffffffffffffffn,
|
|
35
|
+
describes: 'Canonical absence, direct authority, owner/controller identity and Profile funding remain valid; refetch and recreate if changed.',
|
|
36
|
+
};
|
|
37
|
+
const addresses = openSignalAddresses(guard);
|
|
38
|
+
const [game, raw] = await Promise.all([
|
|
39
|
+
readFreshGameForCharacterRegistration(ctx),
|
|
40
|
+
readContextRawAccounts(ctx, addresses),
|
|
41
|
+
]);
|
|
42
|
+
const { profileDebit, authorityHash } = await validateOpenSignal(guard, new Map(addresses.map((a, n) => [a, raw[n]])));
|
|
43
|
+
const summary = `Create an Empty sequence-zero signal for Fleet ${fleet}. Profile ${intent.profile} funds ${profileDebit} lamports of signal rent while retaining its storage reserve; transaction fees are separate. No detection or funding transfer is implicit. Restricted-key least privilege is unqualified; legacy SCAN bit 38 is not established as sufficient. Permission acceptance remains chain-authoritative: simulate before signing. The observed debit ceiling is rechecked before signing, not an on-chain spending cap.`;
|
|
44
|
+
return createPlan({
|
|
45
|
+
kind: 'scanning.open-signal',
|
|
46
|
+
summary,
|
|
47
|
+
preconditions: [
|
|
48
|
+
{
|
|
49
|
+
kind: 'game-account',
|
|
50
|
+
address: game.address,
|
|
51
|
+
describes: 'The configured Game remains valid; unrelated definitions may change.',
|
|
52
|
+
},
|
|
53
|
+
{ ...guard, authorityHash, maximumProfileDebit: profileDebit },
|
|
54
|
+
],
|
|
55
|
+
steps: [
|
|
56
|
+
{
|
|
57
|
+
instruction: openSignalInstruction(guard),
|
|
58
|
+
signers: [intent.authority],
|
|
59
|
+
describes: summary,
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
import { resolveDetect, } from '../../internal/planning/scan-detect.js';
|
|
65
|
+
/** Plans one signal detection for an existing Empty signal and directly owned Idle Fleet.
|
|
66
|
+
* Reads fresh prerequisites without signing. Restricted-key sufficiency, cooldown
|
|
67
|
+
* rejection and final gameplay outcomes remain chain-authoritative; use simulatePlan.
|
|
68
|
+
* No automatic opening, deposits, loading, undocking or resolution occurs.
|
|
69
|
+
* @example
|
|
70
|
+
* ```ts
|
|
71
|
+
* declare const ctx: SageContext, fleet: Address, options: PlanDetectSignalOptions;
|
|
72
|
+
* const plan = await planDetectSignal(ctx, fleet, options);
|
|
73
|
+
* console.log(plan.describe());
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export async function planDetectSignal(ctx, fleet, options) {
|
|
77
|
+
const resolved = await resolveDetect(ctx, fleet, options);
|
|
78
|
+
const guard = resolved.guard;
|
|
79
|
+
const description = `Detect a signal using pattern ${options.patternId}, focus ${options.focus}, consuming ${resolved.costDescription}. Restricted-key acceptance and final outcomes remain chain-authoritative; simulate before signing.`;
|
|
80
|
+
return createPlan({
|
|
81
|
+
kind: 'scan-detect',
|
|
82
|
+
summary: description,
|
|
83
|
+
steps: [
|
|
84
|
+
{
|
|
85
|
+
instruction: resolved.instruction,
|
|
86
|
+
describes: description,
|
|
87
|
+
signers: [guard.authority],
|
|
88
|
+
},
|
|
89
|
+
],
|
|
90
|
+
preconditions: [guard],
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
import { resolveScanCompletion, } from '../../internal/planning/scan-completion.js';
|
|
94
|
+
import { completionAuthorized, } from '../../internal/planning/scan-completion-guard.js';
|
|
95
|
+
async function completion(ctx, fleet, operation, options) {
|
|
96
|
+
const { guard, instruction } = await resolveScanCompletion(ctx, fleet, operation, options);
|
|
97
|
+
const effects = {
|
|
98
|
+
resolve: 'Reveal a PendingEntropy attempt as Contact or NoContact. Entropy availability, the revealed result and any XP remain chain-authoritative.',
|
|
99
|
+
recover: 'Recover this Contact and record its Recovered receipt. Nominal cargo may be clipped to available capacity; accepted cargo and actual XP remain chain-authoritative.',
|
|
100
|
+
acknowledge: 'Clear this terminal receipt to Empty without closing the funded signal. The current Fleet account is included for abandoned-receipt cooldown handling.',
|
|
101
|
+
abandon: 'Abandon this unexpired Contact without recovering its cargo. Clearing the Abandoned receipt requires a separate acknowledgement.',
|
|
102
|
+
expire: 'Expire this overdue Contact without recovering its cargo. Clearing the Expired receipt requires a separate acknowledgement.',
|
|
103
|
+
'forfeit-entropy': 'Forfeit this PendingEntropy attempt after its reveal deadline and record NoContact. Clearing the receipt requires a separate acknowledgement.',
|
|
104
|
+
};
|
|
105
|
+
const summary = `${effects[operation]} Signal ${guard.signal}, sequence ${guard.expectedSequence}. No movement, funding, automatic follow-up or retry is included. Permission acceptance remains chain-authoritative; simulate before signing.`;
|
|
106
|
+
return createPlan({
|
|
107
|
+
kind: `scanning.${operation}`,
|
|
108
|
+
summary,
|
|
109
|
+
steps: [
|
|
110
|
+
{
|
|
111
|
+
instruction,
|
|
112
|
+
signers: completionAuthorized(operation) ? [guard.authority] : [],
|
|
113
|
+
describes: summary,
|
|
114
|
+
},
|
|
115
|
+
],
|
|
116
|
+
preconditions: [guard],
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
/** Resolve one PendingEntropy signal using its committed policy and regional loot configuration. Requires current Character XP accounts; no gameplay authority is needed.
|
|
120
|
+
* @example
|
|
121
|
+
* ```ts
|
|
122
|
+
* declare const ctx: SageContext, fleet: Address;
|
|
123
|
+
* const plan = await planResolveSignal(ctx, fleet);
|
|
124
|
+
* console.log(plan.describe());
|
|
125
|
+
* ```
|
|
126
|
+
*/
|
|
127
|
+
export function planResolveSignal(ctx, fleet) {
|
|
128
|
+
return completion(ctx, fleet, 'resolve');
|
|
129
|
+
}
|
|
130
|
+
/** Recover one unexpired Contact with an Idle Fleet inside its stored radius. Cargo acceptance, clipping and XP remain chain-authoritative.
|
|
131
|
+
* @example
|
|
132
|
+
* ```ts
|
|
133
|
+
* declare const ctx: SageContext, fleet: Address, options: PlanScanCompletionOptions;
|
|
134
|
+
* const plan = await planRecoverSignal(ctx, fleet, options);
|
|
135
|
+
* console.log(plan.describe());
|
|
136
|
+
* ```
|
|
137
|
+
*/
|
|
138
|
+
export function planRecoverSignal(ctx, fleet, options) {
|
|
139
|
+
return completion(ctx, fleet, 'recover', options);
|
|
140
|
+
}
|
|
141
|
+
/** Clear one terminal receipt to Empty while retaining the funded signal. Explicitly includes the Fleet for current abandoned-receipt cooldown handling.
|
|
142
|
+
* @example
|
|
143
|
+
* ```ts
|
|
144
|
+
* declare const ctx: SageContext, fleet: Address, options: PlanScanCompletionOptions;
|
|
145
|
+
* const plan = await planAcknowledgeScanResult(ctx, fleet, options);
|
|
146
|
+
* console.log(plan.describe());
|
|
147
|
+
* ```
|
|
148
|
+
*/
|
|
149
|
+
export function planAcknowledgeScanResult(ctx, fleet, options) {
|
|
150
|
+
return completion(ctx, fleet, 'acknowledge', options);
|
|
151
|
+
}
|
|
152
|
+
/** Abandon one unexpired Contact without attempting recovery. Acknowledgement remains a separate explicit action.
|
|
153
|
+
* @example
|
|
154
|
+
* ```ts
|
|
155
|
+
* declare const ctx: SageContext, fleet: Address, options: PlanScanCompletionOptions;
|
|
156
|
+
* const plan = await planAbandonSignal(ctx, fleet, options);
|
|
157
|
+
* console.log(plan.describe());
|
|
158
|
+
* ```
|
|
159
|
+
*/
|
|
160
|
+
export function planAbandonSignal(ctx, fleet, options) {
|
|
161
|
+
return completion(ctx, fleet, 'abandon', options);
|
|
162
|
+
}
|
|
163
|
+
/** Expire one Contact after its deadline. No gameplay authority is needed; acknowledgement remains separate.
|
|
164
|
+
* @example
|
|
165
|
+
* ```ts
|
|
166
|
+
* declare const ctx: SageContext, fleet: Address;
|
|
167
|
+
* const plan = await planExpireSignal(ctx, fleet);
|
|
168
|
+
* console.log(plan.describe());
|
|
169
|
+
* ```
|
|
170
|
+
*/
|
|
171
|
+
export function planExpireSignal(ctx, fleet) {
|
|
172
|
+
return completion(ctx, fleet, 'expire');
|
|
173
|
+
}
|
|
174
|
+
/** Forfeit one PendingEntropy attempt after the supported reveal deadline. No gameplay authority is needed; acknowledgement remains separate.
|
|
175
|
+
* @example
|
|
176
|
+
* ```ts
|
|
177
|
+
* declare const ctx: SageContext, fleet: Address;
|
|
178
|
+
* const plan = await planForfeitScanSignalEntropy(ctx, fleet);
|
|
179
|
+
* console.log(plan.describe());
|
|
180
|
+
* ```
|
|
181
|
+
*/
|
|
182
|
+
export function planForfeitScanSignalEntropy(ctx, fleet) {
|
|
183
|
+
return completion(ctx, fleet, 'forfeit-entropy');
|
|
184
|
+
}
|
|
185
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/scanning/actions/index.ts"],"names":[],"mappings":"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"}
|