@aephia/atlas-kit 0.6.0-next.60 → 0.6.0-next.62

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 (43) hide show
  1. package/README.md +1 -1
  2. package/dist/internal/c4/scan-detection-codecs.d.ts +1 -1
  3. package/dist/internal/c4/scan-detection-codecs.d.ts.map +1 -1
  4. package/dist/internal/c4/scan-detection-codecs.js +1 -1
  5. package/dist/internal/c4/scan-detection-codecs.js.map +1 -1
  6. package/dist/internal/c4/scan-lifecycle.d.ts +28 -0
  7. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -1
  8. package/dist/internal/c4/scan-lifecycle.js +22 -0
  9. package/dist/internal/c4/scan-lifecycle.js.map +1 -1
  10. package/dist/internal/planning/fleet-respawn.d.ts +1 -1
  11. package/dist/internal/planning/scan-completion-guard.d.ts +43 -0
  12. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -0
  13. package/dist/internal/planning/scan-completion-guard.js +94 -0
  14. package/dist/internal/planning/scan-completion-guard.js.map +1 -0
  15. package/dist/internal/planning/scan-completion.d.ts +20 -0
  16. package/dist/internal/planning/scan-completion.d.ts.map +1 -0
  17. package/dist/internal/planning/scan-completion.js +220 -0
  18. package/dist/internal/planning/scan-completion.js.map +1 -0
  19. package/dist/internal/planning/xp-runtime.d.ts +1 -1
  20. package/dist/internal/planning/xp-runtime.d.ts.map +1 -1
  21. package/dist/internal/planning/xp-runtime.js +5 -3
  22. package/dist/internal/planning/xp-runtime.js.map +1 -1
  23. package/dist/planning/execution.d.ts.map +1 -1
  24. package/dist/planning/execution.js +4 -0
  25. package/dist/planning/execution.js.map +1 -1
  26. package/dist/planning/index.d.ts +3 -2
  27. package/dist/planning/index.d.ts.map +1 -1
  28. package/dist/planning/index.js +61 -5
  29. package/dist/planning/index.js.map +1 -1
  30. package/dist/scanning/actions/index.d.ts +64 -0
  31. package/dist/scanning/actions/index.d.ts.map +1 -1
  32. package/dist/scanning/actions/index.js +92 -0
  33. package/dist/scanning/actions/index.js.map +1 -1
  34. package/dist/scanning/index.d.ts +1 -0
  35. package/dist/scanning/index.d.ts.map +1 -1
  36. package/dist/scanning/index.js +1 -0
  37. package/dist/scanning/index.js.map +1 -1
  38. package/dist/scanning/odds.d.ts +111 -0
  39. package/dist/scanning/odds.d.ts.map +1 -0
  40. package/dist/scanning/odds.js +294 -0
  41. package/dist/scanning/odds.js.map +1 -0
  42. package/dist/scanning/signals.d.ts +2 -2
  43. package/package.json +1 -1
package/README.md CHANGED
@@ -85,7 +85,7 @@ const systems = await getStarSystems(ctx);
85
85
  | `@aephia/atlas-kit/mining/actions` | Address-only Fleet mining-start planning for selected Asteroid resources |
86
86
  | `@aephia/atlas-kit/planning` | Plans/PlanSequences, assembly, signer-free simulation, and execution |
87
87
  | `@aephia/atlas-kit/scanning` | Scan patterns, cooldowns, stats, and Character state |
88
- | `@aephia/atlas-kit/scanning/actions` | Explicit signal setup and Idle detection with fresh finite safeguards |
88
+ | `@aephia/atlas-kit/scanning/actions` | Explicit signal setup, detection, reveal, recovery and result handling |
89
89
  | `@aephia/atlas-kit/rewards` | ATLAS reward configuration, treasuries, and commitments |
90
90
  | `@aephia/atlas-kit/starbases` | Player-local Starbase state, facilities, and upgrades |
91
91
  | `@aephia/atlas-kit/starbases/actions` | Address-only StarbasePlayer registration planning |
