[FIX] fields: copy origin to avoid sharing field objects between registries

Fix a bug introduced in revision f229974, where shared columns objects are
systematically reintroduced in registries.
[FIX] fleet: contract onchange: ensure dict before executing `get`