Skip to content

Commit d8f9814

Browse files
authored
Merge branch 'main' into dependabot/cargo/examples/developer-hub-rust/cargo-49cb4b538a
2 parents d47e497 + ae8bf65 commit d8f9814

36 files changed

+532
-434
lines changed

.github/ISSUE_TEMPLATE/api_key_request.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ description: Request an API key
33
title: "[req]: <product> on <network>"
44
labels: ["access"]
55
assignees:
6-
- flare-foundation/developer-hub-team
6+
- nikerzetic-aflabs
7+
- fassko
78
body:
89
- type: dropdown
910
id: product

.github/ISSUE_TEMPLATE/development_issue.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ description: Report an issue encountered in this repo.
33
title: "[bug]: <short summary>"
44
labels: ["bug", "triage"]
55
assignees:
6-
- flare-foundation/developer-hub-team
6+
- dineshpinto
7+
- nikerzetic-aflabs
8+
- fassko
79
body:
810
- type: dropdown
911
id: os

.github/ISSUE_TEMPLATE/feature_request.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ description: Propose a new capability or improvement
33
title: "[feat]: <short summary>"
44
labels: ["enhancement", "triage"]
55
assignees:
6-
- flare-foundation/developer-hub-team
6+
- dineshpinto
77
body:
88
- type: textarea
99
id: problem

.github/ISSUE_TEMPLATE/feed_request.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ name: New Feed Request
22
description: Request a new feed to be added to FTSO
33
title: "[req]: <BASE/QUOTE>"
44
labels: ["enhancement", "ftso"]
5+
assignees:
6+
- dineshpinto
57
body:
68
- type: input
79
id: pair

.github/workflows/automatic-feed-request.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,9 @@ name: Automatic Feed Request
22

33
on:
44
schedule:
5-
# Once per day at 03:00 UTC
6-
- cron: "0 3 * * *"
5+
# US market open (Daylight Saving Time)
6+
- cron: "40 13 * * 1-5"
77
workflow_dispatch:
8-
push:
9-
branches: [main]
108

119
jobs:
1210
check_and_report:

.github/workflows/deploy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
- name: Build website
2929
run: npm run build
3030
- name: Upload Build Artifact
31-
uses: actions/upload-pages-artifact@v3
31+
uses: actions/upload-pages-artifact@v4
3232
with:
3333
path: build
3434

