fix: plugins explicit error matching#87
Conversation
… intermediate handling - Correct DER encoding for CODE_SIGNING_EKU_OID to match webpki expectations - Add embedded Fulcio intermediate certificate and use as fallback if none provided - Clarify certificate validity checks and error handling for expired certs
…e validity Replace string-based error matching with explicit rustls-webpki Error variants in plugin signature verification. Co-authored-by: yacosta738 <33158051+yacosta738@users.noreply.github.com>
Deploying with
|
| Status | Name | Latest Commit | Updated (UTC) |
|---|---|---|---|
| ✅ Deployment successful! View logs |
corvus-plugins-edge | 10c343a | Feb 25 2026, 10:21 PM |
|
Caution Review failedThe pull request is closed. ℹ️ Recent review infoConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Disabled knowledge base sources:
📒 Files selected for processing (1)
📝 WalkthroughWalkthroughCertificate verification logic in the agent-runtime is modified to convert the CODE_SIGNING_EKU_OID to DER-encoded bytes, add a Fulcio intermediate as a fallback in the chain, validate certificates against Fulcio trust anchors using expanded verification paths, and treat time-based validation errors as non-fatal during runtime re-verification. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
✨ Finishing Touches
🧪 Generate unit tests (beta)
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. Comment |
This pull request introduces several improvements to certificate chain validation for plugins, focusing on more robust handling of Fulcio keyless certificates and clarifying code semantics. The main enhancements include correcting the encoding of the code signing OID, embedding a fallback Fulcio intermediate certificate, and improving the handling of expired certificates during runtime verification.
Certificate validation robustness:
CODE_SIGNING_EKU_OIDto match whatwebpki::KeyUsage::required_if_presentexpects, ensuring proper code signing verification.FULCIO_INTERMEDIATE_CERT_1_PEM) and updated logic to use it as a fallback if no intermediates are found in the chain, improving reliability of certificate validation. [1] [2]Runtime certificate verification logic:
Dependency update:
Errortype fromwebpkito enable more granular error handling during certificate verification.Summary by CodeRabbit