Outsider Stage 0.5
Replay and verify a real, sealed Outsider Stage 0.5 intervention chain.
Translation pending
Run the OpenID Connect conformance tests and read their logs
SecurityTypeScript · CSSGitHub @balazsorban44OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
The OpenID Foundation conformance suite in TypeScript, driven by
Playwright, made for CI. Same checks, messages and spec references as the official suite.Read the full README ↗The OpenID Foundation conformance suite in TypeScript, driven by Playwright, made for CI. Same checks, messages and spec references as the official suite.
# .github/workflows/conformance.yml
on: [push, pull_request]
jobs:
oidc-conformance:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- run: npm start & # or `target` in the config
- uses: balazsorban44/openid-conformance-suite@main
with:
plan: oidcc-basic-certification-test-plan
variant: "[server_metadata=discovery][client_registration=dynamic_client]"
config: ./conformance/my-op.json
The job summary lists unexpected failures first, then skipped, review and expected-failure modules. On failure the
artifact has the event log (log.html), screenshots, videos and results.json. browser: firefox, webkit or
chrome-mobile runs the plan in another browser.
my-op.json is the official suite's configuration format:
{
"alias": "my-op",
"server": { "discoveryUrl": "http://localhost:3000/.well-known/openid-configuration" },
"client": { "client_name": "first-client" },
"client2": { "client_name": "second-client" },
"browser": [
{
"match": "http://localhost:3000/auth*",
"tasks": [
{
"task": "Login",
"optional": true,
"match": "http://localhost:3000/interaction*",
"commands": [
["text", "name", "login", "user", "optional"],
["text", "name", "password", "secret", "optional"],
["click", "class", "login-submit"]
]
},
{ "task": "Verify Complete", "match": "*/callback*", "commands": [["wait", "id", "submission_complete", 10]] }
]
}
],
"target": {
"command": "node ./start-my-op.js",
"readyUrl": "http://localhost:3000/.well-known/openid-configuration"
}
}
browser: the official suite's scripted login (click, text, wait, wait-element-visible,
wait-element-invisible; selectors id, name, css, xpath, class). A .ts config can export a
Playwright function browser: async ({ page, url }) => { ... } instead.target (optional): starts your implementation before the plan. "url": "http://localhost:${PORT}" gets a free
port, passed as PORT and as ${TARGET_URL} in the configuration.expectedFailures, expectedSkips (optional): lists in the official suite's expected-failures-*.json format.{
"alias": "my-rp",
"client": { "client_id": "my-rp", "client_secret": "..." },
"target": { "command": "node ./start-my-rp.js", "readyUrl": "http://localhost:4000/ready" },
"client_driver": { "startUrl": "http://localhost:4000/start" }
}
The suite emulates an OP and calls GET {startUrl}?issuer=<emulated OP>&module=<test name>&variant=<json> once
per module; your RP logs in against that issuer. Contract and reference implementation:
targets/openid-client-rp/README.md.
pnpm add -D @balazsorban44/openid-conformance-suite
pnpm exec playwright install --with-deps chromium
pnpm exec openid-conformance list [--modules]
pnpm exec openid-conformance run --plan oidcc-basic-certification-test-plan \
--variant server_metadata=discovery --variant client_registration=static_client \
--config ./conformance/my-op.json [--module 'oidcc-server*'] [--browser webkit] [--headed]
Node.js 24 or newer.
pnpm install && pnpm ui in a checkout: plans and projects with every module's latest result, runs with live
progress, each module's log with its conditions, HTTP exchanges and screenshots. See
ui/README.md.
upstream.lock.json pins the upstream commit and maps every ported Java file to its function or test. A weekly
job opens a "Sync with upstream" pull request with the diffs to port. Rules: .claude/skills/.
MIT. A derivative work of the OpenID Foundation conformance suite; not affiliated with or endorsed by the OpenID Foundation, and no certification.