Contradiction — ClusterController Subsystem Placement & Advertised Skills Count
This contradiction card records two active taxonomic/inventory tensions discovered during first-hand audit of “:
Tension 1 — clustercontroller-core: Content Data Plane vs Config/Admin Control Plane
- Claim A (
vespa/Code-map.md& content-nodes): Placesvespa/clustercontroller-coreinside Content Nodes because its sole runtime responsibility is computing theClusterState(up/down/maintenance node states) consumed byvespa/storagedistributors andprotonpersistence nodes (see messagebus-bucket-distribution-and-ideal-state). - Claim B (Language & Deployment Topology in config-admin):
clustercontroller-coreis written 100% in Java (215 files, ~31k LOC), runs inside a standalone or configserver-hosted jDisc container, and coordinates via ZooKeeper alongsidevespa/configserver. - Working Resolution: Index
clustercontroller-coreprimarily under content-nodes (matchingvespa/Code-map.mdfunctional ownership) while cross-linking its deployment and ZooKeeper quorum lifecycle to config-admin.
Tension 2 — Upstream skills/ Repository Count (7 Observed vs 9 Previously Assumed)
- Observation (work-areas): First-hand directory inspection of
skills/finds 7SKILL.mddirectories (app-package,elasticsearch-migration,feed-operations,pyvespa,query-builder,schema-authoring,vespa-cli), whereas early wave notes referenced 9 skills. - Working Resolution: Ground all coverage metrics strictly on the 7 verified
SKILL.mdfiles on disk (INV-004).