Dentolize · Jira/Confluence QA Pipeline Walkthrough
On this pageBusiness viewTechnical viewGaps between the PR description and the diffSee also

What Changed (Migration)

This PR is a rewrite of one file, .github/workflows/sandbox-qa.yml, at +62 / −189 lines. It's a net deletion — the workflow got much smaller. This page is the before/after for reviewers.


Business view

Before, the QA agent lived entirely on the GitHub pull request. It offered five actions — review, plan, test, fix, and full-auto — plus a scope toggle to re-run only failures. Its output was: a review comment, a plan comment, a summary comment, and one GitHub issue per test case. You steered it by editing the review/plan comments; the next action read your edits back.

After, the QA work moved to Atlassian. The actions are now the four phases (prepare, test, retest, fix); the plan lives in a Jira epic, the review and results live in a Confluence page, and the pull request keeps just one summary comment with links. You steer it by editing the epic and commenting on tickets.

The full-auto "do everything unattended" option is gone — on purpose. So is the per-story GitHub issue machinery.


Technical view

Inputs

BeforeAfter
action: review, plan, test, fix, full-auto (default test)action: prepare, test, retest, fix (default prepare)
scope: all / failed-only (test only)(removed)

.github/workflows/sandbox-qa.yml:33-42. retest is new; review, plan, and full-auto are gone; prepare roughly absorbs the old review + plan.

Steps removed

The diff deletes three substantial chunks:

  1. "Fetch edited review / plan comments" — a whole github-script step that, before running plan or test, read the human-edited <!-- sandbox-qa-review --> and <!-- sandbox-qa-plan --> comments back off the PR into temp files for the agent. Gone entirely — the review/plan-as-PR-comments model is retired.
  2. The env wiring for itQA_SCOPE, QA_REVIEW_FILE, QA_PLAN_FILE env vars on the agent step. Gone; only GITHUB_TOKEN remains (:60-61).
  3. "Publish comments + story issues" — the ~130-line heart of the old workflow. It created labels (ai-automated, pr-<n>), created/updated one GitHub issue per story (matching [QA-n] title prefixes on fix re-runs), opened extra "technical findings" issues, closed passed/fixed stories, and built a summary comment with per-story pass/fail counts. All deleted.

Steps kept but simplified

  • "Update PR summary comment" (:66-114) replaces the old publish step. It now only upserts one comment with the Jira/Confluence links and the agent summary — no issues, no labels, no counts. See Workflow Internals.
  • "Upload run artifacts" (:116-123) is essentially unchanged — same state-dir archive, 14-day retention.

Comment-marker change

The summary marker stayed <!-- sandbox-qa-report -->, but the <!-- sandbox-qa-review --> and <!-- sandbox-qa-plan --> markers are no longer produced or consumed anywhere. If old PRs still carry those comments, nothing reads them now.

Permissions

Unchanged block — contents: write, pull-requests: write, issues: write (:48-51). Worth noting: issues: write was previously used heavily (creating story issues); now it's used only to post the one PR comment (a PR comment is an issue comment in the API). The permission is no longer over-exercised, but it's also no longer strictly minimal — it could arguably narrow, but PR comments still require it.

What did NOT change in this repo

  • sandbox.yml and sandbox-ops.yml are untouched by this PR. The sandbox deploy/teardown and the branch-docs generation still work exactly as before.
  • The sandbox-qa binary and atlassian-qa.py are not in this repo and thus not in this diff. The migration's real substance — teaching the agent to speak Jira and Confluence — happened on the homelab and is invisible here. This diff is only the GitHub-side rewiring.

Gaps between the PR description and the diff

Documented honestly, for reviewers:

  • The PR body describes Stories, cross-links to PR/sandbox/docs, per-ticket screenshots, Bug tickets, and a Confluence results table. None of that is in the diff — it's all in the off-repo agent. The diff only links out to JIRA_EPIC_URL and CONFLUENCE_URL.
  • The body says "GitHub story-issues are retired." ✅ True and verifiable — the entire issue-creation block is deleted.
  • The body says the pipeline runs "Foreground with live agent streaming." ✅ Consistent with the workflow: one foreground run: step, set -e, no --detach (contrast sandbox.yml:66 which does detach the docs agent).

See also