@streamr/node 101.0.0-beta.0 → 101.0.0-beta.2

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 (37) hide show
  1. package/dist/package.json +8 -8
  2. package/dist/src/plugins/operator/MaintainTopologyHelper.d.ts +3 -3
  3. package/dist/src/plugins/operator/MaintainTopologyHelper.js +18 -19
  4. package/dist/src/plugins/operator/MaintainTopologyHelper.js.map +1 -1
  5. package/dist/src/plugins/operator/OperatorPlugin.d.ts +1 -1
  6. package/dist/src/plugins/operator/OperatorPlugin.js +45 -54
  7. package/dist/src/plugins/operator/OperatorPlugin.js.map +1 -1
  8. package/dist/src/plugins/operator/announceNodeToContract.d.ts +2 -3
  9. package/dist/src/plugins/operator/announceNodeToContract.js +8 -8
  10. package/dist/src/plugins/operator/announceNodeToContract.js.map +1 -1
  11. package/dist/src/plugins/operator/checkOperatorValueBreach.d.ts +2 -2
  12. package/dist/src/plugins/operator/checkOperatorValueBreach.js +4 -4
  13. package/dist/src/plugins/operator/checkOperatorValueBreach.js.map +1 -1
  14. package/dist/src/plugins/operator/closeExpiredFlags.d.ts +2 -3
  15. package/dist/src/plugins/operator/closeExpiredFlags.js +6 -6
  16. package/dist/src/plugins/operator/closeExpiredFlags.js.map +1 -1
  17. package/dist/src/plugins/operator/inspectRandomNode.d.ts +3 -4
  18. package/dist/src/plugins/operator/inspectRandomNode.js +6 -6
  19. package/dist/src/plugins/operator/inspectRandomNode.js.map +1 -1
  20. package/dist/src/plugins/operator/inspectionUtils.d.ts +3 -4
  21. package/dist/src/plugins/operator/inspectionUtils.js +8 -7
  22. package/dist/src/plugins/operator/inspectionUtils.js.map +1 -1
  23. package/dist/src/plugins/operator/maintainOperatorValue.d.ts +2 -2
  24. package/dist/src/plugins/operator/maintainOperatorValue.js +3 -3
  25. package/dist/src/plugins/operator/maintainOperatorValue.js.map +1 -1
  26. package/dist/src/plugins/operator/reviewSuspectNode.d.ts +3 -4
  27. package/dist/src/plugins/operator/reviewSuspectNode.js +4 -4
  28. package/dist/src/plugins/operator/reviewSuspectNode.js.map +1 -1
  29. package/dist/src/plugins/storage/StorageEventListener.js +4 -4
  30. package/dist/src/plugins/storage/StorageEventListener.js.map +1 -1
  31. package/package.json +8 -8
  32. package/dist/src/plugins/operator/ContractFacade.d.ts +0 -80
  33. package/dist/src/plugins/operator/ContractFacade.js +0 -376
  34. package/dist/src/plugins/operator/ContractFacade.js.map +0 -1
  35. package/dist/src/plugins/operator/fetchRedundancyFactor.d.ts +0 -2
  36. package/dist/src/plugins/operator/fetchRedundancyFactor.js +0 -43
  37. package/dist/src/plugins/operator/fetchRedundancyFactor.js.map +0 -1
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamr/node",
3
- "version": "101.0.0-beta.0",
3
+ "version": "101.0.0-beta.2",
4
4
  "description": "A full-featured node implementation for the Streamr Network",
