Skip to content

Commit 15060cd

Browse files
committed
fix(pipeline-svg): lift On-chain-receipt card out of the footer (was overlapping the P50 line + '<150ms'); bump landing ?v=r35 to bust CF .svg cache; scripts name sections not svg files
1 parent b8c19ed commit 15060cd

4 files changed

Lines changed: 5 additions & 5 deletions

File tree

docs/DEMO_SCRIPT.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ If a beat can't be shot without one of these, cut the beat. Honesty is the whole
4040
| # | Time | On screen (action) | Voiceover |
4141
|---|------|--------------------|-----------|
4242
| 1 | 0:00–0:15 | Landing hero at `/`. Slow scroll past the headline **"Stripe webhooks, but for Casper."** | "You're building an app or an AI agent on Casper, and you need to know the instant something happens on chain. Ethereum has Alchemy webhooks. Solana has Helius. Casper had nothing. Sluice fills that gap." |
43-
| 2 | 0:15–0:35 | The `pipeline.svg` "How it works" diagram. Let each stage land: predicate → prepay escrow → matcher → webhook/MCP → on-chain receipt. | "Write a JSON rule. Prepay in CSPR into an on-chain escrow contract. Sluice watches the chain, and the instant a matching event lands it pushes it to your webhook — median under ~150 ms on testnet — and writes an auditable receipt back on chain." |
43+
| 2 | 0:15–0:35 | The landing page's **How it works** section (nav: "How it works") — its pipeline diagram: **Source → MatcherYour webhook + On-chain receipt**. Let each stage land. | "Write a JSON rule. Prepay in CSPR into an on-chain escrow contract. Sluice watches the chain, and the instant a matching event lands it pushes it to your webhook — median under ~150 ms on testnet — and writes an auditable receipt back on chain." |
4444
| 3 | 0:35–1:05 | Open `/app` (Subscriptions tab). Pan the stat bar — **FUNDS LOCKED 30 CSPR · ACTIVE SUBS 6 / 7 TOTAL (hover the `1 escrow-backed · 5 demo` subline) · EVENTS DELIVERED 11 · WEBHOOK HEALTH 100%**. Then the table: hover the real lane **`sub_0003`** (30 CSPR, `ecf442…7309`); then hover a **`DEMO`-marked** lane (tooltip: demo lanes POST but write no receipt). | "Here's the live dashboard. Six lanes active — but only one is escrow-backed: thirty CSPR locked, funded from a real wallet. The other five are clearly marked **DEMO**. They deliver real webhooks so you can watch the feed move, but they hold no escrow, so we never count them as locked funds or write a fake on-chain receipt. What you see is exactly what's on chain — nothing inflated." |
4545
| 4 | 1:05–1:30 | `/app`**Build** tab. Type into the AI parser: **`transfers over 1000 CSPR to dc7252…787c9c`**. The JSON predicate writes itself on the right (`amount gte` + `to_account_hash eq`); the sample-event tile flips to green **✓ MATCHES**. ⚠️ Use `over 1000 CSPR` (the sample event is 5000 CSPR, so it matches). Saying `100k CSPR` parses correctly but the sample would read **NO MATCH** — avoid on camera. | "You don't hand-write JSON. Describe the rule in plain English — 'transfers over a thousand CSPR to this address' — and the builder compiles it to a predicate right in the browser. Test it against a sample event: it matches." |
4646
| 5 | 1:30–2:00 | Cut to a terminal. Run **`scripts/demo-swap.sh 500000 CSPR USDC`**. Cut back to `/app` (or `/feed`) live feed — a new delivery row lands: **`Contract · Swap @ ffb5a9… → 200 · ~80ms`**. ⚠️ Testnet finalization can take up to ~1–2 min — fire the swap slightly early and cut to the moment it lands; don't hold the wait on screen. (Verified live: real tx, delivery status 200, ~74 ms.) | "This isn't a mock. I'll fire a real swap on our DemoDex contract on testnet. The production matcher is watching it — swap transaction, to CSPR.cloud's stream, to a predicate match, to a webhook two-hundred — and there it is in the feed, a real matched event in seconds." |
4747
| 6 | 2:00–2:25 | Show a real **`record_delivery`** deploy on **cspr.live** (`error: None`). Then the **x402** panel on `/app` (`Subscription 200 … 0.1 WCSPR`). ⚠️ **Do NOT do a live one-click x402 pull on camera** — the sub-200 buffer only fills from an event matching its predicate, and a cold click honestly shows *"no matched event available, nothing charged."* Narrate over the panel and reuse the old video's real on-chain micropayment footage (still valid), or pre-warm + confirm a settlement in rehearsal first. | "And the billing is real too. Every escrow-backed delivery is a deploy on Casper — your bill is an auditable ledger on cspr.live, not an invoice we made up. This lane is even paid per delivery over x402: each pull settles a point-one WCSPR micropayment through Casper's hosted facilitator, no wallet needed." |
48-
| 7 | 2:25–2:40 | Show the hosted-MCP one-liner (README `#mcp-demo` or the `/app` "For AI agents" card): one URL, any MCP client. Optional: a Claude/Cursor client listing the Sluice tools. | "Casper's AI Toolkit lets an agent read chain state, act on it, and pay per request. The missing piece was **react**. Sluice ships as one hosted MCP URL — any agent installs it and gets matched events pushed in as tool calls." |
48+
| 7 | 2:25–2:40 | The landing **MCP** section (nav: "MCP" — "Any MCP client drives Sluice"), or the `/app` **"For AI agents"** card: one hosted URL, any MCP client. Optional: a Claude/Cursor client listing the Sluice tools. | "Casper's AI Toolkit lets an agent read chain state, act on it, and pay per request. The missing piece was **react**. Sluice ships as one hosted MCP URL — any agent installs it and gets matched events pushed in as tool calls." |
4949
| 8 | 2:40–2:50 | Back to `/app` header: badge **`11 on-chain · 1 active`**, contract **`f3710e…b971 on cspr.live`**. End card: **sluice.unitynodes.com**. | "Live on Casper testnet today. One contract, one hosted MCP, honest on-chain numbers. Sluice — the react primitive for Casper." |
5050

