Skip to content

feat: High-Fidelity sensory UX & On-Chain Sync for The Farm (The "Trust" Upgrade) v2#71

Closed
tacticalnoot wants to merge 1 commit into
kalepail:nootfrom
tacticalnoot:fix/ux-trust-upgrade-v2
Closed

feat: High-Fidelity sensory UX & On-Chain Sync for The Farm (The "Trust" Upgrade) v2#71
tacticalnoot wants to merge 1 commit into
kalepail:nootfrom
tacticalnoot:fix/ux-trust-upgrade-v2

Conversation

@tacticalnoot

Copy link
Copy Markdown

This PR implements a comprehensive high-fidelity UX overhaul for "The Farm" to bridge the "trust gap" and ensure on-chain ZK verification feels mathematically final and permanent.

This is a re-submission with a clean history based on upstream/noot.

🟢 High-Fidelity UX & Trust Upgrades

  • ZK Cryptographic Terminal: Added a live-scrolling terminal that visualizes the "work" (Poseidon hashing, witness generation) during the ZK pipeline.
  • On-Chain Discovery: Proactive status sync that queries the contract for existing attestations on mount and login.
  • Hero State Transformation: The Hero section now reacts to on-chain verification with a "Farmer Authenticated" badge and green intensity glow.
  • Verification Seal: Substantial result card with direct Stellar.Expert integration and commitment tracking.
  • Reliability Fixes: Resolved TypeError regarding PasskeyKit initialization and standardized all transactions to use the signAndSend helper with gasless relayer support.

Closes # [ZK Flow Error]
Co-authored-by: Antigravity antigravity@google.com

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7661e896a2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +321 to +323
const accountResponse = await server.getAccount(farmerAddress).catch(() => null);
if (!accountResponse) {
return { verified: false };

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Use a valid source account for attestation simulation

checkAttestation builds its read-only simulation by calling server.getAccount(farmerAddress) and returns { verified: false } when that lookup fails. In this flow, callers pass userState.contractId (a smart-wallet contract ID), so this lookup can fail before simulation runs, causing existing attestations to be silently missed and the new on-chain sync feature to report users as unverified.

Useful? React with 👍 / 👎.

const tierName = tierOrder[status.tier];
setAttestationResult("circom", tierName, {
ok: true,
txHash: status.commitment || "0x_on_chain",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep commitment separate from transaction hash in synced state

When syncOnChainStatus hydrates an existing attestation, it stores status.commitment in the txHash field, but that value is not a transaction hash. The verified card then builds a Stellar Expert transaction URL from this field, so already-verified users get a broken explorer link instead of a valid on-chain transaction reference.

Useful? React with 👍 / 👎.

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.

1 participant