Skip to content

Commit

Permalink
Merge pull request #239 from valory-xyz/feat/daa
Browse files Browse the repository at this point in the history
Feat/daa
  • Loading branch information
dvilelaf authored Nov 29, 2024
2 parents 4d03010 + d162f89 commit 6ea1220
Show file tree
Hide file tree
Showing 27 changed files with 339 additions and 74 deletions.
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ In order to run a local demo service based on the IEKit:
2. Fetch the IEKit.

```bash
autonomy fetch valory/impact_evaluator:0.1.0:bafybeifzeyvfcio7k6izng3y2tn434h26tz2cl27uqwnkgzqk3r23lcngm --service
autonomy fetch valory/impact_evaluator:0.1.0:bafybeiagstbaqjtne235ejgne2s7qat2j24ue4ezdhbhmlipgev3e7dqe4 --service
```

3. Build the Docker image of the service agents
Expand Down
20 changes: 10 additions & 10 deletions packages/packages.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,24 +15,24 @@
"connection/valory/twitter/0.1.0": "bafybeiankzrpgovfe34wbxxwzmrg6lbdpe2uegcu4ujtswuopr3b7fsqdq",
"connection/valory/openai/0.1.0": "bafybeibsevvadjkf4fdfbw23ett6e5l4whsxbiwzezdgbmlsin2jidbhcu",
"connection/valory/farcaster/0.1.0": "bafybeibbdas7lxbipksodaphjms3uop7vnzjqkroktjq2g6wbvgtlldaxi",
"skill/valory/dynamic_nft_abci/0.1.0": "bafybeiee4rxt3kcdy4xo36micyrlxgil5dufmcnjrnlmcjvoibwjhqh73a",
"skill/valory/twitter_scoring_abci/0.1.0": "bafybeidmuebntwyf653f3k6nfrrtaeh3rlnyulp7gutgs4mmbo5qadr26e",
"skill/valory/dynamic_nft_abci/0.1.0": "bafybeichdqvj7jowsmmkwsh24w2lf4pntgjfcfaconeouwumyjjqh3xhh4",
"skill/valory/twitter_scoring_abci/0.1.0": "bafybeidwoqhgrppbmi25vxgy54gd2ord4ojmcr6b4k7dh4gqju3zy4oeuq",
"skill/valory/ceramic_read_abci/0.1.0": "bafybeibph35jhtvn6kgytj6mqdz4lpjkvtfqd75qorrt4onv6i2trxfttu",
"skill/valory/ceramic_write_abci/0.1.0": "bafybeihez2zrvvt6cyi5vu3fpomjlbo3v4fzyf4buv7ysxzj4dntr2wy3q",
"skill/valory/impact_evaluator_abci/0.1.0": "bafybeibfzbas5e4n253stcei5b5esizm3pw77vtsfvxr55nygz3z2w52dy",
"skill/valory/generic_scoring_abci/0.1.0": "bafybeie7v55simzep52usq6xe7x3basl7gpgkj6s6ye5fjxxwncov2g4pi",
"skill/valory/impact_evaluator_abci/0.1.0": "bafybeibfegizhdnpptdypjevzyqm7zd525rwmalpanu7dfnj4zueapgeti",
"skill/valory/generic_scoring_abci/0.1.0": "bafybeiej5iwzfvoan4kp4erfxva3h5vrrmon6ahbyupa2jdfypy5i25t5y",
"skill/valory/twitter_write_abci/0.1.0": "bafybeig4dc4cereyshk535pfpparvxiuaimdu4lsm3hnl5li7pxafho6lu",
"skill/valory/llm_abci/0.1.0": "bafybeife2ymfi54jtoarjrwm3nszc4scnxfrkmfeo33rjvufyr66auicse",
"skill/valory/decision_making_abci/0.1.0": "bafybeibvhg6nzs7os3c4enox6cc6ey42kkh62jrv5jpb5kpcjmykeblwmi",
"skill/valory/olas_week_abci/0.1.0": "bafybeiecbiznyj7ameijrpajwxcfmwt45edzjkfkrfnnhcwfb4fkdxbsuy",
"skill/valory/decision_making_abci/0.1.0": "bafybeie52kvwrsh4dyt45amlffclkdttclig33dyc4crb425zf2bcot36u",
"skill/valory/olas_week_abci/0.1.0": "bafybeibxaejlnyo5ngrw3mrcr74ca762w7hupfn4ow44fmmvuxefrv664m",
"skill/valory/mech_interact_abci/0.1.0": "bafybeib4vn6m2yumwoclh5aatcdt5yxcjc5owxmxy5o7t3nfzormgwkr64",
"skill/valory/farcaster_write_abci/0.1.0": "bafybeibbbfui3g2s63cg5vsvxqpzzdg2uxhd7a4ikwfo6dy7b2klqthvu4",
"skill/valory/farcaster_test_abci/0.1.0": "bafybeiblauv376hvy7dzi232fxf6iq5nxxnhvk2gy6g7kcsj7a4r2bilqa",
"skill/valory/staking_abci/0.1.0": "bafybeiapp5q6x4mzmqa5l6t6nvnvo6ktoglnhaorncpipv3uxl5reqlwkm",
"agent/valory/impact_evaluator/0.1.0": "bafybeidwu3eh3lyvrisdiq4xcp43xh4pcqo4kbvbyyj3hpdkdfwcm4muw4",
"skill/valory/staking_abci/0.1.0": "bafybeie3wypei4kt35trwpa26ocn3zvxb6a45ch2wzbsaev3fxg6lj7yqm",
"agent/valory/impact_evaluator/0.1.0": "bafybeibwdz36lvhxir7q46l3canspsm56q6dzlfa67ubtw3ddfxxobh3ly",
"agent/valory/farcaster_test/0.1.0": "bafybeig6yilme5s7fvru2b44dtr5xxqz3gf7p56swr7c5hip775l5wally",
"service/valory/impact_evaluator/0.1.0": "bafybeifzeyvfcio7k6izng3y2tn434h26tz2cl27uqwnkgzqk3r23lcngm",
"service/valory/impact_evaluator_local/0.1.0": "bafybeihluhnfjfpov3pzvywiag4c5w5xxcjdpbyrvfegviqzlfwl57eioq"
"service/valory/impact_evaluator/0.1.0": "bafybeiagstbaqjtne235ejgne2s7qat2j24ue4ezdhbhmlipgev3e7dqe4",
"service/valory/impact_evaluator_local/0.1.0": "bafybeihvww5todlcdomnkuqj5rjavakttq4mevfs4mvmwekinscgi666bi"
},
"third_party": {
"protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi",
Expand Down
14 changes: 7 additions & 7 deletions packages/valory/agents/impact_evaluator/aea-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,22 +46,22 @@ protocols:
skills:
- valory/abstract_abci:0.1.0:bafybeif2naoydlrqkdpnig34uejedwgurjwyvmbpcz53tif7pyukfdophq
- valory/abstract_round_abci:0.1.0:bafybeigjddhk7epta7xpnfvv426xedff5abh4xlkwi6cqgp4vkutgkvydm
- valory/impact_evaluator_abci:0.1.0:bafybeibfzbas5e4n253stcei5b5esizm3pw77vtsfvxr55nygz3z2w52dy
- valory/generic_scoring_abci:0.1.0:bafybeie7v55simzep52usq6xe7x3basl7gpgkj6s6ye5fjxxwncov2g4pi
- valory/twitter_scoring_abci:0.1.0:bafybeidmuebntwyf653f3k6nfrrtaeh3rlnyulp7gutgs4mmbo5qadr26e
- valory/impact_evaluator_abci:0.1.0:bafybeibfegizhdnpptdypjevzyqm7zd525rwmalpanu7dfnj4zueapgeti
- valory/generic_scoring_abci:0.1.0:bafybeiej5iwzfvoan4kp4erfxva3h5vrrmon6ahbyupa2jdfypy5i25t5y
- valory/twitter_scoring_abci:0.1.0:bafybeidwoqhgrppbmi25vxgy54gd2ord4ojmcr6b4k7dh4gqju3zy4oeuq
- valory/ceramic_read_abci:0.1.0:bafybeibph35jhtvn6kgytj6mqdz4lpjkvtfqd75qorrt4onv6i2trxfttu
- valory/ceramic_write_abci:0.1.0:bafybeihez2zrvvt6cyi5vu3fpomjlbo3v4fzyf4buv7ysxzj4dntr2wy3q
- valory/dynamic_nft_abci:0.1.0:bafybeiee4rxt3kcdy4xo36micyrlxgil5dufmcnjrnlmcjvoibwjhqh73a
- valory/dynamic_nft_abci:0.1.0:bafybeichdqvj7jowsmmkwsh24w2lf4pntgjfcfaconeouwumyjjqh3xhh4
- valory/registration_abci:0.1.0:bafybeiagi6e2h7kochmlemy5c5yk6hwn37tfxiqvk2en74jhowsdwlmrny
- valory/reset_pause_abci:0.1.0:bafybeiezfedmmseox3ce5aucxsiszdmvskrwwbtpb2a3vw3sbmc5jt7nri
- valory/termination_abci:0.1.0:bafybeiea67epwwgngp7b3wavs6hpkaxv6etyaps6g6325bchfnf354mibq
- valory/transaction_settlement_abci:0.1.0:bafybeifmgmwdkx4esemxjacjwzqkqymkuklb5nehkwqkx7v335fllgswcq
- valory/twitter_write_abci:0.1.0:bafybeig4dc4cereyshk535pfpparvxiuaimdu4lsm3hnl5li7pxafho6lu
- valory/decision_making_abci:0.1.0:bafybeibvhg6nzs7os3c4enox6cc6ey42kkh62jrv5jpb5kpcjmykeblwmi
- valory/decision_making_abci:0.1.0:bafybeie52kvwrsh4dyt45amlffclkdttclig33dyc4crb425zf2bcot36u
- valory/llm_abci:0.1.0:bafybeife2ymfi54jtoarjrwm3nszc4scnxfrkmfeo33rjvufyr66auicse
- valory/olas_week_abci:0.1.0:bafybeiecbiznyj7ameijrpajwxcfmwt45edzjkfkrfnnhcwfb4fkdxbsuy
- valory/olas_week_abci:0.1.0:bafybeibxaejlnyo5ngrw3mrcr74ca762w7hupfn4ow44fmmvuxefrv664m
- valory/mech_interact_abci:0.1.0:bafybeib4vn6m2yumwoclh5aatcdt5yxcjc5owxmxy5o7t3nfzormgwkr64
- valory/staking_abci:0.1.0:bafybeiapp5q6x4mzmqa5l6t6nvnvo6ktoglnhaorncpipv3uxl5reqlwkm
- valory/staking_abci:0.1.0:bafybeie3wypei4kt35trwpa26ocn3zvxb6a45ch2wzbsaev3fxg6lj7yqm
default_ledger: ethereum
required_ledgers:
- ethereum
Expand Down
2 changes: 1 addition & 1 deletion packages/valory/services/impact_evaluator/service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ license: Apache-2.0
fingerprint:
README.md: bafybeign56hilwuoa6bgos3uqabss4gew4vadkik7vhj3ucpqw6nxtqtpe
fingerprint_ignore_patterns: []
agent: valory/impact_evaluator:0.1.0:bafybeidwu3eh3lyvrisdiq4xcp43xh4pcqo4kbvbyyj3hpdkdfwcm4muw4
agent: valory/impact_evaluator:0.1.0:bafybeibwdz36lvhxir7q46l3canspsm56q6dzlfa67ubtw3ddfxxobh3ly
number_of_agents: 4
deployment:
agent:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ license: Apache-2.0
fingerprint:
README.md: bafybeign56hilwuoa6bgos3uqabss4gew4vadkik7vhj3ucpqw6nxtqtpe
fingerprint_ignore_patterns: []
agent: valory/impact_evaluator:0.1.0:bafybeidwu3eh3lyvrisdiq4xcp43xh4pcqo4kbvbyyj3hpdkdfwcm4muw4
agent: valory/impact_evaluator:0.1.0:bafybeibwdz36lvhxir7q46l3canspsm56q6dzlfa67ubtw3ddfxxobh3ly
number_of_agents: 1
deployment:
agent:
Expand Down
8 changes: 8 additions & 0 deletions packages/valory/skills/decision_making_abci/behaviours.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
from packages.valory.skills.decision_making_abci.tasks.staking import (
StakingActivityPreparation,
StakingCheckpointPreparation,
StakingDAAPreparation,
)
from packages.valory.skills.decision_making_abci.tasks.tweet_validation_preparation import (
TweetValidationPreparation,
Expand Down Expand Up @@ -134,6 +135,10 @@
},
Event.STAKING_CHECKPOINT.value: {
"prev": StakingCheckpointPreparation,
"next": StakingDAAPreparation,
},
Event.STAKING_DAA_UPDATE.value: {
"prev": StakingDAAPreparation,
"next": UpdateCentaursPreparation,
},
Event.UPDATE_CENTAURS.value: {
Expand Down Expand Up @@ -344,6 +349,9 @@ def get_event(self) -> str:
if tx_submitter == "checkpoint_preparation_behaviour":
return Event.POST_TX_CHECKPOINT.value

if tx_submitter == "d_a_a_preparation_behaviour":
return Event.POST_TX_DAA.value

# This is a mech request
return Event.POST_TX_MECH.value

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ alphabet_in:
- NO_MAJORITY
- POST_TX_ACTIVITY_UPDATE
- POST_TX_CHECKPOINT
- POST_TX_DAA
- POST_TX_MECH
- READ_CENTAURS
- READ_CONTRIBUTE_DB
Expand All @@ -18,6 +19,7 @@ alphabet_in:
- SCORE
- STAKING_ACTIVITY
- STAKING_CHECKPOINT
- STAKING_DAA_UPDATE
- TWEET_VALIDATION
- UPDATE_CENTAURS
- WEEK_IN_OLAS_CREATE
Expand All @@ -26,6 +28,7 @@ default_start_state: DecisionMakingRound
final_states:
- FinishedDecisionMakingActivityRound
- FinishedDecisionMakingCheckpointRound
- FinishedDecisionMakingDAARound
- FinishedDecisionMakingDoneRound
- FinishedDecisionMakingLLMRound
- FinishedDecisionMakingReadCentaursRound
Expand All @@ -39,6 +42,7 @@ final_states:
- FinishedDecisionMakingWriteTwitterRound
- FinishedPostActivityUpdateRound
- FinishedPostCheckpointRound
- FinishedPostDAARound
- FinishedPostMechResponseRound
label: DecisionMakingAbciApp
start_states:
Expand All @@ -48,6 +52,7 @@ states:
- DecisionMakingRound
- FinishedDecisionMakingActivityRound
- FinishedDecisionMakingCheckpointRound
- FinishedDecisionMakingDAARound
- FinishedDecisionMakingDoneRound
- FinishedDecisionMakingLLMRound
- FinishedDecisionMakingReadCentaursRound
Expand All @@ -61,6 +66,7 @@ states:
- FinishedDecisionMakingWriteTwitterRound
- FinishedPostActivityUpdateRound
- FinishedPostCheckpointRound
- FinishedPostDAARound
- FinishedPostMechResponseRound
- PostTxDecisionMakingRound
transition_func:
Expand All @@ -80,6 +86,7 @@ transition_func:
(DecisionMakingRound, SCORE): FinishedDecisionMakingScoreRound
(DecisionMakingRound, STAKING_ACTIVITY): FinishedDecisionMakingActivityRound
(DecisionMakingRound, STAKING_CHECKPOINT): FinishedDecisionMakingCheckpointRound
(DecisionMakingRound, STAKING_DAA_UPDATE): FinishedDecisionMakingDAARound
(DecisionMakingRound, TWEET_VALIDATION): DecisionMakingRound
(DecisionMakingRound, UPDATE_CENTAURS): FinishedDecisionMakingUpdateCentaurRound
(DecisionMakingRound, WEEK_IN_OLAS_CREATE): FinishedDecisionMakingWeekInOlasRound
Expand All @@ -88,4 +95,5 @@ transition_func:
(PostTxDecisionMakingRound, NO_MAJORITY): PostTxDecisionMakingRound
(PostTxDecisionMakingRound, POST_TX_ACTIVITY_UPDATE): FinishedPostActivityUpdateRound
(PostTxDecisionMakingRound, POST_TX_CHECKPOINT): FinishedPostCheckpointRound
(PostTxDecisionMakingRound, POST_TX_DAA): FinishedPostDAARound
(PostTxDecisionMakingRound, POST_TX_MECH): FinishedPostMechResponseRound
22 changes: 20 additions & 2 deletions packages/valory/skills/decision_making_abci/rounds.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@ class Event(Enum):
POST_TX_MECH = "post_tx_mech"
POST_TX_ACTIVITY_UPDATE = "post_tx_activity_update"
POST_TX_CHECKPOINT = "post_tx_checkpoint"
STAKING_DAA_UPDATE = "staking_daa_update"
POST_TX_DAA = "post_tx_daa"


class SynchronizedData(BaseSynchronizedData):
Expand Down Expand Up @@ -169,7 +171,7 @@ def end_block(self) -> Optional[Tuple[BaseSynchronizedData, Event]]:
# Event.SCHEDULED_TWEET, Event.LLM, Event.DAILY_ORBIS, Event.DAILY_TWEET, Event.NEXT_CENTAUR
# Event.SCORE, Event.READ_CONTRIBUTE_DB, Event.READ_MANUAL_POINTS, Event.WRITE_CONTRIBUTE_DB
# Event.WEEK_IN_OLAS_CREATE, Event.TWEET_VALIDATION, Event.FORCE_DB_UPDATE, Event.CAMPAIGN_VALIDATION
# Event.STAKING_ACTIVITY, Event.STAKING_CHECKPOINT
# Event.STAKING_ACTIVITY, Event.STAKING_CHECKPOINT, Event.STAKING_DAA_UPDATE

payload = json.loads(self.most_voted_payload)
event = Event(payload["event"])
Expand Down Expand Up @@ -211,7 +213,7 @@ def end_block(self) -> Optional[Tuple[BaseSynchronizedData, Event]]:
# We reference all the events here to prevent the check-abciapp-specs tool from complaining
# since this round receives the event via payload
# Event.DONE, Event.NO_MAJORITY
# Event.POST_TX_MECH, Event.POST_TX_ACTIVITY_UPDATE, Event.POST_TX_CHECKPOINT
# Event.POST_TX_MECH, Event.POST_TX_ACTIVITY_UPDATE, Event.POST_TX_CHECKPOINT, Event.POST_TX_DAA

event = Event(self.most_voted_payload)
return self.synchronized_data, event
Expand Down Expand Up @@ -275,6 +277,10 @@ class FinishedDecisionMakingCheckpointRound(DegenerateRound):
"""FinishedDecisionMakingCheckpointRound"""


class FinishedDecisionMakingDAARound(DegenerateRound):
"""FinishedDecisionMakingDAARound"""


class FinishedPostMechResponseRound(DegenerateRound):
"""FinishedPostMechResponseRound"""

Expand All @@ -287,6 +293,10 @@ class FinishedPostCheckpointRound(DegenerateRound):
"""FinishedPostCheckpointRound"""


class FinishedPostDAARound(DegenerateRound):
"""FinishedPostDAARound"""


class DecisionMakingAbciApp(AbciApp[Event]):
"""DecisionMakingAbciApp"""

Expand Down Expand Up @@ -314,11 +324,13 @@ class DecisionMakingAbciApp(AbciApp[Event]):
Event.CAMPAIGN_VALIDATION: DecisionMakingRound,
Event.STAKING_ACTIVITY: FinishedDecisionMakingActivityRound,
Event.STAKING_CHECKPOINT: FinishedDecisionMakingCheckpointRound,
Event.STAKING_DAA_UPDATE: FinishedDecisionMakingDAARound,
},
PostTxDecisionMakingRound: {
Event.POST_TX_MECH: FinishedPostMechResponseRound,
Event.POST_TX_ACTIVITY_UPDATE: FinishedPostActivityUpdateRound,
Event.POST_TX_CHECKPOINT: FinishedPostCheckpointRound,
Event.POST_TX_DAA: FinishedPostDAARound,
Event.DONE: PostTxDecisionMakingRound,
Event.NO_MAJORITY: PostTxDecisionMakingRound,
},
Expand All @@ -338,6 +350,8 @@ class DecisionMakingAbciApp(AbciApp[Event]):
FinishedPostMechResponseRound: {},
FinishedPostActivityUpdateRound: {},
FinishedPostCheckpointRound: {},
FinishedPostDAARound: {},
FinishedDecisionMakingDAARound: {},
}
final_states: Set[AppState] = {
FinishedDecisionMakingReadCentaursRound,
Expand All @@ -356,6 +370,8 @@ class DecisionMakingAbciApp(AbciApp[Event]):
FinishedPostMechResponseRound,
FinishedPostActivityUpdateRound,
FinishedPostCheckpointRound,
FinishedPostDAARound,
FinishedDecisionMakingDAARound,
}
event_to_timeout: EventToTimeout = {
Event.ROUND_TIMEOUT: 30.0,
Expand All @@ -382,4 +398,6 @@ class DecisionMakingAbciApp(AbciApp[Event]):
FinishedPostMechResponseRound: set(),
FinishedPostActivityUpdateRound: set(),
FinishedPostCheckpointRound: set(),
FinishedPostDAARound: set(),
FinishedDecisionMakingDAARound: set(),
}
10 changes: 5 additions & 5 deletions packages/valory/skills/decision_making_abci/skill.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,20 +7,20 @@ license: Apache-2.0
aea_version: '>=1.0.0, <2.0.0'
fingerprint:
__init__.py: bafybeicq2o3mkcgbmi4hkmpr3c6fieemutea2gxthymxnbhpemrzlcp2la
behaviours.py: bafybeicrecygn3grh42mb6dvjxgul3zvhrqwea4xq5aulcppvycupgjyoe
behaviours.py: bafybeigwtxrg5yz3cth32azgngvofrsvduaownukivld44sea2eqvu5q2i
dialogues.py: bafybeic5nwnax5tz6plxi5rww6davp23vgb6fixnlhzv2isoknuvb2bhye
fsm_specification.yaml: bafybeidw4kakgv56qrlowz4efgtkh6jzopcdnkktjwuyiruaapgxbgw4me
fsm_specification.yaml: bafybeihckbzmtewjwlbdvghzuadspopa25gsvtkgud5v6ymob6bnt4pium
handlers.py: bafybeibo54pwzdc5o4zwsqqaveiebxsfqtk2px5nh662bb5mxydtc2oz5q
models.py: bafybeiatvo5f3kt5euaeddnrhnkjoznarjnnscwn2vgr3hq3qdd5xtwcau
payloads.py: bafybeic6jrms2xs2odykwwngr5yyqm6cus7cyihdbxux26glpq3573q3ay
rounds.py: bafybeigggtlatqsymrvlo522vvmbrq5nz3k7mtkxufj2ltrgbtuqhlyji4
rounds.py: bafybeigzdnn6u6hxjxkdnn4ei77svbml6lwvowzyoh3ttagevpx5ursaba
tasks/campaign_validation_preparation.py: bafybeiafgc7lzgtl6qwo3qsdpskipm4qeby6c5nmltm4x4yp3zcwn5a6z4
tasks/finished_pipeline_preparation.py: bafybeid652b53p7mtsbj3ksko3g2eezvg4nut2vukwvnfhxyfi4zkx3dym
tasks/llm_preparation.py: bafybeigivqniwvqzmhpqytrn5gz3gb5caa6nlvctkbycbk4cmtut6hvuvi
tasks/read_stream_preparation.py: bafybeicmjasiyecopfweobodzbmn3tbluu5q724uzzqkit6urn3lb5q354
tasks/score_preparations.py: bafybeie7cfot24zcyod5becz6t5lasvva77httfkw57qmvgjk35d3qluxa
tasks/signature_validation.py: bafybeihbwrv72hnh3ytko2i5oszqgdky2j6h2wse45wvuhf2j32lo2tsjy
tasks/staking.py: bafybeihmzs7tv4hxie2lia2unbn3y5mbre4dyii2xvns6rzpvz6lpinjby
tasks/staking.py: bafybeihg54pf7ekzzped6tulzfv74vkeyfijlgzsgmlr7ndyq642qtixtu
tasks/task_preparations.py: bafybeihfm3ms665fvz2qwmhmcwgl2ws5mt62pykomowoxpm6a46jlqvsmu
tasks/tweet_validation_preparation.py: bafybeif3wbfskiyuij7unx72euklms7owrzwzgdu462xatvypalm6xrgca
tasks/twitter_preparation.py: bafybeicn7stcvmd6oex55dwptwxpikpssbcwnj2d3xkercikg5nlzqh4k4
Expand Down Expand Up @@ -58,7 +58,7 @@ protocols:
skills:
- valory/abstract_round_abci:0.1.0:bafybeigjddhk7epta7xpnfvv426xedff5abh4xlkwi6cqgp4vkutgkvydm
- valory/ceramic_read_abci:0.1.0:bafybeibph35jhtvn6kgytj6mqdz4lpjkvtfqd75qorrt4onv6i2trxfttu
- valory/staking_abci:0.1.0:bafybeiapp5q6x4mzmqa5l6t6nvnvo6ktoglnhaorncpipv3uxl5reqlwkm
- valory/staking_abci:0.1.0:bafybeie3wypei4kt35trwpa26ocn3zvxb6a45ch2wzbsaev3fxg6lj7yqm
behaviours:
main:
args: {}
Expand Down
44 changes: 40 additions & 4 deletions packages/valory/skills/decision_making_abci/tasks/staking.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,8 @@ def get_epoch_end(
) -> Generator[None, None, Optional[datetime]]:
"""Get the epoch end"""

