Engineering Practice
Trunk-based: free-recall review
Retrieval beats re-reading. For each prompt, say or write a full answer from memory before you open the model answer — the effort of recall is what makes the material stick.
Reconstruct the unit’s spine — why drift sets merge cost, what short-lived actually specifies, how flags decouple deploy from release, why the green gate is non-negotiable, branch by abstraction, and flag-debt cleanup — without looking back at the lessons.
- 01Why is merge cost a function of drift rather than diff size, and what's the only lever that lowers it?
- 02What does 'short-lived branches' concretely specify, and what's the dividing line between trunk-based and a long-lived-branch workflow?
- 03Explain why decoupling deploy from release is the specific thing that makes trunk-based work for multi-week features, and what a flag gives you beyond hiding work.
- 04Why is trunk-based inseparable from a fast, blocking CI gate, and what fails if the gate is slow?
- 05How does a merge queue fix the race a naive pre-merge gate has at scale, and what are its limits?
- 06Explain 'trunk-based trades branch debt for flag debt' and why the trade is only worth it with cleanup discipline.
If you could reconstruct each answer from memory, you hold the unit’s spine: drift sets merge cost so daily integration caps it; short-lived means three or fewer branches gone within a day, and lifetime — not the existence of branches or PRs — is the dividing line; flags decouple deploy from release so unfinished work rides on trunk dark and you gain dark launch, progressive exposure, and a kill switch; the fast blocking green gate makes the shared trunk safe and merge queues hold it green at scale within their limits; and cleanup — delete the branch on merge, the flag on rollout — is the discipline that stops branch debt from reappearing as 2^N flag debt.