Rerunning basectl repo configure with --replace-project after a successful replacement currently fails with: Project '<title>' already has standard Base views; refusing to replace it. That protects healthy Projects from repeated recreation, but the top-level repo configure command then exits as an error even though the Project is already in the desired standard state. Desired behavior: keep the protective no-replacement behavior, but treat the already-standard case as a non-fatal no-op/INFO so repo configure can continue with normal metadata repair, link/backfill, defaults, and schema checks. Include focused tests for the second-run path.
Rerunning basectl repo configure with --replace-project after a successful replacement currently fails with: Project '<title>' already has standard Base views; refusing to replace it. That protects healthy Projects from repeated recreation, but the top-level repo configure command then exits as an error even though the Project is already in the desired standard state. Desired behavior: keep the protective no-replacement behavior, but treat the already-standard case as a non-fatal no-op/INFO so repo configure can continue with normal metadata repair, link/backfill, defaults, and schema checks. Include focused tests for the second-run path.