Back to home

Onchain Rewind

Project development logs

How this app was built. Every ticket is planned, coded by an AI developer, checked by two independent AI reviewers, then merged. Nothing here is typed in by hand: it is read from GitHub and the Vinaya log.

Saved copy as of , taken when this version of the site was built. Checking for anything newer…

Milestone

Onchain Rewind v1: demo-ready

32 of 33 tickets merged

Time per ticket

34 min

Median developer plus reviewer time per ticket, from the Vinaya round log. Waiting for a human is not counted.

Second rounds

11 of 32

Reviewed tickets where the reviewers asked for changes and the developer went round again.

Problems caught

103

Raised by the two reviewers before merge:Code review: 7 blocker · 21 major · 36 minorSecurity: 2 high · 12 medium · 25 low

Typical size

10 files

Median change: 491 lines added or removed.

Model tokens

1.5M out

1.3B read in total, developer and reviewers together.

Where the time goes

Developer writes the code: 23 h 51 min (84%)Reviewers check it: 4 h 41 min (16%)

Across every round the log has seen. Humans stepped in 5 times. The loop recovered from a platform failure on its own on 1 ticket.

Guardrails

39 automated checks ran across 18,508 runs before code could be committed, pushed or merged. 130 runs stopped a bad change.

The rules are enforced by code, not by asking the AI politely. From the Vinaya log, as of the saved copy.

Ticket by ticket

Rounds is how many times the developer and reviewers went back and forth. Problems are what each reviewer, code review and security, raised, by severity — not every problem stops a merge; some are recorded and fixed later.

  • TicketTimeRoundsSizeProblemsTokens
  • #2Merged

    [rewind-v1] 1 — The Ariakit primitives, the RewindFacts contract and the fixtures live in the app, and /system shows the primitives

    Pull request #17Started Code review: approveSecurity: pass

    Time30 min
    Rounds1 round
    Size14 files+749 −4
    ProblemsCode review:2 minorSecurity:2 low
    Tokens45k out59.0M read
    1. Round 1Approved

      Developer 17 minReviewers 14 min14 files · +749 −4

      Problems raised: 2 minor · 2 low

    1 round · 30 min of developer and reviewer time.

  • #3Merged

    [rewind-v1] 2 — One server-only Zerion client authenticates, caches, backs off and maps errors to typed results

    Pull request #19Started Code review: approveSecurity: pass

    Time30 min
    Rounds1 round
    Size5 files+549 −5
    ProblemsCode review:1 major3 minorSecurity:1 medium5 low
    Tokens36k out16.2M read
    1. Round 1Approved

      Developer 20 minReviewers 10 min5 files · +549 −5

      Problems raised: 1 major · 3 minor · 1 medium · 5 low

    1 round · 30 min of developer and reviewer time. A human paused the loop at least once.

  • #4Merged

    [rewind-v1] 6 — A pure engine turns trimmed Zerion pages into RewindFacts, with every aggregation rule proven by tests

    Pull request #22Started Code review: approveSecurity: pass

    Time17 min
    Rounds1 round
    Size4 files+829 −7
    ProblemsCode review:noneSecurity:none
    Tokens70k out18.4M read
    1. Round 1Approved

      Developer 14 minReviewers 3 min4 files · +829 −7

    1 round · 17 min of developer and reviewer time.

  • #5Merged

    [rewind-v1] 7 — The user sets their wallet once, by address, ENS name or demo pick, and the app remembers it as connected

    Pull request #24Started Code review: approveSecurity: pass

    Time31 min
    Rounds1 round
    Size13 files+684 −6
    ProblemsCode review:noneSecurity:1 medium
    Tokens93k out87.9M read
    1. Round 1Approved

      Developer 27 minReviewers 4 min13 files · +684 −6

      Problems raised: 1 medium

    1 round · 31 min of developer and reviewer time.

  • #6Merged

    [rewind-v1] 9 — A tested useRewind hook pages a wallet's transactions, feeds the engine, and reports progress, completion and failure

    Pull request #25Started Code review: approveSecurity: pass

    Time1 h 12 min
    Rounds1 round
    Size2 files+886 −0
    ProblemsCode review:noneSecurity:none
    Tokens130k out42.8M read
    1. Round 1Approved

      Developer 47 minReviewers 25 min2 files · +886 −0

    1 round · 1 h 12 min of developer and reviewer time.

  • #7Planned

    [rewind-v1] 11 — The Rewind is live at a public URL and shareable as an image and as a link with a working preview

    Time—
    Rounds—
    Size—
    Problems—
    Tokens—
  • #9Merged

    [rewind-v1] 3 — Every story component runs on fixtures in the app, and /system shows each one in every state

    Pull request #20Started Code review: approveSecurity: pass

    Time1 h 49 min
    Rounds2 rounds
    Size17 files+1,338 −7
    ProblemsCode review:4 major11 minorSecurity:2 low
    Tokens68k out13.1M read
    1. Round 1Changes requested

      Developer 35 minReviewers 28 min15 files · +1,198 −3

      Problems raised: 2 major · 6 minor · 1 low

    2. Round 2ApprovedConfidence 88%

      Developer 26 minReviewers 19 min17 files · +1,338 −7

      Problems raised: 2 major · 5 minor · 1 low

    2 rounds · 1 h 49 min of developer and reviewer time.

  • #10Merged

    [rewind-v1] 5 — The particle reveal runs on /system, driven by fixture counts, through gather, burst, fail and reduced motion

    Pull request #23Started Code review: approveSecurity: pass

    Time30 min
    Rounds1 round
    Size8 files+1,017 −6
    ProblemsCode review:1 minorSecurity:none
    Tokens28k out28.8M read
    1. Round 1Approved

      Developer 26 minReviewers 4 min8 files · +1,017 −6

      Problems raised: 1 minor

    1 round · 30 min of developer and reviewer time.

  • #11Merged

    [rewind-v1] 4 — Server functions return the trimmed Zerion data the Rewind needs, in shapes the engine can read

    Pull request #21Started Code review: approveSecurity: pass

    Time1 h 8 min
    Rounds1 round
    Size20 files+7,545 −12
    ProblemsCode review:2 major2 minorSecurity:2 medium2 low
    Tokens144k out36.8M read
    1. Round 1Approved

      Developer 58 minReviewers 10 min20 files · +7,545 −12

      Problems raised: 2 major · 2 minor · 2 medium · 2 low

    1 round · 1 h 8 min of developer and reviewer time.

  • #12Merged1 human ruling

    [rewind-v1] 15 — A page load autoplays the real Rewind: the reveal streams real transactions, then the five cards play

    Pull request #39Started Code review: approveSecurity: pass

    Time2 h 17 min
    Rounds1 round
    Size8 files+695 −62
    ProblemsCode review:1 blocker2 majorSecurity:none
    Tokens44k out38.8M read
    1. Round 1Approved

      Developer 2 h 10 minReviewers 7 min8 files · +695 −62

      Problems raised: 1 blocker · 2 major

    1 round · 2 h 17 min of developer and reviewer time.

  • #13Merged1 human ruling

    [rewind-v1] 8 — The full RewindPlayer plays each fixture on /system, and the arrow keys work while a button has focus

    Pull request #26Started Code review: approveSecurity: pass

    Time53 min
    Rounds3 rounds
    Size7 files+629 −105
    ProblemsCode review:1 blocker2 minorSecurity:none
    Tokens111k out57.6M read
    1. Round 1Changes requested

      Developer 24 minReviewers 7 min5 files · +546 −86

      Problems raised: 1 blocker · 2 minor

    2. Round 2ApprovedConfidence 88%

      Developer 12 minReviewers 4 min7 files · +629 −105

    3. Round 2 · re-review after a human rulingApprovedConfidence 88%

      Developer —Reviewers 7 min7 files · +629 −105

    3 rounds · 53 min of developer and reviewer time.

  • #18Merged2 human rulings

    [rewind-v1] 16 — Every component and /system work in light and dark, the app chrome follows the system setting, and the story stays dark

    Pull request #42Started Code review: approveSecurity: pass

    Time1 h 36 min
    Rounds2 rounds
    Size20 files+544 −45
    ProblemsCode review:noneSecurity:none
    Tokens17k out14.4M read
    1. Round 1Changes requested

      Developer 46 minReviewers 33 min17 files · +352 −43

      Stopped for a human decision before the reviewers' verdict.

    2. Round 1 · re-review after a human rulingApproved

      Developer 14 minReviewers 3 min20 files · +544 −45

    2 rounds · 1 h 36 min of developer and reviewer time. A human paused the loop at least once.

  • #27Merged

    [rewind-v1] 14 — Every story card and the share card are visible: their entrance ends at full opacity instead of 0

    Pull request #29Started Code review: approveSecurity: pass

    Time5 h 47 min
    Rounds2 rounds
    Size8 files+244 −23
    ProblemsCode review:noneSecurity:1 medium
    Tokens113k out22.4M read
    1. Round 1Changes requested

      Developer 5 h 28 minReviewers 4 min6 files · +221 −21

      Problems raised: 1 medium

    2. Round 2ApprovedConfidence 92%

      Developer 10 minReviewers 5 min8 files · +244 −23

    2 rounds · 5 h 47 min of developer and reviewer time. The loop recovered from a platform failure on its own.

  • #30Merged

    [rewind-v1] 17 — Every story card stays visible after its slide-in, at full motion and after moving back and forth

    Pull request #31Started Code review: approveSecurity: pass

    Time1 h 39 min
    Rounds1 round
    Size4 files+231 −1
    ProblemsCode review:noneSecurity:none
    Tokens35k out41.0M read
    1. Round 1Approved

      Developer 1 h 32 minReviewers 7 min4 files · +231 −1

    1 round · 1 h 39 min of developer and reviewer time.

  • #32Merged

    [rewind-v1] 19 — The story's last card shows its share panel instead of leaving it invisible

    Pull request #33Started

    Time23 min
    Rounds1 round
    Size6 files+340 −41
    ProblemsCode review:noneSecurity:none
    Tokens511 out8.7M read
    1. Round 1Approved

      Developer 20 minReviewers 4 min6 files · +340 −41

    1 round · 23 min of developer and reviewer time. A human paused the loop at least once.

  • #34Merged

    [rewind-v1] 20 — The Vinaya log's review-loop events become a round-by-round record for each task, read on the server

    Pull request #43Started Code review: approveSecurity: pass

    Time1 h 6 min
    Rounds1 round
    Size9 files+830 −0
    ProblemsCode review:2 minorSecurity:1 medium
    Tokens31k out81.1M read
    1. Round 1Approved

      Developer 1 h 2 minReviewers 4 min9 files · +830 −0

      Problems raised: 2 minor · 1 medium

    1 round · 1 h 6 min of developer and reviewer time.

  • #35Merged

    [rewind-v1] 21 — The GitHub record of every task becomes a development record: times, review rounds, findings, tokens and size

    Pull request #49Started Code review: approveSecurity: pass

    Time36 min
    Rounds2 rounds
    Size10 files+1,815 −0
    ProblemsCode review:1 majorSecurity:1 high3 medium
    Tokens23k out44.4M read
    1. Round 1Changes requested

      Developer 21 minReviewers 4 min9 files · +1,591 −0

      Problems raised: 1 major · 1 high · 1 medium

    2. Round 2ApprovedConfidence 92%

      Developer 7 minReviewers 4 min10 files · +1,815 −0

      Problems raised: 2 medium

    2 rounds · 36 min of developer and reviewer time. A human paused the loop at least once.

  • #36Merged1 human ruling

    [rewind-v1] 22 — /logs shows the project's development logs: the milestone, its tickets, and each ticket's review loop round by round

    Pull request #52Started Code review: approveSecurity: pass

    Time1 h 9 min
    Rounds3 rounds
    Size16 files+1,881 −8
    ProblemsCode review:4 blocker1 majorSecurity:1 high3 medium2 low
    Tokens28k out58.0M read
    1. Round 1Changes requested

      Developer 30 minReviewers 5 min14 files · +1,409 −4

      Problems raised: 1 major · 1 high · 1 medium · 1 low

    2. Round 2Changes requestedConfidence 78%

      Developer 17 minReviewers 6 min16 files · +1,554 −7

      Problems raised: 4 blocker · 2 medium · 1 low

    3. Round 3ApprovedConfidence 90%

      Developer 9 minReviewers 3 min16 files · +1,881 −8

    3 rounds · 1 h 9 min of developer and reviewer time.

  • #40Merged

    [rewind-v1] 23 — The Rewind runs within the free Demo plan's limits and says so plainly when the day's budget is spent

    Pull request #41Started Code review: approveSecurity: pass

    Time47 min
    Rounds1 round
    Size15 files+384 −109
    ProblemsCode review:noneSecurity:1 low
    Tokens22k out54.2M read
    1. Round 1Approved

      Developer 44 minReviewers 3 min15 files · +384 −109

      Problems raised: 1 low

    1 round · 47 min of developer and reviewer time.

  • #44Merged

    [rewind-v1] 24 — The development record reads the Vinaya log correctly: NDJSON pages, developer time on the right round, failed dispatches not running

    Pull request #45Started Code review: approveSecurity: pass

    Time20 min
    Rounds1 round
    Size5 files+224 −42
    ProblemsCode review:noneSecurity:1 low
    Tokens28k out23.3M read
    1. Round 1Approved

      Developer 17 minReviewers 3 min5 files · +224 −42

      Problems raised: 1 low

    1 round · 20 min of developer and reviewer time.

  • #46Merged

    [rewind-v1] 25 — A year cut short by a failed page reads as at least that much: the counts carry a plus, and onchain since is never a false date

    Pull request #48Started Code review: approveSecurity: pass

    Time44 min
    Rounds1 round
    Size19 files+338 −77
    ProblemsCode review:noneSecurity:none
    Tokens21k out46.6M read
    1. Round 1Approved

      Developer 40 minReviewers 4 min19 files · +338 −77

    1 round · 44 min of developer and reviewer time.

  • #47Merged

    [rewind-v1] 26 — The whole app follows the light or dark theme, the story and the share image included

    Pull request #50Started Code review: approveSecurity: pass

    Time37 min
    Rounds1 round
    Size15 files+229 −78
    ProblemsCode review:1 majorSecurity:1 low
    Tokens15k out44.8M read
    1. Round 1Approved

      Developer 29 minReviewers 8 min15 files · +229 −78

      Problems raised: 1 major · 1 low

    1 round · 37 min of developer and reviewer time.

  • #51Merged

    [rewind-v1] 27 — The count climbs without pausing, the story can be left with Escape, and the demo opens on pranksy.eth

    Pull request #53Started Code review: approveSecurity: pass

    Time48 min
    Rounds1 round
    Size18 files+381 −55
    ProblemsCode review:2 major2 minorSecurity:none
    Tokens40k out82.4M read
    1. Round 1Approved

      Developer 39 minReviewers 9 min18 files · +381 −55

      Problems raised: 2 major · 2 minor

    1 round · 48 min of developer and reviewer time.

  • #54Merged

    [rewind-v1] 28 — The home page and /logs carry a site footer and the Zerion logo, and the /logs table header stays pinned

    Pull request #56Started Code review: approveSecurity: pass

    Time38 min
    Rounds2 rounds
    Size12 files+244 −30
    ProblemsCode review:1 minorSecurity:none
    Tokens43k out93.2M read
    1. Round 1Changes requested

      Developer 30 minReviewers —12 files · +244 −30

      Checks failed before review.

    2. Round 1 · re-reviewApproved

      Developer 1 minReviewers 7 min12 files · +244 −30

      Problems raised: 1 minor

    2 rounds · 38 min of developer and reviewer time.

  • #55Merged

    [rewind-v1] 29 — A browser that remembered vitalik.eth opens on pranksy.eth

    Pull request #57Started Code review: approveSecurity: pass

    Time24 min
    Rounds3 rounds
    Size2 files+78 −18
    ProblemsCode review:1 blocker1 majorSecurity:1 low
    Tokens108k out26.2M read
    1. Round 1Changes requested

      Developer 11 minReviewers —2 files · +79 −18

      Checks failed before review.

    2. Round 1 · re-reviewChanges requested

      Developer 5 minReviewers 3 min2 files · +79 −18

      Problems raised: 1 blocker · 1 major · 1 low

    3. Round 2ApprovedConfidence 92%

      Developer 4 minReviewers 1 min2 files · +78 −18

    3 rounds · 24 min of developer and reviewer time.

  • #58Merged

    [rewind-v1] 30 — / lands on Play, the reveal can be skipped, and the footer links to the development stats

    Pull request #59Started Code review: approveSecurity: pass

    Time21 min
    Rounds1 round
    Size8 files+139 −37
    ProblemsCode review:noneSecurity:none
    Tokens13k out41.7M read
    1. Round 1Approved

      Developer 20 minReviewers 2 min8 files · +139 −37

    1 round · 21 min of developer and reviewer time.

  • #60Merged

    [rewind-v1] 31 — /dev-stats has a centred loader, a visible round expander and a way back home

    Pull request #61Started Code review: approveSecurity: pass

    Time29 min
    Rounds2 rounds
    Size16 files+139 −43
    ProblemsCode review:3 major2 minorSecurity:3 low
    Tokens16k out72.2M read
    1. Round 1Changes requested

      Developer 22 minReviewers 3 min13 files · +100 −33

      Problems raised: 3 major · 1 minor · 3 low

    2. Round 2ApprovedConfidence 92%

      Developer 2 minReviewers 2 min16 files · +133 −36

      Problems raised: 1 minor

    2 rounds · 29 min of developer and reviewer time.

  • #67Merged

    [rewind-v1] 32 — Production is Principal-only: no agent runs a Vercel production command, and agent builds are unaliased and reviewed

    Pull request #70Started Code review: approveSecurity: pass

    Time5 min
    Rounds1 round
    Size4 files+39 −1
    ProblemsCode review:1 minorSecurity:none
    Tokens5k out1.0M read
    1. Round 1Approved

      Developer 4 minReviewers 1 min4 files · +39 −1

      Problems raised: 1 minor

    1 round · 5 min of developer and reviewer time.

  • #68Merged

    [rewind-v1] 33 — The Rewind never fails on a quota limit: a rate-limited or spent Zerion API plays a recorded vitalik.eth snapshot instead of an error

    Pull request #71Started Code review: approveSecurity: pass

    Time20 min
    Rounds1 round
    Size22 files+646 −242
    ProblemsCode review:1 minorSecurity:none
    Tokens11k out23.0M read
    1. Round 1Approved

      Developer 19 minReviewers 1 min22 files · +646 −242

      Problems raised: 1 minor

    1 round · 20 min of developer and reviewer time.

  • #69Merged

    [rewind-v1] 34 — /dev-stats paints the last known development record within 2 seconds on a cold visit, then refreshes live

    Pull request #72Started Code review: approveSecurity: pass

    Time28 min
    Rounds2 rounds
    Size20 files+777 −36
    ProblemsCode review:2 major4 minorSecurity:3 low
    Tokens11k out19.9M read
    1. Round 1Changes requested

      Developer 18 minReviewers 1 min16 files · +478 −35

      Problems raised: 2 major · 3 minor · 2 low

    2. Round 2ApprovedConfidence 85%

      Developer 7 minReviewers 2 min20 files · +777 −36

      Problems raised: 1 minor · 1 low

    2 rounds · 28 min of developer and reviewer time.

  • #73Merged

    [rewind-v1] 35 — /dev-stats explains itself: findings read by reviewer, and no message names a variable or a server internal

    Pull request #74Started Code review: approveSecurity: pass

    Time6 min
    Rounds1 round
    Size10 files+191 −54
    ProblemsCode review:1 minorSecurity:2 low
    Tokens8k out1.6M read
    1. Round 1Approved

      Developer 5 minReviewers 1 min10 files · +191 −54

      Problems raised: 1 minor · 2 low

    1 round · 6 min of developer and reviewer time.

  • #82Merged

    [rewind-v1] 38 — /dev-stats counts every finding the reviewers raised, and each ticket's numbers add up

    Pull request #83Started Code review: approveSecurity: pass

    Time16 min
    Rounds1 round
    Size15 files+356 −46
    ProblemsCode review:noneSecurity:none
    Tokens10k out16.5M read
    1. Round 1Approved

      Developer 14 minReviewers 1 min15 files · +356 −46

    1 round · 16 min of developer and reviewer time.

  • #84Merged

    [rewind-v1] 39 — A round sent back without review findings says why

    Pull request #85Started Code review: approveSecurity: pass

    Time15 min
    Rounds3 rounds
    Size7 files+286 −2
    ProblemsCode review:1 major1 minorSecurity:none
    Tokens103k out53.1M read
    1. Round 1Approved

      Developer 8 minReviewers 2 min7 files · +247 −2

    2. Round 2Changes requestedConfidence 70%

      Developer —Reviewers 2 min7 files · +286 −2

      Problems raised: 1 major · 1 minor

    3. Round 3ApprovedConfidence 88%

      Developer 1 minReviewers 2 min7 files · +286 −2

    3 rounds · 15 min of developer and reviewer time.