chore(stack): reconcile config hardening into runtime-contract branch - #1001
Merged
seonghobae merged 13 commits intoAug 19, 2026
Conversation
Strix VULN-0001 failed the current head because MLS2PLMConfig and FitConfig could be constructed with values that bypass memory-safety bounds until a later explicit validate() call. Run the existing validators from __post_init__ so invalid objects cannot exist, and keep validate() public and idempotent. Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
Write admitted NumPy integers back as built-in ints so n_items and seed + restart cannot wrap, and reject untrusted seed/verbose values before construction returns. Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
Preserve current simulation resource caps while replaying the hostile integer-control boundary and focused evidence from #939 onto the protected-main tree.
dimensionality_diagnostics still multiplied untrusted NumPy k_folds and added untrusted seed offsets, so uint8(32)*32 wrapped past the fit-budget cap and uint8(250)+6 wrapped to 0. Store built-in ints the same way seed/verbose already do. Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
fit_diagnostics still coerced parameter_count with int() and left m2_q_* untrusted, so a hostile __index__ object could execute during AIC/BIC arithmetic. Marshal those controls through _trusted_integer the same way seed/verbose already do. Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
Contributor
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
seonghobae
merged commit Aug 19, 2026
1f9055b
into
cursor/bc-9ea40d9c-829d-4fd3-8383-f346575fc77f-51c7
47 checks passed
This was referenced Aug 19, 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.
Temporary branch-reconciliation PR. Merge #939's exact head
d82c239cfaab7e2402c24d83e8230de692031804into #951's exact branch head4646d1a20f450cb5bfb776aebd7c9d4790035a3d.The only overlapping production/test paths are
python/fast_mlsirm/config.pyandtests/test_config.py; their deltas are semantically independent: #939 owns callback-free integer admission/normalization and construction-time validation, while #951 only corrects thebackend="auto"Rust-required comments/tests. Preserve both. No formula or estimator change.This PR exists only to create a normal non-force merge commit on #951's source branch. After successful reconciliation, #951 becomes the sole landing unit and #939 is closed as superseded. Do not merge this PR to
main.