diff --git a/ci/utils/sync_skills_version.sh b/ci/utils/sync_skills_version.sh
index 1dfca8a663..f1f20d4b24 100755
--- a/ci/utils/sync_skills_version.sh
+++ b/ci/utils/sync_skills_version.sh
@@ -49,4 +49,17 @@ for skill_md in "${SKILLS_DIR}"/*/SKILL.md; do
echo " updated $skill_md"
done
+# skills/*/skill-card.md: update the version on the line after "## Skill Version(s):"
+for skill_card in "${SKILLS_DIR}"/*/skill-card.md; do
+ [[ -f "$skill_card" ]] || continue
+ # Scope the substitution to the line immediately following the header.
+ sed -i '/^## Skill Version(s):
$/{n; s|^[0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\( (source:.*)
\)$|'"${RELEASE_VERSION}"'\1|}' "$skill_card"
+ # Verify the replacement actually landed; fail loudly if the version line is missing or malformed.
+ if ! grep -A1 "^## Skill Version(s):" "$skill_card" | grep -q "^${RELEASE_VERSION}"; then
+ echo "ERROR: $skill_card: version line under '## Skill Version(s):' is missing or malformed; manual repair needed"
+ exit 1
+ fi
+ echo " updated $skill_card"
+done
+
echo "Done. Skills version is now ${RELEASE_VERSION}."
diff --git a/ci/utils/validate_skills.sh b/ci/utils/validate_skills.sh
index 6577a45a1e..ed71c1b788 100755
--- a/ci/utils/validate_skills.sh
+++ b/ci/utils/validate_skills.sh
@@ -56,6 +56,17 @@ for dir in "$SKILLS_DIR"/*/; do
echo "ERROR: $name/SKILL.md missing version in frontmatter. Run: ./ci/utils/sync_skills_version.sh"
ERRORS=$((ERRORS + 1))
fi
+ skill_card="${dir}skill-card.md"
+ if [[ -f "$skill_card" ]]; then
+ CARD_VERSION=$(grep -A 1 "^## Skill Version(s):" "$skill_card" | tail -1 | sed -n 's/^\([0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]\).*/\1/p')
+ if [[ -z "${CARD_VERSION}" ]]; then
+ echo "ERROR: $name/skill-card.md missing version under '## Skill Version(s):'. Run: ./ci/utils/sync_skills_version.sh"
+ ERRORS=$((ERRORS + 1))
+ elif [[ "${CARD_VERSION}" != "${RELEASE_VERSION}" ]]; then
+ echo "ERROR: $name/skill-card.md has version \"${CARD_VERSION}\" but VERSION file has \"${RELEASE_VERSION}\". Run: ./ci/utils/sync_skills_version.sh"
+ ERRORS=$((ERRORS + 1))
+ fi
+ fi
fi
done
diff --git a/skills/cuopt-developer/skill-card.md b/skills/cuopt-developer/skill-card.md
index 2e897b0149..8458bf5c0c 100644
--- a/skills/cuopt-developer/skill-card.md
+++ b/skills/cuopt-developer/skill-card.md
@@ -80,7 +80,7 @@ Underlying evaluation signals used in this run:
| Efficiency | 3 | 48% (+22%) | 89% (+49%) |
## Skill Version(s):
-26.08.00 (source: frontmatter, pyproject.toml)
+26.10.00 (source: frontmatter, pyproject.toml)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
diff --git a/skills/cuopt-install/skill-card.md b/skills/cuopt-install/skill-card.md
index 8b1e34d83d..4eb431d444 100644
--- a/skills/cuopt-install/skill-card.md
+++ b/skills/cuopt-install/skill-card.md
@@ -73,7 +73,7 @@ Underlying evaluation signals used in this run:
| Efficiency | 1 | 95% (+67%) | 96% (+69%) |
## Skill Version(s):
-26.08.00 (source: frontmatter)
+26.10.00 (source: frontmatter)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
diff --git a/skills/cuopt-multi-objective-exploration/skill-card.md b/skills/cuopt-multi-objective-exploration/skill-card.md
index fa0a4aacd0..6aeabcf0a2 100644
--- a/skills/cuopt-multi-objective-exploration/skill-card.md
+++ b/skills/cuopt-multi-objective-exploration/skill-card.md
@@ -73,7 +73,7 @@ Underlying evaluation signals used in this run:
| Efficiency | 31% → 100% (+69 points) | 25% → 100% (+75 points) |
## Skill Version(s):
-26.08.00 (source: frontmatter)
+26.10.00 (source: frontmatter)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
diff --git a/skills/cuopt-numerical-optimization-api/skill-card.md b/skills/cuopt-numerical-optimization-api/skill-card.md
index e824c86a18..840937a360 100644
--- a/skills/cuopt-numerical-optimization-api/skill-card.md
+++ b/skills/cuopt-numerical-optimization-api/skill-card.md
@@ -77,7 +77,7 @@ Underlying evaluation signals used in this run:
| Efficiency | 8 | 71% (+46%) | 55% (+28%) |
## Skill Version(s):
-26.08.00 (source: frontmatter)
+26.10.00 (source: frontmatter)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
diff --git a/skills/cuopt-numerical-optimization-formulation/skill-card.md b/skills/cuopt-numerical-optimization-formulation/skill-card.md
index b10dd29154..afda90f622 100644
--- a/skills/cuopt-numerical-optimization-formulation/skill-card.md
+++ b/skills/cuopt-numerical-optimization-formulation/skill-card.md
@@ -78,7 +78,7 @@ Underlying evaluation signals used in this run:
**[ ] Product Security**
## Skill Version(s):
-26.08.00 (source: frontmatter)
+26.10.00 (source: frontmatter)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
diff --git a/skills/cuopt-routing-api-python/skill-card.md b/skills/cuopt-routing-api-python/skill-card.md
index f5bdc88f34..2b0ff05fb2 100644
--- a/skills/cuopt-routing-api-python/skill-card.md
+++ b/skills/cuopt-routing-api-python/skill-card.md
@@ -75,7 +75,7 @@ Underlying evaluation signals used in this run:
| Efficiency | 1 | 95% (+67%) | 72% (+45%) |
## Skill Version(s):
-26.08.00 (source: frontmatter)
+26.10.00 (source: frontmatter)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
diff --git a/skills/cuopt-server-api-python/skill-card.md b/skills/cuopt-server-api-python/skill-card.md
index e8754b2d76..e4dfcae72c 100644
--- a/skills/cuopt-server-api-python/skill-card.md
+++ b/skills/cuopt-server-api-python/skill-card.md
@@ -75,7 +75,7 @@ Underlying evaluation signals used in this run:
| Efficiency | 1 | 95% (+68%) | 95% (+67%) |
## Skill Version(s):
-26.08.00 (source: frontmatter)
+26.10.00 (source: frontmatter)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
diff --git a/skills/cuopt-skill-evolution/skill-card.md b/skills/cuopt-skill-evolution/skill-card.md
index a716f20e96..c3d51bd3e8 100644
--- a/skills/cuopt-skill-evolution/skill-card.md
+++ b/skills/cuopt-skill-evolution/skill-card.md
@@ -74,7 +74,7 @@ Underlying evaluation signals used in this run:
| Efficiency | 1 | 42% (-18%) | 28% (-0%) |
## Skill Version(s):
-26.08.00 (source: frontmatter)
+26.10.00 (source: frontmatter)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
diff --git a/skills/cuopt-user-rules/skill-card.md b/skills/cuopt-user-rules/skill-card.md
index ea87b86c5a..730d4d674b 100644
--- a/skills/cuopt-user-rules/skill-card.md
+++ b/skills/cuopt-user-rules/skill-card.md
@@ -75,7 +75,7 @@ Underlying evaluation signals used in this run:
| Efficiency | 1 | 25% (+0%) | 48% (-12%) |
## Skill Version(s):
-26.08.00 (source: frontmatter)
+26.10.00 (source: frontmatter)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.