The problem
I bought a Bambu X2D in October to run a small shop: card-game accessories first, then home decor. I don't do CAD by hand. Claude writes the geometry in Python, and I direct it. That works until a model says a part is done and the printer disagrees: a wall too thin to hold, an overhang that sags, a lid that looks right on screen and stands proud on the table.
So I built it the way I build LLM systems. The model generates; something deterministic checks; nothing counts until reality confirms it.
How it works
You describe a part in Python with build123d. The engine checks it against printability rules and writes
a Bambu project with the presets, filament slots and color-change pauses already set, plus renders and a
notes.md with the rules report and every spec's verification status.
A rules gate runs before anything is sliced. It checks overhangs, islands that would start printing in mid-air, minimum feature size, watertight geometry, filament count, inlay stroke width, and whether each piece sits flat on the plate.
Coupons decide the numbers. A coupon is a small test print that settles one value: a snap's catch depth, a
magnet pocket, a clearance. Until its coupon prints, that number is marked UNVERIFIED in the
notes, and the docs say so.
Any snap, hinge, slide, magnet closure or insert pocket goes past an FDM-mechanisms reviewer agent before it prints. It returns a risk list, not a pass/fail. And there's a sell gate on top: nothing gets listed until its coupons have printed and a full sample passes.
What the gate got wrong, and how it changed
The first plate-contact rule compared each piece's bounding box against the plate. It was strict in the wrong way: triangles, lattices and rings that print fine kept failing. I changed it to check each piece against its own shadow from above, and to require the center of mass to sit inside the contact area. The false failures went away, and I dropped two per-part overrides that had only existed to get around the old rule.
That's the same thing I'd do with an LLM eval that's too strict. A check that fails good work gets ignored, and an ignored check is worse than none.
Prints fail too, and they get written down. A click snap didn't hold, so a magnet closure replaced it. A set of dials didn't click at all and went back into the coupon queue. The caddy's front pocket came out clean but stood 2.5 mm proud of the lid; the redesign ends the cheeks at the lid face, and the next print sat flush with no snag.
The ledger behind the pricing
Every finished plate gets one JSON entry in a print ledger: sliced time against real time, and why it failed if it did. Its summary shows the failure rate and the point where a second printer pays for itself. A retail cost layer sits next to it: Etsy and Offsite Ads fees, a USPS Ground Advantage label, packaging, and hands-on minutes. The goal is prices set from measured runs instead of guesses.
Kumiko, printed
The second brand, Reasoned Peace, is decor based on kumiko, the Japanese wooden lattice. Each insert is a small printed triangle that snaps into a frame. The pattern library is generated, and the catalog board marks which patterns have actually printed clean and which are still only designed.
Measuring the launch
Where it stands
forgedbyreason.com and reasonedpeace.com went live on 19 October 2026. The Etsy shop is planned for November. The first caddy line is in production; the two-deck version is sliced (3h37m and 186 g for the core) and waiting on its first full print. The rest is prototypes, and the docs say which numbers are still unverified.