You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Trusted publishing: record the workflow run, not only the ref, in the version provenance #2116
Follow-up to #2114, which started recording the OIDC identity behind a trusted-published version.
Where this stands
extension_version.published_provenance now holds the claims the provider asserted at the token exchange, copied there at publish time so they outlive the token (deleted as it is used) and the registration (revocable). For GitHub that is:
run_id — the individual workflow run. Without it the trail stops at the ref, and a ref can be built many times.
sha — the commit the run was for.
job_workflow_ref — the workflow actually executing, which differs from workflow_ref when a reusable workflow is called. workflow_ref is the entry point; for "what really ran" you want both.
pipeline_id and job_id — the equivalents of run_id.
sha.
Suggested shape
Add them with mayClaim rather than mustClaim. They are recorded, never matched against, so a provider that omits one cannot break an exchange that works today — matches() compares a fixed set of keys and is unaffected by extra entries in the map. No schema change: published_provenance is jsonb.
Worth checking each claim against the provider's current documentation before adding it, since providers have changed claim sets with little warning, and confirming that none of them carries anything that should not be stored indefinitely.
Deliberately not in scope
Surfacing the provenance through the API or the UI. There is no plan for that yet, and it needs its own decision about who should see it — a repository id and workflow ref are public information for a public repository, but publishing them as part of the extension API is a product choice, not a mechanical one. The data being captured and queryable in the database is what the forensic question ("a token leaked — what did it publish, and from where?") actually needs, and that works today.
Activity
netomi commentedon Sep 30, 2026
@cstamas can you also take a look here and see if we can include that information?
fix: TP: store extra information (eclipse-openvsx#2283)