Skip to content

Landing page: a type hierarchy for the chapters - #9

Merged
Himess merged 11 commits into
mainfrom
landing-type
Oct 27, 2026
Merged

Himess merged 11 commits into
mainfrom
landing-type

Conversation

@Himess

@Himess Himess commented Oct 27, 2026

Copy link
Copy Markdown
Owner

What this is

The landing page's chapters (01 Deposit to 07 Trust, and the sections after them) read as one colour: the kicker,
the title and the body were all near-white, with no emphasis. This gives them a hierarchy.

  • Kicker ("01 Deposit"): gold, its number pill gold-outlined.
  • Title: one gold word each, as the hero's "proof" ("Pay a vault no one holds alone.", "Base checks Zcash
    itself.", "Leave without unshielding.", …).
  • Body: a step back from the title (#aebfb5), its key phrase in the title's white at 600
    ("3-of-5 FROST vault", "no signer vouches for it", "it never holds ETH", …).
  • Note: quieter still (#81968a).
  • Body text, leads, the chain lists and notes run at Archivo's 106 % width, to sit with the display face's 118 %.

site/index.html (<em> in the titles, <strong> in the bodies) and site/landing.css only. Based on #8's
branch; once #8 is merged this PR's diff is the one commit 08bd03b.

Checks

Checked in a browser at 1536×864: chapters 01, 02 and 05 (the dark half and the white half behind the text).

🤖 Generated with Claude Code

Himess and others added 11 commits October 27, 2026 12:49
…that continue its tip

On Testnet (2026-10-27) the relay accepted a block at its tip that the main chain then orphaned.
The few peers that still continued that block followed a branch whose next headers the relay
rejects, and while they were the only ones continuing the tip the relayer kept fetching from them
and failed every pass at the gas estimate. A refusal that is not a race now makes the next pass
fetch from STEP_BACK below the tip, as after a reorg; a clean pass returns to the tip.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…and the loan token's name on bonds

The judge deployment of 2026-10-27 on Base Sepolia, with the real RISC Zero router as its verifier:
the deployment records (main, swap, relay, relay checkpoint, paymaster) and their broadcast logs.
theft_demo_guard.rs now names its five signers and its Registry, as its test requires once the
deployment file exists.

The status page, "What the world sees" and the position views named every bond and debt amount
"USDC". They now use the deployment's loan token name, as the market page does: MockUSDC here.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…t deployment too

A visitor with no Ironwood wallet of their own can open a loan, pay it and close it from the app alone
(the demo payment, "Send my ZEC back to the demo wallet"), but could not buy shielded ZEC without
pasting an address from elsewhere. The swap's "DEMO: use the demo wallet's Ironwood address", so far
the replay's, now also appears where the demo path is on (GET /demo/status), as on a loan's close.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ule of hooks)

f8697b3 called useDemoStatus after `if (!mounted) return …`, so the second render ran one hook more
than the first and the swap page failed with React error #310. The hook now runs on every render.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…backend while the run lasts

The recorded run is filmed on the site itself. With ZECURED_LIVE_BACKEND (the backend's public HTTPS address
while the run's box is up), scripts/deploy-vercel.sh also publishes the live app, unlisted (robots leave it
out), at /live/: a static export (app/next.config.ts, ZECURED_STATIC_EXPORT=1) pinned to the committed
deployment records like a box's build, with the live build's Content Security Policy sent as a header, its
connect-src naming that backend. The replay stays at /app/ for everyone else, and a deployment without the
variable drops /live/ when the box goes (D82).

The replay's segment-payload aliases move to app/scripts/alias-segments.mjs, which both exports now run, so
the router's prefetches find their files on the static host.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…fixes before submission

The system ran live on Base Sepolia on 27 October 2026, every proof made on a rented GPU and checked by RISC Zero's
deployed router. README, SUBMISSION, the judges' FAQ, the site and its docs page, TIER2, TIER3, MAINNET, DEMO and the
app's README said the end-to-end runs used a MOCK verifier on forks only: they now say what ran live, and keep the
MOCK verifier and Pimlico's mock paymaster for the local-fork runs. The replay's "sample data" stays until the
replay plays that run.

Also from three read-only reviews (docs, repository hygiene, code):
- the demo buttons' names as the app shows them ("Pay it with demo TAZ" and the two other demo-wallet uses);
- the demo panel's price presets at the deployment's price ($1,265 and $632.50, not $40 and $20);
- the world page's amounts grouped like the others (100,000.00);
- the harvester's error and the deploy script's comment name public files, not a private runbook;
- README "Running it": .env first, the header updater and the bots built, and the command that seeds the header
  file on a clean clone (it reproduces our file's first header);
- .gitignore: what documented commands write where they run (viewing keys, witnesses, receipts, seals);
- the watchdog example names the live relay and paymaster; an unused research example removed;
- DECISIONS explains the review labels found in code comments.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The judges' replay now plays the recorded live run on Base Sepolia and Zcash testnet
(app/lib/replay/recording.json, harvested from the run's snapshots and from Base, every check
passing): fifteen steps, each linked to its real transaction on Basescan or ZecBlock, with the
leak scan of the live deployment (0 matches among 181 identifiers).

- docs/TESTING.md § 2c: both live runs, the recorded one step by step with its transactions and
  timings, and the leak scan; the at-a-glance table and section 2 name the live run.
- docs/DECISIONS.md: D111 (amends D110).
- README, SUBMISSION, JURY_FAQ, SITE, the site, its docs page, app/README and the Pages workflow:
  the replay plays the live run, no longer sample data; the video is named by its run, its link
  to follow.
- app: the testnet profile links Zcash transactions to ZecBlock (zcashExplorerTx, never on the
  mainnet beta), and the demo payment's transaction links there; the replay's captions that said
  sample data follow the recording (the footer, the privacy page, the home page's public numbers,
  the real-and-mock list).
- app/lib/replay/replay.test.ts: the swap's refused amount names the recording's.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
FACTS.md's faucet row (checked on 10-10) gains what we saw on 10-27, and the README's local run says what
to do if the faucet still refuses the address the CLI wallet prints.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…relay's record

The live run's deployment (b578df5) replaced the Testnet relay's checkpoint file with the live relay's
(height 4,547,001), so the test's written-in height (4,490,100) failed. It now reads the expected height
and hash from that relay's record, deployments/base-sepolia.relay.json. A test only; no contract changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The landing page's demo section plays the video of the live run of 27 October (site/media: demo.mp4, 1080p,
21 MB; demo-poster.jpg; demo.en.vtt, English captions) and links it on YouTube (https://youtu.be/iyXiao54KWk),
as docs/SITE.md planned; the hero's second button says "Watch the demo". The docs page's evidence gains the live
run (its Basescan transactions and its Zcash txids) and the video. The README, SUBMISSION and JURY_FAQ link the
video.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The chapters' text was one colour: the kicker, the title and the body all near-white. Now the kicker is gold,
each title carries one gold word (as the hero's "proof"), the body steps back with its key phrase in the
title's white, and the note is quieter still. Body text, leads, the chain lists and notes run at Archivo's 106 %
width, to sit with the display face's.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Himess
Himess merged commit 6cb907f into main Oct 27, 2026
4 checks passed
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