fix: harden Slurm release artifacts - #916
Conversation
|
413b708 to
e8a4c3c
Compare
ee11baa to
1e0b50c
Compare
andreatnvidia
left a comment
There was a problem hiding this comment.
Requesting changes for the blocking findings above.
|
Addressed the remaining whitespace-class control finding from the Greptile summary in 11fb62e. Verified on the prior head that |
11fb62e to
36abe64
Compare
|
Restacked the exact nine PR-owned commits from old base |
36abe64 to
49b7344
Compare
| allowed_sentinels: Iterable[str] = (), | ||
| ) -> list[AuditFinding]: | ||
| text = content.decode("utf-8", errors="replace") | ||
| for sentinel in sorted(allowed_sentinels, key=len, reverse=True): |
There was a problem hiding this comment.
Could we make this masking boundary-aware? str.replace also removes a sentinel when it is only a prefix of a longer value, so super-secret-token-production-value passes in an allowlisted source. Matching complete sentinel values and adding that extended-value case would keep the exception as narrow as the docstring says.
There was a problem hiding this comment.
Fixed in a123868. Allowlist masking now uses complete-value boundaries instead of substring replacement, so an approved sentinel used only as a prefix remains visible to the scanner. Added an isolated CLI regression against the real allowlisted path shape. Validation: 133 focused tests and 1,440 full Slurm tests passed; make check-slurm, the 9-target artifact audit, and diff checks passed.
andreatnvidia
left a comment
There was a problem hiding this comment.
A few redaction and audit boundary cases are still open. I left the details inline.
Add sanitized credential and infrastructure scans for source, fixtures, runtime archives, logs, and wheels. Include Apache license text in the Slurm wheel and redact sensitive scheduler diagnostics. Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Detect explicitly supplied ZIP and tar inputs from their content when filenames use opaque suffixes. Reject unsupported tar special members while continuing to allow ordinary directories. Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Handle serialized authorization headers and Unicode whitespace without exposing credential suffixes. Keep public-artifact scanning fail-closed for non-regular files and unreadable ZIP members, and narrow test sentinels to complete values. Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
Treat an Authorization field as credential-bearing through its line boundary even when its value is quoted. This keeps control-obscured suffixes from surviving the protected redaction pass. Signed-off-by: Nabin Mulepati <nmulepati@nvidia.com>
496bd22 to
91d156a
Compare
📋 Summary
Adds the dependency-ready security and provenance hardening slice for the optional Slurm package. This establishes reusable, sanitized scans and closes concrete diagnostic/license gaps without claiming the sealed-artifact release acceptance that remains blocked on the rest of the Slurm delivery.
🔗 Related Issue
Part of #870
🔄 Changes
.dist-inforoot containing one byte-exact canonical license plus one Apache-2.0 metadata record.@, and non-overlapping assignment/option scanning across hyphen, underscore, dot, and mixed option names.plans/870/.🔍 Attention Areas
⛓️ Dependencies and remaining blockers
feat/slurm-executionthrough merged PR feat: reconcile persisted Slurm state #913 (26aea789), which includes the merged feat: add Slurm retry and deterministic collection #915 retry/collection slice and the fix(slurm): close one-node M2 integration #929 launcher foundation. The twelve PR-owned commits are based directly on this synchronized base.🧪 Testing
1,531 passed152 passedmake check-slurm: 196 files formatted and lintedgit diff --check✅ Checklist
Description updated with AI