feat: display top-level certificate extensions - #170
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
Adds visibility into all top-level X.509 certificate extensions across the CLI/library outputs, including human-friendly OID name resolution and critical/unhandled markers.
Changes:
- Add
certkit.CertificateExtensionplusCollectCertificateExtensionsand a broad extension OID name registry (with vendor-arc fallbacks). - Surface extension summaries in
inspectoutput and verboseverify/connectoutputs (text + JSON), with new formatting helpers. - Add/extend tests and update docs + architecture notes + changelog entry for the new output fields.
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| internal/verify_test.go | Adds coverage ensuring verbose verify results include collected extensions (including unhandled critical). |
| internal/verify.go | Populates and formats extension lists in verbose verify output for leaf + chain entries. |
| internal/inspect_test.go | Extends inspect output tests (text + JSON) to assert extension rendering/serialization. |
| internal/inspect.go | Collects and prints extensions for certificate inspect results. |
| internal/format.go | Introduces shared internal formatter for extension blocks/flags (used by inspect/verify). |
| dn_test.go | Adds tests for extension collection and OID-to-name resolution (including vendor fallbacks). |
| dn.go | Adds extension model + OID registry + name resolution + collection helper to the public library. |
| cmd/certkit/root.go | Updates --verbose help text to mention extensions. |
| cmd/certkit/connect_test.go | Extends connect verbose output test to assert extensions are included. |
| cmd/certkit/connect.go | Adds extensions to verbose connect JSON and text output; adds connect-local extension formatting helpers. |
| README.md | Updates global-flag docs to mention extensions in verbose output. |
| EXAMPLES.md | Updates verbose-mode documentation to include extension summaries. |
| CHANGELOG.md | Notes new extension display behavior under Unreleased. |
| .claude/docs/architecture.md | Updates architecture documentation to reflect extension summaries in inspect/verify/connect. |
danielewood
force-pushed
the
feat/display-certificate-extensions
branch
from
March 11, 2026 04:42
6b6eae7 to
06445de
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Testing