Skip to content

ci: one command tests a release on the OpenID Foundation's hosted suite before production - #526

Draft
PiquelChips wants to merge 1 commit into
ci/conformance-suitefrom
ci/conformance-release
Draft

PiquelChips wants to merge 1 commit into
ci/conformance-suitefrom
ci/conformance-release

Conversation

@PiquelChips

@PiquelChips PiquelChips commented Nov 12, 2026 •

Copy link
Copy Markdown
Member

The local conformance run (#519) uses the OpenID Foundation's suite, but on our own deployment of it, against a local auth. The official setup, where certification happens, is their hosted suite, and it can only reach a public auth. Staging is on the tailnet, and testing production would leave test clients and accounts there and only catch problems after a release.

Now just conformance release makes testing a release one command:

  1. Finds staging's current deployment, and reads plans.json and expected.json from the commit it was built from.
  2. Promotes that release into a new conformance environment, public at https://auth-conformance.sourceorigin.dev. piquelctl asks first.
  3. Registers the suite's clients and a test account through that environment's CLI, and runs every plan on the hosted suite, back-channel logout included.
  4. Stops the environment, whatever happened, so it's public only while the run lasts.
  5. If every result matched, offers to promote the same deployment to production. piquelctl asks again.

The environment is declared in infra/piqueld.toml (promoted from staging, flat hostnames under *.sourceorigin.dev, the admin dashboard on the tailnet, no sign-in providers). The driver takes the hosted suite's API token through CONFORMANCE_SUITE_TOKEN. just conformance and just conformance <url> work as before.

Before the first run: merge this so piqueld creates the environment, and grant it the Resend key once (piquelctl app secret sourceorigin access resend-dev --environments staging,conformance --previews). The tests/conformance README and the promotion procedure document it.

I checked the hosted suite accepts the token, and reran the local mode. The release flow itself can only run once the environment exists, after merge.

Stacked on #519.

Note

Written by Claude Opus 5.5 in Claude Code (via T3 Code)

@coderabbitai

coderabbitai Bot commented Nov 12, 2026 •

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@PiquelChips
PiquelChips added this pull request to stack #525 November 12, 2026 21:24
@PiquelChips
PiquelChips force-pushed the ci/conformance-release branch from 681ed85 to 31602d2 Compare November 13, 2026 22:30
@PiquelChips
PiquelChips removed this pull request from stack #525 November 13, 2026 22:30
@PiquelChips
PiquelChips changed the base branch from fix/logout to ci/conformance-suite November 13, 2026 22:31
@PiquelChips
PiquelChips marked this pull request as draft November 13, 2026 22:31
@PiquelChips
PiquelChips added this pull request to stack #529 November 13, 2026 22:31
…uite

`just conformance release` promotes staging's current release into a new
public `conformance` environment, runs the hosted suite at
www.certification.openid.net against it with that commit's plans and
expectations, stops the environment whatever happens, and, if every result
matched, offers to promote the same deployment to production. piquelctl asks
before each promotion.

The driver takes the suite's address and API token, and runs the
back-channel logout plan whenever auth can reach the suite.
@PiquelChips
PiquelChips force-pushed the ci/conformance-release branch from 31602d2 to de1be60 Compare November 13, 2026 22:31
@PiquelChips PiquelChips self-assigned this Nov 13, 2026
@PiquelChips PiquelChips added standards Open standards compliance (OIDC, OAuth, RFCs) ci-cd CI-CD labels Nov 13, 2026
@PiquelChips PiquelChips added this to the v0.1 milestone Nov 13, 2026
@github-project-automation github-project-automation Bot moved this to Needs Triage in origin-src.dev Nov 13, 2026
@PiquelChips PiquelChips moved this from Needs Triage to In Progress in origin-src.dev Nov 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-cd CI-CD standards Open standards compliance (OIDC, OAuth, RFCs)

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant