{
  "video": {
    "id": "geMAe-PLJF4",
    "title": "I Made a Fruit Fly Review My Code - Nick Nisi, WorkOS",
    "duration": 997,
    "upload_date": null,
    "channel": "AI Engineer",
    "source": "AI Engineer",
    "event_format": ""
  },
  "analysis": {
    "video_id": "geMAe-PLJF4",
    "title": "I Made a Fruit Fly Review My Code - Nick Nisi, WorkOS",
    "one_liner": "Nick Nisi wired a simulated fruit-fly connectome to an LLM 'nose' that turns diffs into literal code smells, and it caught bad PRs roughly 88% of the time. His argument: if a fly can review code moderately well, humans should only see the PRs that a team review skill, a risk classifier and automated reviewers escalate to them.",
    "summary": "Nisi argues that human code review is now the bottleneck: agents like Claude and Codex write code faster than people can review it, and what matters is whether the change does what it should. To make the point, he gave the code-review job to a simulated fruit-fly brain. A small model called 'Jev' answers 30 non-biased questions about a diff, those answers reach the fly as smells, and memories trained with sugar and bitter tastes decide whether its tongue comes out (approve) or retracts (request changes). He then proposes an escalation pipeline in which a team-maintained review skill, a lightweight classifier and automated reviewers decide which PRs need a human, and agents send back a summary of why the change happened plus proof that it works.",
    "key_points": [
      "The bottleneck has moved from writing code to human review. CI, linting and review agents (Graphite, Code Rabbit, 'Reptile') are already in place, but PRs still sit waiting for a person. 'If Graphite gives me a five out of five, I am excited.'",
      "The fly is a connectome of a male fruit-fly brain, scanned slice by slice under an electron microscope: 176,000 neurons, 6.3 million connections and over 125 million synapses. Nisi left it unchanged apart from a small subset of neurons used to store memories of good and bad code.",
      "How it works: a 'system one' model, Jev, acts as the fly's sensilla (its nose). It asks 30 non-biased questions about the code and passes the answers to the brain as a smell. The fly is first trained on the codebase, with good code paired with sugar water and bad code with a bitter taste, and a teacher reinforces this. Reward and punishment dopamine reshape the connections. Tongue out means 'smells good to me'; retracted means request changes.",
      "Nisi describes the memory as working like a hash table whose keys collide on purpose, with the values written by testing: a test that produces a bug gives bitter punishment dopamine, and a good result gives sugar and reward dopamine.",
      "Ablation check: with the memories removed, the fly 'totally freaks out', its tongue comes out when it shouldn't and it scrambles everything. That shows the fly brain is doing the processing, not just relaying what Jev says.",
      "Live audience game on three random files from the fly's own codebase: the room went 3 for 3, the fly 2 for 3 (it approved one bug). Overall it was right about 88% of the time in testing. On harder tests it requested changes 96% of the time on one example and 98% on 'a very plausible mistake'. A live run on a real PR to one of Nisi's Pi extensions failed, and the backup couldn't make a call either.",
      "What the fly, and review bots, can catch: changed conditionals, removed logic and similar simple issues. It can't say how to fix anything ('This smells funny to me'). Reptile, Code Rabbit and the like do this much better, 'but nothing knows why.' Nisi sees understanding why behaviour changes as the part humans keep.",
      "Proposed pipeline: (1) a team review skill maintained by the code owners, e.g. WorkOS DX on GitHub CODEOWNERS, encoding the bare minimum that team checks for; (2) a lightweight classifier (Jev, 'Clef' or similar) weighing complexity, whether the PR does what it says, and risk; (3) automated reviewers (Reptile, Code Rabbit, Codo). If any step fails, escalate to a human; otherwise merge. When something breaks, audit the pipeline, improve the skill or the reviewers, and use AI to fix the code."
    ],
    "takeaways": [
      "Stop requiring a human review on every PR. Escalate only the ones that fail a team review skill, a risk/complexity classifier or an automated reviewer, and let the rest merge.",
      "Have each code-owning team write and maintain its own reviewer skill, covering what someone on that team would block a PR for. A DX team's checks will differ from a platform team's.",
      "Ask agents for proof the change works, not just the code: screenshots, videos, test results, command output, smoke tests you can run, or easy steps to reproduce for manual testing. Expect to rely on manual checks less as trust grows.",
      "Have the pipeline send the human a short summary of why the change was made: whether business logic changed, and which alternatives were tried and discarded.",
      "When an auto-merged PR breaks something, audit the whole pipeline and fix the team skill or the automated reviewer so it catches that case next time."
    ],
    "topics": [
      "code review",
      "ai agents",
      "human in the loop",
      "connectome simulation",
      "ci automation",
      "developer experience",
      "verification"
    ],
    "tools": [
      "WorkOS",
      "Claude Code",
      "Codex",
      "Graphite",
      "Code Rabbit",
      "Reptile",
      "Codo",
      "Jev",
      "Clef",
      "GitHub CODEOWNERS",
      "fruitfly.review",
      "Pi",
      "Doom",
      "Beat Saber"
    ],
    "quotes": [
      {
        "text": "If we're not writing the code anymore, why do we need a human to review the code?",
        "at": "01:11",
        "url": "https://www.youtube.com/watch?v=geMAe-PLJF4&t=71s"
      },
      {
        "text": "So, we're taking our code and turning it into literal code smells.",
        "at": "05:21",
        "url": "https://www.youtube.com/watch?v=geMAe-PLJF4&t=321s"
      },
      {
        "text": "80% of the time it's correct all the time.",
        "at": "10:14",
        "url": "https://www.youtube.com/watch?v=geMAe-PLJF4&t=614s"
      },
      {
        "text": "Um, but nothing knows why.",
        "at": "12:18",
        "url": "https://www.youtube.com/watch?v=geMAe-PLJF4&t=738s"
      }
    ],
    "words": 3542
  },
  "summary_url": "/#geMAe-PLJF4",
  "transcript": {
    "html": "/transcripts/geMAe-PLJF4.html",
    "txt": "/transcripts/geMAe-PLJF4.txt",
    "vtt": "/transcripts/geMAe-PLJF4.vtt"
  }
}