automations/anchor_risk.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
{ "name": "BTC/USD", "index": 2, "volatility": 1 },
55
{ "name": "XRP/USD", "index": 3, "volatility": 1 },
66
{ "name": "LTC/USD", "index": 4, "volatility": 1 },
7-
{ "name": "XLM/USD", "index": 5, "volatility": 1 },
7+
{ "name": "XLM/USD", "index": 5, "volatility": 2 },
88
{ "name": "DOGE/USD", "index": 6, "volatility": 1 },
99
{ "name": "ADA/USD", "index": 7, "volatility": 1 },
1010
{ "name": "ALGO/USD", "index": 8, "volatility": 2 },
@@ -18,7 +18,7 @@
1818
{ "name": "USDC/USD", "index": 16, "volatility": 0 },
1919
{ "name": "USDT/USD", "index": 17, "volatility": 0 },
2020
{ "name": "XDC/USD", "index": 18, "volatility": 2 },
21-
{ "name": "TRX/USD", "index": 19, "volatility": 1 },
21+
{ "name": "TRX/USD", "index": 19, "volatility": 2 },
2222
{ "name": "LINK/USD", "index": 20, "volatility": 1 },
2323
{ "name": "ATOM/USD", "index": 21, "volatility": 1 },
2424
{ "name": "DOT/USD", "index": 22, "volatility": 1 },
@@ -29,30 +29,30 @@
2929
{ "name": "BCH/USD", "index": 27, "volatility": 1 },
3030
{ "name": "NEAR/USD", "index": 28, "volatility": 1 },
3131
{ "name": "LEO/USD", "index": 29, "volatility": 3 },
32-
{ "name": "UNI/USD", "index": 30, "volatility": 1 },
32+
{ "name": "UNI/USD", "index": 30, "volatility": 2 },
3333
{ "name": "ETC/USD", "index": 31, "volatility": 1 },
3434
{ "name": "WIF/USD", "index": 32, "volatility": 2 },
3535
{ "name": "BONK/USD", "index": 33, "volatility": 2 },
3636
{ "name": "JUP/USD", "index": 34, "volatility": 1 },
37-
{ "name": "ETHFI/USD", "index": 35, "volatility": 3 },
37+
{ "name": "ETHFI/USD", "index": 35, "volatility": 2 },
3838
{ "name": "ENA/USD", "index": 36, "volatility": 3 },
39-
{ "name": "PYTH/USD", "index": 37, "volatility": 1 },
39+
{ "name": "PYTH/USD", "index": 37, "volatility": 2 },
4040
{ "name": "HNT/USD", "index": 38, "volatility": 2 },
4141
{ "name": "SUI/USD", "index": 39, "volatility": 1 },
4242
{ "name": "PEPE/USD", "index": 40, "volatility": 2 },
4343
{ "name": "QNT/USD", "index": 41, "volatility": 1 },
4444
{ "name": "AAVE/USD", "index": 42, "volatility": 1 },
4545
{ "name": "FTM/USD", "index": 43, "volatility": 2 },
4646
{ "name": "ONDO/USD", "index": 44, "volatility": 1 },
47-
{ "name": "TAO/USD", "index": 45, "volatility": 2 },
48-
{ "name": "FET/USD", "index": 46, "volatility": 1 },
47+
{ "name": "TAO/USD", "index": 45, "volatility": 1 },
48+
{ "name": "FET/USD", "index": 46, "volatility": 2 },
4949
{ "name": "RENDER/USD", "index": 47, "volatility": 1 },
5050
{ "name": "NOT/USD", "index": 48, "volatility": 2},
51-
{ "name": "RUNE/USD", "index": 49, "volatility": 2 },
52-
{ "name": "TRUMP/USD", "index": 50, "volatility": 3 },
51+
{ "name": "RUNE/USD", "index": 49, "volatility": 1 },
52+
{ "name": "TRUMP/USD", "index": 50, "volatility": 2 },
5353
{ "name": "USDX/USD", "index": 51, "volatility": 0 },
5454
{ "name": "JOULE/USD", "index": 51, "volatility": 4 },
55-
{ "name": "HBAR/USD", "index": 53, "volatility": 2 },
55+
{ "name": "HBAR/USD", "index": 53, "volatility": 1 },
5656
{ "name": "PENGU/USD", "index": 54, "volatility": 3 },
5757
{ "name": "HYPE/USD", "index": 55, "volatility": 1 },
5858
{ "name": "APT/USD", "index": 56, "volatility": 1 },

