← Blog

Why a fake org, and not a better sandbox

This post is a draft. It exists to show what the blog template renders — headings, inline code, fenced code blocks, terminal output, lists, and a quote. The real posts replace it.

The problem with sandboxes

A sandbox is a real org. That’s the whole trouble. You can’t ask a real org to fail on purpose, because “on purpose” still means for everyone on the tenant. So the failures that actually break integrations in production — the row lock, the API limit, the throttle — are the exact failures you can never rehearse.

Inline code looks like this: set SFEMU_FAULT_LOCK_ON_UPDATE=true and every update starts returning a lock error.

A code block

docker run -p 8080:8080 fidelic/emulator --apex-src ./force-app
export SFEMU_FAULT_LOCK_ON_UPDATE=true

Fenced blocks render in the same monospace treatment as the terminal, so a snippet you can copy and a session you’re reading look consistent.

Terminal output

$ curl -sX PATCH $ORG/services/data/v62.0/sobjects/Account/001xx0000
{ "errorCode": "UNABLE_TO_LOCK_ROW",
  "message": "unable to obtain exclusive access to this record" }

Lists and a quote

Three labels, and only three:

An emulator that quietly does the wrong thing is worse than no emulator. The whole value is knowing which of the three you’re looking at.

That’s the template. Delete this post when the first real one ships.