5151
---

docs/DEMO_SHOOT.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
🎤 "You're building an app or an AI agent on Casper, and you need to know the instant something happens on chain. Ethereum has Alchemy webhooks. Solana has Helius. Casper had nothing — Sluice fills that gap."
1515

1616
### ② 0:15–0:35 · Як працює
17-
🎬 Діаграма `pipeline.svg` («How it works») — по черзі підсвічуються стадії: predicate → prepay escrowmatcher → webhook/MCP → on-chain receipt.
17+
🎬 На лендінгу проскрол до секції **«How it works»** (пункт меню «How it works») — там діаграма-конвеєр: **SourceMatcherYour webhook + On-chain receipt**, з анімованим імпульсом по лініях. Дай кадру затриматись на ній.
1818
🎤 "Write a JSON rule. Prepay in CSPR into an on-chain escrow contract. Sluice watches the chain, and the instant a matching event lands it pushes it to your webhook — median under ~150 ms on testnet — and writes an auditable receipt back on chain."
1919

2020
### ③ 0:35–1:05 · Чесний дашборд

web/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -500,7 +500,7 @@ <h2 style="margin:18px 0 0;font:500 clamp(40px,5.4vw,72px)/1.02 'Casper Sans',In
500500
<p style="margin:0 0 12px;font:400 16px/1.6 'Casper Sans',Inter;color:#666;max-width:380px">No polling. No chain indexer to operate. No glue code per integration. Sluice replaces ~600 lines of bespoke event-listener plumbing with one signed deploy.</p>
501501
</div>
502502

503-
<div style="margin-bottom:32px;max-width:1080px;margin-left:auto;margin-right:auto"><img src="/pipeline.svg?v=r34" alt="Sluice pipeline. Casper events flow through the matcher, then fan out to your webhook and to an on-chain record_delivery receipt." style="width:100%;height:auto;display:block"></div>
503+
<div style="margin-bottom:32px;max-width:1080px;margin-left:auto;margin-right:auto"><img src="/pipeline.svg?v=r35" alt="Sluice pipeline. Casper events flow through the matcher, then fan out to your webhook and to an on-chain record_delivery receipt." style="width:100%;height:auto;display:block"></div>
504504

505505
<div style="display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#fff;border:1px solid #000">
506506
<!-- Step 1 -->

web/pipeline.svg

Lines changed: 1 addition & 1 deletion
Loading

0 commit comments

Comments
 (0)