@@ -1,3 +1,3 @@
1
1
  /** Narrow generated codecs for already-validated detection inputs and instruction data. */
2
- export { getDetectSignalInstructionDataEncoder, getFleetDecoder, getScanPatternPolicyDecoder, getScanSignalDecoder, getRegionTrackerDecoder, } from '@staratlas/dev-sage';
2
+ export { getDetectSignalInstructionDataEncoder, getFleetDecoder, getScanPatternPolicyDecoder, getScanSignalDecoder, getScanLootProfileDecoder, getRegionTrackerDecoder, } from '@staratlas/dev-sage';
3
3
  //# sourceMappingURL=scan-detection-codecs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scan-detection-codecs.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/scan-detection-codecs.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,OAAO,EACL,qCAAqC,EACrC,eAAe,EACf,2BAA2B,EAC3B,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"scan-detection-codecs.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/scan-detection-codecs.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,OAAO,EACL,qCAAqC,EACrC,eAAe,EACf,2BAA2B,EAC3B,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC"}
@@ -1,3 +1,3 @@
1
1
  /** Narrow generated codecs for already-validated detection inputs and instruction data. */
2
- export { getDetectSignalInstructionDataEncoder, getFleetDecoder, getScanPatternPolicyDecoder, getScanSignalDecoder, getRegionTrackerDecoder, } from '@staratlas/dev-sage';
2
+ export { getDetectSignalInstructionDataEncoder, getFleetDecoder, getScanPatternPolicyDecoder, getScanSignalDecoder, getScanLootProfileDecoder, getRegionTrackerDecoder, } from '@staratlas/dev-sage';
3
3
  //# sourceMappingURL=scan-detection-codecs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scan-detection-codecs.js","sourceRoot":"","sources":["../../../src/internal/c4/scan-detection-codecs.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,OAAO,EACL,qCAAqC,EACrC,eAAe,EACf,2BAA2B,EAC3B,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"scan-detection-codecs.js","sourceRoot":"","sources":["../../../src/internal/c4/scan-detection-codecs.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,OAAO,EACL,qCAAqC,EACrC,eAAe,EACf,2BAA2B,EAC3B,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC"}