self.logger.info(f"Getting epoch end for {staking_contract_address}")

contract_api_msg = yield from self.behaviour.get_contract_api_response(
performative=ContractApiMessage.Performative.GET_STATE, # type: ignore
contract_address=staking_contract_address,
Expand All @@ -120,6 +122,7 @@ def get_epoch_end(

epoch_end_ts = contract_api_msg.state.body["epoch_end"]
epoch_end = datetime.fromtimestamp(epoch_end_ts, tz=timezone.utc)
self.logger.info(f"Epoch end is {epoch_end}")
return epoch_end

def is_epoch_ending(self, staking_contract_address) -> Generator[None, None, bool]:
Expand Down Expand Up @@ -332,13 +335,14 @@ def get_activity_updates(
k: v["points"] for k, v in this_epoch_not_counted_tweets.items()
}

(
multisig_to_updates[service_multisig],
user_to_counted_tweets[user_id],
) = group_tweets(
(updates, selected_tweets) = group_tweets(
not_counted_tweet_id_to_points, points_pending_from_previous_run
)

if updates:
multisig_to_updates[service_multisig] = updates
user_to_counted_tweets[user_id] = selected_tweets

self.context.logger.info(f"Calculated activity updates: {multisig_to_updates}")
self.context.logger.info(
f"Tweets included in the potential update: {user_to_counted_tweets}"
Expand Down Expand Up @@ -370,3 +374,35 @@ def check_extra_conditions(self):

self.context.logger.info("Not time to call the checkpoint yet.")
return False


class StakingDAAPreparation(TaskPreparation):
"""StakingDAAPreparation"""

task_name = "staking_daa"
task_event = Event.STAKING_DAA_UPDATE.value

def _pre_task(self):
"""Preparations before running the task"""
yield
updates = {}
return updates, self.task_event

def _post_task(self):
"""Preparations after running the task"""
centaurs_data = self.synchronized_data.centaurs_data
current_centaur = centaurs_data[self.synchronized_data.current_centaur_index]

# Update the last run time
current_centaur["configuration"]["plugins"][self.task_name][
"last_run"
] = self.now_utc.strftime("%Y-%m-%d %H:%M:%S %Z")

updates = {"centaurs_data": centaurs_data, "has_centaurs_changes": True}
yield
return updates, None

def check_extra_conditions(self):
"""Check user staking threshold"""
yield
return True
2 changes: 1 addition & 1 deletion packages/valory/skills/dynamic_nft_abci/skill.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ protocols:
- valory/http:1.0.0:bafybeifugzl63kfdmwrxwphrnrhj7bn6iruxieme3a4ntzejf6kmtuwmae
skills:
- valory/abstract_round_abci:0.1.0:bafybeigjddhk7epta7xpnfvv426xedff5abh4xlkwi6cqgp4vkutgkvydm
- valory/decision_making_abci:0.1.0:bafybeibvhg6nzs7os3c4enox6cc6ey42kkh62jrv5jpb5kpcjmykeblwmi
- valory/decision_making_abci:0.1.0:bafybeie52kvwrsh4dyt45amlffclkdttclig33dyc4crb425zf2bcot36u
behaviours:
main:
args: {}
Expand Down
Loading

0 comments on commit 6ea1220

Please sign in to comment.