Skip to content

test: cover dynamic validation mutation survivors#80

Merged
qartik merged 3 commits into
mainfrom
codex-kill-dynamic-validation-mutants
May 4, 2026
Merged

test: cover dynamic validation mutation survivors#80
qartik merged 3 commits into
mainfrom
codex-kill-dynamic-validation-mutants

Conversation

@qartik
Copy link
Copy Markdown
Member

@qartik qartik commented May 4, 2026

Summary

  • Add malformed dynamic runtime signature regression tests for allocate, release, array allocate, array release, and result array output declarations.
  • Add the accepted i32::MAX boundary case for result array output validation.
  • Update AGENTS.md guidance so future validation-signature work uses table-driven negative tests, accepted/rejected numeric boundaries, and scoped mutation checks.
  • Deduplicate the new declaration-validation tests with a shared minimal QIR fixture helper.

Validation

  • cargo test --lib malformed_dynamic
  • cargo test --lib test_validate_dynamic_result_array_record_output_i32_max_length_succeeds
  • cargo mutants --package qir-qis --all-features --test-tool cargo --file src/lib.rs --re 'src/lib\\.rs:.*(aux::is_i64_type|aux::is_ptr_return|aux::validate_dynamic_rt_signature|aux::validate_dynamic_array_allocation_backing)'
  • make lint
  • make test

@qartik qartik marked this pull request as ready for review May 4, 2026 13:10
Copilot AI review requested due to automatic review settings May 4, 2026 13:10
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds regression coverage for malformed dynamic runtime function declarations and tightens boundary testing around dynamic result-array output validation, with accompanying contributor guidance for future validation-signature work.

Changes:

  • Added table-driven negative tests covering malformed dynamic RT signatures (allocate/release, array allocate/release, result-array record output).
  • Added a positive boundary test asserting i32::MAX length is accepted for __quantum__rt__result_array_record_output.
  • Updated AGENTS.md to document expectations for negative signature tests, numeric boundary coverage, and scoped mutation runs.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
src/lib.rs Adds new validation regression tests for malformed dynamic RT declarations and the i32::MAX result-array output boundary.
AGENTS.md Updates contributor guidance to ensure future signature-validation changes include robust negative/boundary/mutation coverage.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@qartik qartik merged commit 2d15cbb into main May 4, 2026
23 checks passed
@qartik qartik deleted the codex-kill-dynamic-validation-mutants branch May 4, 2026 14:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants