Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RELEASE] 0.6.0 #356

Merged
merged 374 commits into from
Oct 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
374 commits
Select commit Hold shift + click to select a range
865859a
Merge branch 'develop' into feature/oct-1857-octant-client-v1.5
aziolek Sep 13, 2024
7db4ac3
[CI/CD] Update uat.env contracts
housekeeper-bot Sep 13, 2024
132bf88
feat: InputSelect new variant
aziolek Sep 13, 2024
8ecfcb1
OCT-1878: Home: Epoch results / live - UI (#408)
jmikolajczyk Sep 13, 2024
652d16c
fix: InputText adjusted background
aziolek Sep 13, 2024
9a2ed53
project admin + patron mode 1.5 - ui draft
jmikolajczyk Sep 13, 2024
fab89ba
feat: UI for projects order
aziolek Sep 13, 2024
0c4ebfd
Merge branch 'feature/oct-1857-octant-client-v1.5' into feature/oct-1…
jmikolajczyk Sep 13, 2024
277d02a
OCT-1598 rewards api sanity test (#407)
MateuszStoleckiGLM Sep 16, 2024
3ed3aa8
OCT-1879 Projects: Search - UI (old searcher) (#409)
aziolek Sep 16, 2024
f4ecf8e
feat: sorting logic, randomised extracted to OCT-1952
aziolek Sep 17, 2024
226b868
fix: react-select removed
aziolek Sep 17, 2024
75b4b58
fix: ORDER_OPTIONS translated
aziolek Sep 17, 2024
5477331
style: revert yarn.lock
aziolek Sep 17, 2024
d9a5b20
Merge branch 'feature/oct-1857-octant-client-v1.5' into feature/oct-1…
aziolek Sep 17, 2024
3363aa5
oct-1907: cr fixes - naming
jmikolajczyk Sep 17, 2024
5e4b70e
Merge branch 'feature/oct-1857-octant-client-v1.5' into feature/oct-1…
jmikolajczyk Sep 17, 2024
389a9d9
home rewards patron mode + admin mode
jmikolajczyk Sep 17, 2024
200f6a9
patron mode modal portal
jmikolajczyk Sep 17, 2024
0089e35
OCT-1880 Projects: Sort selector (#415)
aziolek Sep 18, 2024
459455f
oct-1907: merge base
jmikolajczyk Sep 18, 2024
21f51ea
OCT-1907: Allocation drawer (#410)
jmikolajczyk Sep 18, 2024
ad67531
merge base
jmikolajczyk Sep 18, 2024
785368a
OCT-1938: Propose a changelog (#414)
kgarbacinski Sep 18, 2024
16ac5ae
OCT-1843: Refetch when getting 404 error (#411)
kgarbacinski Sep 18, 2024
af50d91
oct-1882: metrics funding leaderboard
jmikolajczyk Sep 18, 2024
aa734d2
project admin + patron mode cr fixes
jmikolajczyk Sep 18, 2024
40236a6
OCT-1892-Layout: Project admin mode + OCT-1893-Layout: Patron mode (#…
jmikolajczyk Sep 19, 2024
3ab477a
Merge branch 'feature/oct-1857-octant-client-v1.5' into feature/oct-1…
jmikolajczyk Sep 19, 2024
86a217e
fix: ProjectsView random s character
aziolek Sep 19, 2024
5b63496
oct-1883: metrics update
jmikolajczyk Sep 19, 2024
a1293ca
oct-1857: z-index changes
jmikolajczyk Sep 19, 2024
e1d24d5
oct-1962: TransactionsListItem key fix
jmikolajczyk Sep 19, 2024
faacff2
[CI/CD] Update uat.env contracts
housekeeper-bot Sep 20, 2024
207613e
fix: i18n key
aziolek Sep 20, 2024
2bd18c6
Merge branch 'feature/oct-1857-octant-client-v1.5' of github.com:gole…
aziolek Sep 20, 2024
c157264
oct-1857: randomized projects fix
jmikolajczyk Sep 20, 2024
3a6a97f
oct-1857: prevent fetching userAllocations when AW is open
jmikolajczyk Sep 20, 2024
ea38f6d
oct-1857: open/close allocation drawer by clicking edit button on hom…
jmikolajczyk Sep 20, 2024
61a3a4f
oct-1857: prevent fetching userAllocations and currentEpoch each time
jmikolajczyk Sep 20, 2024
ffa7bf2
Merge branch 'feature/oct-1857-octant-client-v1.5' into feature/oct-1…
jmikolajczyk Sep 20, 2024
0a8ce26
oct-1931: epoch results graph
jmikolajczyk Sep 20, 2024
6393aa2
oct-1931: subgraph mock update
jmikolajczyk Sep 20, 2024
96d1f84
oct-1931: matching fund as a sum of octant and patrons donations
jmikolajczyk Sep 23, 2024
6ab6ba6
oct-1931: ignore gwei/wei
jmikolajczyk Sep 23, 2024
3c50bb7
oct-1931: footer-content gap fix
jmikolajczyk Sep 23, 2024
1f4f5cc
oct-1882: cr fixes
jmikolajczyk Sep 24, 2024
c073bb3
OCT-1882: Metrics: Funding leaderboard (#416)
jmikolajczyk Sep 24, 2024
1c8bbe0
fix: ProjectsView random s character
aziolek Sep 19, 2024
eb05430
fix: i18n key
aziolek Sep 20, 2024
ff74862
oct-1857: z-index changes
jmikolajczyk Sep 19, 2024
d86039b
[CI/CD] Update uat.env contracts
housekeeper-bot Sep 20, 2024
e54dbc5
oct-1857: randomized projects fix
jmikolajczyk Sep 20, 2024
496465b
oct-1857: prevent fetching userAllocations when AW is open
jmikolajczyk Sep 20, 2024
1ae1198
oct-1857: open/close allocation drawer by clicking edit button on hom…
jmikolajczyk Sep 20, 2024
809f103
oct-1857: prevent fetching userAllocations and currentEpoch each time
jmikolajczyk Sep 20, 2024
626544f
Merge branch 'feature/oct-1857-octant-client-v1.5' into feature/oct-1…
jmikolajczyk Sep 24, 2024
3077322
OCT-1883: Metrics: Grid update (#417)
jmikolajczyk Sep 24, 2024
c9a5b76
OCT-1962: Transactions component shows the same transaction twice (#418)
jmikolajczyk Sep 24, 2024
95186bf
Merge branch 'feature/oct-1857-octant-client-v1.5' into feature/oct-1…
jmikolajczyk Sep 24, 2024
05039c0
OCT-1931: Home: Epoch results / live - connect with BE (#420)
jmikolajczyk Sep 24, 2024
2035fab
oct-1971: client refactor 1
jmikolajczyk Sep 24, 2024
5efbba5
Merge branch 'feature/oct-1857-octant-client-v1.5' into refactor/oct-…
jmikolajczyk Sep 24, 2024
4bcfb89
Merge branch 'feature/oct-1857-octant-client-v1.5' into refactor/oct-…
jmikolajczyk Sep 24, 2024
67ee7b8
OCT-1943: Add project searching on the server side (#419)
kgarbacinski Sep 24, 2024
6e7608b
fix: remove autofocus
aziolek Sep 24, 2024
8532fbc
Merge branch 'develop' into feature/oct-1857-octant-client-v1.5
aziolek Sep 24, 2024
67773a8
OCT-1959 Launching projects view focuses on project search on mobile …
aziolek Sep 25, 2024
99206e8
oct-1971: client refactor 2
jmikolajczyk Sep 25, 2024
628e950
oct-1971: remove transactions skeleton div wrapper
jmikolajczyk Sep 25, 2024
4b6203f
OCT-1971: Cleaning up client after upgrading to v1.5 (#423)
jmikolajczyk Sep 25, 2024
27e5cde
oct-1972: epoch results loading state
jmikolajczyk Sep 25, 2024
afa1c90
fix: buttons to use Inter, line-height 100%
aziolek Sep 26, 2024
71429b8
feat: remove tiptiles
aziolek Sep 26, 2024
a3395b7
feat: InputToggle animation faster
aziolek Sep 26, 2024
0df4c43
feat: metrics tile title font-size 12px
aziolek Sep 26, 2024
ddda9d4
feat: adjust settings drawer font-size
aziolek Sep 26, 2024
a895982
feat: mobile calendar not to break over 2 lines
aziolek Sep 26, 2024
6501172
style: remove done TODOs
aziolek Sep 26, 2024
cfb3ce4
OCT-1930: Change the UQ leverage (#425)
kgarbacinski Sep 26, 2024
452e25d
OCT-1939: Implement a timeout list (#422)
kgarbacinski Sep 26, 2024
db20a2a
OCT-1867: Add a rewards rate value for the server (#421)
kgarbacinski Sep 26, 2024
7b306c8
fix: navbar incorreect stroke
aziolek Sep 26, 2024
0d1127b
feat: top bar navigation visibility improvement
aziolek Sep 26, 2024
a4139c6
feat: InputSelect close by chevron
aziolek Sep 26, 2024
26109cd
OCT-1978 Fix buttons using Arial instead of Inter (#427)
aziolek Sep 26, 2024
7eac718
OCT-1984 Make toggle switch animation faster (#430)
aziolek Sep 26, 2024
0bc9d53
OCT-1986 Change metrics tile title font size: 10px => 12px (#431)
aziolek Sep 26, 2024
df1818d
OCT-1987 Settings drawer: adjust font-size & separator (#432)
aziolek Sep 26, 2024
dd4c803
OCT-1989 Adjust mobile top nav calendar so it doesn't break into two …
aziolek Sep 26, 2024
fbd3719
OCT-1981 Remove TipTiles (#428)
aziolek Sep 26, 2024
c4af949
OCT-1972: Add load state to new Home epoch stats chart (#426)
jmikolajczyk Sep 26, 2024
0cdcf16
oct-1899: allocation confirmation animation
jmikolajczyk Sep 26, 2024
6d15616
[CI/CD] Update uat.env contracts
housekeeper-bot Sep 27, 2024
af991a0
fix: wrong epoch in home view
aziolek Sep 27, 2024
1c1ce92
feat: adjust border radius
aziolek Sep 27, 2024
47f9c2f
feat: UQ tile hover states
aziolek Sep 27, 2024
6293397
cleanup irrelevant details from GP stamps mocks
paulperegud Sep 27, 2024
2dbab5d
Gitcoin Passport: for GTC staking stamps use weight of zero
paulperegud Sep 27, 2024
76add6b
feat: call PUT antisybil in allocate view
aziolek Sep 27, 2024
ac84694
oct-1980: calendar
jmikolajczyk Sep 27, 2024
d38810a
feat: adjust onboarding
aziolek Sep 27, 2024
11161ac
fix: remove horizontal scroll
aziolek Sep 27, 2024
1ccf93c
OCT-1988 Donations tile edit button: adjust radius (#440)
aziolek Sep 27, 2024
535a877
OCT-1991 Improvements to UQ tile hover states (#441)
aziolek Sep 27, 2024
0b7c181
OCT-1985 InputSelect: allow closing by clicking chevron (#436)
aziolek Sep 27, 2024
0807bfe
OCT-1857 Call PUT /antisybil-status in allocate drawer (#444)
aziolek Sep 27, 2024
b765886
OCT-1961 Adjust onboarding copy (#446)
aziolek Sep 27, 2024
ab945c3
OCT-1992: Extend searching functionality for multiple params (#439)
kgarbacinski Sep 27, 2024
bb0acd2
OCT-1944 Lower GP score giving the UQ score multiplier 1: server (#437)
kgarbacinski Sep 27, 2024
001a331
oct-1899: linter fixes
jmikolajczyk Sep 30, 2024
a6192bd
Merge branch 'develop' into feature/oct-1857-octant-client-v1.5
jmikolajczyk Sep 30, 2024
c68b479
oct-1867: rewards rate
jmikolajczyk Sep 30, 2024
4b825b5
drop unused functionality
paulperegud Sep 30, 2024
41cf553
OCT-1899: Improve the allocation confirmation notification (#438)
jmikolajczyk Sep 30, 2024
f5e6c99
OCT-1870: Rewards rate: client (#448)
jmikolajczyk Sep 30, 2024
09f9009
oct-1980: tablet calendar
jmikolajczyk Sep 30, 2024
7cb4cbe
OCT-1923 Assign zero score to GTC staking stamps (#443)
paulperegud Sep 30, 2024
fa30248
oct-1976: epoch live results fix
jmikolajczyk Sep 30, 2024
ffb6159
style: framer usage added
aziolek Sep 30, 2024
56bf8ed
OCT-1994 Remove desktop metrics leaderboard horizontal scroll (#447)
aziolek Sep 30, 2024
7675886
OCT-1979 Improve top navigation visibility (#435)
aziolek Sep 30, 2024
4e56d23
oct-2002: allocation navigation always visible
jmikolajczyk Sep 30, 2024
28f4ae3
Merge branch 'develop' into feature/oct-1857-octant-client-v1.5
aziolek Sep 30, 2024
9c06dda
oct-2000: top bar buttons update
jmikolajczyk Sep 30, 2024
0e257ca
OCT-1980: Implement Navbar Calendar & Remove old calendar (#445)
jmikolajczyk Sep 30, 2024
d322e7b
OCT-1976: Fix epoch live results bouncing (#449)
jmikolajczyk Sep 30, 2024
a17421c
OCT-2002: Allocate drawer / view should show allocation buttons even …
jmikolajczyk Sep 30, 2024
1e60dd6
oct-2000: resolved conflicts
jmikolajczyk Sep 30, 2024
fc45bba
OCT-2000: Menubar icon state colour update (#451)
jmikolajczyk Sep 30, 2024
7fe4e6a
oct-2001: transactions empty state
jmikolajczyk Sep 30, 2024
7dd6732
oct-1977: change order of donastion and personal allocation tiles
jmikolajczyk Sep 30, 2024
6c440cf
OCT-1939: Fix improper way of handling an antisybil_status field (#452)
kgarbacinski Oct 1, 2024
da68d45
Merge branch 'develop' into feature/oct-1857-octant-client-v1.5
aziolek Oct 1, 2024
015aab2
oct-1983: large text - inter tight
jmikolajczyk Oct 1, 2024
0509b9b
sepolia: use gasMultiplier to prevent random failures during deployment
paulperegud Oct 1, 2024
490ef0d
[CI/CD] Update uat.env contracts
housekeeper-bot Oct 1, 2024
88569f8
localenv: don't rely on fancy 'new' features of docker
paulperegud Oct 1, 2024
79d325e
feat: prototype in progress
aziolek Oct 1, 2024
9e7edcd
feat: target link, constant reused
aziolek Oct 1, 2024
160f03c
feat: target link, constant reused
aziolek Oct 1, 2024
6c443db
oct-2009: project view update
jmikolajczyk Oct 2, 2024
c7a8ee5
oct-2009: project view update 2
jmikolajczyk Oct 2, 2024
cffc9aa
feat: CR adjustments
aziolek Oct 2, 2024
5d9fa8b
OCT-2009: Implement Project Detail view breakpoints (#459)
jmikolajczyk Oct 2, 2024
6511a71
OCT-2001: Transactions tile does not have correct empty state impleme…
jmikolajczyk Oct 2, 2024
47239c7
OCT-1977: Change the Hierarchy of the Personal Allocation & and Donat…
jmikolajczyk Oct 2, 2024
a5043a7
Merge branch 'feature/oct-1857-octant-client-v1.5' into feature/oct-1…
jmikolajczyk Oct 2, 2024
22683b7
oct-1983: fontBig mixin
jmikolajczyk Oct 2, 2024
47f2f11
OCT-1945 Lower GP score giving the UQ score multiplier 1: client && O…
aziolek Oct 2, 2024
54d68fc
OCT-1983: Display text (32px +) should all use Inter Tight font not I…
jmikolajczyk Oct 2, 2024
d2196e3
fix linting issue
paulperegud Oct 2, 2024
676a0e6
OCT-1992: Fix the projects details schema
kgarbacinski Oct 2, 2024
6fac929
OCT-1992: Fix the projects details schema (#460)
aziolek Oct 2, 2024
f2c6655
Merge branch 'develop' into feature/oct-1857-octant-client-v1.5
aziolek Oct 2, 2024
3ab8c49
feat: initial prototype
aziolek Oct 2, 2024
d742380
oct-2014: allocation navigation transition fix
jmikolajczyk Oct 2, 2024
81a60b9
OCT-2014: Mobil view change to Allocation View is not smooth (#462)
jmikolajczyk Oct 3, 2024
417fc1e
oct-2020: calendar tiles update
jmikolajczyk Oct 3, 2024
04083b5
oct-2021: rewards rate tooltip
jmikolajczyk Oct 3, 2024
dd7b2b7
fix: inputs hover states
aziolek Oct 3, 2024
3c8cbb4
OCT-2021: Implement Rewards Rate tooltip (#464)
jmikolajczyk Oct 3, 2024
4847a8c
OCT-2020: Calendar tiles should be all caps not title case (#463)
jmikolajczyk Oct 3, 2024
1eab84b
oct-2019: project tiles padding
jmikolajczyk Oct 3, 2024
4c78df5
oct-2016: donations empty state update
jmikolajczyk Oct 3, 2024
ea9e8bb
feat: oct-2024 uq explainer modal copy adjustment to threshold of 15
aziolek Oct 3, 2024
2fa9b4b
feat: oct-2025 onboarding copy allocate drawer not view
aziolek Oct 3, 2024
5501c11
oct-2013: layout responsiveness update
jmikolajczyk Oct 3, 2024
49b5e80
OCT-2019: Project view tiles padding should be same vertically & hori…
jmikolajczyk Oct 3, 2024
5b40982
OCT-2016: Add view projects functionality to Donations module empty s…
jmikolajczyk Oct 3, 2024
b7095d8
oct-2027: mobile navbar fix
jmikolajczyk Oct 4, 2024
c9f8937
fix: OCT-2035 & OCT-2024
aziolek Oct 4, 2024
c3d0bfb
feat: search working
aziolek Oct 4, 2024
79304c3
style: extract momoized sorting to useSortedProjects
aziolek Oct 4, 2024
e9c92ea
style: extract momoized sorting to useSortedProjects
aziolek Oct 4, 2024
8be761a
fix: reverse testnet indicator visibility
aziolek Oct 4, 2024
50cac02
OCT-2013: Adjust tile max widths, margins & padding to improve respon…
jmikolajczyk Oct 4, 2024
6a52a6c
style: code cleanup
aziolek Oct 4, 2024
38556b8
Merge branch 'feature/oct-1857-octant-client-v1.5' into feature/oct-1…
aziolek Oct 4, 2024
86e0bc8
OCT-2022 Projects view: add inputs missing hover states (#465)
aziolek Oct 4, 2024
6be5ddf
fix: remove unused CSS
aziolek Oct 4, 2024
54f6195
style: CR adjustments
aziolek Oct 4, 2024
e069a7e
oct-2012: allocation empty state
jmikolajczyk Oct 4, 2024
e53152d
OCT-2027: Mobile navbar has bugs (#469)
jmikolajczyk Oct 4, 2024
39b9d2b
OCT-1942 Projects search: client (#461)
aziolek Oct 4, 2024
8f2d88d
OCT-1996: Add a TIMEOUT_LIST for testing (#456)
kgarbacinski Oct 5, 2024
c2ac9e0
feat: modal initial prototype
aziolek Oct 5, 2024
f644b8d
style: renames
aziolek Oct 5, 2024
50684f1
feat: rest of the UI
aziolek Oct 5, 2024
77b7260
feat: new logo SVG
aziolek Oct 5, 2024
b06ca7c
fix: avatar higher
aziolek Oct 5, 2024
d1c4911
fix: console removed
aziolek Oct 5, 2024
4426364
feat: HomeGridUQScore box adjustment to timeout list
aziolek Oct 6, 2024
070baa8
feat: project view url ellipsis
aziolek Oct 6, 2024
fa15366
style: simplify CSS
aziolek Oct 6, 2024
6a2710b
feat: move manual mode badge
aziolek Oct 6, 2024
1ca5d56
fix: reverse change to translate
aziolek Oct 6, 2024
808e884
fix: Metrics PieChart distances adjustment
aziolek Oct 6, 2024
3772097
style: simplify CSS
aziolek Oct 6, 2024
05c3de3
test: E2E disabled
aziolek Oct 6, 2024
d1c7948
OCT-2012: Add contextual empty states to Allocate drawer / view to he…
jmikolajczyk Oct 7, 2024
85c32bb
OCT-1990 Fix mobile navbar icons incorrect stroke / fill (#434)
aziolek Oct 7, 2024
d56666a
OCT-2032 Project detail view - long URLs should be truncated (#473)
aziolek Oct 7, 2024
de13651
OCT-2026 Move manual badge in Allocate view (#474)
aziolek Oct 7, 2024
935b9e9
OCT-2033 Metrics Epoch funds usage tile layout fixes (#475)
aziolek Oct 7, 2024
e16f18f
feat: new background color
aziolek Oct 7, 2024
b67f23c
fix: personal allocation in ETH
aziolek Oct 7, 2024
8e810ec
fix: placeholder color
aziolek Oct 7, 2024
91ce7a5
style: empty line removed
aziolek Oct 7, 2024
4eed2ad
fix: remove tooltips
aziolek Oct 7, 2024
185ec16
OCT-2030 Improve Avatar cursor for Home chart (#472)
aziolek Oct 7, 2024
8a842c3
oct-1983: font fixes
jmikolajczyk Oct 7, 2024
145e82e
OCT-2043 Personal allocation crypto value should be ETH not GLM (#477)
aziolek Oct 7, 2024
f45b9e6
OCT-2049 Search placeholder text & icon should be #9EA39E (#478)
aziolek Oct 7, 2024
7529d0f
OCT-2045 Remove tooltips for current & total rewards (#479)
aziolek Oct 7, 2024
0bace69
oct-2047: footer link hover state
jmikolajczyk Oct 7, 2024
f846da7
feature: drawers to be closeable on overlay click
aziolek Oct 7, 2024
3e5cc08
oct-2031: epoch results details adjustments
jmikolajczyk Oct 7, 2024
d2589d2
OCT-2047: Add desktop footer hover states (#481)
jmikolajczyk Oct 7, 2024
8dd11d4
OCT-2041 Drawers should be closable by clicking outside of them (#482)
aziolek Oct 7, 2024
65198d0
OCT-2038 Disable E2E tests (#476)
aziolek Oct 7, 2024
94a7786
feat: link to sybil description
aziolek Oct 7, 2024
5378ccd
localenv: don't rely on fancy 'new' features of docker (#457)
paulperegud Oct 7, 2024
7fbb1a4
oct-2050: dropdown updates
jmikolajczyk Oct 7, 2024
23eaadd
oct-2031: getFormattedEthValue unit tests update
jmikolajczyk Oct 7, 2024
49ad7f6
oct-2031: getFormattedEthValue unit tests update - eslint fix
jmikolajczyk Oct 7, 2024
10f58bf
oct-2050: linter fix
jmikolajczyk Oct 7, 2024
0dcacf5
oct-1983: fontBig mixin - removed default param
jmikolajczyk Oct 7, 2024
79ec445
oct-2011: matomo script
jmikolajczyk Oct 7, 2024
4c4b750
fix: new gfx for sybils
aziolek Oct 8, 2024
fc9de73
OCT-1940 Implement time-out list: client (#471)
aziolek Oct 8, 2024
133aa05
oct-2011: test
jmikolajczyk Oct 8, 2024
c8cd5a0
OCT-2050: Improve layout & usability of Projects → Sort dropdown (#484)
jmikolajczyk Oct 8, 2024
a4fc5e2
OCT-2031: Home chart needs adjustment so as to not break over 2 lines…
jmikolajczyk Oct 8, 2024
27376df
OCT-1983: Display text (32px +) should all use Inter Tight font not I…
jmikolajczyk Oct 8, 2024
9a5ee5b
feat: antisybil modal, hide when user removed from the list
aziolek Oct 8, 2024
be2038b
oct-2028: rewards rate tooltip
jmikolajczyk Oct 8, 2024
b88be6d
oct-2058: settings patron mode tooltip desktop fix
jmikolajczyk Oct 8, 2024
1a652da
OCT-2011: Analytics: implement in Octant.app (#485)
jmikolajczyk Oct 8, 2024
a695386
matomo script - removed unnecessary semicolon
jmikolajczyk Oct 8, 2024
e905f17
[CI/CD] Update master.env contracts
housekeeper-bot Oct 8, 2024
171ac5f
matomo script fix
jmikolajczyk Oct 8, 2024
e6ce6ae
OCT-1918: Fix the timeout list functionality (#488)
kgarbacinski Oct 8, 2024
827a570
fix: octantInverted logo color fill
aziolek Oct 8, 2024
38cc97a
feat: OCT-2069, UQ modal link to GP guide
aziolek Oct 8, 2024
cfb64ee
fix: OCT-2070 UQ toasts keys moved
aziolek Oct 8, 2024
cb27a5e
OCT-2028: Mobile Home view layout issues (#486)
jmikolajczyk Oct 9, 2024
4cc1e88
OCT-2058: Settings → Patron mode help tip appears partially offscreen…
aziolek Oct 9, 2024
6f27d50
Implement UI 1.5 & E5 UQ UI (#412)
aziolek Oct 9, 2024
f438814
Merge branch 'master' into develop
mike-code Oct 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
17 changes: 9 additions & 8 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,18 @@

## Definition of Done

1. [ ] Acceptance criteria are met.
2. [ ] PR is manually tested before the merge by developer(s).
1. [ ] If required, the desciption of your change is added to the [QA changelog](https://www.notion.so/octantapp/Changelog-for-the-QA-d96fa3b411cf488bb1d8d9a598d88281)
2. [ ] Acceptance criteria are met.
3. [ ] PR is manually tested before the merge by developer(s).
- [ ] Happy path is manually checked.
3. [ ] PR is manually tested by QA when their assistance is required (1).
4. [ ] PR is manually tested by QA when their assistance is required (1).
- [ ] Octant Areas & Test Cases are checked for impact and updated if required (2).
4. [ ] Unit tests are added unless there is a reason to omit them.
5. [ ] Automated tests are added when required.
6. [ ] The code is merged.
7. [ ] Tech documentation is added / updated, reviewed and approved (including mandatory approval by a code owner, should such exist for changed files).
5. [ ] Unit tests are added unless there is a reason to omit them.
6. [ ] Automated tests are added when required.
7. [ ] The code is merged.
8. [ ] Tech documentation is added / updated, reviewed and approved (including mandatory approval by a code owner, should such exist for changed files).
- [ ] BE: Swagger documentation is updated.
8. [ ] When required by QA:
9. [ ] When required by QA:
- [ ] Deployed to the relevant environment.
- [ ] Passed system tests.

Expand Down
1 change: 1 addition & 0 deletions .github/workflows/deploy-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ jobs:
anvil-block-time: 5
decision-window: 1800
epoch-duration: 3600
ipfs-gateways: 'https://ipfs.octant.wildland.dev/ipfs/'
secrets: inherit

run:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/e2e-run.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ jobs:
glm-claim-enabled: true
vault-confirm-withdrawals-enabled: true
anvil-block-time: 5
ipfs-gateways: 'https://ipfs.octant.wildland.dev/ipfs/'
secrets: inherit

run-e2e-tests:
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/tpl-deploy-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,10 @@ on:
required: false
default: true
type: boolean
ipfs-gateways:
required: false
default: 'https://turquoise-accused-gayal-88.mypinata.cloud/ipfs/,https://octant.infura-ipfs.io/ipfs/'
type: string

env:
ENV_TYPE: ${{ inputs.env-type }}
Expand Down Expand Up @@ -160,6 +164,7 @@ env:
TESTNET_RPC_URL: "${{ secrets.TESTNET_RPC_URL }}"
ETHERSCAN_API_KEY: "${{ secrets.ETHERSCAN_API_KEY }}"
VITE_ALCHEMY_ID: "${{ secrets.VITE_ALCHEMY_ID }}"
IPFS_GATEWAYS: "${{ inputs.ipfs-gateways }}"
MULTIDEPLOYER_ENABLED: ${{ inputs.multideployer-enabled }}
SUBGRAPH_DEPLOY: ${{ inputs.subgraph-deploy }}
GRAPH_HEALTCHECKER_ENABLED: ${{ inputs.graph-healtchecker-enabled }}
Expand Down
2 changes: 1 addition & 1 deletion backend/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ yarn apitest:run # in a second console
When backend code is changed, just re-run `yarn apitest:run`.
To run just one test, use standard pytest naming:
```
yarn apitest:run tests/legacy/test_api_snapshot.py::test_pending_snapshot
yarn apitest:run tests/api-e2e/test_api_snapshot.py::test_pending_snapshot
```

To stop the env, run `yarn apitest:down`
Expand Down
956 changes: 483 additions & 473 deletions backend/app/constants.py

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions backend/app/engine/octant_rewards/leftover/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,6 @@ class Leftover(ABC):
@abstractmethod
def calculate_leftover(self, payload: LeftoverPayload) -> int:
pass

def extract_unused_matched_rewards(self, *args, **kwargs) -> int:
return 0
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,14 @@ def calculate_leftover(self, payload: LeftoverPayload) -> int:
- payload.total_withdrawals
+ unused_matched_rewards
)

def extract_unused_matched_rewards(self, leftover, payload) -> int:
extra_individual_rewards = int(payload.ppf / 2)
return (
leftover
- payload.staking_proceeds
+ payload.operational_cost
+ payload.community_fund
+ extra_individual_rewards
+ payload.total_withdrawals
)
17 changes: 16 additions & 1 deletion backend/app/engine/projects/rewards/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from abc import ABC, abstractmethod
from collections import namedtuple
from dataclasses import dataclass, field
from typing import List, Optional
from typing import List, Optional, Dict

from dataclass_wizard import JSONWizard

Expand Down Expand Up @@ -41,6 +42,11 @@ class ProjectRewardsResult:
threshold: Optional[int] = None


AllocationsBelowThreshold = namedtuple(
"AllocationsBelowThreshold", ["below_threshold", "total"]
)


@dataclass
class ProjectRewards(ABC):
projects_allocations: ProjectAllocations = field(init=False)
Expand All @@ -54,3 +60,12 @@ def calculate_project_rewards(

def calculate_threshold(self, total_allocated: int, projects: List[str]) -> None:
return None

def get_total_allocations_below_threshold(
self, allocations: Dict[str, List[AllocationItem]]
) -> AllocationsBelowThreshold:
allocations_sum = sum(
sum(int(item.amount) for item in project_allocations)
for project_allocations in allocations.values()
)
return AllocationsBelowThreshold(0, allocations_sum)
12 changes: 9 additions & 3 deletions backend/app/engine/projects/rewards/allocations/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,18 +33,24 @@ def _calc_allocations(
) -> Union[int, Decimal]:
...

def group_allocations_by_projects(
def segregate_allocations(
self, payload: ProjectAllocationsPayload
) -> (Dict[str, List], List[ProjectSumAllocationsDTO], Union[int, Decimal]):
result_allocations = []
) -> Dict[str, List]:
grouped_allocations = {
key: list(group)
for key, group in groupby(
sorted(payload.allocations, key=lambda a: a.project_address),
key=lambda a: a.project_address,
)
}
return grouped_allocations

def group_allocations_by_projects(
self, payload: ProjectAllocationsPayload
) -> (Dict[str, List], List[ProjectSumAllocationsDTO], Union[int, Decimal]):
grouped_allocations = self.segregate_allocations(payload)

result_allocations = []
total_plain_qf = 0
for project_address, project_allocations in grouped_allocations.items():
project_allocations = self._calc_allocations(project_allocations)
Expand Down
13 changes: 11 additions & 2 deletions backend/app/engine/projects/rewards/preliminary.py
Original file line number Diff line number Diff line change
@@ -1,28 +1,30 @@
from dataclasses import field, dataclass
from decimal import Decimal
from typing import List
from typing import List, Dict

from app.engine.projects.rewards import (
ProjectRewardsPayload,
ProjectRewardsResult,
ProjectRewards,
ProjectRewardDTO,
AllocationsBelowThreshold,
)
from app.engine.projects.rewards.allocations import (
ProjectAllocations,
ProjectAllocationsPayload,
AllocationItem,
)
from app.engine.projects.rewards.allocations.preliminary import (
PreliminaryProjectAllocations,
)
from app.engine.projects.rewards.leverage.preliminary import PreliminaryLeverage
from app.engine.projects.rewards.threshold import (
ProjectThreshold,
ProjectThresholdPayload,
)
from app.engine.projects.rewards.threshold.preliminary import (
PreliminaryProjectThreshold,
)
from app.engine.projects.rewards.leverage.preliminary import PreliminaryLeverage


@dataclass
Expand All @@ -42,6 +44,13 @@ def calculate_threshold(self, total_allocated: int, projects: List[str]) -> int:
)
)

def get_total_allocations_below_threshold(
self, allocations: Dict[str, List[AllocationItem]]
) -> AllocationsBelowThreshold:
return self.projects_threshold.get_total_allocations_below_threshold(
allocations
)

def calculate_project_rewards(
self, payload: ProjectRewardsPayload
) -> ProjectRewardsResult:
Expand Down
10 changes: 10 additions & 0 deletions backend/app/engine/projects/rewards/threshold/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
from abc import ABC, abstractmethod
from dataclasses import dataclass
from typing import List, Dict

from app.engine.projects.rewards import AllocationsBelowThreshold
from app.engine.projects.rewards import AllocationItem


@dataclass
Expand All @@ -13,3 +17,9 @@ class ProjectThreshold(ABC):
@abstractmethod
def calculate_threshold(self, payload: ProjectThresholdPayload) -> int:
pass

@abstractmethod
def get_total_allocations_below_threshold(
self, allocations: Dict[str, List[AllocationItem]]
) -> AllocationsBelowThreshold:
pass
24 changes: 24 additions & 0 deletions backend/app/engine/projects/rewards/threshold/preliminary.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
from dataclasses import dataclass
from typing import List, Dict

from app.engine.projects.rewards import AllocationsBelowThreshold
from app.engine.projects.rewards.threshold import (
ProjectThreshold,
ProjectThresholdPayload,
)
from app.engine.projects.rewards import AllocationItem


@dataclass
Expand All @@ -19,3 +22,24 @@ def calculate_threshold(self, payload: ProjectThresholdPayload) -> int:
if payload.projects_count
else 0
)

def get_total_allocations_below_threshold(
self, allocations: Dict[str, List[AllocationItem]]
) -> AllocationsBelowThreshold:
summed_allocations = {
project: sum(map(lambda value: int(value.amount), values))
for project, values in allocations.items()
}
total_allocations = sum(summed_allocations.values())
no_projects = len(allocations.keys())

threshold = self.calculate_threshold(
ProjectThresholdPayload(total_allocations, no_projects)
)

allocations_below_threshold = 0
for allocations_sum_for_project in summed_allocations.values():
if allocations_sum_for_project < threshold:
allocations_below_threshold += allocations_sum_for_project

return AllocationsBelowThreshold(allocations_below_threshold, total_allocations)
16 changes: 16 additions & 0 deletions backend/app/exceptions.py
Original file line number Diff line number Diff line change
Expand Up @@ -346,3 +346,19 @@ class InvalidDelegationForLockingAddress(OctantException):

def __init__(self):
super().__init__(self.description, self.code)


class InvalidAddressFormat(OctantException):
code = 400
description = "Invalid address format"

def __init__(self):
super().__init__(self.description, self.code)


class InvalidProjectDetailsInput(OctantException):
code = 400
description = "Invalid input for projects details"

def __init__(self):
super().__init__(self.description, self.code)
10 changes: 8 additions & 2 deletions backend/app/infrastructure/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
from app.infrastructure.exception_handler import ExceptionHandler
from flask import current_app as app

from app.exceptions import InvalidAddressFormat

default_decorators = {
"delete": ExceptionHandler.print_stacktrace_on_exception(True, True),
"get": ExceptionHandler.print_stacktrace_on_exception(False, True),
Expand All @@ -30,8 +32,12 @@ def _add_address_canonization(handler):
def _decorated(*args, **kwargs):
field_value = kwargs.get(field_name)
if force or field_value is not None:
updated_field = to_checksum_address(field_value)
kwargs.update([(field_name, updated_field)])
try:
updated_field = to_checksum_address(field_value)
except ValueError:
raise InvalidAddressFormat()
else:
kwargs.update([(field_name, updated_field)])

return handler(*args, **kwargs)

Expand Down
6 changes: 5 additions & 1 deletion backend/app/infrastructure/apscheduler.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
from flask import current_app as app

from app import exceptions
from app.legacy.core import glm
from app.legacy.core import vault
from app.extensions import scheduler
Expand All @@ -16,7 +17,10 @@ def vault_confirm_withdrawals():
with scheduler.app.app_context():
if app.config["VAULT_CONFIRM_WITHDRAWALS_ENABLED"]:
app.logger.debug("Confirming withdrawals in Vault contract...")
vault.confirm_withdrawals()
try:
vault.confirm_withdrawals()
except exceptions.MissingSnapshot:
app.logger.warning("No snapshot found")


@scheduler.task(
Expand Down
16 changes: 16 additions & 0 deletions backend/app/infrastructure/database/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -204,3 +204,19 @@ class UniquenessQuotient(BaseModel):
@property
def validated_score(self):
return Decimal(self.score)


class ProjectsDetails(BaseModel):
"""
This model represents the details of a project that is consistent with data on the IPFS node.
Records here are created only by migrations.
"""

__tablename__ = "project_details"

id = Column(db.Integer, primary_key=True)
address = Column(db.String(42), nullable=False)
name = Column(db.String, nullable=False)
epoch = Column(db.Integer, nullable=False)

__table_args__ = (UniqueConstraint("address", "epoch", name="uq_address_epoch"),)
7 changes: 7 additions & 0 deletions backend/app/infrastructure/database/projects_details.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from typing import List

from app.infrastructure.database.models import ProjectsDetails


def get_projects_details_for_epoch(epoch: int) -> List[ProjectsDetails]:
return ProjectsDetails.query.filter_by(epoch=epoch).all()
3 changes: 2 additions & 1 deletion backend/app/infrastructure/external_api/common.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
import time
from http import HTTPStatus
from typing import Callable, Dict

from app.exceptions import ExternalApiException


def retry_request(
req_func: Callable,
status_code: int,
status_code: HTTPStatus,
no_retries: int = 3,
sleep_time: int = 1,
**kwargs,
Expand Down
Loading