@aephia/atlas-kit 0.6.0-next.55 → 0.6.0-next.57

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 (56) hide show
  1. package/dist/client/contracts.d.ts +1 -1
  2. package/dist/client/contracts.d.ts.map +1 -1
  3. package/dist/fleets/actions/index.d.ts +1 -0
  4. package/dist/fleets/actions/index.d.ts.map +1 -1
  5. package/dist/fleets/actions/index.js +1 -0
  6. package/dist/fleets/actions/index.js.map +1 -1
  7. package/dist/fleets/actions/respawn.d.ts +38 -0
  8. package/dist/fleets/actions/respawn.d.ts.map +1 -0
  9. package/dist/fleets/actions/respawn.js +122 -0
  10. package/dist/fleets/actions/respawn.js.map +1 -0
  11. package/dist/internal/c4/fleet-respawn.d.ts +19 -0
  12. package/dist/internal/c4/fleet-respawn.d.ts.map +1 -0
  13. package/dist/internal/c4/fleet-respawn.js +91 -0
  14. package/dist/internal/c4/fleet-respawn.js.map +1 -0
  15. package/dist/internal/c4/runtime-bindings.d.ts +1 -1
  16. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -1
  17. package/dist/internal/c4/runtime-bindings.js +1 -1
  18. package/dist/internal/c4/runtime-bindings.js.map +1 -1
  19. package/dist/internal/c4/scan-lifecycle.d.ts +278 -0
  20. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -0
  21. package/dist/internal/c4/scan-lifecycle.js +236 -0
  22. package/dist/internal/c4/scan-lifecycle.js.map +1 -0
  23. package/dist/internal/planning/fleet-respawn.d.ts +28 -0
  24. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -0
  25. package/dist/internal/planning/fleet-respawn.js +164 -0
  26. package/dist/internal/planning/fleet-respawn.js.map +1 -0
  27. package/dist/internal/planning/respawn-guards.d.ts +3 -0
  28. package/dist/internal/planning/respawn-guards.d.ts.map +1 -0
  29. package/dist/internal/planning/respawn-guards.js +41 -0
  30. package/dist/internal/planning/respawn-guards.js.map +1 -0
  31. package/dist/planning/assembly.d.ts.map +1 -1
  32. package/dist/planning/assembly.js +2 -0
  33. package/dist/planning/assembly.js.map +1 -1
  34. package/dist/planning/execution.d.ts.map +1 -1
  35. package/dist/planning/execution.js +26 -3
  36. package/dist/planning/execution.js.map +1 -1
  37. package/dist/planning/index.d.ts +17 -2
  38. package/dist/planning/index.d.ts.map +1 -1
  39. package/dist/planning/index.js +66 -3
  40. package/dist/planning/index.js.map +1 -1
  41. package/dist/registry/index.d.ts +4 -0
  42. package/dist/registry/index.d.ts.map +1 -1
  43. package/dist/registry/index.js.map +1 -1
  44. package/dist/registry/ships.d.ts +2 -2
  45. package/dist/registry/ships.d.ts.map +1 -1
  46. package/dist/registry/ships.js +2 -2
  47. package/dist/registry/ships.js.map +1 -1
  48. package/dist/scanning/index.d.ts +1 -0
  49. package/dist/scanning/index.d.ts.map +1 -1
  50. package/dist/scanning/index.js +1 -0
  51. package/dist/scanning/index.js.map +1 -1
  52. package/dist/scanning/signals.d.ts +121 -0
  53. package/dist/scanning/signals.d.ts.map +1 -0
  54. package/dist/scanning/signals.js +171 -0
  55. package/dist/scanning/signals.js.map +1 -0
  56. package/package.json +1 -1
