# Dual-world policy (product kit)

**Two Rapier worlds exist when the desk is open:**

| World | Who | Role |
|---|---|---|
| **Pack** | `medium/physics` | Game solids + character. Fixed 1/60. |
| **Desk** | Make Solid (**Object panel button** — no hotkey) | Stranger-game props. Shell frame loop. |

They must not both write the same object’s position.

**Note:** **`C` opens Design**, not Make Solid. Solid is the BODY control on the Object lens.

## Rule for pack games

1. Call **`collide(id, shape)`** for every pack body (same id as `thing` / `bind`).
2. Make Solid then **refuses** to build a second collider on that id — it only **shows** the solid.
3. Do **not** hand-roll push-out on top of the pack (second owner of one overlap).

If `collide` is missing, a designer can click **Solid** on a crate and create a dual-writer magnet.

Horizon-scale games may share a few `collide` shapes for art props; **every pack body** still needs
its own handoff (or explicit intentional unbound FX). Sparse collide is a residual, not a free pass.

Full monorepo history: root `DUAL_WORLD_POLICY.md` (outside the product kit — not required reading).
