racelab*

A SMALL LAB FOR BIG WHAT-IFS.

Small overlaps.Big consequences.

Make the invisible race visible.
Then give the repair a test it can fail.

Run the real case
[ SHARED STATE / TWO REQUESTS ]

shared state

—racelab / memory
A
READ COPY—
B
READ COPY—
Waiting for a local execution
Original geometry. Values from the local trace.

Concurrency experiments.
Meta-generated repairs. Executable evidence.

Scroll into the overlapBUILT BY TANG VU
META GLOBAL AI HACKATHON / 2026
01 / THE READ

A read is
just a copy.

Two requests can see the same value. Neither knows what the other is about to do.

02 / THE WRITE

Each step looks
reasonable.

The order decides the outcome. Scrub a real local trace and see the state change, one operation at a time.

03 / THE EVIDENCE

Now make
the fix prove it.

Meta proposes a repair. Independent code checks the unchanged contract and additional inputs.

Try it in the lab
LOCAL EXECUTION / ORIGINAL AOP. 00
REQUEST A—read copy
REQUEST B—read copy
shared state—COMMITTED MEMORY
OBSERVED / EXPECTED

—/—

WAITING
Reads, in order.

This visualization follows the actual local trace. Scroll to inspect it.

REAL SOURCE / TANG-VU/TEND

The job was saved.
The worker wasn't.

A pinned TypeScript method meets a process that stops after its claim commits. Inspect the SQLite evidence, then challenge a Meta-generated repair.

Open the repository experiment

Explore recorded evidence ↗ · Evaluation and limits ↗

THE EXPERIMENTS / 01 - 03

Choose what
breaks first.

Three authored cases. Real JavaScript.
The same inputs, rearranged.

THE WORKING LAB

Enough theory.
Run the overlap.

Everything below is executed locally.
A recorded repair makes no new model call.

INVENTORY RESERVATION / EXP. 01

One seat.
Two buyers.

It passes alone.
The overlap tells another story.

The same handler. The same inputs. A different order.
ALONE Ready→OVERLAP Ready→REPAIR Unchecked

ORDERS / AVAILABLE SEATS

—/1
EXECUTE TO OBSERVE
01 / THE HANDLERreservation.jsJS
▦ THE CONTRACT STAYS LOCKED +

The controlled store API +

Each awaited operation is an atomic scheduling boundary. Reads return copies. Receipt collections are append-only.

get / set / append
compareAndSwap / insertOnce
lock / unlock

QuickJS with a simulated async store. Node modules, network and filesystem are unavailable.

02 / THE EXECUTION

The order changes everything.

READY
EXECUTED LOCALLY
00 / 00
WHAT HAPPENED

Execute the handler to inspect committed state.

SHARED MEMORYInitial state
THE INDEPENDENT VERDICT—
03 / MAKE IT SURVIVE

A patch has to earn its green.

Meta proposes the source.
The same contract checks it.

New live investigation +

A new investigation sends this handler to Meta and uses your configured API budget.

RECORDED META SOURCE. RE-EXECUTED HERE. NO NEW MODEL CALLS.

Investigation log 00+

Take the evidence with you.Source, schedule and checks. Recomputed when opened.

CONTROL THE OVERLAP. KEEP THE EVIDENCE.

Run it. Break it.
Prove it.

Back to the experiment
Preparing the experiment...

WHAT THIS LAB ESTABLISHES

Every green result has a boundary.

RaceLab executes the submitted JavaScript handler in isolated QuickJS/WebAssembly. It controls the order of asynchronous operations against a simulated store. It does not run arbitrary Node.js repositories, real database transactions, HTTP timing or operating-system threads.

The examples are authored fixtures. The recorded repairs come from actual Meta API investigations. A finite sweep reports only the input cases and schedules it checked; it does not prove universal correctness or production safety.

Sequential, round-robin and seeded random baselines can also expose these simple races. The scheduler's work is explicit. Meta supplies experiment proposals and candidate source; code supplies the verdict.

Related work includes REINS and deterministic simulation testing. RaceLab claims a focused implementation, not invention of these methods.

Built by Tang Vu during the hackathon. Meta provides Muse Spark. QuickJS and quickjs-emscripten provide the JavaScript runtime. This standalone repository reuses Meta transport and accounting code from Tang Vu's earlier hackathon prototype, LiveWorld.

OPEN A PORTABLE EXPERIMENT

Recompute, then inspect.

Choose an exported JSON report or paste it below. Imported pass flags are discarded. Imported model attribution remains unverified.