@@ -0,0 +1,164 @@
1
+ import { isOffCurveAddress } from '@solana/kit';
2
+ import { SageSdkError } from '../../client/errors.js';
3
+ import { readContextRawAccounts } from '../../client/reconciliation.js';
4
+ import { requireGameAddress } from '../game-context.js';
5
+ import { readFreshGameShipAssemblyCatalog } from '../../registry/ships.js';
6
+ import { readFreshGameRuntimeVersion } from '../../registry/xp-runtime.js';
7
+ import { fleetAccountDefinition, deriveFleetAddress } from '../c4/fleet.js';
8
+ import { characterAccountDefinition, profileAccountDefinition, findCharacterPda, } from '../c4/identity.js';
9
+ import { starSystemAccountDefinition, deriveStarSystemAddress, } from '../c4/world.js';
10
+ import { starbasePlayerAccountDefinition, deriveStarbasePlayerAddress, } from '../c4/starbase.js';
11
+ import { deriveRegionTrackerAddress, regionTrackerAccountDefinition, } from '../c4/factions.js';
12
+ import { deriveFleetCrewBindingAddress, fleetCrewBindingAccountDefinition, matchesFleetCrewBindingIdentity, } from '../c4/fleet-crew-binding.js';
13
+ import { PROFILE_SCOPE, SAGE_SCOPE } from '../c4/profile-permissions.js';
14
+ import { deriveRespawnCurrencyCache, validateRespawnCurrencyCache, fleetRespawnSize, fleetRespawnInstruction, } from '../c4/fleet-respawn.js';
15
+ import { CLOCK_ADDRESS, RENT_ADDRESS, readClock, readRent, } from './faction-enrollment.js';
16
+ import { hashAccountState } from './account-state.js';
17
+ function fail(message) {
18
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', `${message} Refresh the Fleet and required recovery accounts, then recreate and inspect the recovery Plan before signing.`);
19
+ }
20
+ /** Fresh bounded eligibility and debit checks shared by planning and pre-sign validation. */
21
+ export async function resolveFleetRespawn(ctx, input, expected, commitment = 'confirmed') {
22
+ const intent = { ...input };
23
+ if (requireGameAddress(ctx) !== intent.game ||
24
+ !['start', 'complete'].includes(intent.phase) ||
25
+ !Number.isInteger(intent.keyIndex) ||
26
+ intent.keyIndex < 0 ||
27
+ intent.keyIndex > 65535 ||
28
+ isOffCurveAddress(intent.authority))
29
+ fail('Recovery requires this deployment’s Game and an on-curve direct Profile key with a valid key index.');
30
+ const [character, regionTracker, crewBinding, [currencyCache, cacheBump]] = await Promise.all([
31
+ findCharacterPda(intent.profile, intent.game),
32
+ deriveRegionTrackerAddress(intent.game),
33
+ deriveFleetCrewBindingAddress(intent.fleet),
34
+ deriveRespawnCurrencyCache(intent.game),
35
+ ]);
36
+ const starbasePlayer = await deriveStarbasePlayerAddress(intent.system, character);
37
+ const addresses = [
38
+ intent.fleet,
39
+ intent.profile,
40
+ intent.system,
41
+ CLOCK_ADDRESS,
42
+ RENT_ADDRESS,
43
+ ...(intent.phase === 'start'
44
+ ? [character, regionTracker, crewBinding, currencyCache]
45
+ : [starbasePlayer]),
46
+ ];
47
+ const rows = await readContextRawAccounts(ctx, addresses, {
48
+ commitment,
49
+ });
50
+ if (rows.length !== addresses.length ||
51
+ rows.some((raw, i) => raw && (raw.address !== addresses[i] || raw.executable)))
52
+ fail('Recovery account reads are incomplete or contain mismatched addresses or executable accounts.');
53
+ const accounts = new Map(addresses.map((address, i) => [address, rows[i]]));
54
+ const required = (address) => accounts.get(address) ?? fail(`Recovery account ${address} is missing.`);
55
+ const fleetRaw = required(intent.fleet), profileRaw = required(intent.profile);
56
+ const fleet = fleetAccountDefinition.decode(fleetRaw), profile = profileAccountDefinition.decode(profileRaw), system = starSystemAccountDefinition.decode(required(intent.system));
57
+ if (fleet.game !== intent.game ||
58
+ fleet.ownerProfile !== intent.profile ||
59
+ fleet.npcFactionId !== 0 ||
60
+ fleet.faction === 'unaligned' ||
61
+ (await deriveFleetAddress(fleet)) !== intent.fleet ||
62
+ fleet.subProfile !== '11111111111111111111111111111111')
63
+ fail('Recovery requires a canonical owned player Fleet without a SubProfile route.');
64
+ if (system.game !== intent.game ||
65
+ (await deriveStarSystemAddress(intent.game, system.systemId)) !==
66
+ intent.system ||
67
+ system.starbase?.level !== 'css' ||
68
+ system.starbase.owner !== fleet.faction)
69
+ fail('Recovery destination must be the canonical same-Game CSS matching the Fleet faction.');
70
+ const now = readClock(required(CLOCK_ADDRESS)), rent = readRent(required(RENT_ADDRESS));
71
+ if (fleet.hp <= 0)
72
+ fail('This recovery route requires a Fleet with positive hull health; use a separately supported destroyed-Fleet recovery route.');
73
+ if (intent.phase === 'start'
74
+ ? fleet.state.kind !== 'idle'
75
+ : fleet.state.kind !== 'respawn' ||
76
+ now < fleet.state.recoversAtUnixSeconds)
77
+ fail(intent.phase === 'start'
78
+ ? 'Recovery start requires a non-destroyed Idle Fleet.'
79
+ : 'Timed recovery completion requires a Respawn Fleet whose timer has elapsed according to chain time.');
80
+ const fleetHash = await hashAccountState(fleetRaw.owner, fleetRaw.data);
81
+ if (expected && fleetHash !== expected.fleetHash)
82
+ fail('The Fleet changed after this recovery Plan was prepared; its assets or recovery state may differ.');
83
+ let recoveryFee = 0n;
84
+ let selectedCrew;
85
+ if (intent.phase === 'start') {
86
+ const owner = characterAccountDefinition.decode(required(character));
87
+ if (owner.playerProfile !== intent.profile || owner.game !== intent.game)
88
+ fail('Recovery Character does not belong to the selected Profile and Game.');
89
+ const tracker = regionTrackerAccountDefinition.decode(required(regionTracker));
90
+ if (tracker.game !== intent.game)
91
+ fail('Recovery RegionTracker belongs to a different Game.');
92
+ validateRespawnCurrencyCache(required(currencyCache), intent.game, cacheBump);
93
+ const binding = accounts.get(crewBinding);
94
+ if (binding) {
95
+ if (!matchesFleetCrewBindingIdentity(fleetCrewBindingAccountDefinition.decode(binding), intent.fleet, intent.profile))
96
+ fail('Recovery CrewBinding belongs to a different Fleet or Profile.');
97
+ selectedCrew = crewBinding;
98
+ }
99
+ const { catalog, rawAccount } = await readFreshGameShipAssemblyCatalog(ctx, { commitment });
100
+ if (rawAccount.address !== intent.game ||
101
+ rawAccount.executable ||
102
+ rawAccount.slot < fleetRaw.slot)
103
+ fail('Recovery ship definitions are older than the selected Fleet or belong to a different Game.');
104
+ if (rawAccount.data[8] !== 2)
105
+ fail('Recovery start requires the supported current Game runtime.');
106
+ for (const held of fleet.fleetShips) {
107
+ const ship = catalog.rows.find((row) => row.id === held.shipId);
108
+ if (!ship)
109
+ fail(`Recovery hull definition ${held.shipId} is missing from the current Game.`);
110
+ recoveryFee += ship.stats.miscStats.recoveryFee * held.quantity;
111
+ }
112
+ if (owner.atlasRaw < recoveryFee)
113
+ fail(`The Character ATLAS vault cannot cover the ${recoveryFee} Floyd recovery fee. Deposit sufficient ATLAS explicitly before preparing recovery.`);
114
+ }
115
+ else {
116
+ if ((await readFreshGameRuntimeVersion(ctx, intent.game, {
117
+ commitment,
118
+ })) !== 2)
119
+ fail('Recovery completion requires the supported current Game runtime.');
120
+ const player = starbasePlayerAccountDefinition.decode(required(starbasePlayer));
121
+ if (player.character !== character ||
122
+ player.playerProfile !== intent.profile ||
123
+ player.system !== intent.system ||
124
+ player.faction !== fleet.faction)
125
+ fail('Recovery CSS StarbasePlayer has a different Profile, Character, System or faction.');
126
+ }
127
+ const targetRent = rent(fleetRespawnSize(fleetRaw, intent.phase, intent.system));
128
+ const profileDebit = targetRent > fleetRaw.lamports ? targetRent - fleetRaw.lamports : 0n;
129
+ if (expected &&
130
+ (profileDebit > expected.maximumProfileDebit ||
131
+ recoveryFee > expected.maximumRecoveryFee))
132
+ fail('Recovery fees or Profile rent debit now exceed the amounts approved by this Plan.');
133
+ if (profileRaw.lamports < rent(profileRaw.data.length) + profileDebit)
134
+ fail('The Profile cannot fund Fleet storage growth while preserving its own rent reserve. Fund the Profile or Fleet explicitly.');
135
+ const key = profile.keys[intent.keyIndex];
136
+ if (!key ||
137
+ key.address !== intent.authority ||
138
+ (key.expiresAtRaw >= 0n && key.expiresAtRaw < now))
139
+ fail('Recovery authority is not the selected current unexpired direct Profile key.');
140
+ const auth = key.scope === PROFILE_SCOPE && (key.permissionsRaw & 1n) !== 0n;
141
+ if (!auth &&
142
+ !(key.scope === SAGE_SCOPE && (key.permissionsRaw & (1n << 21n)) !== 0n))
143
+ fail('Recovery requires a direct Profile AUTH key or SAGE respawn permission.');
144
+ if (profileDebit > 0n && !auth && (key.permissionsRaw & (1n << 63n)) === 0n)
145
+ fail('Recovery storage growth requires Profile vault funding authority. Explicitly prefund the Fleet or choose an authorized drainSolVault key.');
146
+ return {
147
+ instruction: fleetRespawnInstruction(intent, {
148
+ character,
149
+ regionTracker,
150
+ currencyCache,
151
+ starbasePlayer,
152
+ ...(selectedCrew ? { crewBinding: selectedCrew } : {}),
153
+ }),
154
+ recoveryFee,
155
+ profileDebit,
156
+ fleetHash,
157
+ inventory: {
158
+ cargo: fleet.cargoHold.amounts,
159
+ ammunition: fleet.ammoBank,
160
+ fuel: fleet.fuelTank,
161
+ },
162
+ };
163
+ }
164
+ //# sourceMappingURL=fleet-respawn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fleet-respawn.js","sourceRoot":"","sources":["../../../src/internal/planning/fleet-respawn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAiC,MAAM,aAAa,CAAC;AAE/E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,GAC/B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,6BAA6B,EAC7B,iCAAiC,EACjC,+BAA+B,GAChC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,aAAa,EACb,YAAY,EACZ,SAAS,EACT,QAAQ,GACT,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAUtD,SAAS,IAAI,CAAC,OAAe;IAC3B,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,GAAG,OAAO,gHAAgH,CAC3H,CAAC;AACJ,CAAC;AACD,6FAA6F;AAC7F,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAgB,EAChB,KAAyB,EACzB,QAIC,EACD,aAAyB,WAAW;IAEpC,MAAM,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IAC5B,IACE,kBAAkB,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI;QACvC,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;QAC7C,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;QAClC,MAAM,CAAC,QAAQ,GAAG,CAAC;QACnB,MAAM,CAAC,QAAQ,GAAG,KAAK;QACvB,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC;QAEnC,IAAI,CACF,qGAAqG,CACtG,CAAC;IACJ,MAAM,CAAC,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,GACvE,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC;QAC7C,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC;QACvC,6BAA6B,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3C,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC;KACxC,CAAC,CAAC;IACL,MAAM,cAAc,GAAG,MAAM,2BAA2B,CACtD,MAAM,CAAC,MAAM,EACb,SAAS,CACV,CAAC;IACF,MAAM,SAAS,GAAG;QAChB,MAAM,CAAC,KAAK;QACZ,MAAM,CAAC,OAAO;QACd,MAAM,CAAC,MAAM;QACb,aAAa;QACb,YAAY;QACZ,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO;YAC1B,CAAC,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,CAAC;YACxD,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;KACtB,CAAC;IACF,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,SAAS,EAAE;QACxD,UAAU;KACX,CAAC,CAAC;IACH,IACE,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM;QAChC,IAAI,CAAC,IAAI,CACP,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CACpE;QAED,IAAI,CACF,+FAA+F,CAChG,CAAC;IACJ,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,CAAC,OAAgB,EAAc,EAAE,CAChD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,oBAAoB,OAAO,cAAc,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EACrC,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,EACnD,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC,UAAU,CAAC,EACrD,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACvE,IACE,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAC1B,KAAK,CAAC,YAAY,KAAK,MAAM,CAAC,OAAO;QACrC,KAAK,CAAC,YAAY,KAAK,CAAC;QACxB,KAAK,CAAC,OAAO,KAAK,WAAW;QAC7B,CAAC,MAAM,kBAAkB,CAAC,KAAK,CAAC,CAAC,KAAK,MAAM,CAAC,KAAK;QAClD,KAAK,CAAC,UAAU,KAAK,kCAAkC;QAEvD,IAAI,CACF,8EAA8E,CAC/E,CAAC;IACJ,IACE,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAC3B,CAAC,MAAM,uBAAuB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM;QACf,MAAM,CAAC,QAAQ,EAAE,KAAK,KAAK,KAAK;QAChC,MAAM,CAAC,QAAQ,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO;QAEvC,IAAI,CACF,sFAAsF,CACvF,CAAC;IACJ,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,EAC5C,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;IAC1C,IAAI,KAAK,CAAC,EAAE,IAAI,CAAC;QACf,IAAI,CACF,4HAA4H,CAC7H,CAAC;IACJ,IACE,MAAM,CAAC,KAAK,KAAK,OAAO;QACtB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM;QAC7B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;YAC9B,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,qBAAqB;QAE3C,IAAI,CACF,MAAM,CAAC,KAAK,KAAK,OAAO;YACtB,CAAC,CAAC,qDAAqD;YACvD,CAAC,CAAC,qGAAqG,CAC1G,CAAC;IACJ,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IACxE,IAAI,QAAQ,IAAI,SAAS,KAAK,QAAQ,CAAC,SAAS;QAC9C,IAAI,CACF,mGAAmG,CACpG,CAAC;IACJ,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,YAAiC,CAAC;IACtC,IAAI,MAAM,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,0BAA0B,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QACrE,IAAI,KAAK,CAAC,aAAa,KAAK,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;YACtE,IAAI,CACF,sEAAsE,CACvE,CAAC;QACJ,MAAM,OAAO,GAAG,8BAA8B,CAAC,MAAM,CACnD,QAAQ,CAAC,aAAa,CAAC,CACxB,CAAC;QACF,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;YAC9B,IAAI,CAAC,qDAAqD,CAAC,CAAC;QAC9D,4BAA4B,CAC1B,QAAQ,CAAC,aAAa,CAAC,EACvB,MAAM,CAAC,IAAI,EACX,SAAS,CACV,CAAC;QACF,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,IACE,CAAC,+BAA+B,CAC9B,iCAAiC,CAAC,MAAM,CAAC,OAAO,CAAC,EACjD,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,OAAO,CACf;gBAED,IAAI,CAAC,+DAA+D,CAAC,CAAC;YACxE,YAAY,GAAG,WAAW,CAAC;QAC7B,CAAC;QACD,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,gCAAgC,CACpE,GAAG,EACH,EAAE,UAAU,EAAE,CACf,CAAC;QACF,IACE,UAAU,CAAC,OAAO,KAAK,MAAM,CAAC,IAAI;YAClC,UAAU,CAAC,UAAU;YACrB,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI;YAE/B,IAAI,CACF,4FAA4F,CAC7F,CAAC;QACJ,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,6DAA6D,CAAC,CAAC;QACtE,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;YAChE,IAAI,CAAC,IAAI;gBACP,IAAI,CACF,4BAA4B,IAAI,CAAC,MAAM,oCAAoC,CAC5E,CAAC;YACJ,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC;QAClE,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,GAAG,WAAW;YAC9B,IAAI,CACF,8CAA8C,WAAW,qFAAqF,CAC/I,CAAC;IACN,CAAC;SAAM,CAAC;QACN,IACE,CAAC,MAAM,2BAA2B,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE;YACnD,UAAU;SACX,CAAC,CAAC,KAAK,CAAC;YAET,IAAI,CAAC,kEAAkE,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,+BAA+B,CAAC,MAAM,CACnD,QAAQ,CAAC,cAAc,CAAC,CACzB,CAAC;QACF,IACE,MAAM,CAAC,SAAS,KAAK,SAAS;YAC9B,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,OAAO;YACvC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAC/B,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;YAEhC,IAAI,CACF,oFAAoF,CACrF,CAAC;IACN,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CACrB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CACxD,CAAC;IACF,MAAM,YAAY,GAChB,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,IACE,QAAQ;QACR,CAAC,YAAY,GAAG,QAAQ,CAAC,mBAAmB;YAC1C,WAAW,GAAG,QAAQ,CAAC,kBAAkB,CAAC;QAE5C,IAAI,CACF,mFAAmF,CACpF,CAAC;IACJ,IAAI,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,YAAY;QACnE,IAAI,CACF,2HAA2H,CAC5H,CAAC;IACJ,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1C,IACE,CAAC,GAAG;QACJ,GAAG,CAAC,OAAO,KAAK,MAAM,CAAC,SAAS;QAChC,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,IAAI,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC;QAElD,IAAI,CACF,8EAA8E,CAC/E,CAAC;IACJ,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,KAAK,aAAa,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;IAC7E,IACE,CAAC,IAAI;QACL,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,UAAU,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;QAExE,IAAI,CACF,yEAAyE,CAC1E,CAAC;IACJ,IAAI,YAAY,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE;QACzE,IAAI,CACF,2IAA2I,CAC5I,CAAC;IACJ,OAAO;QACL,WAAW,EAAE,uBAAuB,CAAC,MAAM,EAAE;YAC3C,SAAS;YACT,aAAa;YACb,aAAa;YACb,cAAc;YACd,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC;QACF,WAAW;QACX,YAAY;QACZ,SAAS;QACT,SAAS,EAAE;YACT,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO;YAC9B,UAAU,EAAE,KAAK,CAAC,QAAQ;YAC1B,IAAI,EAAE,KAAK,CAAC,QAAQ;SACrB;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { PlanPrecondition, PlanStep } from '../../planning/index.js';
2
+ export declare function validateRespawnInstructions(steps: readonly PlanStep[], guards: readonly PlanPrecondition[]): void;
3
+ //# sourceMappingURL=respawn-guards.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"respawn-guards.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/respawn-guards.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAO1E,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAClC,IAAI,CA8CN"}
@@ -0,0 +1,41 @@
1
+ import { AccountRole } from '@solana/kit';
2
+ import { InvalidActionInputError } from '../../client/errors.js';
3
+ import { IDLE_TO_RESPAWN_DISCRIMINATOR, RESPAWN_TO_DOCKED_DISCRIMINATOR, SAGE_PROGRAM_ADDRESS, } from '../c4/runtime-bindings.js';
4
+ export function validateRespawnInstructions(steps, guards) {
5
+ const selected = guards.filter((g) => g.kind === 'fleet-respawn');
6
+ const recovery = steps.filter(({ instruction: i }) => i.programAddress === SAGE_PROGRAM_ADDRESS &&
7
+ [IDLE_TO_RESPAWN_DISCRIMINATOR, RESPAWN_TO_DOCKED_DISCRIMINATOR].some((d) => d.every((v, n) => i.data?.[n] === v)));
8
+ if (!selected.length && !recovery.length)
9
+ return;
10
+ const bad = () => {
11
+ throw new InvalidActionInputError('respawn', undefined, 'one standalone recovery instruction with its matching safeguard', 'Recreate the recovery Plan. Start and timed completion are separate transactions; do not combine recovery with other actions.');
12
+ };
13
+ if (steps.length !== 1 || recovery.length !== 1 || selected.length !== 1)
14
+ bad();
15
+ const guard = selected[0];
16
+ const step = recovery[0];
17
+ const i = step.instruction;
18
+ const start = guard.phase === 'start';
19
+ const d = start
20
+ ? IDLE_TO_RESPAWN_DISCRIMINATOR
21
+ : RESPAWN_TO_DOCKED_DISCRIMINATOR;
22
+ const accounts = i.accounts;
23
+ if (!i.data ||
24
+ i.data.length !== 10 ||
25
+ !d.every((v, n) => i.data[n] === v) ||
26
+ i.data[8] + i.data[9] * 256 !== guard.keyIndex ||
27
+ accounts?.length !== (start ? 11 : 8) ||
28
+ step.signers.length !== 1 ||
29
+ step.signers[0] !== guard.authority)
30
+ bad();
31
+ for (const [n, address, role] of [
32
+ [0, guard.authority, AccountRole.READONLY_SIGNER],
33
+ [1, guard.profile, AccountRole.WRITABLE],
34
+ [start ? 5 : 4, guard.address, AccountRole.WRITABLE],
35
+ [start ? 8 : 5, guard.game, AccountRole.READONLY],
36
+ [6, guard.system, AccountRole.READONLY],
37
+ ])
38
+ if (accounts[n]?.address !== address || accounts[n]?.role !== role)
39
+ bad();
40
+ }
41
+ //# sourceMappingURL=respawn-guards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"respawn-guards.js","sourceRoot":"","sources":["../../../src/internal/planning/respawn-guards.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"assembly.d.ts","sourceRoot":"","sources":["../../src/planning/assembly.ts"],"names":[],"mappings":"AAOA,OAAO,EAgBL,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,gCAAgC,EACtC,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGxE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAevC;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACjC;AAgCD,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,CAIlE;AAaD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,cAAc,EACtB,eAAe,GAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAA4B,GAChE,uBAAuB,CAmFzB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CA8ChE;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,IAAI,CACV,uBAAuB,EACvB,kBAAkB,GAAG,0BAA0B,CAChD,GACA,IAAI,CAqBN;AASD;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,WAAW,GAAG,gCAAgC,CAAC,CAKzD;AAED,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,uBAAuB,GACvC,OAAO,CAAC,WAAW,GAAG,gCAAgC,CAAC,CAqCzD"}
1
+ {"version":3,"file":"assembly.d.ts","sourceRoot":"","sources":["../../src/planning/assembly.ts"],"names":[],"mappings":"AAQA,OAAO,EAgBL,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,gCAAgC,EACtC,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGxE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAevC;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACjC;AAgCD,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,CAIlE;AAaD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,cAAc,EACtB,eAAe,GAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAA4B,GAChE,uBAAuB,CAmFzB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CA+ChE;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,IAAI,CACV,uBAAuB,EACvB,kBAAkB,GAAG,0BAA0B,CAChD,GACA,IAAI,CAqBN;AASD;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,WAAW,GAAG,gCAAgC,CAAC,CAKzD;AAED,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,uBAAuB,GACvC,OAAO,CAAC,WAAW,GAAG,gCAAgC,CAAC,CAqCzD"}
@@ -1,3 +1,4 @@
1
+ import { validateRespawnInstructions } from '../internal/planning/respawn-guards.js';
1
2
  import { validateFleetAttackInstructions } from '../internal/planning/fleet-attack-xp.js';