automations/block_latency_risk.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
{ "name": "BTC/USD", "index": 2, "volatility": 1 },
55
{ "name": "XRP/USD", "index": 3, "volatility": 1 },
66
{ "name": "LTC/USD", "index": 4, "volatility": 1 },
7-
{ "name": "XLM/USD", "index": 5, "volatility": 1 },
7+
{ "name": "XLM/USD", "index": 5, "volatility": 2 },
88
{ "name": "DOGE/USD", "index": 6, "volatility": 1 },
99
{ "name": "ADA/USD", "index": 7, "volatility": 1 },
1010
{ "name": "ALGO/USD", "index": 8, "volatility": 2 },
@@ -18,7 +18,7 @@
1818
{ "name": "USDC/USD", "index": 16, "volatility": 0 },
1919
{ "name": "USDT/USD", "index": 17, "volatility": 0 },
2020
{ "name": "XDC/USD", "index": 18, "volatility": 2 },
21-
{ "name": "TRX/USD", "index": 19, "volatility": 1 },
21+
{ "name": "TRX/USD", "index": 19, "volatility": 2 },
2222
{ "name": "LINK/USD", "index": 20, "volatility": 1 },
2323
{ "name": "ATOM/USD", "index": 21, "volatility": 1 },
2424
{ "name": "DOT/USD", "index": 22, "volatility": 1 },
@@ -29,30 +29,30 @@
2929
{ "name": "BCH/USD", "index": 27, "volatility": 1 },
3030
{ "name": "NEAR/USD", "index": 28, "volatility": 1 },
3131
{ "name": "LEO/USD", "index": 29, "volatility": 3 },
32-
{ "name": "UNI/USD", "index": 30, "volatility": 1 },
32+
{ "name": "UNI/USD", "index": 30, "volatility": 2 },
3333
{ "name": "ETC/USD", "index": 31, "volatility": 1 },
3434
{ "name": "WIF/USD", "index": 32, "volatility": 2 },
3535
{ "name": "BONK/USD", "index": 33, "volatility": 2 },
3636
{ "name": "JUP/USD", "index": 34, "volatility": 1 },
37-
{ "name": "ETHFI/USD", "index": 35, "volatility": 3 },
37+
{ "name": "ETHFI/USD", "index": 35, "volatility": 2 },
3838
{ "name": "ENA/USD", "index": 36, "volatility": 3 },
39-
{ "name": "PYTH/USD", "index": 37, "volatility": 1 },
39+
{ "name": "PYTH/USD", "index": 37, "volatility": 2 },
4040
{ "name": "HNT/USD", "index": 38, "volatility": 2 },
4141
{ "name": "SUI/USD", "index": 39, "volatility": 1 },
4242
{ "name": "PEPE/USD", "index": 40, "volatility": 2 },
4343
{ "name": "QNT/USD", "index": 41, "volatility": 1 },
4444
{ "name": "AAVE/USD", "index": 42, "volatility": 1 },
4545
{ "name": "FTM/USD", "index": 43, "volatility": 2 },
4646
{ "name": "ONDO/USD", "index": 44, "volatility": 1 },
47-
{ "name": "TAO/USD", "index": 45, "volatility": 2 },
48-
{ "name": "FET/USD", "index": 46, "volatility": 1 },
47+
{ "name": "TAO/USD", "index": 45, "volatility": 1 },
48+
{ "name": "FET/USD", "index": 46, "volatility": 2 },
4949
{ "name": "RENDER/USD", "index": 47, "volatility": 1 },
5050
{ "name": "NOT/USD", "index": 48, "volatility": 2},
51-
{ "name": "RUNE/USD", "index": 49, "volatility": 2 },
52-
{ "name": "TRUMP/USD", "index": 50, "volatility": 3 },
51+
{ "name": "RUNE/USD", "index": 49, "volatility": 1 },
52+
{ "name": "TRUMP/USD", "index": 50, "volatility": 2 },
5353
{ "name": "USDX/USD", "index": 51, "volatility": 0 },
5454
{ "name": "JOULE/USD", "index": 51, "volatility": 4 },
55-
{ "name": "HBAR/USD", "index": 53, "volatility": 2 },
55+
{ "name": "HBAR/USD", "index": 53, "volatility": 1 },
5656
{ "name": "PENGU/USD", "index": 54, "volatility": 3 },
5757
{ "name": "HYPE/USD", "index": 55, "volatility": 1 },
5858
{ "name": "APT/USD", "index": 56, "volatility": 1 },

automations/check_new_feed.py

