The AI drew the parts. A human made them fit.
An AI coding agent wrote every enclosure Croplock prints. Here is the unedited list of what it got wrong, how confident it was each time, and the person at the bench who found it.
We use AI heavily, and we would rather say so than have someone find out. Croplock is built by a very small team: a retired software engineer who grows, directing an AI coding agent. The agent writes the software, and since June it has also written the 3D models for every enclosure — the hub box, the sensor pods, the camera housing, the mounts that clamp them to a tent pole.
Here is what that looks like in practice. The AI writes a revision in minutes. It runs dozens of automated geometry checks, reports that everything passes, and is often wrong. Then the part comes off the printer, a human picks it up, and the real review starts. What follows is the record of the second half, taken from our own bug register and design notes. None of it has been softened.
It checked the numbers. Nobody had checked the part.
The pole collar clamps each pod to a tent pole with a screw and a captive nut. In early August a revision cut both fastener seats on the outside of the part, where there was no plastic to cut. Every assertion in the model passed, because the assertions checked the dimensions, and the dimensions were right. They were just in the wrong place. Four prints went in the bin before our founder picked one up and saw that there was nowhere to put the nut.
That became the pattern. The AI is excellent at verifying what it has modelled. It has no way of knowing what it failed to model, and a person holding the part does not have that problem.
Four screws that held nothing, and a board held by nothing
The hub lid screws into four captive nuts. They threaded, tightened, and closed the box, and the AI’s dimensional checks passed twice. Then the human asked a simple question: when you lift the lid off, what stops the nuts coming with it? Nothing did. The nuts had no material above them, so tightening pulled each nut against the lid itself, and the base took no load at all.
The AI’s fix put a roof over the nut, and it failed the first time anyone unscrewed a lid: the nut backed straight out through the slot it had gone in by. The AI had only ever tested the tightening direction. The design that finally worked — load the nut below a closed hexagon and let the screw draw it up into place — came from the bench, not the model.
A month later, trying to push a USB-C cable into the hub, our founder found the circuit board moving. The design file said the lid held the board in place. Measured in the model, there were 31 mm of air between the board and the lid. The board had never been fastened to anything, and the file had said otherwise for weeks.
Confident arithmetic
- The screws that were too short. The AI recalculated the clamp’s screw stack, found 1.31 mm of margin, and shortened the specified screw from 25 mm to 20. The printed clamp could not be assembled with it, and a parts order went out for longer screws. The calculation was tidy and the model behind it was incomplete.
- Five rounds tuning a feature that could not print. A board fit on the leaf-temperature pod came back too tight, then loose, and the AI adjusted its crush ribs five times, between 0.15 and 0.35 mm. The printer lays a 0.42 mm line, so none of those ribs ever existed on a real part. Every round changed a number and nothing else.
- A layout for a printer we do not own. The AI laid out a plate of boom parts 217 mm wide. The printer’s bed is 180. The human saw the parts hanging off the plate in the slicer.
- Screw bosses in the way of the boards. A redesign of the leaf-temperature pod added four screw bosses, and both circuit boards were blocked from entering the base. It rendered cleanly. The printed base was scrap.
The time it argued with the evidence
This one is the most important, because it is the failure people are right to worry about.
The camera pod had a small printed plug that closed the slot above the lens, and it kept falling out. The AI tried three fixes. After the third, when the human reported it was still falling out, the AI built a theory that the parts on the bench were from mismatched versions, proved that theory with a geometry calculation, and shipped a change for a defect that did not exist. Its checks said the plug fitted and was retained. The plug, in a hand, fell out.
The model was answering the wrong question. Every check asked whether the plug stayed put once it was seated; none asked whether it could get to its seat at all. The fix did not come from a better number. It came from deleting the part: the plug became a tongue on the lid, held by screws that were already there. Days later the human, looking at the base, spotted four small holes through the front face beside the lens — cut by a channel that only existed to hold the plug. Deleting the part removed those too.
Since then the AI works under a written rule, one that it reads at the start of every session: when the person holding the part says it does not fit, the model is wrong. It is not to build a theory in which the person has the wrong parts or assembled them badly.
It broke parts it had already fixed
Every pole clamp is exported with a build setting that switches on the current V-block design. In one session the AI left that setting out, re-exported the parts for four different mounts, and quietly reverted the whole fleet to the old clamp. Its comparison tool, run the same wrong way, then reported the correct files as mismatched, and the AI overwrote some of them. The human found it in the parts. The settings now live in a file every tool has to read.
In another, 26 pieces of a boom part were floating in mid-air, disconnected from anything. The AI’s check had confirmed the part touched the print bed, which it did. The human saw the floating pieces at a glance in the slicer.
It added what we did not want
Not every correction was about fit. The first hub box had openings for HDMI and the microSD card, because the board has those ports. Our founder had them removed: all of a grower’s data lives on that card, and a box that lets anyone pull it out undoes the promise that the data stays in the house. Weeks later, reviewing backups, the AI proposed a USB export — reopening in software the hole that had been closed in plastic. That was rejected too, and the rule is now written down: the hardware policy is the software policy.
The boom that holds a pod over the canopy went the same way. Over two days the human deleted five structures the AI had added — a locking arc, a sliding slot, extra posts, extra teeth — and every deletion made the boom better. The AI adds structure faster than it questions it.
It believed old documents
Wiring the hub’s cooling fan, the AI said a pin the fan needed was taken by a chain of wired sensors, and that the wiring would have to be moved to make room. That came from a bench log written in May. There are no wired sensors; every sensor has been a wireless pod for months, which the human pointed out in one sentence. A print project sitting beside the models had the wrong filament baked in while every document said PETG; the slicer complained, and the human noticed.
In fairness
The AI does catch things. Re-exporting the hub base, it found on its own that the four corner posts had never been fused to the floor. Every automated check in the enclosure pipeline was written by it: the floating-body audit, the fastener checks, the bed-size check, the build-setting manifest. But look at when each one was written. Almost every one exists because a human found the failure first. The AI turns a person’s discovery into a check that never forgets, and that is a real contribution. It is not the same as finding the problem.
What we took from it
- The AI is fast and does not tire. It writes a revision in minutes and runs checks nobody would run by hand. Without it this hardware would not exist.
- It verifies its model, not the world. Its confidence is a statement about the model. The part in a hand is the only statement about the part.
- It tunes numbers when it should delete things. Several of the best fixes above removed a part or a feature. The AI’s instinct is to adjust.
- It needs a person who will try the other direction — unscrew the lid, push the cable in, lift the part and look underneath.
- Every correction becomes a written rule. The AI reads those rules at the start of every session, which is why it does not make the same mistake twice. It still finds new ones.
That is the honest shape of building with AI in 2026: a machine that does the work of a team, and a human who has to be right about the parts of the world the machine cannot hold.
Sources
Every incident above is from our bug register, the enclosure source files and their revision and print notes, re-read on 2026-09-13; dates run from July to September 2026. Measurements are the model’s design values. The parts described have since been revised; this post describes what went wrong, not the current state of any part.
Also read: The model said it fit · The rules the code has to follow
The box all of this went into is at croplock.com. To hear when it’s ready, join the waitlist.