Make both forges fill the row shape they share

main

Commit

gtrrz-victor2w ago

repo view --json was said to emit the row shape mirror list --json uses, and each forge filled a different half of it. A GitHub placement carried no clusterSlug and no jurisdiction, though the repos index returns both; a native row carried no top-level status, though its placements plainly agreed on one. A caller keying on a cluster could do so for one kind of repo and not the other, and "status": "" came back for a repo that was ready.

Neither coordinate is a property of a forge. The slug is what the native-mirror API is addressed by and the jurisdiction is what decides whether a cluster may hold a mirror at all — both describe the placement, so both ride on every placement. The status fold moves into sharedPlacementStatus and both paths call it, so --status ready means one thing whichever kind of repo produced the row.

Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com Entire-Checkpoint: 01M32DJ22PT063FGVZW3R941KQ

Checkpoints

Fix repo view CLI output and validation

Claude CodeOpus 5.[1m]
View session
Checkpoint 1