feat: Add foreclose capability for configured guardian applications - #469
Open
brunomenezes wants to merge 9 commits into
Open
feat: Add foreclose capability for configured guardian applications#469brunomenezes wants to merge 9 commits into
brunomenezes wants to merge 9 commits into
Conversation
* Avoids thundering-herd effect.
* Improve feedback depending on output epoch status. * For epochs with status claim-foreclosed the output UI also marks it as execution foreclosed text including informational tooltip.
7 tasks
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
* Remove upgrade-insecure-requests and explicit list loopback origins from CSP.
brunomenezes
force-pushed
the
feat/add-foreclose-capability-for-configured-guardian
branch
from
July 9, 2026 06:12
cc8bfc2 to
397944b
Compare
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
The Cartesi rollups contracts expose a foreclosure operation meant for guardian-configured applications. This PR brings that capability into the explorer UI with appropriate safeguards (confirmation modal, irreversible-action warnings). Also, refactored the output execution component to correctly reflect all possible epoch states and to provide information about its execution for epochs that have status
claim_foreclosed.PS: For the lookback test the reviewer can use the following deployed instances.
Current: https://dave-demo.cartesi.io/
Preview: https://dave-git-feat-add-foreclose-capability-for-confi-af9017-cartesi.vercel.app/
Tip: use
cartesi/cli, as it already has CORS configured at the proxy level for ease of testing.What changed
Foreclose action
Send Menu(located in the home page in the application card), allowing a configured guardian to foreclose an application directly from the UI.ForecloseFormcomponent that handles the full transaction flow (simulate → write → wait for receipt).ConfirmationModalcomponent to gate irreversible actions behind an explicit user confirmation step, used by the foreclose flow.Output execution improvements
OutputExecutionto surface richer epoch-status feedback: a badge is shown while the claim is pending, and a distinct foreclosed state is shown when execution is no longer possible.OutputExecution— epoch state is now driven reactively without a client-side interval.Content / copy consolidation
contentobject (forecloseMessages,globalMessages,outputMessages) so copy lives in one place and components stay free of hardcoded strings. PS: This is a continuing effort.CSP fix
upgrade-insecure-requestsfrom the Content Security Policy and replaced the broadhttp:scheme source with explicit loopback origins (http://localhost:*,http://127.0.0.1:*,ws://localhost:*,ws://127.0.0.1:*). This allows users on deployed HTTPS instances to connect a local node without the browser silently rewriting theirhttp://localhostURL tohttps://localhostand failing the TLS handshake.Tests
ForecloseForm.