Beacon Ministries

The Honest Machine · Lesson 1

The Git Chassis: Five Primitives

What you'll be able to do: look at any software project on GitHub and name the five moving parts — Repo, Branch, PR, CI, Merge — say what each one protects, and follow a real change from "idea" to "safely part of the product" without touching a terminal.

Choose your door

Translator Bridge

A repo is like a classroom master binder: the one official copy of every lesson plan, and it remembers every version that ever existed.

Where the analogy ends: a binder holds paper — the master binder can't test itself. In software, CI actually runs the product against dozens of checks every single time, and a locked main branch physically refuses the merge if any check fails. The principal in our world literally cannot sign a proposal the clerk has stamped red. Also: photocopies drift from the binder, but a branch can be refreshed from the master at any time — the copy machine runs backward.

The five primitives

PrimitiveWhat it isWhat it protects
RepoThe one official home of the project + its full historyTruth: "where does this project actually live?"
BranchA parallel copy where change happens safelyThe working product, from your experiments
PRA proposed change, visible and reviewable before it landsEveryone's right to see what's changing and why
CIAutomatic checks that run on every proposalThe product, from broken or self-graded work
MergeThe human decision that a checked change becomes realThe human's place as the final gate

One sentence to keep: change happens on a branch, gets proposed in a PR, gets tested by CI, and only a human merge makes it real.

Builder Track (DO FIRST)

  1. Open any public repo on GitHub you can browse — a large open-source project works well. Find the branch picker (top-left of the file list). Count the branches. Each one is a safe copy.
  2. Click Pull requests → open a closed (merged) one. Read the description like a proposal memo. Find the Files changed tab — that's the marked-up photocopy.
  3. On the PR page, find the checks section (green checkmark near the merge area). Click it. That's CI's stamped report.
  4. Find the purple Merged badge. That was the human gate — a person clicked that, after the checks went green.
  5. Now say out loud what you just walked through: branch → PR → CI → merge. You've traced the whole machine.

Architect Track (MODEL FIRST)

 idea → [Branch] → work happens → [PR opened] → [CI runs checks]
                                                      │
                                            red ──────┤────── green
                                             │                 │
                                     fix & push again   [Human merges]
                                                               │
                                                        main (the product)

The design insight: every arrow is a narrowing. Anyone can branch; only a PR makes change visible; only green CI makes it mergeable; only a human makes it real. Main stays trustworthy because nothing reaches it without passing every gate. This is the same shape the honest reporting in a tool I built follows: a number + the assumption behind it + a cited basis — a claim only counts when it carries its evidence, exactly like a PR only counts when it carries green checks.

Validator Gates

Pass each gate before moving on. These are permission to advance, not hazing.

  1. Gate 1: Name the five primitives without looking.
  2. Gate 2: Which two primitives exist purely to protect something rather than to do something? (CI protects the product; merge-as-human-gate protects judgment.) Explain why in one sentence each.
  3. Gate 3: True or false: work done on a branch changes the product immediately. Say why.
  4. Gate 4 (own words): Write the branch → PR → CI → merge journey as if explaining to a fifth grader. No jargon allowed except the four names themselves.

Lesson complete — you can now read any GitHub project like a floor plan. Next: Lesson 2, where the machine learns to say "I don't know."