2026-05-31
The test suite as AI safety net.
When AI generates the code, the test suite stops being a quality check and becomes a confidence floor. What that suite has to look like, and what changes about how you write tests when the author is an AI agent.
2026-05-24
The hidden write-cascade in marketplace_base.product_template.write().
Naive multi-marketplace connector override → 45-second product-page saves and half-applied marketplace state. The change-aware-write pattern with async dispatch and per-channel idempotency that fixes it.
2026-05-17
A watchdog snapshot/diff system for Odoo production.
Pre-change snapshot, post-change diff, fast rollback path. The discipline that lets a one-person shop touch a live production system without breaking it. Snapshot specs, the diff-noise filter, and the fields that actually matter.
2026-05-10
Migrating Odoo staging to production without XML-RPC.
XML-RPC is the documented Odoo external API but the wrong tool for migration. Why pg_dump + selective table copies + module-version-pinning beats record-by-record API replay. Preserves IDs, attachments, and ir_model_data references.
2026-05-03
Made-to-order on Odoo + Amazon: why qty=999 is intentional and product.free_qty is the wrong field.
MTO businesses have a specific inventory pattern that breaks naive connectors. The listing-specific qty field is the source of truth, not the product master. Five-minute diagnostic for whether your connector has this bug.
2026-04-26
Reconciling Amazon variation families at scale.
Amazon variation families silently drift between what Odoo thinks is the parent-child set and what Amazon shows on the product page. 703/703 variation-family reconciliation over a 7-month engagement, and the SQL that surfaces the drift in <15 minutes.
2026-04-19
Diagnosing eBay [21916735] errors on multi-variation listings.
"Variation specifics do not match the listing's variation specifics" is eBay's most opaque error code. What it actually means, why it fires on relisted-but-edited variation parents, and the reorder-Variation-then-AddFixedPriceItem pattern that fixes it.
2026-04-12
AI-augmented Odoo engineering: the practice stack that makes 3-day audits economical.
Knowledge vault, persistent memory, module-lock hooks, watchdog snapshots, hard rules tied to real incidents. The actual production setup, not the vibes version.
2026-04-05
Walmart's /v3/items pagination is broken. Here's the workaround.
Roughly 30% of pages come back as duplicates of pages you've already pulled. The /v3/reports async endpoint works. We re-pushed 2,399 corrected prices once we caught it.
2026-03-29
Amazon productType is sticky. PATCH doesn't change it.
If your catalog ended up classified as AUTO_PART because of a sloppy initial upload, rejection rates will be quietly worse than reality suggests. Only DELETE+CREATE or Seller Central reclassification fixes it.
2026-03-22
Recovering 32,500 Odoo image derivatives after an ORM cascade.
Converted 8,623 master images to PNG-RGB to satisfy Amazon's catalog. The conversion cascade-deleted 34,488 derivatives. The obvious ORM recovery was too slow; the right fix was a PIL-based bulk-insert that wrote directly to ir_attachment.
2026-03-15
The Odoo + Amazon lead-time-to-ship bug that wipes shipping windows on every fulfillment patch.
6,838 active FBM listings had their lead times zeroed by a recurring bug that wiped shipping data on every fulfillment-side PATCH. Walkthrough of the diagnosis and the re-push.