@swarm-tips/client 0.2.9 → 0.2.11
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/SBOM.spdx.json +7 -91
- package/dist/contracts/generated/coordination_game.d.ts +1 -1
- package/dist/contracts/generated/shillbot.d.ts +8 -9
- package/dist/contracts/idl/coordination_game.json +1 -1
- package/dist/contracts/idl/shillbot.json +8 -9
- package/dist/shillbot/api.js +4 -4
- package/package.json +1 -1
package/SBOM.spdx.json
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
"spdxVersion": "SPDX-2.3",
|
|
3
3
|
"dataLicense": "CC0-1.0",
|
|
4
4
|
"SPDXID": "SPDXRef-DOCUMENT",
|
|
5
|
-
"name": "@swarm-tips/client-0.2.
|
|
6
|
-
"documentNamespace": "https://swarm.tips/sbom/client/0.2.
|
|
5
|
+
"name": "@swarm-tips/client-0.2.11",
|
|
6
|
+
"documentNamespace": "https://swarm.tips/sbom/client/0.2.11",
|
|
7
7
|
"creationInfo": {
|
|
8
|
-
"created": "2026-10-
|
|
8
|
+
"created": "2026-10-14T05:01:22.104Z",
|
|
9
9
|
"creators": [
|
|
10
10
|
"Tool: sdk/client/scripts/generate-sbom.mjs",
|
|
11
11
|
"Organization: Swarm Tips"
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
{
|
|
16
16
|
"name": "@swarm-tips/client",
|
|
17
17
|
"SPDXID": "SPDXRef-Package",
|
|
18
|
-
"versionInfo": "0.2.
|
|
19
|
-
"downloadLocation": "https://www.npmjs.com/package/@swarm-tips/client/v/0.2.
|
|
18
|
+
"versionInfo": "0.2.11",
|
|
19
|
+
"downloadLocation": "https://www.npmjs.com/package/@swarm-tips/client/v/0.2.11",
|
|
20
20
|
"filesAnalyzed": false,
|
|
21
21
|
"licenseConcluded": "MIT",
|
|
22
22
|
"licenseDeclared": "MIT"
|
|
@@ -282,15 +282,6 @@
|
|
|
282
282
|
"licenseConcluded": "MIT",
|
|
283
283
|
"licenseDeclared": "MIT"
|
|
284
284
|
},
|
|
285
|
-
{
|
|
286
|
-
"name": "@typescript/typescript-linux-x64",
|
|
287
|
-
"SPDXID": "SPDXRef-Dependency-f03df44f666b819d",
|
|
288
|
-
"versionInfo": "7.0.2",
|
|
289
|
-
"downloadLocation": "NOASSERTION",
|
|
290
|
-
"filesAnalyzed": false,
|
|
291
|
-
"licenseConcluded": "Apache-2.0",
|
|
292
|
-
"licenseDeclared": "Apache-2.0"
|
|
293
|
-
},
|
|
294
285
|
{
|
|
295
286
|
"name": "agentkeepalive",
|
|
296
287
|
"SPDXID": "SPDXRef-Dependency-740deb0abaad0736",
|
|
@@ -417,15 +408,6 @@
|
|
|
417
408
|
"licenseConcluded": "MIT",
|
|
418
409
|
"licenseDeclared": "MIT"
|
|
419
410
|
},
|
|
420
|
-
{
|
|
421
|
-
"name": "bufferutil",
|
|
422
|
-
"SPDXID": "SPDXRef-Dependency-5272e24c6f9ef39d",
|
|
423
|
-
"versionInfo": "4.1.0",
|
|
424
|
-
"downloadLocation": "NOASSERTION",
|
|
425
|
-
"filesAnalyzed": false,
|
|
426
|
-
"licenseConcluded": "MIT",
|
|
427
|
-
"licenseDeclared": "MIT"
|
|
428
|
-
},
|
|
429
411
|
{
|
|
430
412
|
"name": "call-bind-apply-helpers",
|
|
431
413
|
"SPDXID": "SPDXRef-Dependency-4609144d3832c8d2",
|
|
@@ -603,8 +585,8 @@
|
|
|
603
585
|
"versionInfo": "0.1.8",
|
|
604
586
|
"downloadLocation": "NOASSERTION",
|
|
605
587
|
"filesAnalyzed": false,
|
|
606
|
-
"licenseConcluded": "
|
|
607
|
-
"licenseDeclared": "
|
|
588
|
+
"licenseConcluded": "MIT",
|
|
589
|
+
"licenseDeclared": "MIT"
|
|
608
590
|
},
|
|
609
591
|
{
|
|
610
592
|
"name": "fast-stable-stringify",
|
|
@@ -804,15 +786,6 @@
|
|
|
804
786
|
"licenseConcluded": "MIT",
|
|
805
787
|
"licenseDeclared": "MIT"
|
|
806
788
|
},
|
|
807
|
-
{
|
|
808
|
-
"name": "node-gyp-build",
|
|
809
|
-
"SPDXID": "SPDXRef-Dependency-19b5b22163f2d942",
|
|
810
|
-
"versionInfo": "4.8.4",
|
|
811
|
-
"downloadLocation": "NOASSERTION",
|
|
812
|
-
"filesAnalyzed": false,
|
|
813
|
-
"licenseConcluded": "MIT",
|
|
814
|
-
"licenseDeclared": "MIT"
|
|
815
|
-
},
|
|
816
789
|
{
|
|
817
790
|
"name": "pako",
|
|
818
791
|
"SPDXID": "SPDXRef-Dependency-7b56f06ac13a5be3",
|
|
@@ -930,15 +903,6 @@
|
|
|
930
903
|
"licenseConcluded": "0BSD",
|
|
931
904
|
"licenseDeclared": "0BSD"
|
|
932
905
|
},
|
|
933
|
-
{
|
|
934
|
-
"name": "typescript",
|
|
935
|
-
"SPDXID": "SPDXRef-Dependency-a7cefd323dc70f1e",
|
|
936
|
-
"versionInfo": "7.0.2",
|
|
937
|
-
"downloadLocation": "NOASSERTION",
|
|
938
|
-
"filesAnalyzed": false,
|
|
939
|
-
"licenseConcluded": "Apache-2.0",
|
|
940
|
-
"licenseDeclared": "Apache-2.0"
|
|
941
|
-
},
|
|
942
906
|
{
|
|
943
907
|
"name": "undici-types",
|
|
944
908
|
"SPDXID": "SPDXRef-Dependency-06ef03d495178469",
|
|
@@ -948,24 +912,6 @@
|
|
|
948
912
|
"licenseConcluded": "MIT",
|
|
949
913
|
"licenseDeclared": "MIT"
|
|
950
914
|
},
|
|
951
|
-
{
|
|
952
|
-
"name": "utf-8-validate",
|
|
953
|
-
"SPDXID": "SPDXRef-Dependency-bc09ca25f5a61e52",
|
|
954
|
-
"versionInfo": "5.0.10",
|
|
955
|
-
"downloadLocation": "NOASSERTION",
|
|
956
|
-
"filesAnalyzed": false,
|
|
957
|
-
"licenseConcluded": "MIT",
|
|
958
|
-
"licenseDeclared": "MIT"
|
|
959
|
-
},
|
|
960
|
-
{
|
|
961
|
-
"name": "utf-8-validate",
|
|
962
|
-
"SPDXID": "SPDXRef-Dependency-fb768e61a5c9ab25",
|
|
963
|
-
"versionInfo": "6.0.6",
|
|
964
|
-
"downloadLocation": "NOASSERTION",
|
|
965
|
-
"filesAnalyzed": false,
|
|
966
|
-
"licenseConcluded": "MIT",
|
|
967
|
-
"licenseDeclared": "MIT"
|
|
968
|
-
},
|
|
969
915
|
{
|
|
970
916
|
"name": "uuid",
|
|
971
917
|
"SPDXID": "SPDXRef-Dependency-6ae8aafe14f45e68",
|
|
@@ -1181,11 +1127,6 @@
|
|
|
1181
1127
|
"relationshipType": "DEPENDS_ON",
|
|
1182
1128
|
"relatedSpdxElement": "SPDXRef-Dependency-ee1128304b54dc39"
|
|
1183
1129
|
},
|
|
1184
|
-
{
|
|
1185
|
-
"spdxElementId": "SPDXRef-Package",
|
|
1186
|
-
"relationshipType": "DEPENDS_ON",
|
|
1187
|
-
"relatedSpdxElement": "SPDXRef-Dependency-f03df44f666b819d"
|
|
1188
|
-
},
|
|
1189
1130
|
{
|
|
1190
1131
|
"spdxElementId": "SPDXRef-Package",
|
|
1191
1132
|
"relationshipType": "DEPENDS_ON",
|
|
@@ -1256,11 +1197,6 @@
|
|
|
1256
1197
|
"relationshipType": "DEPENDS_ON",
|
|
1257
1198
|
"relatedSpdxElement": "SPDXRef-Dependency-d57501d0d9fdd3c1"
|
|
1258
1199
|
},
|
|
1259
|
-
{
|
|
1260
|
-
"spdxElementId": "SPDXRef-Package",
|
|
1261
|
-
"relationshipType": "DEPENDS_ON",
|
|
1262
|
-
"relatedSpdxElement": "SPDXRef-Dependency-5272e24c6f9ef39d"
|
|
1263
|
-
},
|
|
1264
1200
|
{
|
|
1265
1201
|
"spdxElementId": "SPDXRef-Package",
|
|
1266
1202
|
"relationshipType": "DEPENDS_ON",
|
|
@@ -1471,11 +1407,6 @@
|
|
|
1471
1407
|
"relationshipType": "DEPENDS_ON",
|
|
1472
1408
|
"relatedSpdxElement": "SPDXRef-Dependency-23d7d5a419e9a25e"
|
|
1473
1409
|
},
|
|
1474
|
-
{
|
|
1475
|
-
"spdxElementId": "SPDXRef-Package",
|
|
1476
|
-
"relationshipType": "DEPENDS_ON",
|
|
1477
|
-
"relatedSpdxElement": "SPDXRef-Dependency-19b5b22163f2d942"
|
|
1478
|
-
},
|
|
1479
1410
|
{
|
|
1480
1411
|
"spdxElementId": "SPDXRef-Package",
|
|
1481
1412
|
"relationshipType": "DEPENDS_ON",
|
|
@@ -1541,26 +1472,11 @@
|
|
|
1541
1472
|
"relationshipType": "DEPENDS_ON",
|
|
1542
1473
|
"relatedSpdxElement": "SPDXRef-Dependency-b15471035cb0e3fd"
|
|
1543
1474
|
},
|
|
1544
|
-
{
|
|
1545
|
-
"spdxElementId": "SPDXRef-Package",
|
|
1546
|
-
"relationshipType": "DEPENDS_ON",
|
|
1547
|
-
"relatedSpdxElement": "SPDXRef-Dependency-a7cefd323dc70f1e"
|
|
1548
|
-
},
|
|
1549
1475
|
{
|
|
1550
1476
|
"spdxElementId": "SPDXRef-Package",
|
|
1551
1477
|
"relationshipType": "DEPENDS_ON",
|
|
1552
1478
|
"relatedSpdxElement": "SPDXRef-Dependency-06ef03d495178469"
|
|
1553
1479
|
},
|
|
1554
|
-
{
|
|
1555
|
-
"spdxElementId": "SPDXRef-Package",
|
|
1556
|
-
"relationshipType": "DEPENDS_ON",
|
|
1557
|
-
"relatedSpdxElement": "SPDXRef-Dependency-bc09ca25f5a61e52"
|
|
1558
|
-
},
|
|
1559
|
-
{
|
|
1560
|
-
"spdxElementId": "SPDXRef-Package",
|
|
1561
|
-
"relationshipType": "DEPENDS_ON",
|
|
1562
|
-
"relatedSpdxElement": "SPDXRef-Dependency-fb768e61a5c9ab25"
|
|
1563
|
-
},
|
|
1564
1480
|
{
|
|
1565
1481
|
"spdxElementId": "SPDXRef-Package",
|
|
1566
1482
|
"relationshipType": "DEPENDS_ON",
|
|
@@ -914,10 +914,10 @@ export type Shillbot = {
|
|
|
914
914
|
{
|
|
915
915
|
"name": "agent";
|
|
916
916
|
"docs": [
|
|
917
|
-
"`task.agent` when `task.payout_to` is unset (zero)
|
|
918
|
-
"`task.payout_to`
|
|
919
|
-
"
|
|
920
|
-
"
|
|
917
|
+
"`task.agent` when `task.payout_to` is unset (zero) or when the routed",
|
|
918
|
+
"`task.payout_to` vault is closed (proven via `remaining_accounts`);",
|
|
919
|
+
"otherwise it must be `task.payout_to`. Reputation still accrues to",
|
|
920
|
+
"`task.agent` (see `update_agent_stats`)."
|
|
921
921
|
];
|
|
922
922
|
"writable": true;
|
|
923
923
|
},
|
|
@@ -1241,10 +1241,8 @@ export type Shillbot = {
|
|
|
1241
1241
|
"name": "agent";
|
|
1242
1242
|
"docs": [
|
|
1243
1243
|
"routing, mirroring `finalize_task`). Equals `task.agent` when",
|
|
1244
|
-
"`task.payout_to` is unset
|
|
1245
|
-
"
|
|
1246
|
-
"directly and bypass recoupment. Reputation/`total_challenges_lost` keys",
|
|
1247
|
-
"off `task.agent` independently, so routing never moves on-chain stats."
|
|
1244
|
+
"`task.payout_to` is unset (or when `task.payout_to` is closed, proven",
|
|
1245
|
+
"via `remaining_accounts`); otherwise it must be `task.payout_to`."
|
|
1248
1246
|
];
|
|
1249
1247
|
"writable": true;
|
|
1250
1248
|
},
|
|
@@ -1375,7 +1373,8 @@ export type Shillbot = {
|
|
|
1375
1373
|
{
|
|
1376
1374
|
"name": "agent";
|
|
1377
1375
|
"docs": [
|
|
1378
|
-
"C2 routing override is set (
|
|
1376
|
+
"C2 routing override is set (with fallback to `task.agent` if `payout_to`",
|
|
1377
|
+
"is closed, proven via `remaining_accounts`)."
|
|
1379
1378
|
];
|
|
1380
1379
|
"writable": true;
|
|
1381
1380
|
},
|
|
@@ -908,10 +908,10 @@
|
|
|
908
908
|
{
|
|
909
909
|
"name": "agent",
|
|
910
910
|
"docs": [
|
|
911
|
-
"`task.agent` when `task.payout_to` is unset (zero)
|
|
912
|
-
"`task.payout_to`
|
|
913
|
-
"
|
|
914
|
-
"
|
|
911
|
+
"`task.agent` when `task.payout_to` is unset (zero) or when the routed",
|
|
912
|
+
"`task.payout_to` vault is closed (proven via `remaining_accounts`);",
|
|
913
|
+
"otherwise it must be `task.payout_to`. Reputation still accrues to",
|
|
914
|
+
"`task.agent` (see `update_agent_stats`)."
|
|
915
915
|
],
|
|
916
916
|
"writable": true
|
|
917
917
|
},
|
|
@@ -1235,10 +1235,8 @@
|
|
|
1235
1235
|
"name": "agent",
|
|
1236
1236
|
"docs": [
|
|
1237
1237
|
"routing, mirroring `finalize_task`). Equals `task.agent` when",
|
|
1238
|
-
"`task.payout_to` is unset
|
|
1239
|
-
"
|
|
1240
|
-
"directly and bypass recoupment. Reputation/`total_challenges_lost` keys",
|
|
1241
|
-
"off `task.agent` independently, so routing never moves on-chain stats."
|
|
1238
|
+
"`task.payout_to` is unset (or when `task.payout_to` is closed, proven",
|
|
1239
|
+
"via `remaining_accounts`); otherwise it must be `task.payout_to`."
|
|
1242
1240
|
],
|
|
1243
1241
|
"writable": true
|
|
1244
1242
|
},
|
|
@@ -1369,7 +1367,8 @@
|
|
|
1369
1367
|
{
|
|
1370
1368
|
"name": "agent",
|
|
1371
1369
|
"docs": [
|
|
1372
|
-
"C2 routing override is set (
|
|
1370
|
+
"C2 routing override is set (with fallback to `task.agent` if `payout_to`",
|
|
1371
|
+
"is closed, proven via `remaining_accounts`)."
|
|
1373
1372
|
],
|
|
1374
1373
|
"writable": true
|
|
1375
1374
|
},
|
package/dist/shillbot/api.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Buffer } from "buffer";
|
|
2
|
-
import { ComputeBudgetProgram, Secp256k1Program
|
|
2
|
+
import { ComputeBudgetProgram, Secp256k1Program } from "@solana/web3.js";
|
|
3
3
|
import { HttpClient } from "../http.js";
|
|
4
4
|
import { SwarmClientError } from "../errors.js";
|
|
5
5
|
import { SHILLBOT_PROGRAM_ID, inspectTransaction, shillbotInstructionDiscriminator, signAndBroadcast, } from "./index.js";
|
|
@@ -65,8 +65,9 @@ export function validatePreparedTransaction(encoded, expected) {
|
|
|
65
65
|
throw new SwarmClientError({ code: "TRANSACTION_MISMATCH", operation: "shillbot.validatePreparedTransaction", message: "Fee payer differs from expectation" });
|
|
66
66
|
}
|
|
67
67
|
const shillbotId = SHILLBOT_PROGRAM_ID.toBase58();
|
|
68
|
-
const
|
|
69
|
-
|
|
68
|
+
const shillbotIxs = inspected.instructions.filter((instruction) => instruction.program_id === shillbotId);
|
|
69
|
+
const lifecycle = shillbotIxs.filter((instruction) => matchesDiscriminator(instruction.data_base64, expected.action));
|
|
70
|
+
if (lifecycle.length !== 1 || shillbotIxs.length !== 1) {
|
|
70
71
|
throw new SwarmClientError({ code: "TRANSACTION_MISMATCH", operation: "shillbot.validatePreparedTransaction", message: "Expected exactly one matching Shillbot lifecycle instruction" });
|
|
71
72
|
}
|
|
72
73
|
if (expected.taskPda && !lifecycle[0].accounts.includes(expected.taskPda)) {
|
|
@@ -75,7 +76,6 @@ export function validatePreparedTransaction(encoded, expected) {
|
|
|
75
76
|
const alwaysAllowed = new Set([
|
|
76
77
|
shillbotId,
|
|
77
78
|
ComputeBudgetProgram.programId.toBase58(),
|
|
78
|
-
SystemProgram.programId.toBase58(),
|
|
79
79
|
...permittedPreparedProgramIds(expected.action, expected.network),
|
|
80
80
|
...(expected.allowedProgramIds ?? []),
|
|
81
81
|
]);
|