Sync upstream OSS release snapshots into main#3
Merged
Conversation
Added pin to python 3.13 for uv venv as make install do not complete with python >3.13
Fix uv venv py-version
feat: adds dockerfile to run it without installing python
Refresh the public SkillSpector tree from internal OSS release branch release/oss-2026-06-13 at a2a659364f9a5a72dafa71f56098b51f1ef2e9d5. Changes: - Bump package metadata and uv lock entry from 2.1.3 to 2.1.4. - Drop a trailing blank line from the generated Makefile. Verification: - PYENV_VERSION=3.13.12 PYTHONPATH=src ./scripts/create-oss-release.sh release/oss-2026-06-13 (includes make test-unit: 600 passed, 11 skipped, 22 deselected). - PYENV_VERSION=3.13.12 PYTHONPATH=src pytest -m 'not integration' tests/ (600 passed).
Sync OSS release snapshot
Signed-off-by: medhdj <medhdjdevs@gmail.com>
Install git and ca-certificates in the runtime Docker image so SkillSpector can scan remote Git repositories, including HTTPS GitHub URLs, from inside the container. Add a reusable Docker smoke suite and `make docker-smoke` to validate: - SkillSpector starts in the image - git is available in the image - local fixture scans still work - GitHub URL scans clone and produce valid JSON reports The internal GitLab Docker smoke job now calls the shared suite instead of carrying inline shell checks. Source: - GitHub PR: NVIDIA#78 - GitHub author: medhdj - GitHub head SHA: 09e2ac3 Verification: - make docker-smoke - sh -n tests/docker/smoke.sh - git diff --check Co-authored-by: medhdj <medhdjdevs@gmail.com> Signed-off-by: medhdj <medhdjdevs@gmail.com>
Refresh the public SkillSpector tree from the internal OSS release branch release/oss-2026-06-15 at a7ebb82733fba54512c546fed08cd17a2cbc4a17. Changes remaining after rebasing onto GitHub main: - Add explicit returns in Docker smoke helper functions. - Correct the documented bundled model registry path. Verification: - PATH="/private/tmp/skillspector-github-release-redo.wVmbW5/SkillSpector/.venv/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/opt/pmk/env/global/bin:/Library/TeX/texbin:/opt/homebrew/bin:/Users/keshavp/.cargo/bin:/Users/keshavp/.codex/tmp/arg0/codex-arg0xPENbg:/Applications/Codex.app/Contents/Resources" ./scripts/create-oss-release.sh release/oss-2026-06-15 - git diff --check origin/main..HEAD
Refresh the public SkillSpector snapshot from the internal OSS release branch release/oss-2026-06-15 at a7ebb82733fba54512c546fed08cd17a2cbc4a17. Changes: - Correct the documented bundled model registry path for SKILLSPECTOR_MODEL_REGISTRY. - Add explicit returns in Docker smoke helper functions. Notes: - Rebased onto latest GitHub main after NVIDIA#78 merged. - Supersedes the original provider-registry documentation PR NVIDIA#30. Verification: - PATH="$PWD/.venv/bin:$PATH" ./scripts/create-oss-release.sh release/oss-2026-06-15 - includes make test-unit: 600 passed, 11 skipped, 22 deselected - git diff --check origin/main..HEAD
This reverts commit e2af5f4.
…toplace/fix/build-context-invalid-skill-path Reject missing, empty, nonexistent, or file-valued skill_path inputs in build_context instead of returning an empty scan context. Previously, direct graph/API callers could pass an invalid skill_path and still receive a successful-looking report with risk_score 0 and SAFE recommendation. That made bad CI or automation input indistinguishable from a genuinely clean scan. Existing empty directories remain valid scan targets and continue to produce an empty scan result. Tests cover the node-level invalid path cases and the graph regression so invalid skill_path no longer returns a clean low-risk report. Validation: - uv run --extra dev pytest - uv run --extra dev pytest -m integration tests/integration/test_graph.py - uv run --extra dev ruff check src/skillspector/nodes/build_context.py src/skillspector/nodes/resolve_input.py tests/nodes/test_build_context.py tests/integration/test_graph.py
Refresh the public SkillSpector tree from the internal OSS release branch release/oss-2026-06-15-2 at 9edade32a5ceacb523b591c70eea5de1aec176ba. The snapshot was generated by scripts/create-oss-release.sh, which removes internal-only files and commits a sanitized orphan-branch tree for public publication. Changes: - Bump the public package version from 2.1.4 to 2.1.5 in pyproject.toml and uv.lock. - Sync the generated OSS Makefile snapshot. Verification: - ./scripts/create-oss-release.sh release/oss-2026-06-15-2 was run; its bare make test-unit step initially could not find pytest on PATH. - PATH="/private/tmp/skillspector-github-release.YVVxNl/SkillSpector/.venv/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/opt/pmk/env/global/bin:/Library/TeX/texbin:/opt/homebrew/bin:/Users/keshavp/.cargo/bin:/Users/keshavp/.codex/tmp/arg0/codex-arg0xPENbg:/Applications/Codex.app/Contents/Resources" make test-unit passed on the generated OSS branch: 601 passed, 11 skipped, 23 deselected.
…keshavp/oss-release-2026-06-15-2 Refresh the public SkillSpector repository from the internal OSS release snapshot release/oss-2026-06-15-2. This publishes the sanitized internal snapshot at 9edade32a5ceacb523b591c70eea5de1aec176ba. The public diff bumps the package version from 2.1.4 to 2.1.5 in pyproject.toml and uv.lock, and syncs the generated OSS Makefile snapshot. Changed files: - Makefile - pyproject.toml - uv.lock Verification: - ./scripts/create-oss-release.sh release/oss-2026-06-15-2 was run. - PATH="$PWD/.venv/bin:$PATH" make test-unit - 601 passed, 11 skipped, 23 deselected
Refresh the public SkillSpector tree from the internal OSS release branch release/oss-2026-06-16 at 94599d2baae5d532d83f630ddeeeead1f33c8cbb. The snapshot was generated by scripts/create-oss-release.sh, which removes internal-only files and commits a single orphan-branch tree for public publication. Changes: - Bump the public package snapshot to 2.2.3 and widen Python metadata/lock coverage to <3.15, including Python 3.14 classifiers and lock entries. - Add native provider-backed LangChain chat model creation, including Anthropic support and shared OpenAI-compatible helpers. - Add live provider test targets and provider endpoint tests while keeping unit/coverage targets scoped away from provider/integration markers. - Update LLM response text handling and provider unit coverage for the new chat model factory path. Verification: - PATH=/tmp/skillspector-oss-release-venv-20260616/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/opt/pmk/env/global/bin:/Library/TeX/texbin:/opt/homebrew/bin:/Users/keshavp/.cargo/bin:/Users/keshavp/.codex/tmp/arg0/codex-arg0xPENbg:/Applications/Codex.app/Contents/Resources ./scripts/create-oss-release.sh release/oss-2026-06-16 (includes make test-unit: 621 passed, 12 skipped, 26 deselected) - git diff --cached --check
…keshavp/oss-release-2026-06-16 Refresh the public SkillSpector tree from the internal OSS release branch release/oss-2026-06-16 at 94599d2baae5d532d83f630ddeeeead1f33c8cbb. This snapshot was generated by scripts/create-oss-release.sh, which removes internal-only files and produces a single orphan-branch tree for public publication. Changes: - Bump public package snapshot to 2.2.3. - Carry Python metadata and uv.lock support for >=3.12,<3.15, including Python 3.14. - Add native provider-backed LangChain chat model creation, including Anthropic support. - Resolve Anthropic API call failures caused by unsupported maximum/minimum parameters in structured-output tool schemas. - Add shared OpenAI-compatible chat model helper. - Add live provider test targets, docs, and provider endpoint tests. - Keep default unit and coverage targets scoped away from provider/integration tests. - Update LLM response text handling and provider unit coverage. Resolves #4, NVIDIA#34, NVIDIA#66, NVIDIA#76. Verification: - scripts/create-oss-release.sh release/oss-2026-06-16 - includes make test-unit: 621 passed, 12 skipped, 26 deselected - git diff --cached --check
smoy
approved these changes
Jun 18, 2026
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.
Purpose
Pull the upstream NVIDIA/SkillSpector changes into ExaForce
main. This is the upstream-sync PR, kept separate from the meta-analyzer runaway fix (e25f243, onrunaway-fix) so the two can be reviewed and merged independently.Contents
All commits currently on
runaway-fixexcepte25f243— i.e. the OSS release-snapshot syncs and related upstream fixes (Docker base/git install, invalid skill-path rejection, Python-version constraints, version bumps, etc.). No SkillSpector behavior change from this branch beyond what upstream shipped.Notes
runaway-fix.🤖 Generated with Claude Code