Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Nov 26, 2025

Adds a modal to view Sign Protocol attestations for progress tracking (retries and successful clue solves) with links to the Sign Protocol explorer.

Changes

Backend

  • New endpoint GET /team-attestations/:huntId/:teamIdentifier returns solve and retry attestations for a team
  • Uses Promise.allSettled for parallel clue queries

Frontend

  • AttestationsModal.tsx: Neobrutalism-styled modal displaying:
    • Hunt start attestation
    • Per-clue cards with solve details (solver, time taken, attempts) and retry history
    • Direct links to scan.sign.global/attestation/{id}
  • Attestations button added to HuntDetails.tsx and HuntEnd.tsx card headers
  • getTotalCluesFromStorage() utility added to progressUtils.ts

Usage

<AttestationsModal
  huntId={huntId}
  huntName={huntData?.name}
  teamIdentifier={teamIdentifier}
  totalClues={getTotalCluesFromStorage(huntId)}
  isOpen={isAttestationsOpen}
  onClose={() => setIsAttestationsOpen(false)}
/>

Screenshot

Note: Screenshot shows blank page due to missing Web3 environment configuration in sandbox. The modal renders when proper Web3 config is present.

Screenshot

Original prompt

This section details on the original issue you should resolve

<issue_title>frontend: Add a modal for the user to view their attestations per hunt, on-chain</issue_title>
<issue_description>- We use sign protocol attestations heavily for progress tracking - both retries and successful clue solves.

  • Since these can be viewed on the sign explorer (https://scan.sign.global/attestation/), we can provide links to those to the user to verify their attestations
  • The modal can be similar to the Leaderboard.tsx with the retries and successful clue separately visible. We will show clue-wise, both retries and succcessful attempt attestation link, solverAddress, timeTaken (for solve clue), and timestamp for both. Need not be a table also, a list of cards with useful indicative icons is good. Keep the neobrutalism style intact.
  • Add this button on the huntEnd, huntDetails page to show the modal.</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI self-assigned this Nov 26, 2025
@netlify
Copy link

netlify bot commented Nov 26, 2025

Deploy Preview for khoj-alpha ready!

Name Link
🔨 Latest commit 57d9d32
🔍 Latest deploy log https://app.netlify.com/projects/khoj-alpha/deploys/692759735bdb150008cea7ff
😎 Deploy Preview https://deploy-preview-176--khoj-alpha.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copilot AI changed the title [WIP] Add modal for viewing attestations per hunt frontend: Add modal for viewing user attestations per hunt on-chain Nov 26, 2025
Copilot AI requested a review from mittal-parth November 26, 2025 19:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

frontend: Add a modal for the user to view their attestations per hunt, on-chain

2 participants