@aephia/atlas-kit 0.6.0-next.134 → 0.6.0-next.135
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/dist/cargo/actions/deposit.d.ts.map +1 -1
- package/dist/cargo/actions/deposit.js +15 -15
- package/dist/cargo/actions/deposit.js.map +1 -1
- package/dist/cargo/actions/index.d.ts.map +1 -1
- package/dist/cargo/actions/index.js +20 -15
- package/dist/cargo/actions/index.js.map +1 -1
- package/dist/internal/c4/discriminators.d.ts +1 -0
- package/dist/internal/c4/discriminators.d.ts.map +1 -1
- package/dist/internal/c4/discriminators.js +3 -1
- package/dist/internal/c4/discriminators.js.map +1 -1
- package/dist/internal/c4/fleet-storage.d.ts +36 -0
- package/dist/internal/c4/fleet-storage.d.ts.map +1 -0
- package/dist/internal/c4/fleet-storage.js +72 -0
- package/dist/internal/c4/fleet-storage.js.map +1 -0
- package/dist/internal/planning/cargo-storage-actions.d.ts +8 -0
- package/dist/internal/planning/cargo-storage-actions.d.ts.map +1 -0
- package/dist/internal/planning/cargo-storage-actions.js +97 -0
- package/dist/internal/planning/cargo-storage-actions.js.map +1 -0
- package/dist/internal/planning/mining-storage-actions.d.ts +11 -0
- package/dist/internal/planning/mining-storage-actions.d.ts.map +1 -0
- package/dist/internal/planning/mining-storage-actions.js +66 -0
- package/dist/internal/planning/mining-storage-actions.js.map +1 -0
- package/dist/internal/planning/profile-storage-funding-guard.d.ts +17 -10
- package/dist/internal/planning/profile-storage-funding-guard.d.ts.map +1 -1
- package/dist/internal/planning/profile-storage-funding-guard.js +32 -64
- package/dist/internal/planning/profile-storage-funding-guard.js.map +1 -1
- package/dist/internal/planning/profile-storage-funding.d.ts +1 -13
- package/dist/internal/planning/profile-storage-funding.d.ts.map +1 -1
- package/dist/internal/planning/profile-storage-funding.js +1 -13
- package/dist/internal/planning/profile-storage-funding.js.map +1 -1
- package/dist/internal/planning/storage-action-readers.d.ts +10 -0
- package/dist/internal/planning/storage-action-readers.d.ts.map +1 -0
- package/dist/internal/planning/storage-action-readers.js +25 -0
- package/dist/internal/planning/storage-action-readers.js.map +1 -0
- package/dist/internal/planning/storage-actions.d.ts +81 -0
- package/dist/internal/planning/storage-actions.d.ts.map +1 -0
- package/dist/internal/planning/storage-actions.js +177 -0
- package/dist/internal/planning/storage-actions.js.map +1 -0
- package/dist/mining/actions/index.d.ts.map +1 -1
- package/dist/mining/actions/index.js +71 -25
- package/dist/mining/actions/index.js.map +1 -1
- package/dist/planning/execution.d.ts.map +1 -1
- package/dist/planning/execution.js +11 -10
- package/dist/planning/execution.js.map +1 -1
- package/dist/planning/index.d.ts +2 -12
- package/dist/planning/index.d.ts.map +1 -1
- package/dist/planning/index.js +2 -2
- package/dist/planning/index.js.map +1 -1
- package/dist/planning/plan-construction.js +1 -1
- package/package.json +1 -1
- package/dist/internal/planning/cargo-storage.d.ts +0 -71
- package/dist/internal/planning/cargo-storage.d.ts.map +0 -1
- package/dist/internal/planning/cargo-storage.js +0 -274
- package/dist/internal/planning/cargo-storage.js.map +0 -1
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import { isWritableRole } from '@solana/kit';
|
|
2
|
+
import { SageSdkError } from '../../client/errors.js';
|
|
3
|
+
import { CARGO_LINE_BYTES, storageInstruction, } from './profile-storage-funding-guard.js';
|
|
4
|
+
import { checkProfileStorageFunding, profileStorageFundingGuard, } from './profile-storage-funding.js';
|
|
5
|
+
import { RENT_ADDRESS, readRent } from './rent.js';
|
|
6
|
+
export const NONE = new Map();
|
|
7
|
+
function fail(address, message) {
|
|
8
|
+
throw new SageSdkError('ACTION_PRECONDITION_FAILED', message, { address });
|
|
9
|
+
}
|
|
10
|
+
export function totals(entries) {
|
|
11
|
+
const sums = new Map();
|
|
12
|
+
for (const [cargoId, amount] of entries)
|
|
13
|
+
if (amount !== undefined && amount > 0n)
|
|
14
|
+
sums.set(cargoId, (sums.get(cargoId) ?? 0n) + amount);
|
|
15
|
+
return sums;
|
|
16
|
+
}
|
|
17
|
+
export function present(accounts, address) {
|
|
18
|
+
const raw = accounts.get(address);
|
|
19
|
+
if (!raw || raw.executable)
|
|
20
|
+
fail(address, `Account ${address} is missing or executable, so the action's storage funding cannot be checked. Refresh it and replan the action.`);
|
|
21
|
+
return raw;
|
|
22
|
+
}
|
|
23
|
+
/** Evaluates actions in order, as the program runs them: each resized account
|
|
24
|
+
* changes by its state change plus a line per cargo id a pod gains and minus a
|
|
25
|
+
* line its consumption empties, and after each action every resized account
|
|
26
|
+
* holds exactly the rent minimum of its new size. Later actions therefore see
|
|
27
|
+
* the state, storage and surplus earlier ones left. */
|
|
28
|
+
export function evaluateStorage(actions, accounts) {
|
|
29
|
+
const rent = readRent(present(accounts, RENT_ADDRESS));
|
|
30
|
+
const state = new Map();
|
|
31
|
+
return actions.map((action) => {
|
|
32
|
+
let deficit = 0n;
|
|
33
|
+
let excess = 0n;
|
|
34
|
+
for (const account of action.accounts) {
|
|
35
|
+
let current = state.get(account.address);
|
|
36
|
+
if (!current) {
|
|
37
|
+
const raw = present(accounts, account.address);
|
|
38
|
+
current = { lamports: raw.lamports, length: raw.data.length };
|
|
39
|
+
state.set(account.address, current);
|
|
40
|
+
}
|
|
41
|
+
if (account.state) {
|
|
42
|
+
current.length +=
|
|
43
|
+
account.state.after - (current.state ?? account.state.fresh);
|
|
44
|
+
current.state = account.state.after;
|
|
45
|
+
}
|
|
46
|
+
let lines = 0;
|
|
47
|
+
if (account.held !== undefined) {
|
|
48
|
+
current.lines ??= new Map(account.held);
|
|
49
|
+
const { added } = account;
|
|
50
|
+
const removed = account.removed ?? NONE;
|
|
51
|
+
for (const cargoId of new Set([...added.keys(), ...removed.keys()])) {
|
|
52
|
+
const held = current.lines.get(cargoId);
|
|
53
|
+
const after = (held ?? 0n) +
|
|
54
|
+
(added.get(cargoId) ?? 0n) -
|
|
55
|
+
(removed.get(cargoId) ?? 0n);
|
|
56
|
+
if (held === undefined && after > 0n)
|
|
57
|
+
lines += 1;
|
|
58
|
+
else if (held !== undefined && after <= 0n)
|
|
59
|
+
lines -= 1;
|
|
60
|
+
// Only consumption can empty a line; an added line stays positive.
|
|
61
|
+
if (after > 0n)
|
|
62
|
+
current.lines.set(cargoId, after);
|
|
63
|
+
else
|
|
64
|
+
current.lines.delete(cargoId);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
current.length += lines * CARGO_LINE_BYTES;
|
|
68
|
+
// The program leaves a zero-lamport account unchanged.
|
|
69
|
+
if (current.lamports === 0n)
|
|
70
|
+
continue;
|
|
71
|
+
const minimum = rent(current.length);
|
|
72
|
+
if (current.lamports < minimum)
|
|
73
|
+
deficit += minimum - current.lamports;
|
|
74
|
+
else
|
|
75
|
+
excess += current.lamports - minimum;
|
|
76
|
+
current.lamports = minimum;
|
|
77
|
+
}
|
|
78
|
+
const profileDebit = action.settlement === 'each'
|
|
79
|
+
? deficit
|
|
80
|
+
: deficit > excess
|
|
81
|
+
? deficit - excess
|
|
82
|
+
: 0n;
|
|
83
|
+
return { profileDebit };
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
/** The Profile-funded steps of a Plan, in order. */
|
|
87
|
+
export function storageSteps(steps) {
|
|
88
|
+
return steps.flatMap((step) => {
|
|
89
|
+
const known = storageInstruction(step.instruction);
|
|
90
|
+
return known ? [{ ...step, kind: known.kind }] : [];
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
/** Rechecks every Profile-funded action's storage before signing. Each
|
|
94
|
+
* action's effect is rederived from its instruction bytes and the fresh
|
|
95
|
+
* accounts, never taken from its guard, and the actions are evaluated in order
|
|
96
|
+
* so each meets the state, storage and surplus the earlier ones left. Each
|
|
97
|
+
* debit must stay within its guard's ceiling and pass the key and balance
|
|
98
|
+
* checks. A Fleet whose state an earlier, unevaluated action writes is refused,
|
|
99
|
+
* since its state change could not be measured. */
|
|
100
|
+
export function validateStorageFunding(steps, guards, accounts, readAction) {
|
|
101
|
+
const results = new Map();
|
|
102
|
+
const remaining = [...guards];
|
|
103
|
+
const unevaluated = new Set();
|
|
104
|
+
const bound = [];
|
|
105
|
+
for (const { instruction } of steps) {
|
|
106
|
+
const known = storageInstruction(instruction);
|
|
107
|
+
if (!known) {
|
|
108
|
+
for (const meta of instruction.accounts ?? [])
|
|
109
|
+
if (isWritableRole(meta.role))
|
|
110
|
+
unevaluated.add(meta.address);
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
const action = readAction(instruction);
|
|
114
|
+
for (const account of action.accounts)
|
|
115
|
+
if (account.state && unevaluated.has(account.address))
|
|
116
|
+
fail(account.address, `An earlier action in this Plan changes Fleet ${account.address} before an action whose storage depends on the Fleet's state, so that storage cannot be bounded. Execute the earlier action as its own Plan, refresh the Fleet and replan.`);
|
|
117
|
+
if (!known.guarded) {
|
|
118
|
+
bound.push({ guard: undefined, action });
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
// Plan validation already bound each guarded instruction to exactly one
|
|
122
|
+
// guard.
|
|
123
|
+
const index = remaining.findIndex((guard) => guard.profile === action.profile &&
|
|
124
|
+
guard.authority === action.authority &&
|
|
125
|
+
guard.address === action.accounts[0].address);
|
|
126
|
+
const [guard] = remaining.splice(index, 1);
|
|
127
|
+
bound.push({ guard: guard, action });
|
|
128
|
+
}
|
|
129
|
+
const ordered = evaluateStorage(bound.map(({ action }) => action), accounts);
|
|
130
|
+
bound.forEach(({ guard, action }, index) => {
|
|
131
|
+
const { profileDebit } = ordered[index];
|
|
132
|
+
if (!guard) {
|
|
133
|
+
// A subwarp stop only shrinks a rent-exact Fleet. Anything else
|
|
134
|
+
// would be a draw no guard bounds.
|
|
135
|
+
if (profileDebit > 0n)
|
|
136
|
+
fail(action.accounts[0].address, `Stopping Fleet ${action.accounts[0].address}'s subwarp now needs ${profileDebit} Profile lamports for storage, which this Plan does not bound. Settle the subwarp as its own Plan, refresh the Fleet and replan.`);
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
try {
|
|
140
|
+
results.set(guard, {
|
|
141
|
+
funding: checkProfileStorageFunding({
|
|
142
|
+
profileRaw: present(accounts, guard.profile),
|
|
143
|
+
rentRaw: present(accounts, RENT_ADDRESS),
|
|
144
|
+
authority: action.authority,
|
|
145
|
+
keyIndex: action.keyIndex,
|
|
146
|
+
profileDebit,
|
|
147
|
+
action: 'action',
|
|
148
|
+
maximumProfileDebit: guard.maximumProfileDebit,
|
|
149
|
+
}),
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
catch (error) {
|
|
153
|
+
results.set(guard, { error });
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
return results;
|
|
157
|
+
}
|
|
158
|
+
/** Plans one action's storage funding from the same derivation execution
|
|
159
|
+
* repeats: its guard and the Plan summary sentence. */
|
|
160
|
+
export function planStorageFunding(input) {
|
|
161
|
+
const { action } = input;
|
|
162
|
+
const evaluated = evaluateStorage([...(input.preceding ?? []), action], input.accounts).at(-1);
|
|
163
|
+
return profileStorageFundingGuard({
|
|
164
|
+
address: action.accounts[0].address,
|
|
165
|
+
profile: action.profile,
|
|
166
|
+
authority: action.authority,
|
|
167
|
+
funding: checkProfileStorageFunding({
|
|
168
|
+
profileRaw: present(input.accounts, action.profile),
|
|
169
|
+
rentRaw: present(input.accounts, RENT_ADDRESS),
|
|
170
|
+
authority: action.authority,
|
|
171
|
+
keyIndex: action.keyIndex,
|
|
172
|
+
profileDebit: evaluated.profileDebit,
|
|
173
|
+
action: input.label,
|
|
174
|
+
}),
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
//# sourceMappingURL=storage-actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage-actions.js","sourceRoot":"","sources":["../../../src/internal/planning/storage-actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mining/actions/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,OAAO,EAEP,WAAW,EACZ,MAAM,2BAA2B,CAAC;AAGnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAuBtD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAOxE,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mining/actions/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,OAAO,EAEP,WAAW,EACZ,MAAM,2BAA2B,CAAC;AAGnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAuBtD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAOxE,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAQpD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC,UAAU,aAAc,SAAQ,IAAI,CAAC,wBAAwB,EAAE,cAAc,CAAC;IAC5E,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC5C,MAAM,IAAI,OAAO,CAAC;CACnB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAC;IAC3C,wFAAwF;IACxF,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC;AA+DD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,IAAI,CAAC,CA2Nf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;CAC3C;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,IAAI,CAAC,CAkJf"}
|
|
@@ -12,6 +12,9 @@ import { deriveFleetCrewBindingAddress, fleetCrewBindingAccountDefinition, match
|
|
|
12
12
|
import { requireGameAddress } from '../../internal/game-context.js';
|
|
13
13
|
import { adaptStartMiningAsteroidInstruction, adaptStopMiningAsteroidInstruction, validatePlanAuthorization, } from '../../internal/planning/authorization-adapter.js';
|
|
14
14
|
import { buildPlannerPlan } from '../../planning/plan-construction.js';
|
|
15
|
+
import { planStorageFunding } from '../../internal/planning/storage-actions.js';
|
|
16
|
+
import { readMiningStorageAction, subwarpSettlementAction, } from '../../internal/planning/mining-storage-actions.js';
|
|
17
|
+
import { RENT_ADDRESS } from '../../internal/planning/rent.js';
|
|
15
18
|
function fail(address, message) {
|
|
16
19
|
throw new SageSdkError('ACTION_PRECONDITION_FAILED', message, { address });
|
|
17
20
|
}
|
|
@@ -99,6 +102,8 @@ export async function planFleetStartMining(ctx, fleet, options) {
|
|
|
99
102
|
asteroid.system.address,
|
|
100
103
|
character,
|
|
101
104
|
regionTracker,
|
|
105
|
+
authorization.profile,
|
|
106
|
+
RENT_ADDRESS,
|
|
102
107
|
];
|
|
103
108
|
const values = await readContextRawAccounts(ctx, addresses);
|
|
104
109
|
const labels = [
|
|
@@ -107,9 +112,11 @@ export async function planFleetStartMining(ctx, fleet, options) {
|
|
|
107
112
|
'Star System',
|
|
108
113
|
'Character',
|
|
109
114
|
'RegionTracker',
|
|
115
|
+
'Profile',
|
|
116
|
+
'Rent sysvar',
|
|
110
117
|
];
|
|
111
118
|
const accounts = addresses.map((address, index) => required(values[index], address, labels[index]));
|
|
112
|
-
const [fleetAccount, asteroidAccount, systemAccount, characterAccount, trackerAccount,] = accounts;
|
|
119
|
+
const [fleetAccount, asteroidAccount, systemAccount, characterAccount, trackerAccount, profileAccount, rentAccount,] = accounts;
|
|
113
120
|
const current = fleetAccountDefinition.decode(fleetAccount);
|
|
114
121
|
const currentCoordinate = current.state.kind === 'idle'
|
|
115
122
|
? current.location
|
|
@@ -174,26 +181,47 @@ export async function planFleetStartMining(ctx, fleet, options) {
|
|
|
174
181
|
: fleet.state.kind === 'warp'
|
|
175
182
|
? ' Completed warp can refresh directly into mining; an unfinished warp still rejects.'
|
|
176
183
|
: '';
|
|
184
|
+
const instruction = adaptStartMiningAsteroidInstruction({
|
|
185
|
+
authorization,
|
|
186
|
+
fleet: fleet.address,
|
|
187
|
+
character,
|
|
188
|
+
starSystem: systemAccount.address,
|
|
189
|
+
regionTracker,
|
|
190
|
+
asteroid: asteroid.address,
|
|
191
|
+
game,
|
|
192
|
+
resources: resourceIds,
|
|
193
|
+
});
|
|
194
|
+
// Mining state grows the Fleet; the program funds that storage from the
|
|
195
|
+
// Profile vault with the signing key.
|
|
196
|
+
const storage = (() => {
|
|
197
|
+
const accounts = new Map([
|
|
198
|
+
[fleet.address, fleetAccount],
|
|
199
|
+
[authorization.profile, profileAccount],
|
|
200
|
+
[RENT_ADDRESS, rentAccount],
|
|
201
|
+
]);
|
|
202
|
+
const action = readMiningStorageAction(instruction, accounts);
|
|
203
|
+
return planStorageFunding({
|
|
204
|
+
action,
|
|
205
|
+
accounts,
|
|
206
|
+
label: 'mining start',
|
|
207
|
+
// A subwarp-arrived Fleet is settled first, which returns it to Idle
|
|
208
|
+
// at its rent minimum before the mining state grows it.
|
|
209
|
+
preceding: fleet.state.kind === 'subwarp'
|
|
210
|
+
? [subwarpSettlementAction(action, fleetAccount)]
|
|
211
|
+
: [],
|
|
212
|
+
});
|
|
213
|
+
})();
|
|
177
214
|
return buildPlannerPlan({
|
|
178
215
|
kind: 'fleet.start-mining',
|
|
179
|
-
summary: describes
|
|
216
|
+
summary: `${describes} ${storage.disclosure}`,
|
|
180
217
|
steps: [
|
|
181
218
|
{
|
|
182
219
|
describes: `${describes}${settlementWarning} Simulate before execution; arrival, permissions, range, fuel, and mining eligibility remain chain-authoritative.`,
|
|
183
220
|
signers: [authorization.authority],
|
|
184
|
-
instruction
|
|
185
|
-
authorization,
|
|
186
|
-
fleet: fleet.address,
|
|
187
|
-
character,
|
|
188
|
-
starSystem: systemAccount.address,
|
|
189
|
-
regionTracker,
|
|
190
|
-
asteroid: asteroid.address,
|
|
191
|
-
game,
|
|
192
|
-
resources: resourceIds,
|
|
193
|
-
}),
|
|
221
|
+
instruction,
|
|
194
222
|
},
|
|
195
223
|
],
|
|
196
|
-
preconditions: [],
|
|
224
|
+
preconditions: [storage.guard],
|
|
197
225
|
});
|
|
198
226
|
}
|
|
199
227
|
/** Plans one inert stop-mining instruction using the Asteroid in Fleet state.
|
|
@@ -249,10 +277,12 @@ export async function planFleetStopMining(ctx, fleet, options) {
|
|
|
249
277
|
deriveFleetCrewBindingAddress(fleet.address),
|
|
250
278
|
deriveRegionTrackerAddress(game),
|
|
251
279
|
]);
|
|
252
|
-
const [currentFleet, crewAccount, regionAccount] = await readContextRawAccounts(ctx, [
|
|
280
|
+
const [currentFleet, crewAccount, regionAccount, profileAccount, rentAccount,] = await readContextRawAccounts(ctx, [
|
|
253
281
|
intent.address,
|
|
254
282
|
crewBinding,
|
|
255
283
|
regionTracker,
|
|
284
|
+
authorization.profile,
|
|
285
|
+
RENT_ADDRESS,
|
|
256
286
|
]);
|
|
257
287
|
let matches = false;
|
|
258
288
|
try {
|
|
@@ -281,26 +311,42 @@ export async function planFleetStopMining(ctx, fleet, options) {
|
|
|
281
311
|
character,
|
|
282
312
|
profile: options.authorization.profile,
|
|
283
313
|
});
|
|
314
|
+
const instruction = adaptStopMiningAsteroidInstruction({
|
|
315
|
+
...xp.accounts,
|
|
316
|
+
authorization,
|
|
317
|
+
character,
|
|
318
|
+
fleet: intent.address,
|
|
319
|
+
game,
|
|
320
|
+
asteroid,
|
|
321
|
+
...(crewAccount === undefined ? {} : { crewBinding }),
|
|
322
|
+
...(regionAccount === undefined ? {} : { regionTracker }),
|
|
323
|
+
});
|
|
324
|
+
// Leaving mining shrinks the Fleet, but each mined resource can land a new
|
|
325
|
+
// cargo-hold line; the program funds any net growth from the Profile vault.
|
|
326
|
+
const storage = (() => {
|
|
327
|
+
const accounts = new Map([
|
|
328
|
+
[intent.address, currentFleet],
|
|
329
|
+
[authorization.profile, profileAccount],
|
|
330
|
+
[RENT_ADDRESS, rentAccount],
|
|
331
|
+
]);
|
|
332
|
+
return planStorageFunding({
|
|
333
|
+
action: readMiningStorageAction(instruction, accounts),
|
|
334
|
+
accounts,
|
|
335
|
+
label: 'mining stop',
|
|
336
|
+
});
|
|
337
|
+
})();
|
|
284
338
|
return buildPlannerPlan({
|
|
285
339
|
kind: 'fleet.stop-mining',
|
|
286
|
-
summary: `Stop mining for Fleet ${fleet.name}
|
|
340
|
+
summary: `Stop mining for Fleet ${fleet.name}. ${storage.disclosure}`,
|
|
287
341
|
steps: [
|
|
288
342
|
{
|
|
289
343
|
describes: `Stop mining for Fleet ${fleet.name} at Asteroid ${asteroid}, returning it to idle. Fresh mining state is checked before signing; exit fuel can still be consumed, including if the Fleet becomes idle in the read-to-chain race. Simulate before execution; permission and mining results remain chain-authoritative.`,
|
|
290
344
|
signers: [authorization.authority],
|
|
291
|
-
instruction
|
|
292
|
-
...xp.accounts,
|
|
293
|
-
authorization,
|
|
294
|
-
character,
|
|
295
|
-
fleet: intent.address,
|
|
296
|
-
game,
|
|
297
|
-
asteroid,
|
|
298
|
-
...(crewAccount === undefined ? {} : { crewBinding }),
|
|
299
|
-
...(regionAccount === undefined ? {} : { regionTracker }),
|
|
300
|
-
}),
|
|
345
|
+
instruction,
|
|
301
346
|
},
|
|
302
347
|
],
|
|
303
348
|
preconditions: [
|
|
349
|
+
storage.guard,
|
|
304
350
|
{
|
|
305
351
|
kind: 'xp-runtime',
|
|
306
352
|
address: game,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mining/actions/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mining/actions/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/planning/execution.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/planning/execution.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,7 +25,8 @@ import { resolveFleetShipAssembly, validateFleetShipAssembly, } from '../interna
|
|
|
25
25
|
import { resolveFleetCreation, validateFleetCreation, } from '../internal/planning/fleet-creation.js';
|
|
26
26
|
import { validateTokenMint } from '../internal/planning/token-mint.js';
|
|
27
27
|
import { resolveResearchUnlock, validateResearchUnlock, } from '../internal/planning/research-unlock.js';
|
|
28
|
-
import {
|
|
28
|
+
import { storageSteps, validateStorageFunding, } from '../internal/planning/storage-actions.js';
|
|
29
|
+
import { readStorageAction, storageActionAccounts, } from '../internal/planning/storage-action-readers.js';
|
|
29
30
|
import { decodeGameCargoConfigurationRows } from '../internal/c4/game.js';
|
|
30
31
|
import { CLOCK_ADDRESS } from '../internal/planning/faction-enrollment.js';
|
|
31
32
|
import { decodeGameResearchUnlockRules } from '../internal/c4/game.js';
|
|
@@ -519,13 +520,13 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
|
|
|
519
520
|
])
|
|
520
521
|
requiredAddresses.add(address);
|
|
521
522
|
}
|
|
522
|
-
//
|
|
523
|
-
//
|
|
524
|
-
const
|
|
525
|
-
for (const step of
|
|
523
|
+
// Profile storage funding is rederived from each instruction and the fresh
|
|
524
|
+
// accounts it resizes; a deposit's cargo id comes from its source mint.
|
|
525
|
+
const storageActionSteps = storageSteps(steps);
|
|
526
|
+
for (const step of storageActionSteps) {
|
|
526
527
|
for (const address of [
|
|
527
528
|
step.instruction.accounts[1].address,
|
|
528
|
-
...
|
|
529
|
+
...storageActionAccounts(step.kind, step.instruction),
|
|
529
530
|
RENT_ADDRESS,
|
|
530
531
|
])
|
|
531
532
|
requiredAddresses.add(address);
|
|
@@ -580,7 +581,7 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
|
|
|
580
581
|
const gameDecodes = new Map();
|
|
581
582
|
const profileFunding = new Map();
|
|
582
583
|
const fundedTargets = new Set();
|
|
583
|
-
let
|
|
584
|
+
let storageResults;
|
|
584
585
|
// One decoded cargo row set per Game, shared by cargo-definition guards and
|
|
585
586
|
// a deposit's cargo lookup.
|
|
586
587
|
const cargoRowsByGame = new Map();
|
|
@@ -684,11 +685,11 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
|
|
|
684
685
|
}
|
|
685
686
|
if (precondition.kind === 'profile-storage-funding') {
|
|
686
687
|
try {
|
|
687
|
-
|
|
688
|
+
storageResults ??= validateStorageFunding(steps, preconditions.filter((guard) => guard.kind === 'profile-storage-funding'), byAddress, (instruction) => readStorageAction(instruction, byAddress,
|
|
688
689
|
// A deposit Plan's cargo-definition guards already required the
|
|
689
690
|
// Game in this batch.
|
|
690
|
-
(mint) => cargoRows(byAddress.get(requireGameAddress(context))).rows.find((row) => row.mint === mint)?.id);
|
|
691
|
-
const result =
|
|
691
|
+
(mint) => cargoRows(byAddress.get(requireGameAddress(context))).rows.find((row) => row.mint === mint)?.id));
|
|
692
|
+
const result = storageResults.get(precondition);
|
|
692
693
|
if ('error' in result)
|
|
693
694
|
throw result.error;
|
|
694
695
|
const { funding } = result;
|