Lines changed: 36 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,8 @@ def get(cls, name: str) -> "NetworkConfig":
2929
ISSUES_FILE: Final[Path] = Path("issues.md")
3030
MAX_MARKET_CAP_RANK: Final[int] = 100
3131
MIN_USD_VOLUME: Final[int] = 100_000_000
32+
HEADER_CHAR_LIMIT: Final[int] = 140
3233
GITHUB_NEUTRAL_EXIT: Final[int] = 78
33-
HEADER_TEMPLATE: Final[str] = """---
34-
title: "[auto_req]: Potential New Feeds"
35-
assignees:
36-
- dineshpinto
37-
labels:
38-
- enhancement
39-
---
40-
"""
4134
_VOLUME_RE = re.compile(r"^\$?\s*([\d,]+(?:\.\d{1,2})?)$")
4235
REGISTRY_ADDRESS: Final[str] = "0xaD67FE66660Fb8dFE9d6b1b4240d8650e30F6019"
4336
NETWORKS: list[NetworkConfig] = [
@@ -145,12 +138,45 @@ def parse_volume(vol_str: str) -> int:
145138
return int(float(num))
146139

147140

141+
def _build_header(coins: list[dict[str, Any]]) -> str:
142+
"""
143+
Build the YAML front-matter with a title that lists coin names.
144+
"""
145+
base = "[auto_req]: Potential New Feeds - "
146+
symbols_all = [c.get("symbol", "N/A") for c in coins]
147+
148+
# Accumulate names until a ~140-char title budget is hit; then append "+N more".
149+
acc: list[str] = []
150+
for symbol in symbols_all:
151+
candidate = ", ".join([*acc, symbol])
152+
if len(base + candidate) <= HEADER_CHAR_LIMIT:
153+
acc.append(symbol)
154+
else:
155+
break
156+
if len(acc) < len(symbols_all):
157+
title_symbols = f"{', '.join(acc)} (+{len(symbols_all) - len(acc)} more)"
158+
else:
159+
title_symbols = ", ".join(acc)
160+
161+
safe_title_symbols = title_symbols.replace('"', r"\"")
162+
163+
return (
164+
f"---\n"
165+
f'title: "{base}{safe_title_symbols}"\n'
166+
f"assignees:\n"
167+
f" - dineshpinto\n"
168+
f"labels:\n"
169+
f" - enhancement\n"
170+
f"---\n"
171+
)
172+
173+
148174
def write_issue(coins: list[dict[str, Any]]) -> None:
149175
lines = [
150-
"Coins matching [FIP.08](https://proposals.flare.network/FIP/FIP_8.html) criteria:\n"
176+
"Feeds potentially matching [FIP.08](https://proposals.flare.network/FIP/FIP_8.html) criteria:\n"
151177
]
152178
lines += [f"## {c.get('name', 'N/A')}\n{prettify_coin(c)}\n" for c in coins]
153-
content = HEADER_TEMPLATE + "\n".join(lines)
179+
content = _build_header(coins) + "\n".join(lines)
154180
tmp = ISSUES_FILE.with_suffix(".tmp")
155181
tmp.write_text(
156182
content if content.endswith("\n") else content + "\n", encoding="utf-8"

automations/solidity_reference.json

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -512,11 +512,11 @@
512512
},
513513
{
514514
"name": "PollingManagementGroup",
515-
"address": "0x142a8DbC8410deFd989dA27177986ac66aE9fCA8"
515+
"address": "0x056A8AcdCd2B5D3bF7a4F1d218B8A1660BB4D912"
516516
},
517517
{
518518
"name": "FtsoV2PriceStore",
519-
"address": "0x8707442a5f40a17cee2Ae0555620a3ab6fEf60A4"
519+
"address": "0x94E33f519E256149752711245EAB2E1abb8c34A4"
520520
},
521521
{
522522
"name": "AssetManagerController",
@@ -710,7 +710,7 @@
710710
},
711711
{
712712
"name": "FtsoV2PriceStore",
713-
"address": "0x85973FA0098F5471e63C2c3FFa3ec8956eDEDF73"
713+
"address": "0x9D99A8BadD16A22fB3E9C6e17DF90b3b72838B2d"
714714
},
715715
{
716716
"name": "VoterPreRegistry",
@@ -723,6 +723,10 @@
723723
{
724724
"name": "AssetManagerFXRP",
725725
"address": "0x299d678f67e7ADD4efdf295Ebe0E92FCb4f75C4c"
726+
},
727+
{
728+
"name": "FeeCalculator",
729+
"address": "0x850580df526112CCe4B7FC135919BaE3a923b845"
726730
}
727731
],
728732
"SongbirdTestnetCoston": [
@@ -816,11 +820,11 @@
816820
},
817821
{
818822
"name": "VoterRegistry",
819-
"address": "0xE2c06DF29d175Aa0EcfcD10134eB96f8C94448A3"
823+
"address": "0xB4B93a3A3ADa93a574E6efeb5f295bf882934cB6"
820824
},
821825
{
822826
"name": "FlareSystemsCalculator",
823-
"address": "0x43CBAB9C953F54533aadAf7ffCD13c30ec05Edc9"
827+
"address": "0x3787dCBD770202F856ED9204c19d6f9022Ff3BF2"
824828
},
825829
{
826830
"name": "FlareSystemsManager",
@@ -904,11 +908,11 @@
904908
},
905909
{
906910
"name": "VoterPreRegistry",
907-
"address": "0xD9e8Ee56CB5A06f2070A2793bf76C5dFb3fc3D52"
911+
"address": "0xF660984B8597e31437cA4b7dEa0A41677982563b"
908912
},
909913
{
910914
"name": "PollingManagementGroup",
911-
"address": "0x4CBEE91ed327e41d1AfcDF7AA99d2696c8D56849"
915+
"address": "0xAcea7c7F4c906c8122D31DD06cF84Aa0d7E89fd0"
912916
},
913917
{
914918
"name": "AssetManagerController",
@@ -921,6 +925,10 @@
921925
{
922926
"name": "AssetManagerFXRP",
923927
"address": "0x56728e46908fB6FcC5BCD2cc0c0F9BB91C3e4D34"
928+
},
929+
{
930+
"name": "FeeCalculator",
931+
"address": "0x08e0CBdc9173e537208CEAd8c38f263517f54F22"
924932
}
925933
]
926934
}

0 commit comments

Comments
 (0)