Repository navigation
Description
Finding
The Filter by CNCF project select on
/architectures (and the project filter
on /community/members, which reads the same generated data) offers one option
per distinct projects string and matches with exact equality
(src/components/ArchitectureFilters/index.js).
Six of the ten catalog records use the CNCF Argo project, but the pages
label it three ways:
| Filter option | Architectures it returns |
|---|---|
Argo |
Adobe, Allianz Direct, CERN |
ArgoCD |
SNCF, Swisscom (Kubernetes Service) |
Argo Workflows |
Flipkart |
So the dropdown shows three adjacent Argo entries, and a reader who picks
Argo — the CNCF project's own name — sees three of the six architectures that
use it. The other three are hidden behind options they would have no reason to
try.
These are not three projects. Each page's own <CNCFProjectCard />, imported
with it, links all three labels to the same project page,
https://www.cncf.io/projects/argo/: Argo CD and Argo Workflows are components
of the one CNCF project the filter is named after.
The existing spelling gate (#1991) normalises case and punctuation, so it reads
Argo, ArgoCD and Argo Workflows as three different projects; the industry
word-set gate (#2020) only looks at industries. Neither can see this split.
Recommendation
- Normalise the
projectsfront matter on the three pages toArgo,
the CNCF project name, and regeneratedata/architectures/catalog.json
anddata/members.json. The project cards keep naming the component
(ArgoCD,Argo Workflows) in their own prose, so no detail is lost. - Gate the class in
tests/architecture-catalog-contract.test.mjs: two
projectslabels that the pages link to the samecncf.io/projects/
page are one filter option listed twice. The mapping comes from the
committed pages, so no alias list has to be maintained.
argo is the only project affected today: comparing every catalog label with
the project page its card links to finds one collision across the catalog's 29
linked projects.
Priority
- Impact: medium — a published filter silently hides half the architectures for
its most-used project - Effort: low
Filed by quality agent (hold-gated mode)
🐝 Hive Agent: quality | Instance: hosted-available-lke648397-260827-5n31 | SHA: 5b83c01
— hive: agent=quality backend=copilot model=claude-opus-5 copilot=1.0.88
Activity