[OPIK-7167] [QA] feat: dev testing workflow — /explore-feature skill + release-gate scaffolding#7334
Merged
Conversation
AndreiCautisanu
added a commit
that referenced
this pull request
Jul 3, 2026
…e convention exception Address baz-reviewer findings on PR #7334: - test-plan template pointed at a non-existent tests/_release-gate path; use the fully-qualified tests_end_to_end/e2e/... path and <lead-ticket> placeholder. - writing-e2e-tests conventions/SKILL now note the _release-gate/ + @release-gate exception and point at release-gate-contract.md, so specs there don't read as guideline violations. - _release-gate README marks the contract as source of truth to bound drift. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
⏱️ pre-commit per-hook timing
⏭️ 25 skipped (no matching files changed)
|
andrescrz
previously approved these changes
Jul 9, 2026
andrescrz
previously approved these changes
Jul 10, 2026
…folding The QA-owned /explore-feature skill for the dev-driven testing workflow: reads a ticket + changed code (local branch diff, a PR, or several), writes a happy-path test-plan.md to Jira, and delegates authoring of one staging-ready @release-gate Playwright test to writing-e2e-tests via a fixed contract. Version stamp read from origin/main:version.txt, encoded as a @release-gate:<version> tag for floor-based gate selection. Scaffolding: tests/_release-gate/ + lifecycle README, a test:release-gate grep target isolated from the curated @t1/@t2/@T3 tiers, and a note in the writing-e2e-tests conventions for the _release-gate/ exception. The skill was hardened by piloting it end-to-end on two real changes (a fix and a no-behavior-delta perf change); those pilot test/bridge artifacts are intentionally not part of this PR. CI wiring (staging gate, post-ship move, expiry) is deferred. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
3631685 to
dcbfc0f
Compare
Contributor
Author
|
Reached final version for this PR |
andrescrz
approved these changes
Jul 10, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Details
Adds the QA-owned
/explore-featureskill for the dev-driven testing workflow (automation-coverage initiative): each PR ships one happy-path test that gates its own release; QA reviews and integrates the keepers. This PR is the skill and its scaffolding only./explore-featureskill (.agents/skills/explore-feature/, mirrored to.claude/): a thin orchestrator that resolves scope (local branch diff / a PR / multiple PRs — including "I haven't opened a PR yet"), writes a happy-pathtest-plan.mdto Jira, and delegates the actual test authoring towriting-e2e-testsvia a fixed staging-ready contract. The version stamp is read fromorigin/main:version.txtand encoded as a@release-gate:<version>tag so gate selection is a floor comparison that survives cancelled/skipped releases.tests/_release-gate/+ a lifecycle README, and atest:release-gategrep target isolated from the curated@t1/@t2/@t3tiers; a note in thewriting-e2e-testsconventions documents the_release-gate/exception so those specs don't read as guideline violations.The skill was hardened by piloting it end-to-end on two real changes (a fix that needed a repro-specific seed, and a no-behavior-delta perf change), which shaped its guardrails: gate the repro not the easy path; seeding support is in-scope authoring; probe backend health via
<baseUrl>/api; local-diff mode for pre-PR branches; a perf-fix override for no-behavior-delta changes. The pilot test/bridge artifacts are intentionally NOT part of this PR — they were validation, not deliverables.Out of scope (deferred follow-up on the ticket): CI wiring — the staging gate selection by stamp, the post-ship move to
shipped/, and the age-expiry job.Change checklist
Issues
AI-WATERMARK
AI-WATERMARK: yes
Testing
cd tests_end_to_end/e2e && npm ci, then verified the scaffolding:npm run test:release-gate -- --listselects only@release-gatespecs;npm run test:t1/t2/t3 -- --listare unchanged (20/32/36) and the@release-gatetag does not leak into the curated tiers.SKILL.mdfrontmatter parses, cross-references resolve, andmake claudemirrors cleanly to.claude/.#7322gate's relevance was proven by going RED against the pre-fix code.Documentation
tests_end_to_end/e2e/tests/_release-gate/README.mddocuments the gate-test lifecycle for devs/QA.SKILL.md,test-plan-template.md,release-gate-contract.md) are the operator-facing documentation; thewriting-e2e-testsconventions now note the_release-gate/exception.