# Rollback / continuation Before semantic core, the STEP keeps an exact backup of the four modified pre-existing source/config files, removes the new `profile_delivery.py`, recreates `wgaccess-backend` from the restored `docker-compose.yml`, and verifies `/health` plus `/health/db`. The candidate compose change adds the `qrcode` runtime dependency, therefore both apply and rollback establish a new backend container generation with `docker compose up -d --force-recreate backend`. Production DB is never written by the P26C1 fixture. Synthetic rows exist only in a temporary database whose name must match `p26c1_*`; the fixture refuses to run against the production database and the workflow drops the temporary database even on failure. Semantic core is reached only after the isolated profile/config/QR/revoke/reissue test passes, its temporary database is dropped, and production DB/agent/onboarding state is reverified unchanged. After semantic core, publication or Machine Git/reporting failure is a continuation. Do not automatically restore accepted P26C1 source merely to make publication green.