2
3
  import { validateMovementXpInstructions } from '../internal/planning/movement-xp-guard.js';
3
4
  import { validateStarbaseSystemInstructions } from '../internal/planning/starbase-system-guard.js';
@@ -98,6 +99,7 @@ export function validatePlan(plan) {
98
99
  validateRuntimeInstructions(validatedPlan.steps, validatedPlan.preconditions);
99
100
  validateFleetAttackInstructions(validatedPlan.steps, validatedPlan.preconditions);
100
101
  validateArrivalInstructions(validatedPlan.steps, validatedPlan.preconditions);
102
+ validateRespawnInstructions(validatedPlan.steps, validatedPlan.preconditions);
101
103
  validateMovementXpInstructions(validatedPlan.steps, validatedPlan.preconditions);
102
104
  validateMiningStopInstructions(validatedPlan.steps, validatedPlan.preconditions);
103
105
  for (let index = 0; index < validatedPlan.steps.length; index += 1) {
@@ -1 +1 @@
1
- {"version":3,"file":"assembly.js","sourceRoot":"","sources":["../../src/planning/assembly.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assembly.js","sourceRoot":"","sources":["../../src/planning/assembly.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/planning/execution.ts"],"names":[],"mappings":"AAqDA,OAAO,EAcL,KAAK,UAAU,EACf,KAAK,SAAS,EAOd,KAAK,iBAAiB,EACvB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAEV,WAAW,EAEZ,MAAM,wBAAwB,CAAC;AAMhC,OAAO,KAAK,EAAE,IAAI,EAAoB,MAAM,YAAY,CAAC;AAgBzD;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAChD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACjC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAC5B,QAAQ,CAAC;IACP,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAAC,GACF,QAAQ,CAAC;IACP,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,YAAY,GAAG,kBAAkB,GAAG,cAAc,CAAC;IAC9D,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAAC,CAAC;AAEP;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,GAAG,sBAAsB,GAAG,oBAAoB,CAAC;AAYhF,2EAA2E;AAC3E,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,UAAU,EAAE,YAAY,GAAG,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AA6qCD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,mBAAmB,CAAC,CAE9B;AAED,mFAAmF;AACnF,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,kBAAkB,EAC3B,SAAS,CAAC,EAAE,sBAAsB,GACjC,OAAO,CAAC,mBAAmB,CAAC,CA0G9B"}
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/planning/execution.ts"],"names":[],"mappings":"AAuDA,OAAO,EAcL,KAAK,UAAU,EACf,KAAK,SAAS,EAOd,KAAK,iBAAiB,EACvB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAEV,WAAW,EAEZ,MAAM,wBAAwB,CAAC;AAMhC,OAAO,KAAK,EAAE,IAAI,EAAoB,MAAM,YAAY,CAAC;AAgBzD;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAChD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACjC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAC5B,QAAQ,CAAC;IACP,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAAC,GACF,QAAQ,CAAC;IACP,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,YAAY,GAAG,kBAAkB,GAAG,cAAc,CAAC;IAC9D,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC,CAAC,CAAC;AAEP;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,GAAG,sBAAsB,GAAG,oBAAoB,CAAC;AAYhF,2EAA2E;AAC3E,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,UAAU,EAAE,YAAY,GAAG,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AAotCD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,mBAAmB,CAAC,CAE9B;AAED,mFAAmF;AACnF,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,kBAAkB,EAC3B,SAAS,CAAC,EAAE,sBAAsB,GACjC,OAAO,CAAC,mBAAmB,CAAC,CA2G9B"}
@@ -1,3 +1,4 @@
1
+ import { resolveFleetRespawn } from '../internal/planning/fleet-respawn.js';
1
2
  import { validateFleetAttackActors } from '../internal/planning/fleet-attack-xp.js';
2
3
  import { RENT_ADDRESS, readRent, } from '../internal/planning/faction-enrollment.js';
3
4
  import { getBase64Decoder, } from '@solana/kit';
@@ -331,11 +332,32 @@ function checkRegistrationFunding(registrations, fee) {
331
332
  throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'Character registration leaves the funder below its empty-System-account rent minimum. Leave zero or a rent-exempt balance after storage and fees, then recreate the Plan.', { address: registration.funder });
332
333
  }
333
334
  }
334
- async function checkPreconditions(context, allPreconditions, commitment) {
335
+ async function checkPreconditions(context, allPreconditions, steps, commitment) {
335
336
  for (const guard of allPreconditions) {
336
337
  if (guard.kind === 'fleet-attack')
337
338
  await validateFleetAttackActors(context, guard);
338
339
  }
340
+ for (const guard of allPreconditions) {
341
+ if (guard.kind !== 'fleet-respawn')
342
+ continue;
343
+ try {
344
+ const current = await resolveFleetRespawn(context, { ...guard, fleet: guard.address }, guard, commitment);
345
+ const planned = steps[0].instruction;
346
+ const fresh = current.instruction;
347
+ if (planned.programAddress !== fresh.programAddress ||
348
+ planned.data?.length !== fresh.data?.length ||
349
+ fresh.data?.some((v, i) => planned.data?.[i] !== v) ||
350
+ planned.accounts?.length !== fresh.accounts?.length ||
351
+ fresh.accounts?.some((a, i) => planned.accounts?.[i]?.address !== a.address ||
352
+ planned.accounts?.[i]?.role !== a.role))
353
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'Recovery instruction accounts changed. Recreate and inspect the recovery Plan before signing.');
354
+ }
355
+ catch (error) {
356
+ throw new ActionPreconditionFailedError(guard, undefined, error instanceof SageSdkError
357
+ ? error.message
358
+ : 'Recovery prerequisites could not be validated. Refresh the Fleet and recreate the Plan.');
359
+ }
360
+ }
339
361
  const checkedXp = new Set();
340
362
  const freshGameVersions = new Map();
341
363
  const registrationFunding = [];
@@ -379,7 +401,8 @@ async function checkPreconditions(context, allPreconditions, commitment) {
379
401
  const preconditions = allPreconditions.filter((guard) => !isRuntimeGuard(guard) &&
380
402
  guard.kind !== 'fleet-attack' &&
381
403
  guard.kind !== 'fleet-arrival' &&
382
- guard.kind !== 'character-registration');
404
+ guard.kind !== 'character-registration' &&
405
+ guard.kind !== 'fleet-respawn');
383
406
  const fleetCreationAccounts = new Map();
384
407
  const fleetAssemblyAccounts = new Map();
385
408
  const importFundingAccounts = new Map();
@@ -879,7 +902,7 @@ export async function executePlanWithLifecycle(context, plan, options, lifecycle
879
902
  : -1;
880
903
  return index(a) - index(b);
881
904
  });
882
- const registrationFunding = await checkPreconditions(context, ordered, validated.commitment);
905
+ const registrationFunding = await checkPreconditions(context, ordered, plan.steps, validated.commitment);
883
906
  const transaction = await assemblePlan(context, plan, {
884
907
  feePayer: validated.feePayer.address,
885
908
  commitment: validated.commitment,
@@ -1 +1 @@
1
- {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/planning/execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/planning/execution.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,21 @@ export interface PlanStep {
58
58
  * ```
59
59
  */
60
60
  export type PlanPrecondition = RuntimeGuard | FleetAttackGuard | FleetArrivalGuard | {
61
+ /** Standalone player-initiated recovery with observed ATLAS and Profile funding ceilings. */
62
+ readonly kind: 'fleet-respawn';
63
+ readonly address: Address;
64
+ readonly game: Address;
65
+ readonly profile: Address;
66
+ readonly authority: Address;
67
+ readonly system: Address;
68
+ readonly keyIndex: number;
69
+ readonly phase: 'start' | 'complete';
70
+ readonly fleetHash: string;
71
+ readonly maximumRecoveryFee: bigint;
72
+ readonly maximumProfileDebit: bigint;
73
+ readonly describes: string;
74
+ readonly dataHash?: never;
75
+ } | {
61
76
  /** Canonical movement Character; earned XP accrual may change but other state remains bound. */
62
77
  readonly kind: 'movement-character';
63
78
  readonly address: Address;
@@ -256,12 +271,12 @@ type WirePrecondition<T = Exclude<PlanPrecondition, RuntimeGuard | FleetArrivalG
256
271
  * ```ts
257
272
  * declare const plan: Plan;
258
273
  * const wire: PlanJson = plan.toJSON();
259
- * console.log(wire.v); // 18
274
+ * console.log(wire.v);
260
275
  * const restored = planFromJSON(wire);
261
276
  * ```
262
277
  */
263
278
  export interface PlanJson {
264
- readonly v: 19;
279
+ readonly v: 20;
265
280
  readonly kind: string;
266
281
  readonly summary: string;
267
282
  readonly steps: readonly {