Repository navigation
ci: remove the NFV PR reviewer - #1315
Merged
Merged
Conversation
Remove the NFV PR reviewer, the gh-aw workflow from the microsoft/neuro-formal-verification package that analyzed Dafny models of the source files that a ready pull request changed and posted its findings as an advisory comment on the pull request. Required status check never depended on it, so no merge requirement changes. gh-aw compiled the reviewer's comment and its failure reports into safe_outputs and conclusion jobs that could write issues, so WorkflowTests.test_only_the_report_job_writes_and_only_issues expected them, and doc/ci.md named them, beside the nightly CI report's job. Both again allow that job alone, as they did before the reviewer was installed. doc/ci.md also drops its Advisory NFV review section, whose guidance on keeping the reviewer advisory and on the token that published its comments no longer applies to any workflow. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The NFV PR reviewer called nfv-source-context through workflow_call as its repository_context job: a read-only repository context session that picked up to 16 source files and their relevant symbols as lookup hints for the reviewer's analysis, and handed them over as the nfv-source-context artifact. No other workflow calls it, so with the reviewer gone, remove its workflow source and compiled lock file. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
gh-aw recorded its installation of both NFV workflows from the microsoft/neuro-formal-verification/workflow package, with their source revision and digests, in .github/aw/packages, and pinned the github/gh-aw-actions/setup action that their lock files ran in .github/aw/actions-lock.json. Neither workflow remains, and no other workflow is compiled with gh-aw, so remove both records, and with them .github/aw. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
This pull request changes existing testsIt modifies or removes 1 existing test asset(s), listed below. Review each with care: a change to a test can hide a regression that the test caught. See doc/contribute.md#changes-to-existing-tests. Test code
Relocated unchanged: 0; added: 0. Compared the merge base |
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues were identified for the removal of the advisory NFV integration.
No open issues 🎉
What changed in this PR
Removes NVX’s advisory NFV PR-review integration and its gh-aw installation records, leaving required CI checks and merge requirements unchanged.
Changes:
- Deletes the NFV reviewer and reusable source-context workflows.
- Removes gh-aw package metadata and action pins used by NFV.
- Updates CI documentation and the permissions test so only the nightly report job is allowed to write issues.
| File | Description |
|---|---|
scripts/test_nightly_ci.py |
Removes NFV jobs from the issue-write allowlist. |
doc/ci.md |
Removes NFV guidance and updates documented issue-write permissions. |
.github/workflows/nfv-source-context.md |
Deletes the source-context workflow definition. |
.github/workflows/nfv-source-context.lock.yml |
Deletes the compiled source-context workflow. |
.github/workflows/nfv-pr-review.md |
Deletes the NFV reviewer definition. |
.github/aw/packages/microsoft-neuro-formal-verification-workflow-f129a0ff0f1c.json |
Deletes the NFV package installation record. |
.github/aw/actions-lock.json |
Deletes the gh-aw setup action pin. |
Review effort: Balanced
Pedro Henrique Penna (ppenna)
marked this pull request as ready for review
November 6, 2026 19:53
This was referenced Nov 7, 2026
Closed
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.
Removes NFV (neuro-formal verification) support: the NFV PR reviewer that
#1249 installed and #1266 and #1287 maintained, the source-context workflow
that it called, and gh-aw's records of both.
Required status checkneverdepended on the reviewer, so no merge requirement changes.
Changes
ci: remove the NFV PR reviewerdeletes.github/workflows/nfv-pr-review.mdand its compiled
nfv-pr-review.lock.yml. gh-aw compiled the reviewer'scomment and failure reports into
safe_outputsandconclusionjobs thatcould write issues, so
doc/ci.mdand a test named them beside the nightlyCI report's job; both again allow that job alone.
doc/ci.mdalso drops itsAdvisory NFV review section.
ci: remove the NFV source-context workflowdeletesnfv-source-context.mdand
nfv-source-context.lock.yml, a reusable workflow that only thereviewer called, as its
repository_contextjob.ci: drop gh-aw's records of the NFV workflowsdeletes.github/aw/packages/microsoft-neuro-formal-verification-workflow-f129a0ff0f1c.json,gh-aw's record of the package installation, and
.github/aw/actions-lock.json, which pinned thegithub/gh-aw-actions/setupaction that both lock files ran. No other workflow is compiled with gh-aw, so
.github/awgoes too.Before the rebase onto
dev, the branch's tree was byte-identical togit revertof the five commits that brought NFV in and maintained it:9b8c619, be760f5, 15c74e6, 9db0e43, and a9ce4f1.
git range-diffshows that the rebase changed no patch.
Two things stay on purpose:
.gitattributesstill marks.github/workflows/*.lock.ymlas generated. Therule predates NFV (f85e984), and any change to
.gitattributesselects themicroVM tests and the benchmarks.
nvx-rsfix that an NFV report suggested, is an ordinary codechange.
Test changes
python scripts/check_test_changes.py --base origin/devreports 1 change to anexisting test, hence
tests-modified:WorkflowTests.test_only_the_report_job_writes_and_only_issuesinscripts/test_nightly_ci.pyagain expectsnightly-ci-report.yml:reporttobe the only job that can write issues, without
nfv-pr-review.lock.yml:conclusionandnfv-pr-review.lock.yml:safe_outputs,which this pull request deletes. The file is back to its version from before
be760f5, byte for byte.
After merging
No remaining workflow reads these repository settings, which a maintainer can
delete once this lands: the Actions variables
NFV_MODELandNFV_RELEASE_SHA, and the Actions secretsNFV_RELEASE_TOKEN,COPILOT_GITHUB_TOKEN, andGH_AW_GITHUB_TOKEN.Validation
0ccedd7:
ruff checkandruff format --checkofscriptsand.github/specula;pyright --pythonplatform Linuxand--pythonplatform Windows, with 0errors;
check_markdown_links.py;check_test_layout.py;nvx.py check-kernel-config; and the PowerShell syntax check.usr\binonPATH:compileall,test_adversarial.py,test_hosts.py, and everynvx.py --helppass. The unittest list ran 1814 tests, with 73 skipped,3 of them because this checkout has no OpenVMM submodule, and 7 errors:
subtests of
test_host_loopback_allow_script_checks_publication_and_trafficand
test_private_network_ingress_script_checks_policy_and_trafficwhosestubbed scripts exceed their 10-second timeout under Git's MSYS
shonthis host. Unchanged
devat ab97477 fails the same 7 subtests the sameway, and which of them time out varies from run to run.
nvx.py classify-ci-changes --event-name pull_requestover this diffselects no guest artifacts, OpenVMM binaries, OpenVMM CI check, microVM
tests, or benchmarks.
test_nightly_ci.py,test_markdown_links.py, thetwo
test_nvx_tools.pytests that scan every workflow, andcheck_markdown_links.pypass at the first and second commits.Linux NVX CLI job, the tests that need the OpenVMM submodule, and
Lint, typing, and formattingon Ubuntu, whose ShellCheck, shfmt, andSpecula steps did not run here.