Skip to content

Commit fc87003

Browse files
committed
docs: task 14 (dev-OBS rehearsal) waived by user — no dev instance
Signed-off-by: Ricardo Dias <ricardo.dias@percona.com>
1 parent 2510af6 commit fc87003

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

docs/superpowers/plans/2026-09-03-release-process-v2.md.tasks.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@
107107
{
108108
"id": 14,
109109
"subject": "Task 14: dev-OBS release rehearsal (USER GATE)",
110-
"status": "pending",
110+
"status": "cancelled",
111111
"blockedBy": [
112112
1,
113113
2,
@@ -123,7 +123,7 @@
123123
12,
124124
13
125125
],
126-
"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```"
126+
"description": "**WAIVED BY USER (2026-09-03):** dev OBS instance no longer exists; rehearsal not performed. The first production release is the de-facto rehearsal \u2014 compensating checks: obs-pr-check release dry-run + manual `sync release --dry-run` (read-only) before the real run.\n\n**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```"
127127
},
128128
{
129129
"id": 15,
@@ -132,5 +132,5 @@
132132
"description": "**Goal:** Release changelog distinguishes top-level vs subproject same-named packages (e.g. percona-postgresql vs extras/percona-postgresql).\n\n**Files:**\n- Modify: percona_obs/cmd_project.py\n- Test: tests/test_project_release.py\n\n**Acceptance Criteria:**\n- [x] Subproject package versions keyed '<pkg> (<subproject>)' symmetrically on source and release sides\n- [x] Service/URL lookup resolves the subproject's own _service first for suffixed keys\n- [x] Collision test asserts entry separation and URL provenance both ways\n\n**Verify:** venv/bin/python -m pytest tests/test_project_release.py -q\n\n```json:metadata\n{\"files\": [\"percona_obs/cmd_project.py\", \"tests/test_project_release.py\"], \"verifyCommand\": \"venv/bin/python -m pytest tests/test_project_release.py -q\", \"acceptanceCriteria\": [\"symmetric suffixed keys\", \"targeted service lookup\", \"collision test both ways\"], \"modelTier\": \"standard\"}\n```"
133133
}
134134
],
135-
"lastUpdated": "2026-09-03T15:52:05.885688+00:00"
135+
"lastUpdated": "2026-09-03T15:58:28.318499+00:00"
136136
}

0 commit comments

Comments
 (0)