chore(certifications): add NVIDIA Generative AI Multimodal badge#189
Merged
Conversation
Insert NVIDIA-Certified Associate: Generative AI Multimodal (Jun 2026) before the Generative AI LLMs badge; renumber positional locale keys across en/es/ca.
There was a problem hiding this comment.
Security Review — PR #189
Result: No high-confidence vulnerabilities found
This PR adds one certification record and reindexes locale issued dates. The diff is limited to static JSON in src/data/certifications.json and locales/{en,es,ca}/certifications.json. No executable code, dependencies, CI, or auth configuration changed.
Scope reviewed
| Area | Assessment |
|---|---|
| Injection (SQL, command, template, path traversal) | Not applicable — no queries, shell execution, templating, or filesystem access |
| Authn / authz | Not applicable — static portfolio content |
| Secrets / token leakage | None — no credentials or tokens in the diff |
| XSS | No new risk — name, issuer, and issued render as Astro text nodes; issuerIcon: "nvidia" is an existing enum value rendered via the whitelisted ISSUER_ICON_PATHS map |
| SSRF / request forgery | No new risk — the new entry has no fallback field, so it does not trigger the existing client-side fetch(link.href) fallback logic in Certifications.astro |
| Unsafe deserialization | Not applicable |
| Dependency / supply-chain | No changes — package.json / lockfiles untouched |
URL handling (informational)
New URLs follow the same pattern as existing certifications:
link:https://www.credly.com/badges/...(HTTPS external credential page)badgeImage:https://images.credly.com/...(HTTPS CDN image)
These satisfy the existing Zod credentialUrl / imageUrl constraints in content-schemas.ts (https:// only for external URLs). Links are emitted with rel="noopener noreferrer".
Uncertain / out of scope
- Third-party asset trust: Badge images load from
images.credly.com. Compromise of that CDN could affect image content site-wide; this is pre-existing architecture, not introduced by this PR. - Credly URL authenticity: Assumed author-controlled content; not a code-level vulnerability.
Automated security review — content/data change only; no remediation required.
Sent by Cursor Automation: Find vulnerabilities
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
Adds the NVIDIA-Certified Associate: Generative AI Multimodal badge (issued Jun 2026), placed before the existing Generative AI LLMs badge.
Type of change
Checklist
nvidiaissuer icon)content-parity/data-integrity/content-schemas/portfolio-contentsuites cover this; all 50 pass)Notes for reviewers
issuedkeys renumbered acrosslocales/{en,es,ca}/certifications.json(new key1=Jun 2026, localized per locale).linknormalized to thecredly.com/badges/<id>form used by the other badges.