feat(web): surface jury round phase countdown - #165
Merged
karagozemin merged 1 commit intoJul 21, 2026
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR updates the web jury/dashboard UI so users can clearly understand the current sealed round phase and how long remains until the configured Drand reveal round
R.It adds a dedicated round phase classifier for the UI, surfaces an explicit
Open / Reveal / Settledphase badge, and shows a live reveal countdown tied to the target Drand round. The countdown also handles rounds whereRhas already passed, which is important for the bundled offline demo fixture because its canonical trace is already settled.Closes #155
What Changed
Added
classifyRoundPhasefor UI-level phase classification:Openwhen the round is still waiting for DrandRRevealwhen the round is revealing, cleared, or DrandRhas already publishedSettledwhen the round is terminal, including settled or voided roundsUpdated the round status card in
apps/webto display:Open,Reveal, orSettledPhaserowReveal countdownrowImproved Drand countdown behavior:
Rhas already publishedAdded component-level coverage for the round status card:
RRhas already passed and should surface asRevealWhy
Before this change, users could see raw round/Drand information, but the jury UI did not clearly communicate the actual product-facing phase of the round or make the reveal timing obvious at a glance.
This is important because the core user flow depends on understanding when sealed values become revealable.
Offline Demo Behavior
The bundled dashboard fixture still works without a configured live endpoint. Since the fixture is already settled and its Drand round is in the past, the UI now shows that
Rhas already published instead of relying on a live Drand request.Tests
Ran successfully:
npx.cmd pnpm@10.13.1 web:test npx.cmd pnpm@10.13.1 web:typecheck npx.cmd pnpm@10.13.1 web:build ## Test result: web:test: 48/48 passing web:typecheck: passing web:build: passing