live wire
AI · Red Hat documents usage-based admission fair sharing for Kueue 1.4 on OpenShiftRed Hat DeveloperAI: Red Hat maps governed firewall changes from ServiceNow through Ansible and two human approval gatesRed Hat DeveloperCLUSTER MGMT · ACM 2.17 makes Submariner 0.24 GA with Important-rated fixesRed Hat ErrataPLATFORM · Red Hat makes on-premises Lightspeed recommendations GA for Satellite 6.18Red Hat ErrataSECURITY · Red Hat Hardened Images updates Tomcat 10 for nine authentication, access-control and DoS flawsRed Hat ErrataAI · Open Data Hub 3.6.0 EA1 bundles Trainer, MLflow and llm-d componentsOpen Data HubAI · Speculators 0.6.0 adds P-EAGLE parallel drafting for vLLM speculative decodingRed Hat DeveloperSECURITY · OpenShift 4.17.57 fixes seven Go and TLS CVEs in an Important-rated updateRed Hat ErrataAI · Red Hat benchmarks local LLM guardrails with EvalHub, exposing regex accuracy and latency trade-offsRed Hat DeveloperAI · Red Hat maps silent tool-call failures across agentic pipelinesRed HatAPI · Kuadrant 1.5.3 adds GRPCRoute policies and developer-portal API-key workflowsKuadrantAI · (Aug 25) IBM releases Apache-2.0 Granite 4.2 reasoning models in 3B, 8B and 30B sizesIBM ResearchJAVA · Red Hat build of Quarkus 3.33.3.SP1 fixes 13 CVEs in an Important-rated updateRed Hat errataAI · vLLM moves Kimi K2 RL weight sync across 384 H100s in 7.53 seconds (Aug 22)vLLMAI · Red Hat documents usage-based admission fair sharing for Kueue 1.4 on OpenShiftRed Hat DeveloperAI: Red Hat maps governed firewall changes from ServiceNow through Ansible and two human approval gatesRed Hat DeveloperCLUSTER MGMT · ACM 2.17 makes Submariner 0.24 GA with Important-rated fixesRed Hat ErrataPLATFORM · Red Hat makes on-premises Lightspeed recommendations GA for Satellite 6.18Red Hat ErrataSECURITY · Red Hat Hardened Images updates Tomcat 10 for nine authentication, access-control and DoS flawsRed Hat ErrataAI · Open Data Hub 3.6.0 EA1 bundles Trainer, MLflow and llm-d componentsOpen Data HubAI · Speculators 0.6.0 adds P-EAGLE parallel drafting for vLLM speculative decodingRed Hat DeveloperSECURITY · OpenShift 4.17.57 fixes seven Go and TLS CVEs in an Important-rated updateRed Hat ErrataAI · Red Hat benchmarks local LLM guardrails with EvalHub, exposing regex accuracy and latency trade-offsRed Hat DeveloperAI · Red Hat maps silent tool-call failures across agentic pipelinesRed HatAPI · Kuadrant 1.5.3 adds GRPCRoute policies and developer-portal API-key workflowsKuadrantAI · (Aug 25) IBM releases Apache-2.0 Granite 4.2 reasoning models in 3B, 8B and 30B sizesIBM ResearchJAVA · Red Hat build of Quarkus 3.33.3.SP1 fixes 13 CVEs in an Important-rated updateRed Hat errataAI · vLLM moves Kimi K2 RL weight sync across 384 H100s in 7.53 seconds (Aug 22)vLLM
upstreambeat.ai
analysisAI

Rossoctl binds AI agent cards to CI provenance with Sigstore

The upstream prototype combines build-time attestations with SPIFFE workload identity, while leaving unsigned legacy cards in a migration path.

By The News Desk· Aug 21, 2026

Red Hat’s Emerging Technologies team has described an upstream Rossoctl integration that signs AI agent cards in CI and verifies their provenance when the operator reconciles them on Kubernetes. The work targets a gap left by runtime workload identity: a legitimate pod can still serve an agent card that was altered after its build pipeline produced it. The project is pre-product engineering, not a supported Red Hat feature.

Two trust checks for one artifact

The engineering post separates two questions. SPIFFE/SPIRE establishes which workload is serving an agent card at runtime. Sigstore establishes which CI workflow created that card and whether the artifact changed afterward.

In the prototype flow, GitHub Actions uses its OIDC identity to obtain a short-lived Fulcio certificate. The pipeline signs the card through the sigstore-a2a library, attaches SLSA provenance such as the source repository, commit and workflow, and records the signing event in Rekor. The operator then verifies the bundle with sigstore-go, checks the expected repository and workflow identity, confirms the Rekor entry and exposes the signer and log index in the AgentCard custom resource status.

The implementation canonicalizes the card with JSON Canonicalization Scheme before digest verification. That matters because equivalent JSON can otherwise produce different byte sequences and therefore different hashes.

Migration favors observation before blocking

Rossoctl’s rollout design distinguishes an invalid signed card from a card that has not yet adopted signing. In audit mode, verification failures become logs, Kubernetes events and status conditions without preventing activation. When enforcement is enabled, a card with a present but invalid Sigstore bundle is marked not ready. Cards with no bundle remain usable, allowing teams to add signing pipeline by pipeline.

That choice lowers immediate migration risk, but it also means enforcement is not complete until organizations separately remove or constrain the unsigned-card path. The reconciler-based check also operates after the resource exists rather than rejecting it through an admission webhook.

What platform teams should take from it

The useful pattern is the split between build provenance and workload identity. Signing an agent card does not prove that the running workload is legitimate; workload identity does not prove that its declared tools and routing metadata came from an approved pipeline. Rossoctl’s experiment composes both controls and leaves capability validation—the question of whether an agent actually behaves within its claims—as a separate layer.

The Rossoctl operator remains upstream work. The Red Hat post explicitly says the technology is under active development and is neither part of a supported product nor a roadmap commitment.

Filed by The News Desk. Corrections: desk@upstreambeat.ai · Our standards →

comments · 0

    Comments are moderated before they appear. Your email is used once to confirm it is you — never shown, never sold. Corrections and questions get an answer from the desk when we have one.