5
5
  "repository": {
6
6
  "type": "git",
@@ -30,11 +30,11 @@
30
30
  "dependencies": {
31
31
  "@ensdomains/ens-contracts": "1.1.4",
32
32
  "@inquirer/prompts": "^4.2.1",
33
- "@streamr/config": "^5.3.7",
33
+ "@streamr/config": "^5.3.12",
34
34
  "@streamr/network-contracts-ethers6": "^7.1.2",
35
- "@streamr/protocol": "101.0.0-beta.0",
36
- "@streamr/sdk": "101.0.0-beta.0",
37
- "@streamr/utils": "101.0.0-beta.0",
35
+ "@streamr/protocol": "101.0.0-beta.2",
36
+ "@streamr/sdk": "101.0.0-beta.2",
37
+ "@streamr/utils": "101.0.0-beta.2",
38
38
  "aedes": "^0.51.0",
39
39
  "ajv": "^8.8.2",
40
40
  "ajv-formats": "^2.1.1",
@@ -53,13 +53,13 @@
53
53
  "p-limit": "^3.1.0",
54
54
  "qs": "^6.12.0",
55
55
  "uuid": "^9.0.1",
56
- "ws": "^8.16.0",
56
+ "ws": "^8.17.1",
57
57
  "zod": "^3.22.4"
58
58
  },
59
59
  "devDependencies": {
60
60
  "@inquirer/testing": "^2.1.12",
61
- "@streamr/dht": "101.0.0-beta.0",
62
- "@streamr/test-utils": "101.0.0-beta.0",
61
+ "@streamr/dht": "101.0.0-beta.2",
62
+ "@streamr/test-utils": "101.0.0-beta.2",
63
63
  "@types/cors": "^2.8.17",
64
64
  "@types/express": "^4.17.21",
65
65
  "@types/heap": "^0.2.34",
@@ -1,6 +1,6 @@
1
1
  import { StreamID } from '@streamr/protocol';
2
+ import { Operator } from '@streamr/sdk';
2
3
  import { EventEmitter } from 'eventemitter3';
3
- import { ContractFacade } from './ContractFacade';
4
4
  export interface MaintainTopologyHelperEvents {
5
5
  /**
6
6
  * Emitted when staking into a Sponsorship on a stream that we haven't staked on before (in another Sponsorship)
@@ -16,8 +16,8 @@ export declare class MaintainTopologyHelper extends EventEmitter<MaintainTopolog
16
16
  private readonly sponsorshipCountOfStream;
17
17
  private onStakedListener?;
18
18
  private onUnstakedListener?;
19
- private readonly contractFacade;
20
- constructor(contractFacade: ContractFacade);
19
+ private readonly operator;
20
+ constructor(operator: Operator);
21
21
  start(): Promise<void>;
22
22
  stop(): void;
23
23
  }
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MaintainTopologyHelper = void 0;
4
- const protocol_1 = require("@streamr/protocol");
5
4
  const utils_1 = require("@streamr/utils");
6
5
  const eventemitter3_1 = require("eventemitter3");
7
6
  const logger = new utils_1.Logger(module);
@@ -10,17 +9,18 @@ class MaintainTopologyHelper extends eventemitter3_1.EventEmitter {
10
9
  sponsorshipCountOfStream = new Map();
11
10
  onStakedListener;
12
11
  onUnstakedListener;
13
- contractFacade;
14
- constructor(contractFacade) {
12
+ operator;
13
+ constructor(operator) {
15
14
  super();
16
- this.contractFacade = contractFacade;
15
+ this.operator = operator;
17
16
  }
18
17
  async start() {
19
- const latestBlock = await this.contractFacade.getProvider().getBlockNumber();
20
- this.onStakedListener = async (sponsorship) => {
18
+ const latestBlock = await this.operator.getCurrentBlockNumber();
19
+ this.onStakedListener = async (event) => {
20
+ const sponsorship = event.sponsorship;
21
21
  logger.info('Receive "Staked" event', { sponsorship });
22
22
  const sponsorshipAddress = (0, utils_1.toEthereumAddress)(sponsorship);
23
- const streamId = await this.contractFacade.getStreamId(sponsorshipAddress); // TODO: add catching here
23
+ const streamId = await this.operator.getStreamId(sponsorshipAddress); // TODO: add catching here
24
24
  if (this.streamIdOfSponsorship.has(sponsorshipAddress)) {
25
25
  logger.debug('Ignore already staked into sponsorship', { sponsorship });
26
26
  return;
@@ -32,8 +32,9 @@ class MaintainTopologyHelper extends eventemitter3_1.EventEmitter {
32
32
  this.emit('addStakedStreams', [streamId]);
33
33
  }
34
34
  };
35
- this.contractFacade.addOperatorContractStakeEventListener('Staked', this.onStakedListener);
36
- this.onUnstakedListener = (sponsorship) => {
35
+ this.operator.on('staked', this.onStakedListener);
36
+ this.onUnstakedListener = (event) => {
37
+ const sponsorship = event.sponsorship;
37
38
  logger.info('Receive "Unstaked" event', { sponsorship });
38
39
  const sponsorshipAddress = (0, utils_1.toEthereumAddress)(sponsorship);
39
40
  const streamId = this.streamIdOfSponsorship.get(sponsorshipAddress);
@@ -49,15 +50,13 @@ class MaintainTopologyHelper extends eventemitter3_1.EventEmitter {
49
50
  this.emit('removeStakedStream', streamId);
50
51
  }
51
52
  };
52
- this.contractFacade.addOperatorContractStakeEventListener('Unstaked', this.onUnstakedListener);
53
- const queryResult = this.contractFacade.pullStakedStreams(latestBlock);
53
+ this.operator.on('unstaked', this.onUnstakedListener);
54
+ const queryResult = this.operator.pullStakedStreams(latestBlock);
54
55
  for await (const stake of queryResult) {
55
- const sponsorshipId = (0, utils_1.toEthereumAddress)(stake.sponsorship.id);
56
- const streamId = (0, protocol_1.toStreamID)(stake.sponsorship.stream.id);
57
- if (this.streamIdOfSponsorship.get(sponsorshipId) !== streamId) {
58
- this.streamIdOfSponsorship.set(sponsorshipId, streamId);
59
- const sponsorshipCount = (this.sponsorshipCountOfStream.get(streamId) || 0) + 1;
60
- this.sponsorshipCountOfStream.set(streamId, sponsorshipCount);
56
+ if (this.streamIdOfSponsorship.get(stake.sponsorship) !== stake.streamId) {
57
+ this.streamIdOfSponsorship.set(stake.sponsorship, stake.streamId);
58
+ const sponsorshipCount = (this.sponsorshipCountOfStream.get(stake.streamId) || 0) + 1;
59
+ this.sponsorshipCountOfStream.set(stake.streamId, sponsorshipCount);
61
60
  }
62
61
  }
63
62
  if (this.sponsorshipCountOfStream.size > 0) {
@@ -66,8 +65,8 @@ class MaintainTopologyHelper extends eventemitter3_1.EventEmitter {
66
65
  }
67
66
  }
68
67
  stop() {
69
- this.contractFacade.removeOperatorContractStakeEventListener('Staked', this.onStakedListener);
70
- this.contractFacade.removeOperatorContractStakeEventListener('Unstaked', this.onUnstakedListener);
68
+ this.operator.off('staked', this.onStakedListener);
69
+ this.operator.off('unstaked', this.onUnstakedListener);
71
70
  this.removeAllListeners();
72
71
  }
73
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MaintainTopologyHelper.js","sourceRoot":"","sources":["../../../../src/plugins/operator/MaintainTopologyHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MaintainTopologyHelper.js","sourceRoot":"","sources":["../../../../src/plugins/operator/MaintainTopologyHelper.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
+ import { SignerWithProvider, StreamrClient } from '@streamr/sdk';
1
2
  import { EthereumAddress } from '@streamr/utils';
2
3
  import { Schema } from 'ajv';
3
4
  import { Overrides } from 'ethers';
4
- import { StreamrClient, SignerWithProvider } from '@streamr/sdk';
5
5
  import { Plugin } from '../../Plugin';
6
6
  export interface OperatorPluginConfig {
7
7
  operatorContractAddress: string;
@@ -6,42 +6,33 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.OperatorPlugin = void 0;
7
7
  const utils_1 = require("@streamr/utils");
8
8
  const Plugin_1 = require("../../Plugin");
9
- const maintainOperatorValue_1 = require("./maintainOperatorValue");
9
+ const MaintainTopologyHelper_1 = require("./MaintainTopologyHelper");
10
10
  const MaintainTopologyService_1 = require("./MaintainTopologyService");
11
11
  const OperatorFleetState_1 = require("./OperatorFleetState");
12
- const config_schema_json_1 = __importDefault(require("./config.schema.json"));
13
- const createIsLeaderFn_1 = require("./createIsLeaderFn");
12
+ const StreamPartAssignments_1 = require("./StreamPartAssignments");
14
13
  const announceNodeToContract_1 = require("./announceNodeToContract");
15
14
  const announceNodeToStream_1 = require("./announceNodeToStream");
16
15
  const checkOperatorValueBreach_1 = require("./checkOperatorValueBreach");
17
- const fetchRedundancyFactor_1 = require("./fetchRedundancyFactor");
16
+ const closeExpiredFlags_1 = require("./closeExpiredFlags");
17
+ const config_schema_json_1 = __importDefault(require("./config.schema.json"));
18
+ const createIsLeaderFn_1 = require("./createIsLeaderFn");
18
19
  const formCoordinationStreamId_1 = require("./formCoordinationStreamId");
19
- const StreamPartAssignments_1 = require("./StreamPartAssignments");
20
- const MaintainTopologyHelper_1 = require("./MaintainTopologyHelper");
21
20
  const inspectRandomNode_1 = require("./inspectRandomNode");
22
- const ContractFacade_1 = require("./ContractFacade");
21
+ const maintainOperatorValue_1 = require("./maintainOperatorValue");
23
22
  const reviewSuspectNode_1 = require("./reviewSuspectNode");
24
- const closeExpiredFlags_1 = require("./closeExpiredFlags");
25
23
  const logger = new utils_1.Logger(module);
26
24
  class OperatorPlugin extends Plugin_1.Plugin {
27
25
  abortController = new AbortController();
28
26
  async start(streamrClient) {
29
- const signer = await streamrClient.getSigner();
30
27
  const nodeId = await streamrClient.getNodeId();
31
28
  const operatorContractAddress = (0, utils_1.toEthereumAddress)(this.pluginConfig.operatorContractAddress);
32
- const serviceConfig = {
33
- signer,
34
- operatorContractAddress,
35
- theGraphUrl: streamrClient.getConfig().contracts.theGraphUrl,
36
- getEthersOverrides: () => streamrClient.getEthersOverrides()
37
- };
38
- const redundancyFactor = await (0, fetchRedundancyFactor_1.fetchRedundancyFactor)(serviceConfig);
29
+ const operator = streamrClient.getOperator(operatorContractAddress);
30
+ const redundancyFactor = await operator.fetchRedundancyFactor();
39
31
  if (redundancyFactor === undefined) {
40
32
  throw new Error('Failed to fetch my redundancy factor');
41
33
  }
42
34
  logger.info('Fetched my redundancy factor', { redundancyFactor });
43
- const contractFacade = ContractFacade_1.ContractFacade.createInstance(serviceConfig);
44
- const maintainTopologyHelper = new MaintainTopologyHelper_1.MaintainTopologyHelper(contractFacade);
35
+ const maintainTopologyHelper = new MaintainTopologyHelper_1.MaintainTopologyHelper(operator);
45
36
  const createOperatorFleetState = OperatorFleetState_1.OperatorFleetState.createOperatorFleetStateBuilder(streamrClient, this.pluginConfig.heartbeatUpdateIntervalInMs, this.pluginConfig.fleetState.pruneAgeInMs, this.pluginConfig.fleetState.pruneIntervalInMs, this.pluginConfig.fleetState.latencyExtraInMs, this.pluginConfig.fleetState.warmupPeriodInMs);
46
37
  const fleetState = createOperatorFleetState((0, formCoordinationStreamId_1.formCoordinationStreamId)(operatorContractAddress));
47
38
  const streamPartAssignments = new StreamPartAssignments_1.StreamPartAssignments(nodeId, redundancyFactor, async (streamId) => {
@@ -64,7 +55,7 @@ class OperatorPlugin extends Plugin_1.Plugin {
64
55
  await (0, announceNodeToStream_1.announceNodeToStream)((0, utils_1.toEthereumAddress)(this.pluginConfig.operatorContractAddress), streamrClient);
65
56
  })();
66
57
  }, this.pluginConfig.heartbeatUpdateIntervalInMs, this.abortController.signal);
67
- await (0, utils_1.scheduleAtInterval)(async () => (0, checkOperatorValueBreach_1.checkOperatorValueBreach)(contractFacade, this.pluginConfig.maintainOperatorValue.minSponsorshipEarningsInWithdraw, this.pluginConfig.maintainOperatorValue.maxSponsorshipsInWithdraw).catch((err) => {
58
+ await (0, utils_1.scheduleAtInterval)(async () => (0, checkOperatorValueBreach_1.checkOperatorValueBreach)(operator, streamrClient, this.pluginConfig.maintainOperatorValue.minSponsorshipEarningsInWithdraw, this.pluginConfig.maintainOperatorValue.maxSponsorshipsInWithdraw).catch((err) => {
68
59
  logger.warn('Encountered error', { err });
69
60
  }), this.pluginConfig.checkOperatorValueBreachIntervalInMs, true, this.abortController.signal);
70
61
  await fleetState.waitUntilReady();
@@ -72,7 +63,7 @@ class OperatorPlugin extends Plugin_1.Plugin {
72
63
  try {
73
64
  await (0, utils_1.scheduleAtInterval)(async () => {
74
65
  if (isLeader()) {
75
- await (0, announceNodeToContract_1.announceNodeToContract)(this.pluginConfig.announceNodeToContract.writeIntervalInMs, contractFacade, streamrClient);
66
+ await (0, announceNodeToContract_1.announceNodeToContract)(this.pluginConfig.announceNodeToContract.writeIntervalInMs, operator, streamrClient);
76
67
  }
77
68
  }, this.pluginConfig.announceNodeToContract.pollIntervalInMs, true, this.abortController.signal);
78
69
  }
@@ -83,7 +74,7 @@ class OperatorPlugin extends Plugin_1.Plugin {
83
74
  await (0, utils_1.scheduleAtInterval)(async () => {
84
75
  if (isLeader()) {
85
76
  try {
86
- await (0, maintainOperatorValue_1.maintainOperatorValue)(this.pluginConfig.maintainOperatorValue.withdrawLimitSafetyFraction, this.pluginConfig.maintainOperatorValue.minSponsorshipEarningsInWithdraw, this.pluginConfig.maintainOperatorValue.maxSponsorshipsInWithdraw, contractFacade);
77
+ await (0, maintainOperatorValue_1.maintainOperatorValue)(this.pluginConfig.maintainOperatorValue.withdrawLimitSafetyFraction, this.pluginConfig.maintainOperatorValue.minSponsorshipEarningsInWithdraw, this.pluginConfig.maintainOperatorValue.maxSponsorshipsInWithdraw, operator);
87
78
  }
88
79
  catch (err) {
89
80
  logger.error('Encountered error while checking earnings', { err });
@@ -92,10 +83,9 @@ class OperatorPlugin extends Plugin_1.Plugin {
92
83
  }, this.pluginConfig.maintainOperatorValue.intervalInMs, true, this.abortController.signal);
93
84
  await (0, utils_1.scheduleAtInterval)(async () => {
94
85
  try {
95
- await (0, inspectRandomNode_1.inspectRandomNode)(operatorContractAddress, contractFacade, streamPartAssignments, streamrClient, this.pluginConfig.heartbeatTimeoutInMs, (operatorContractAddress) => (0, fetchRedundancyFactor_1.fetchRedundancyFactor)({
96
- operatorContractAddress,
97
- signer
98
- }), createOperatorFleetState, this.abortController.signal);
86
+ await (0, inspectRandomNode_1.inspectRandomNode)(operatorContractAddress, operator, streamPartAssignments, streamrClient, this.pluginConfig.heartbeatTimeoutInMs, async (targetOperatorContractAddress) => {
87
+ return streamrClient.getOperator(targetOperatorContractAddress).fetchRedundancyFactor();
88
+ }, createOperatorFleetState, this.abortController.signal);
99
89
  }
100
90
  catch (err) {
101
91
  logger.error('Encountered error while inspecting random node', { err });
@@ -103,41 +93,42 @@ class OperatorPlugin extends Plugin_1.Plugin {
103
93
  }, this.pluginConfig.inspectRandomNode.intervalInMs, false, this.abortController.signal);
104
94
  await (0, utils_1.scheduleAtInterval)(async () => {
105
95
  try {
106
- await (0, closeExpiredFlags_1.closeExpiredFlags)(this.pluginConfig.closeExpiredFlags.maxAgeInMs, serviceConfig.operatorContractAddress, contractFacade);
96
+ await (0, closeExpiredFlags_1.closeExpiredFlags)(this.pluginConfig.closeExpiredFlags.maxAgeInMs, operator);
107
97
  }
108
98
  catch (err) {
109
99
  logger.error('Encountered error while closing expired flags', { err });
110
100
  }
111
101
  }, this.pluginConfig.closeExpiredFlags.intervalInMs, false, this.abortController.signal);
112
- contractFacade.addReviewRequestListener(async (sponsorshipAddress, targetOperator, partition, votingPeriodStartTimestamp, votingPeriodEndTimestamp) => {
113
- try {
114
- if (isLeader()) {
115
- await (0, reviewSuspectNode_1.reviewSuspectNode)({
116
- sponsorshipAddress,
117
- targetOperator,
118
- partition,
119
- contractFacade,
120
- streamrClient,
121
- createOperatorFleetState,
122
- getRedundancyFactor: (operatorContractAddress) => (0, fetchRedundancyFactor_1.fetchRedundancyFactor)({
123
- operatorContractAddress,
124
- signer
125
- }),
126
- maxSleepTime: 5 * 60 * 1000,
127
- heartbeatTimeoutInMs: this.pluginConfig.heartbeatTimeoutInMs,
128
- votingPeriod: {
129
- startTime: votingPeriodStartTimestamp,
130
- endTime: votingPeriodEndTimestamp
131
- },
132
- inspectionIntervalInMs: 8 * 60 * 1000,
133
- maxInspections: 10,
134
- abortSignal: this.abortController.signal
135
- });
102
+ (0, utils_1.addManagedEventListener)(operator, 'reviewRequested', (event) => {
103
+ setImmediate(async () => {
104
+ try {
105
+ if (isLeader()) {
106
+ await (0, reviewSuspectNode_1.reviewSuspectNode)({
107
+ sponsorshipAddress: event.sponsorship,
108
+ targetOperator: event.targetOperator,
109
+ partition: event.partition,
110
+ myOperator: operator,
111
+ streamrClient,
112
+ createOperatorFleetState,
113
+ getRedundancyFactor: async (targetOperatorContractAddress) => {
114
+ return streamrClient.getOperator(targetOperatorContractAddress).fetchRedundancyFactor();
115
+ },
116
+ maxSleepTime: 5 * 60 * 1000,
117
+ heartbeatTimeoutInMs: this.pluginConfig.heartbeatTimeoutInMs,
118
+ votingPeriod: {
119
+ startTime: event.votingPeriodStartTimestamp,
120
+ endTime: event.votingPeriodEndTimestamp
121
+ },
122
+ inspectionIntervalInMs: 8 * 60 * 1000,
123
+ maxInspections: 10,
124
+ abortSignal: this.abortController.signal
125
+ });
126
+ }
136
127
  }
137
- }
138
- catch (err) {
139
- logger.error('Encountered error while processing review request', { err });
140
- }
128
+ catch (err) {
129
+ logger.error('Encountered error while processing review request', { err });
130
+ }
131
+ });
141
132
  }, this.abortController.signal);
142
133
  });
143
134
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OperatorPlugin.js","sourceRoot":"","sources":["../../../../src/plugins/operator/OperatorPlugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OperatorPlugin.js","sourceRoot":"","sources":["../../../../src/plugins/operator/OperatorPlugin.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,2 @@
1
- import StreamrClient from '@streamr/sdk';
2
- import { ContractFacade } from './ContractFacade';
3
- export declare const announceNodeToContract: (writeIntervalInMs: number, contractFacade: ContractFacade, streamrClient: StreamrClient) => Promise<void>;
1
+ import { Operator, StreamrClient } from '@streamr/sdk';
2
+ export declare const announceNodeToContract: (writeIntervalInMs: number, operator: Operator, streamrClient: StreamrClient) => Promise<void>;
@@ -3,19 +3,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.announceNodeToContract = void 0;
4
4
  const utils_1 = require("@streamr/utils");
5
5
  const logger = new utils_1.Logger(module);
6
- const announceNodeToContract = async (writeIntervalInMs, contractFacade, streamrClient) => {
7
- if (await isHeartbeatStale(writeIntervalInMs, contractFacade)) {
8
- await writeHeartbeat(contractFacade, streamrClient);
6
+ const announceNodeToContract = async (writeIntervalInMs, operator, streamrClient) => {
7
+ if (await isHeartbeatStale(writeIntervalInMs, operator)) {
8
+ await writeHeartbeat(operator, streamrClient);
9
9
  }
10
10
  };
11
11
  exports.announceNodeToContract = announceNodeToContract;
12
- const isHeartbeatStale = async (writeIntervalInMs, contractFacade) => {
12
+ const isHeartbeatStale = async (writeIntervalInMs, operator) => {
13
13
  logger.debug('Polling last heartbeat timestamp', {
14
- operatorContractAddress: await contractFacade.getOperatorContractAddress()
14
+ operatorContractAddress: await operator.getContractAddress()
15
15
  });
16
16
  let lastHeartbeatTs;
17
17
  try {
18
- lastHeartbeatTs = await contractFacade.getTimestampOfLastHeartbeat();
18
+ lastHeartbeatTs = await operator.getTimestampOfLastHeartbeat();
19
19
  }
20
20
  catch (err) {
21
21
  logger.warn('Failed to poll last heartbeat timestamp', { reason: err?.message });
@@ -25,11 +25,11 @@ const isHeartbeatStale = async (writeIntervalInMs, contractFacade) => {
25
25
  logger.debug('Polled last heartbeat timestamp', { lastHeartbeatTs, stale });
26
26
  return stale;
27
27
  };
28
- const writeHeartbeat = async (contractFacade, streamrClient) => {
28
+ const writeHeartbeat = async (operator, streamrClient) => {
29
29
  logger.info('Write heartbeat');
30
30
  try {
31
31
  const nodeDescriptor = await streamrClient.getPeerDescriptor();
32
- await contractFacade.writeHeartbeat(nodeDescriptor);
32
+ await operator.writeHeartbeat(nodeDescriptor);
33
33
  logger.debug('Wrote heartbeat', { nodeDescriptor });
34
34
  }
35
35
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"announceNodeToContract.js","sourceRoot":"","sources":["../../../../src/plugins/operator/announceNodeToContract.ts"],"names":[],"mappings":";;;AAAA,0CAAuC;AAIvC,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAE1B,MAAM,sBAAsB,GAAG,KAAK,EACvC,iBAAyB,EACzB,cAA8B,EAC9B,aAA4B,EACf,EAAE;IACf,IAAI,MAAM,gBAAgB,CAAC,iBAAiB,EAAE,cAAc,CAAC,EAAE,CAAC;QAC5D,MAAM,cAAc,CAAC,cAAc,EAAE,aAAa,CAAC,CAAA;IACvD,CAAC;AACL,CAAC,CAAA;AARY,QAAA,sBAAsB,0BAQlC;AAED,MAAM,gBAAgB,GAAG,KAAK,EAC1B,iBAAyB,EACzB,cAA8B,EACd,EAAE;IAClB,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE;QAC7C,uBAAuB,EAAE,MAAM,cAAc,CAAC,0BAA0B,EAAE;KAC7E,CAAC,CAAA;IACF,IAAI,eAAe,CAAA;IACnB,IAAI,CAAC;QACD,eAAe,GAAG,MAAM,cAAc,CAAC,2BAA2B,EAAE,CAAA;IACxE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAA;QAChF,OAAO,KAAK,CAAA,CAAC,+EAA+E;IAChG,CAAC;IACD,MAAM,KAAK,GAAG,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,GAAG,iBAAiB,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IACtG,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3E,OAAO,KAAK,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,KAAK,EACxB,cAA8B,EAC9B,aAA4B,EACf,EAAE;IACf,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;IAC9B,IAAI,CAAC;QACD,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,iBAAiB,EAAE,CAAA;QAC9D,MAAM,cAAc,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;QACnD,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,cAAc,EAAE,CAAC,CAAA;IACvD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAA;IACtE,CAAC;AACL,CAAC,CAAA"}
1
+ {"version":3,"file":"announceNodeToContract.js","sourceRoot":"","sources":["../../../../src/plugins/operator/announceNodeToContract.ts"],"names":[],"mappings":";;;AACA,0CAAuC;AAEvC,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAE1B,MAAM,sBAAsB,GAAG,KAAK,EACvC,iBAAyB,EACzB,QAAkB,EAClB,aAA4B,EACf,EAAE;IACf,IAAI,MAAM,gBAAgB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,EAAE,CAAC;QACtD,MAAM,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAA;IACjD,CAAC;AACL,CAAC,CAAA;AARY,QAAA,sBAAsB,0BAQlC;AAED,MAAM,gBAAgB,GAAG,KAAK,EAC1B,iBAAyB,EACzB,QAAkB,EACF,EAAE;IAClB,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE;QAC7C,uBAAuB,EAAE,MAAM,QAAQ,CAAC,kBAAkB,EAAE;KAC/D,CAAC,CAAA;IACF,IAAI,eAAe,CAAA;IACnB,IAAI,CAAC;QACD,eAAe,GAAG,MAAM,QAAQ,CAAC,2BAA2B,EAAE,CAAA;IAClE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAA;QAChF,OAAO,KAAK,CAAA,CAAC,+EAA+E;IAChG,CAAC;IACD,MAAM,KAAK,GAAG,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,GAAG,iBAAiB,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IACtG,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3E,OAAO,KAAK,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,KAAK,EACxB,QAAkB,EAClB,aAA4B,EACf,EAAE;IACf,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;IAC9B,IAAI,CAAC;QACD,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,iBAAiB,EAAE,CAAA;QAC9D,MAAM,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;QAC7C,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,cAAc,EAAE,CAAC,CAAA;IACvD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAA;IACtE,CAAC;AACL,CAAC,CAAA"}
@@ -1,2 +1,2 @@
1
- import { ContractFacade } from './ContractFacade';
2
- export declare const checkOperatorValueBreach: (contractFacade: ContractFacade, minSponsorshipEarningsInWithdraw: number, maxSponsorshipsInWithdraw: number) => Promise<void>;
1
+ import { StreamrClient, Operator } from '@streamr/sdk';
2
+ export declare const checkOperatorValueBreach: (myOperator: Operator, client: StreamrClient, minSponsorshipEarningsInWithdraw: number, maxSponsorshipsInWithdraw: number) => Promise<void>;
@@ -3,18 +3,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.checkOperatorValueBreach = void 0;
4
4
  const utils_1 = require("@streamr/utils");
5
5
  const logger = new utils_1.Logger(module);
6
- const checkOperatorValueBreach = async (contractFacade, minSponsorshipEarningsInWithdraw, maxSponsorshipsInWithdraw) => {
7
- const targetOperatorAddress = await contractFacade.getRandomOperator();
6
+ const checkOperatorValueBreach = async (myOperator, client, minSponsorshipEarningsInWithdraw, maxSponsorshipsInWithdraw) => {
7
+ const targetOperatorAddress = await myOperator.getRandomOperator();
8
8
  if (targetOperatorAddress === undefined) {
9
9
  logger.info('No operators found');
10
10
  return;
11
11
  }
12
12
  logger.info('Check other operator\'s earnings for breach', { targetOperatorAddress });
13
- const { sumDataWei, maxAllowedEarningsDataWei, sponsorshipAddresses } = await contractFacade.getEarningsOf(targetOperatorAddress, minSponsorshipEarningsInWithdraw, maxSponsorshipsInWithdraw);
13
+ const { sumDataWei, maxAllowedEarningsDataWei, sponsorshipAddresses } = await client.getOperator(targetOperatorAddress).getEarnings(minSponsorshipEarningsInWithdraw, maxSponsorshipsInWithdraw);
14
14
  logger.trace(` -> is ${sumDataWei} > ${maxAllowedEarningsDataWei}?`);
15
15
  if (sumDataWei > maxAllowedEarningsDataWei) {
16
16
  logger.info('Withdraw earnings from sponsorships (target operator value in breach)', { targetOperatorAddress, sponsorshipAddresses, sumDataWei, maxAllowedEarningsDataWei });
17
- await contractFacade.triggerWithdraw(targetOperatorAddress, sponsorshipAddresses);
17
+ await myOperator.triggerAnotherOperatorWithdraw(targetOperatorAddress, sponsorshipAddresses);
18
18
  }
19
19
  };
20
20
  exports.checkOperatorValueBreach = checkOperatorValueBreach;
@@ -1 +1 @@
1
- {"version":3,"file":"checkOperatorValueBreach.js","sourceRoot":"","sources":["../../../../src/plugins/operator/checkOperatorValueBreach.ts"],"names":[],"mappings":";;;AAAA,0CAAuC;AAGvC,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAE1B,MAAM,wBAAwB,GAAG,KAAK,EACzC,cAA8B,EAC9B,gCAAwC,EACxC,yBAAiC,EACpB,EAAE;IACf,MAAM,qBAAqB,GAAG,MAAM,cAAc,CAAC,iBAAiB,EAAE,CAAA;IACtE,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;QACjC,OAAM;IACV,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,6CAA6C,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAA;IACrF,MAAM,EAAE,UAAU,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,GAAG,MAAM,cAAc,CAAC,aAAa,CACtG,qBAAqB,EACrB,gCAAgC,EAChC,yBAAyB,CAC5B,CAAA;IACD,MAAM,CAAC,KAAK,CAAC,UAAU,UAAU,MAAM,yBAAyB,GAAG,CAAC,CAAA;IACpE,IAAI,UAAU,GAAG,yBAAyB,EAAE,CAAC;QACzC,MAAM,CAAC,IAAI,CAAC,uEAAuE,EAC/E,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,UAAU,EAAE,yBAAyB,EAAE,CAAC,CAAA;QAC3F,MAAM,cAAc,CAAC,eAAe,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,CAAA;IACrF,CAAC;AACL,CAAC,CAAA;AAtBY,QAAA,wBAAwB,4BAsBpC"}
1
+ {"version":3,"file":"checkOperatorValueBreach.js","sourceRoot":"","sources":["../../../../src/plugins/operator/checkOperatorValueBreach.ts"],"names":[],"mappings":";;;AACA,0CAAuC;AAEvC,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAE1B,MAAM,wBAAwB,GAAG,KAAK,EACzC,UAAoB,EACpB,MAAqB,EACrB,gCAAwC,EACxC,yBAAiC,EACpB,EAAE;IACf,MAAM,qBAAqB,GAAG,MAAM,UAAU,CAAC,iBAAiB,EAAE,CAAA;IAClE,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;QACjC,OAAM;IACV,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,6CAA6C,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAA;IACrF,MAAM,EAAE,UAAU,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC,WAAW,CAC/H,gCAAgC,EAChC,yBAAyB,CAC5B,CAAA;IACD,MAAM,CAAC,KAAK,CAAC,UAAU,UAAU,MAAM,yBAAyB,GAAG,CAAC,CAAA;IACpE,IAAI,UAAU,GAAG,yBAAyB,EAAE,CAAC;QACzC,MAAM,CAAC,IAAI,CAAC,uEAAuE,EAC/E,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,UAAU,EAAE,yBAAyB,EAAE,CAAC,CAAA;QAC3F,MAAM,UAAU,CAAC,8BAA8B,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,CAAA;IAChG,CAAC;AACL,CAAC,CAAA;AAtBY,QAAA,wBAAwB,4BAsBpC"}
@@ -1,3 +1,2 @@
1
- import { EthereumAddress } from '@streamr/utils';
2
- import { ContractFacade } from './ContractFacade';
3
- export declare const closeExpiredFlags: (maxAgeInMs: number, operatorContractAddress: EthereumAddress, contractFacade: ContractFacade) => Promise<void>;
1
+ import { Operator } from '@streamr/sdk';
2
+ export declare const closeExpiredFlags: (maxAgeInMs: number, operator: Operator) => Promise<void>;
@@ -3,21 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.closeExpiredFlags = void 0;
4
4
  const utils_1 = require("@streamr/utils");
5
5
  const logger = new utils_1.Logger(module);
6
- const closeExpiredFlags = async (maxAgeInMs, operatorContractAddress, contractFacade) => {
6
+ const closeExpiredFlags = async (maxAgeInMs, operator) => {
7
7
  logger.info('Start');
8
- const sponsorships = (await contractFacade.getSponsorshipsOfOperator(operatorContractAddress))
8
+ const sponsorships = (await operator.getSponsorships())
9
9
  .map((sponsorship) => sponsorship.sponsorshipAddress);
10
10
  logger.debug(`Found ${sponsorships.length} sponsorships`);
11
11
  if (sponsorships.length === 0) {
12
12
  return;
13
13
  }
14
- const flags = await contractFacade.getExpiredFlags(sponsorships, maxAgeInMs);
14
+ const flags = await operator.getExpiredFlags(sponsorships, maxAgeInMs);
15
15
  logger.debug(`Found ${flags.length} expired flags to close`);
16
16
  for (const flag of flags) {
17
- const operatorAddress = flag.target.id;
18
- const sponsorship = flag.sponsorship.id;
17
+ const operatorAddress = flag.targetOperator;
18
+ const sponsorship = flag.sponsorship;
19
19
  logger.info('Close expired flag', { flag });
20
- await contractFacade.closeFlag(sponsorship, operatorAddress);
20
+ await operator.closeFlag(sponsorship, operatorAddress);
21
21
  }
22
22
  };
23
23
  exports.closeExpiredFlags = closeExpiredFlags;
@@ -1 +1 @@
1
- {"version":3,"file":"closeExpiredFlags.js","sourceRoot":"","sources":["../../../../src/plugins/operator/closeExpiredFlags.ts"],"names":[],"mappings":";;;AAAA,0CAAwD;AAGxD,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAE1B,MAAM,iBAAiB,GAAG,KAAK,EAClC,UAAkB,EAClB,uBAAwC,EACxC,cAA8B,EACjB,EAAE;IACf,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAEpB,MAAM,YAAY,GAAG,CAAC,MAAM,cAAc,CAAC,yBAAyB,CAAC,uBAAuB,CAAC,CAAC;SACzF,GAAG,CAAC,CAAC,WAA8B,EAAE,EAAE,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAA;IAC5E,MAAM,CAAC,KAAK,CAAC,SAAS,YAAY,CAAC,MAAM,eAAe,CAAC,CAAA;IACzD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAM;IACV,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,eAAe,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;IAC5E,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,CAAC,MAAM,yBAAyB,CAAC,CAAA;IAC5D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;QACtC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAA;QACvC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3C,MAAM,cAAc,CAAC,SAAS,CAAC,WAAW,EAAE,eAAe,CAAC,CAAA;IAChE,CAAC;AACL,CAAC,CAAA;AArBY,QAAA,iBAAiB,qBAqB7B"}
1
+ {"version":3,"file":"closeExpiredFlags.js","sourceRoot":"","sources":["../../../../src/plugins/operator/closeExpiredFlags.ts"],"names":[],"mappings":";;;AACA,0CAAuC;AAEvC,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAE1B,MAAM,iBAAiB,GAAG,KAAK,EAClC,UAAkB,EAClB,QAAkB,EACL,EAAE;IACf,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAEpB,MAAM,YAAY,GAAG,CAAC,MAAM,QAAQ,CAAC,eAAe,EAAE,CAAC;SAClD,GAAG,CAAC,CAAC,WAA0C,EAAE,EAAE,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAA;IACxF,MAAM,CAAC,KAAK,CAAC,SAAS,YAAY,CAAC,MAAM,eAAe,CAAC,CAAA;IACzD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAM;IACV,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;IACtE,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,CAAC,MAAM,yBAAyB,CAAC,CAAA;IAC5D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAA;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;QACpC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3C,MAAM,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,eAAe,CAAC,CAAA;IAC1D,CAAC;AACL,CAAC,CAAA;AApBY,QAAA,iBAAiB,qBAoB7B"}
@@ -1,8 +1,7 @@
1
1
  /// <reference types="node" />
2
+ import { Operator, StreamrClient } from '@streamr/sdk';
2
3
  import { EthereumAddress } from '@streamr/utils';
4
+ import { CreateOperatorFleetStateFn } from './OperatorFleetState';
3
5
  import { StreamPartAssignments } from './StreamPartAssignments';
4
- import { StreamrClient } from '@streamr/sdk';
5
6
  import { findTarget } from './inspectionUtils';
6
- import { ContractFacade } from './ContractFacade';
7
- import { CreateOperatorFleetStateFn } from './OperatorFleetState';
8
- export declare function inspectRandomNode(operatorContractAddress: EthereumAddress, contractFacade: ContractFacade, assignments: StreamPartAssignments, streamrClient: StreamrClient, heartbeatTimeoutInMs: number, getRedundancyFactor: (operatorContractAddress: EthereumAddress) => Promise<number | undefined>, createOperatorFleetState: CreateOperatorFleetStateFn, abortSignal: AbortSignal, findTargetFn?: typeof findTarget): Promise<void>;
7
+ export declare function inspectRandomNode(operatorContractAddress: EthereumAddress, myOperator: Operator, assignments: StreamPartAssignments, streamrClient: StreamrClient, heartbeatTimeoutInMs: number, getRedundancyFactor: (operatorContractAddress: EthereumAddress) => Promise<number | undefined>, createOperatorFleetState: CreateOperatorFleetStateFn, abortSignal: AbortSignal, findTargetFn?: typeof findTarget): Promise<void>;
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.inspectRandomNode = void 0;
4
- const utils_1 = require("@streamr/utils");
5
4
  const protocol_1 = require("@streamr/protocol");
6
- const inspectionUtils_1 = require("./inspectionUtils");
5
+ const utils_1 = require("@streamr/utils");
7
6
  const inspectOverTime_1 = require("./inspectOverTime");
8
- async function inspectRandomNode(operatorContractAddress, contractFacade, assignments, streamrClient, heartbeatTimeoutInMs, getRedundancyFactor, createOperatorFleetState, abortSignal, findTargetFn = inspectionUtils_1.findTarget) {
7
+ const inspectionUtils_1 = require("./inspectionUtils");
8
+ async function inspectRandomNode(operatorContractAddress, myOperator, assignments, streamrClient, heartbeatTimeoutInMs, getRedundancyFactor, createOperatorFleetState, abortSignal, findTargetFn = inspectionUtils_1.findTarget) {
9
9
  const traceId = (0, utils_1.randomString)(6);
10
10
  const logger = new utils_1.Logger(module, { traceId });
11
11
  logger.info('Select a random operator to inspect');
12
- const target = await findTargetFn(operatorContractAddress, contractFacade, assignments, logger);
12
+ const target = await findTargetFn(operatorContractAddress, myOperator, assignments, streamrClient, logger);
13
13
  if (target === undefined) {
14
14
  return;
15
15
  }
@@ -32,13 +32,13 @@ async function inspectRandomNode(operatorContractAddress, contractFacade, assign
32
32
  logger.info('Not raising flag', { target });
33
33
  return;
34
34
  }
35
- const flagAlreadyRaised = await contractFacade.hasOpenFlag(target.operatorAddress, target.sponsorshipAddress);
35
+ const flagAlreadyRaised = await streamrClient.getOperator(target.operatorAddress).hasOpenFlag(target.sponsorshipAddress);
36
36
  if (flagAlreadyRaised) {
37
37
  logger.info('Not raising flag (target already has open flag)', { target });
38
38
  return;
39
39
  }
40
40
  logger.info('Raise flag', { target });
41
- await contractFacade.flag(target.sponsorshipAddress, target.operatorAddress, protocol_1.StreamPartIDUtils.getStreamPartition(target.streamPart));
41
+ await myOperator.flag(target.sponsorshipAddress, target.operatorAddress, protocol_1.StreamPartIDUtils.getStreamPartition(target.streamPart));
42
42
  }
43
43
  exports.inspectRandomNode = inspectRandomNode;
44
44
  //# sourceMappingURL=inspectRandomNode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inspectRandomNode.js","sourceRoot":"","sources":["../../../../src/plugins/operator/inspectRandomNode.ts"],"names":[],"mappings":";;;AAAA,0CAAsE;AAGtE,gDAAqD;AACrD,uDAA8C;AAG9C,uDAAmD;AAE5C,KAAK,UAAU,iBAAiB,CACnC,uBAAwC,EACxC,cAA8B,EAC9B,WAAkC,EAClC,aAA4B,EAC5B,oBAA4B,EAC5B,mBAA8F,EAC9F,wBAAoD,EACpD,WAAwB,EACxB,YAAY,GAAG,4BAAU;IAEzB,MAAM,OAAO,GAAG,IAAA,oBAAY,EAAC,CAAC,CAAC,CAAA;IAC/B,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;IAC9C,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAA;IAElD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,uBAAuB,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;IAC/F,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,OAAM;IACV,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;IAE9C,MAAM,cAAc,GAAG,IAAA,iCAAe,EAAC;QACnC,MAAM;QACN,aAAa;QACb,wBAAwB;QACxB,mBAAmB;QACnB,kCAAkC,EAAE,CAAC;QACrC,oBAAoB;QACpB,sBAAsB,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI;QACrC,cAAc,EAAE,EAAE;QAClB,mBAAmB,EAAE,IAAI;QACzB,WAAW;QACX,OAAO;KACV,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,MAAM,cAAc,EAAE,CAAA;IACtC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAC3C,OAAM;IACV,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAA;IAC7G,IAAI,iBAAiB,EAAE,CAAC;QACpB,MAAM,CAAC,IAAI,CAAC,iDAAiD,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAC1E,OAAM;IACV,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;IACrC,MAAM,cAAc,CAAC,IAAI,CACrB,MAAM,CAAC,kBAAkB,EACzB,MAAM,CAAC,eAAe,EACtB,4BAAiB,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAC1D,CAAA;AACL,CAAC;AArDD,8CAqDC"}
1
+ {"version":3,"file":"inspectRandomNode.js","sourceRoot":"","sources":["../../../../src/plugins/operator/inspectRandomNode.ts"],"names":[],"mappings":";;;AAAA,gDAAqD;AAErD,0CAAsE;AAGtE,uDAAmD;AACnD,uDAA8C;AAEvC,KAAK,UAAU,iBAAiB,CACnC,uBAAwC,EACxC,UAAoB,EACpB,WAAkC,EAClC,aAA4B,EAC5B,oBAA4B,EAC5B,mBAA8F,EAC9F,wBAAoD,EACpD,WAAwB,EACxB,YAAY,GAAG,4BAAU;IAEzB,MAAM,OAAO,GAAG,IAAA,oBAAY,EAAC,CAAC,CAAC,CAAA;IAC/B,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;IAC9C,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAA;IAElD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,uBAAuB,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC,CAAA;IAC1G,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,OAAM;IACV,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;IAE9C,MAAM,cAAc,GAAG,IAAA,iCAAe,EAAC;QACnC,MAAM;QACN,aAAa;QACb,wBAAwB;QACxB,mBAAmB;QACnB,kCAAkC,EAAE,CAAC;QACrC,oBAAoB;QACpB,sBAAsB,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI;QACrC,cAAc,EAAE,EAAE;QAClB,mBAAmB,EAAE,IAAI;QACzB,WAAW;QACX,OAAO;KACV,CAAC,CAAA;IAEF,MAAM,OAAO,GAAG,MAAM,cAAc,EAAE,CAAA;IACtC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAC3C,OAAM;IACV,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAA;IACxH,IAAI,iBAAiB,EAAE,CAAC;QACpB,MAAM,CAAC,IAAI,CAAC,iDAAiD,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAC1E,OAAM;IACV,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;IACrC,MAAM,UAAU,CAAC,IAAI,CACjB,MAAM,CAAC,kBAAkB,EACzB,MAAM,CAAC,eAAe,EACtB,4BAAiB,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAC1D,CAAA;AACL,CAAC;AArDD,8CAqDC"}
@@ -1,10 +1,9 @@
1
1
  /// <reference types="node" />
2
- import { NetworkPeerDescriptor, StreamrClient } from '@streamr/sdk';
3
- import { OperatorFleetState } from './OperatorFleetState';
4
2
  import { StreamPartID } from '@streamr/protocol';
3
+ import { NetworkPeerDescriptor, Operator, StreamrClient } from '@streamr/sdk';
5
4
  import { EthereumAddress, Logger } from '@streamr/utils';
5
+ import { OperatorFleetState } from './OperatorFleetState';
6
6
  import { StreamPartAssignments } from './StreamPartAssignments';
7
- import { ContractFacade } from './ContractFacade';
8
7
  export type FindNodesForTargetGivenFleetStateFn = typeof findNodesForTargetGivenFleetState;
9
8
  export type InspectTargetFn = typeof inspectTarget;
10
9
  export interface Target {
@@ -12,7 +11,7 @@ export interface Target {
12
11
  operatorAddress: EthereumAddress;
13
12
  streamPart: StreamPartID;
14
13
  }
15
- export declare function findTarget(myOperatorContractAddress: EthereumAddress, contractFacade: ContractFacade, assignments: StreamPartAssignments, logger: Logger): Promise<Target | undefined>;
14
+ export declare function findTarget(myOperatorContractAddress: EthereumAddress, myOperator: Operator, assignments: StreamPartAssignments, streamrClient: StreamrClient, logger: Logger): Promise<Target | undefined>;
16
15
  export declare function findNodesForTargetGivenFleetState(target: Target, targetOperatorFleetState: OperatorFleetState, getRedundancyFactor: (operatorContractAddress: EthereumAddress) => Promise<number | undefined>, logger: Logger): Promise<NetworkPeerDescriptor[]>;
17
16
  export declare function inspectTarget({ target, targetPeerDescriptors, streamrClient, abortSignal, logger }: {
18
17
  target: Target;