- "description": "**Goal:** Prove the whole v2 release path end-to-end against the dev OBS before trusting the CI path.\n\n**USER-ORDERED GATE \u2014 NON-SKIPPABLE.** This task was requested by the user in the current conversation. It MUST NOT be closed by walking around it, by declaring it \"verified inline\", or by substituting a cheaper check. Close only after every item in `acceptanceCriteria` has been re-validated independently, with output captured.\n\n**Files:**\n- None (verification only; -P dev, NEVER -P isv)\n\n**Acceptance Criteria:**\n- [ ] sync release --dry-run exits 0 on a prepared scratch release tree (output shows 'release dry-run passed').\n- [ ] Full sync release run completes: drain line, '(builds frozen)' per project, 'released' lines for top level + every subproject, 'packages landed' lines, '(builds restored)' per project.\n- [ ] Source project meta on dev OBS byte-identical before vs after (empty diff of /source/<prj>/_meta captures).\n- [ ] A deliberately broken rehearsal (red package or removed mirror) aborts with the documented hard error, builds end unfrozen/restored.\n\n**Verify:** venv/bin/python -m percona_obs -P dev sync release <scratch-release-project> --dry-run && venv/bin/python -m percona_obs -P dev sync release <scratch-release-project>; captured outputs for all four criteria; scratch commits reverted.\n\n```json:metadata\n{\"files\": [], \"verifyCommand\": \"venv/bin/python -m percona_obs -P dev sync release <scratch-release-project> --dry-run && venv/bin/python -m percona_obs -P dev sync release <scratch-release-project>\", \"acceptanceCriteria\": [\"dry-run exits 0 with 'release dry-run passed'\", \"full run shows frozen/released/landed/restored lines for every project\", \"source project meta byte-identical before vs after (empty diff)\", \"broken input aborts with hard error and builds end unfrozen/restored\"], \"modelTier\": \"standard\", \"userGate\": true, \"tags\": [\"user-gate\"], \"requireEvidenceTokens\": [[\"dry-run passed\", \"dry run\"], [\"builds restored\", \"landed\"]]}\n```"
0 commit comments