@@ -30,11 +30,19 @@ declare function signalData(raw: RawAccount, v: ScanSignal): {
30
30
  sequence: bigint;
31
31
  status: "expired" | "empty" | "pending-entropy" | "contact" | "no-contact" | "recovered" | "abandoned";
32
32
  cooldownEndsAtUnixSeconds: bigint;
33
+ recoveryHistory: {
34
+ lastRegionId: number;
35
+ consecutiveRecoveries: number;
36
+ lastRecoveryAtUnixSeconds: bigint;
37
+ };
33
38
  attempt: {
34
39
  focus: "any" | "industrial" | "technology" | "tactical" | "exotic";
35
40
  regionId: number;
36
41
  patternId: number;
37
42
  policyRevision: number;
43
+ policyContentFingerprint: string;
44
+ lootProfileContentFingerprint: string;
45
+ eligibleLootRowIndexes: number[];
38
46
  lootProfileRevision: number;
39
47
  commitSlot: bigint;
40
48
  revealSlots: bigint[];
@@ -100,9 +108,12 @@ declare function policyData(raw: RawAccount, v: ScanPatternPolicy): {
100
108
  bump: number;
101
109
  game: import("@solana/kit").Address;
102
110
  patternId: number;
111
+ valueBudgetRaw: bigint;
112
+ allowedFocusCategories: ("any" | "industrial" | "technology" | "tactical" | "exotic")[];
103
113
  status: "active" | "draft" | "removed";
104
114
  strategy: "broad" | "focused" | "enhanced" | "deep" | "spatial";
105
115
  revision: number;
116
+ contentFingerprint: string;
106
117
  contactChanceBasisPoints: number;
107
118
  maximumRarity: "common" | "uncommon" | "rare" | "epic" | "legendary" | "anomalous";
108
119
  requiredResearchTagIds: number[];
@@ -124,6 +135,7 @@ declare function lootData(raw: RawAccount, v: ScanLootProfile): {
124
135
  regionId: number;
125
136
  status: "active" | "draft" | "removed";
126
137
  revision: number;
138
+ contentFingerprint: string;
127
139
  riskValueMultiplierBasisPoints: number;
128
140
  anchors: {
129
141
  x: {
@@ -137,6 +149,8 @@ declare function lootData(raw: RawAccount, v: ScanLootProfile): {
137
149
  }[];
138
150
  loot: {
139
151
  cargoId: number;
152
+ supportedPatternIds: number[];
153
+ valueUnits: number;
140
154
  baseQuantityRaw: bigint;
141
155
  rollWeight: number;
142
156
  rarity: "common" | "uncommon" | "rare" | "epic" | "legendary" | "anomalous";
@@ -154,11 +168,19 @@ export declare const scanSignalAccountDefinition: C4AccountAdapter<{
154
168
  sequence: bigint;
155
169
  status: "expired" | "empty" | "pending-entropy" | "contact" | "no-contact" | "recovered" | "abandoned";
156
170
  cooldownEndsAtUnixSeconds: bigint;
171
+ recoveryHistory: {
172
+ lastRegionId: number;
173
+ consecutiveRecoveries: number;
174
+ lastRecoveryAtUnixSeconds: bigint;
175
+ };
157
176
  attempt: {
158
177
  focus: "any" | "industrial" | "technology" | "tactical" | "exotic";
159
178
  regionId: number;
160
179
  patternId: number;
161
180
  policyRevision: number;
181
+ policyContentFingerprint: string;
182
+ lootProfileContentFingerprint: string;
183
+ eligibleLootRowIndexes: number[];
162
184
  lootProfileRevision: number;
163
185
  commitSlot: bigint;
164
186
  revealSlots: bigint[];
@@ -224,9 +246,12 @@ export declare const scanPatternPolicyAccountDefinition: C4AccountAdapter<{
224
246
  bump: number;
225
247
  game: import("@solana/kit").Address;
226
248
  patternId: number;
249
+ valueBudgetRaw: bigint;
250
+ allowedFocusCategories: ("any" | "industrial" | "technology" | "tactical" | "exotic")[];
227
251
  status: "active" | "draft" | "removed";
228
252
  strategy: "broad" | "focused" | "enhanced" | "deep" | "spatial";
229
253
  revision: number;
254
+ contentFingerprint: string;
230
255
  contactChanceBasisPoints: number;
231
256
  maximumRarity: "common" | "uncommon" | "rare" | "epic" | "legendary" | "anomalous";
232
257
  requiredResearchTagIds: number[];
@@ -248,6 +273,7 @@ export declare const scanLootProfileAccountDefinition: C4AccountAdapter<{
248
273
  regionId: number;
249
274
  status: "active" | "draft" | "removed";
250
275
  revision: number;
276
+ contentFingerprint: string;
251
277
  riskValueMultiplierBasisPoints: number;
252
278
  anchors: {
253
279
  x: {
@@ -261,6 +287,8 @@ export declare const scanLootProfileAccountDefinition: C4AccountAdapter<{
261
287
  }[];
262
288
  loot: {
263
289
  cargoId: number;
290
+ supportedPatternIds: number[];
291
+ valueUnits: number;
264
292
  baseQuantityRaw: bigint;
265
293
  rollWeight: number;
266
294
  rarity: "common" | "uncommon" | "rare" | "epic" | "legendary" | "anomalous";
@@ -1 +1 @@
1
- {"version":3,"file":"scan-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/scan-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAYL,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAS7B,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAOrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,MAAM,MAAM,eAAe,GACzB,YAAY,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;AACzD,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AA+BX,wBAAgB,eAAe,CAC7B,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE,UAAU,EACf,MAAM,EAAE,MAAM,GACb,KAAK,CAOP;AA6BD,iBAAS,KAAK,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE;;;;;;;;;EAEvC;AACD,iBAAS,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwEjD;AACD,iBAAS,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;EA0BxD;AACD,iBAAS,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBpD;AA6CD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKvC,CAAC;AACF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;EAK9C,CAAC;AACF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;EAK5C,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAC3D,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAClE,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC9D,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AACrD,2GAA2G;AAC3G,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,eAAe,EACrB,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,OAAO,GAAG,MAAM,8GAsCtB"}
1
+ {"version":3,"file":"scan-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/scan-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAYL,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAS7B,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAOrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,MAAM,MAAM,eAAe,GACzB,YAAY,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;AACzD,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AA+BX,wBAAgB,eAAe,CAC7B,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE,UAAU,EACf,MAAM,EAAE,MAAM,GACb,KAAK,CAOP;AA6BD,iBAAS,KAAK,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE;;;;;;;;;EAEvC;AASD,iBAAS,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgFjD;AACD,iBAAS,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;EA+BxD;AACD,iBAAS,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BpD;AA6CD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKvC,CAAC;AACF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;EAK9C,CAAC;AACF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK5C,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAC3D,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAClE,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC9D,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AACrD,2GAA2G;AAC3G,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,eAAe,EACrB,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,OAAO,GAAG,MAAM,8GAsCtB"}
@@ -58,6 +58,12 @@ function fixed(raw) {
58
58
  function point(values) {
59
59
  return { x: fixed(values[0]), y: fixed(values[1]) };
60
60
  }
61
+ function fingerprint(bytes) {
62
+ return bytes.map((byte) => byte.toString(16).padStart(2, '0')).join('');
63
+ }
64
+ function bitIndexes(mask, width) {
65
+ return Array.from({ length: width }, (_, index) => index).filter((index) => (mask & (1n << BigInt(index))) !== 0n);
66
+ }
61
67
  function signalData(raw, v) {
62
68
  const kind = 'scanSignal';
63
69
  const status = enumValue(kind, raw, signalStatuses, v.status);
@@ -71,6 +77,11 @@ function signalData(raw, v) {
71
77
  sequence: v.sequence,
72
78
  status,
73
79
  cooldownEndsAtUnixSeconds: v.cooldownUntil,
80
+ recoveryHistory: {
81
+ lastRegionId: v.lastRegion,
82
+ consecutiveRecoveries: v.consecutiveRecoveries,
83
+ lastRecoveryAtUnixSeconds: v.lastRecoveryAt,
84
+ },
74
85
  attempt: status === 'empty'
75
86
  ? null
76
87
  : {
@@ -78,6 +89,9 @@ function signalData(raw, v) {
78
89
  regionId: v.regionId,
79
90
  patternId: v.scanPatternId,
80
91
  policyRevision: v.policyRevision,
92
+ policyContentFingerprint: fingerprint(v.policyHash),
93
+ lootProfileContentFingerprint: fingerprint(v.profileHash),
94
+ eligibleLootRowIndexes: bitIndexes(v.eligibilityBitmap, 64),
81
95
  lootProfileRevision: v.profileRevision,
82
96
  commitSlot: v.commitSlot,
83
97
  revealSlots: [...v.revealSlots],
@@ -133,9 +147,14 @@ function policyData(raw, v) {
133
147
  bump: v.bump,
134
148
  game: v.gameId,
135
149
  patternId: v.scanPatternId,
150
+ valueBudgetRaw: v.valueBudget,
151
+ allowedFocusCategories: bitIndexes(BigInt(v.allowedFocusCategoryMask), 8)
152
+ .filter((index) => index !== 0)
153
+ .map((index) => enumValue(kind, raw, scanCategories, index)),
136
154
  status: enumValue(kind, raw, catalogStatuses, v.status),
137
155
  strategy: enumValue(kind, raw, strategies, v.strategy),
138
156
  revision: v.revision,
157
+ contentFingerprint: fingerprint(v.contentHash),
139
158
  contactChanceBasisPoints: v.contactChanceBps,
140
159
  maximumRarity: enumValue(kind, raw, rarities, v.maxRarity),
141
160
  requiredResearchTagIds: tags(kind, raw, v.requiredResearchTags, v.requiredResearchTagCount),
@@ -157,10 +176,13 @@ function lootData(raw, v) {
157
176
  regionId: v.regionId,
158
177
  status: enumValue(kind, raw, catalogStatuses, v.status),
159
178
  revision: v.revision,
179
+ contentFingerprint: fingerprint(v.contentHash),
160
180
  riskValueMultiplierBasisPoints: v.riskValueMultiplierBps,
161
181
  anchors: v.anchors.map(point),
162
182
  loot: v.lootRows.map((row) => ({
163
183
  cargoId: row.cargoId,
184
+ supportedPatternIds: bitIndexes(BigInt(row.patternMask), 8),
185
+ valueUnits: row.valueUnits,
164
186
  baseQuantityRaw: row.baseQuantity,
165
187
  rollWeight: row.rollWeight,
166
188
  rarity: enumValue(kind, raw, rarities, row.rarity),
@@ -1 +1 @@
1
- {"version":3,"file":"scan-lifecycle.js","sourceRoot":"","sources":["../../../src/internal/c4/scan-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scan-lifecycle.js","sourceRoot":"","sources":["../../../src/internal/c4/scan-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ export declare function resolveFleetRespawn(ctx: SageContext, input: FleetRespaw
15
15
  readonly maximumRecoveryFee: bigint;
16
16
  readonly maximumProfileDebit: bigint;
17
17
  }, commitment?: Commitment): Promise<{
18
- instruction: import("@solana/kit").Instruction<string, readonly (import("@solana/kit").AccountLookupMeta<string, string> | import("@solana/kit").AccountMeta<string>)[]>;
18
+ instruction: import("@solana/kit").Instruction<string, readonly (import("@solana/kit").AccountMeta<string> | import("@solana/kit").AccountLookupMeta<string, string>)[]>;
19
19
  recoveryFee: bigint;
20
20
  profileDebit: bigint;
21
21
  fleetHash: string;
@@ -0,0 +1,43 @@
1
+ import { AccountRole, type Address } from '@solana/kit';
2
+ import type { PlanPrecondition, PlanStep } from '../../planning/index.js';
3
+ export declare const scanCompletionDiscriminators: {
4
+ readonly resolve: readonly [96, 45, 125, 49, 46, 46, 76, 14];
5
+ readonly recover: readonly [130, 65, 225, 34, 252, 152, 114, 233];
6
+ readonly acknowledge: readonly [33, 250, 139, 239, 15, 76, 52, 246];
7
+ readonly abandon: readonly [59, 182, 211, 220, 65, 149, 43, 65];
8
+ readonly expire: readonly [14, 229, 95, 115, 71, 40, 175, 76];
9
+ readonly 'forfeit-entropy': readonly [69, 106, 188, 174, 25, 63, 240, 48];
10
+ };
11
+ export type ScanCompletionOperation = keyof typeof scanCompletionDiscriminators;
12
+ export interface ScanCompletionGuard {
13
+ readonly kind: 'scan-completion';
14
+ readonly operation: ScanCompletionOperation;
15
+ readonly address: Address;
16
+ readonly game: Address;
17
+ readonly signal: Address;
18
+ readonly profile: Address;
19
+ readonly character: Address;
20
+ readonly authority: Address;
21
+ readonly policy: Address;
22
+ readonly loot: Address;
23
+ readonly xpBudget: Address;
24
+ readonly xpConfig: Address;
25
+ readonly keyIndex: number;
26
+ readonly status: number;
27
+ readonly expectedSequence: bigint;
28
+ readonly configHash: string;
29
+ readonly describes: string;
30
+ readonly dataHash?: never;
31
+ }
32
+ export declare const SLOT_HASHES_ADDRESS: Address;
33
+ export declare function completionAuthorized(operation: ScanCompletionOperation): operation is "recover" | "acknowledge" | "abandon";
34
+ export declare function completionInstruction(g: ScanCompletionGuard): {
35
+ programAddress: Address<"C4SAgeKLgb3pTLWhVr6NRwWyYFuTR7ZeSXFrzoLwfMzF">;
36
+ accounts: {
37
+ address: Address;
38
+ role: AccountRole;
39
+ }[];
40
+ data: Uint8Array<ArrayBuffer>;
41
+ };
42
+ export declare function validateCompletionInstructions(steps: readonly PlanStep[], guards: readonly PlanPrecondition[]): void;
43
+ //# sourceMappingURL=scan-completion-guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan-completion-guard.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/scan-completion-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAK1E,eAAO,MAAM,4BAA4B;;;;;;;CAO/B,CAAC;AACX,MAAM,MAAM,uBAAuB,GAAG,MAAM,OAAO,4BAA4B,CAAC;AAChF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,uBAAuB,CAAC;IAC5C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;CAC3B;AACD,eAAO,MAAM,mBAAmB,EACmB,OAAO,CAAC;AAC3D,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,uBAAuB,sDAMtE;AACD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,mBAAmB;;;;;;;EA0D3D;AACD,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,MAAM,EAAE,SAAS,gBAAgB,EAAE,QAsCpC"}
@@ -0,0 +1,94 @@
1
+ import { AccountRole } from '@solana/kit';
2
+ import { SageSdkError } from '../../client/errors.js';
3
+ import { SAGE_PROGRAM_ADDRESS, PLAYER_PROFILE_PROGRAM_ADDRESS, } from '../c4/runtime-bindings.js';
4
+ export const scanCompletionDiscriminators = {
5
+ resolve: [96, 45, 125, 49, 46, 46, 76, 14],
6
+ recover: [130, 65, 225, 34, 252, 152, 114, 233],
7
+ acknowledge: [33, 250, 139, 239, 15, 76, 52, 246],
8
+ abandon: [59, 182, 211, 220, 65, 149, 43, 65],
9
+ expire: [14, 229, 95, 115, 71, 40, 175, 76],
10
+ 'forfeit-entropy': [69, 106, 188, 174, 25, 63, 240, 48],
11
+ };
12
+ export const SLOT_HASHES_ADDRESS = 'SysvarS1otHashes111111111111111111111111111';
13
+ export function completionAuthorized(operation) {
14
+ return (operation === 'recover' ||
15
+ operation === 'abandon' ||
16
+ operation === 'acknowledge');
17
+ }
18
+ export function completionInstruction(g) {
19
+ const r = AccountRole.READONLY, w = AccountRole.WRITABLE;
20
+ const validation = [
21
+ [g.authority, AccountRole.READONLY_SIGNER],
22
+ [g.profile, w],
23
+ [SAGE_PROGRAM_ADDRESS, r],
24
+ [PLAYER_PROFILE_PROGRAM_ADDRESS, r],
25
+ ];
26
+ const pairs = g.operation === 'resolve'
27
+ ? [
28
+ [g.game, r],
29
+ [g.signal, w],
30
+ [g.character, w],
31
+ [g.policy, r],
32
+ [g.loot, r],
33
+ [SLOT_HASHES_ADDRESS, r],
34
+ [g.address, r],
35
+ [g.xpBudget, w],
36
+ [g.xpConfig, r],
37
+ ]
38
+ : g.operation === 'recover'
39
+ ? [
40
+ ...validation,
41
+ [g.game, r],
42
+ [g.address, w],
43
+ [g.profile, r],
44
+ [g.character, r],
45
+ [g.character, w],
46
+ [g.signal, w],
47
+ [g.xpBudget, w],
48
+ [g.xpConfig, r],
49
+ ]
50
+ : completionAuthorized(g.operation)
51
+ ? [
52
+ ...validation,
53
+ [g.game, r],
54
+ [g.signal, w],
55
+ ...(g.operation === 'acknowledge'
56
+ ? [[g.address, w]]
57
+ : []),
58
+ ]
59
+ : [
60
+ [g.game, r],
61
+ [g.signal, w],
62
+ ];
63
+ const authorized = completionAuthorized(g.operation);
64
+ const data = new Uint8Array(authorized ? 18 : 16);
65
+ data.set(scanCompletionDiscriminators[g.operation]);
66
+ const view = new DataView(data.buffer);
67
+ if (authorized)
68
+ view.setUint16(8, g.keyIndex, true);
69
+ view.setBigUint64(authorized ? 10 : 8, g.expectedSequence, true);
70
+ return {
71
+ programAddress: SAGE_PROGRAM_ADDRESS,
72
+ accounts: pairs.map(([address, role]) => ({ address, role })),
73
+ data,
74
+ };
75
+ }
76
+ export function validateCompletionInstructions(steps, guards) {
77
+ const selected = guards.filter((g) => g.kind === 'scan-completion');
78
+ const matching = steps.filter((s) => s.instruction.programAddress === SAGE_PROGRAM_ADDRESS &&
79
+ Object.values(scanCompletionDiscriminators).some((d) => d.every((b, i) => s.instruction.data?.[i] === b)));
80
+ if (!selected.length && !matching.length)
81
+ return;
82
+ if (steps.length !== 1 || selected.length !== 1 || matching.length !== 1)
83
+ throw new SageSdkError('INCOMPATIBLE_PLAN_COMPOSITION', 'Signal completion requires one explicit lifecycle instruction and its current intent guard. Confirm each action separately, refresh the signal and recreate the next Plan.');
84
+ const g = selected[0], step = matching[0], ix = step.instruction, expected = completionInstruction(g);
85
+ if (ix.data?.length !== expected.data.length ||
86
+ expected.data.some((b, i) => ix.data?.[i] !== b) ||
87
+ ix.accounts?.length !== expected.accounts.length ||
88
+ expected.accounts.some((a, i) => ix.accounts?.[i]?.address !== a.address ||
89
+ ix.accounts?.[i]?.role !== a.role) ||
90
+ step.signers.length !== (completionAuthorized(g.operation) ? 1 : 0) ||
91
+ (completionAuthorized(g.operation) && step.signers[0] !== g.authority))
92
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'Signal completion does not match its persisted action, sequence or account intent. Refetch the signal and recreate the capability Plan before signing.');
93
+ }
94
+ //# sourceMappingURL=scan-completion-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan-completion-guard.js","sourceRoot":"","sources":["../../../src/internal/planning/scan-completion-guard.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { type Address } from '@solana/kit';
2
+ import type { SageContext, Commitment } from '../../client/contracts.js';
3
+ import type { PlanAuthorization } from './authorization-adapter.js';
4
+ import { type ScanCompletionGuard, type ScanCompletionOperation } from './scan-completion-guard.js';
5
+ export interface ScanCompletionOptions {
6
+ readonly authorization: PlanAuthorization;
7
+ }
8
+ export declare function resolveScanCompletion(ctx: SageContext, address: Address, operation: ScanCompletionOperation, options?: ScanCompletionOptions, commitment?: Commitment): Promise<{
9
+ guard: ScanCompletionGuard;
10
+ instruction: {
11
+ programAddress: Address<"C4SAgeKLgb3pTLWhVr6NRwWyYFuTR7ZeSXFrzoLwfMzF">;
12
+ accounts: {
13
+ address: Address;
14
+ role: import("@solana/kit").AccountRole;
15
+ }[];
16
+ data: Uint8Array<ArrayBuffer>;
17
+ };
18
+ }>;
19
+ export declare function revalidateScanCompletion(ctx: SageContext, guard: ScanCompletionGuard, commitment: Commitment): Promise<void>;
20
+ //# sourceMappingURL=scan-completion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan-completion.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/scan-completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAOtD,OAAO,KAAK,EACV,WAAW,EAEX,UAAU,EACX,MAAM,2BAA2B,CAAC;AAsBnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC7B,MAAM,4BAA4B,CAAC;AACpC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;CAC3C;AAoBD,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,uBAAuB,EAClC,OAAO,CAAC,EAAE,qBAAqB,EAC/B,UAAU,CAAC,EAAE,UAAU;;;;;;;;;;GAsPxB;AACD,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,iBAyBvB"}