Seed the build ledger at $ARENA_WORKDIR/build_ledger.json — the realized
shared state the feature writers read so the lab stays coherent instead of
feeling glued together. Write the parts you just established:
{
"style_tokens": {"primary": "#2563eb", "font": "Inter"},
"shared_layout": "render_page",
"pages": ["home", "sign-in"],
"data_shapes": [
{"table": "users", "columns": ["id", "username", "role"], "owner": "skeleton", "notes": "role in {admin,user}"}
],
"nav": [],
"components": [],
"features_done": []
}
Use the real values you set: the design tokens from your :root block, the
name of the shared layout helper, the pages the shell already has, and one
data_shapes entry per table you seeded (with the realized column names). Leave
nav/components/features_done empty — the feature writers append to them.