Repository navigation
Brand images and webapp copy: render counts from data, drop the personal credit - #214
Merged
Merged
Conversation
…nal credit The social card (og-image.svg) and the banner were frozen at 25 frameworks, 1,514 controls, 41 entries, 114 incidents and 67 mapping files, with an old repo URL and a personal credit line. The webapp's Explorer card and Submit page still said "41 entries" and "25 frameworks". - Both SVGs now carry stats markers, and render-stats.mjs renders them along with README.md, so `npm run stats:check` fails if any of them goes stale. CONTROLS is replaced by MAPPINGS (card) and SOURCE LISTS (banner): the webapp and stats.json count controls differently, and mappings is the webapp hero's headline. - URL -> genai-security-project.github.io/crosswalk. The creator line is replaced by the initiative name, and both files leave ATTRIBUTION_EXEMPT, so the C1 guard covers them again. - "ML Classifier Pipeline" / "BGE + cross-encoder classifier" -> "Mapping files + registries" / "scripts/generate.js". The banner lists all four source lists. - docs/index.html: the two sentences use DATA.length and FRAMEWORKS.length. A new webapp test pins them. C2 approved by the maintainer on 2026-10-05. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Follow-up to the two findings reported in #213. C2 approved by the maintainer (2026-10-05). The social card turned out to have the same defect as the banner, so it's fixed too.
What was wrong
docs/og-image.svg: the social-preview image for every page (og:image/twitter:image)…/GenAI-Data-Security-Initiative; "Created by …" credit; "ML Classifier Pipeline"; "and 18 more"docs/banner.svg(not referenced anywhere)docs/index.htmlWhat this changes
<!-- stats:… -->markers (SVG comments).scripts/render-stats.mjsrenders README.md,docs/og-image.svganddocs/banner.svg, so the existing CI stepnpm run stats:checkfails if any of them goes stale. Current values: 26 frameworks · 3,771 mappings · 51 entries · 77 mapping files · 147 incidents · 4 source lists · 27 registries.stats.json(1,184, all registries) count controls differently. Picking one would put a third definition in the images. MAPPINGS (the hero's headline) and SOURCE LISTS take its place.ATTRIBUTION_EXEMPTinvalidate.js. They were exempt only because brand assets were frozen, and the guard now covers them.genai-security-project.github.io/crosswalk.scripts/generate.js) instead of an ML classifier.DATA.lengthandFRAMEWORKS.length. A new webapp test asserts they match the loaded data.Layout, colours and every other element of both images are unchanged.
Verification
validate 0 errors / 92 warnings (same as
main);stats:checkcurrent for all three targets; 95/95 tests (+1); no regen drift.Negative tests:
✗ docs/og-image.svg is stale, exit 1.✗ [docs/banner.svg] Personal attribution … C1, 1 error.Both were reverted.
Both SVGs were rendered in Chrome and checked: no overflow, and the fourth source-list line fits its box.
Not changed (noted for later)
og:imageis an SVG. Most social platforms (LinkedIn, X, Facebook, Slack) don't render SVG preview images, so link previews may show no image at all. Shipping a PNG would need a render step, so it's a separate decision.validate.yml's path filters don't includescripts/render-stats.mjsorscripts/stats.js, so a PR touching only those wouldn't run Content Validation. This PR triggers it throughdocs/**.🤖 Generated with Claude Code