#179 feat: add stable-only latest package policy#180
Merged
stiwicourage merged 3 commits intoMay 9, 2026
Conversation
Support string-based `Package.Latest` policies with `never`, `stable`, and `always`, while keeping legacy boolean values temporarily compatible. - make `stable` publish `latest` only for stable versions - keep `always` behavior for stable and preview packages - map legacy booleans to `always`/`never` with TODO markers for major-version removal - update schema, tests, examples, and docs to use the new policy model - deprecate boolean `Package.Latest` values in CHANGELOG
Contributor
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Cover the whitespace-only Package.Latest fallback path in GetNovaResolvedProjectPackageSettings and keep the latest-policy tests deduplicated by reusing the shared package test support helper. - add coverage for whitespace-only Package.Latest values - replace the local metadata test builder with shared test support - keep latest-policy focused tests and full repo validation green
…ps1 by replacing the duplicated metadata-list tests with one parameterized test that covers the same always, stable, and legacy-boolean scenarios. That brought the file’s Code Health back to 10.0.
There was a problem hiding this comment.
Gates Passed
6 Quality Gates Passed
See analysis details in CodeScene
Quality Gate Profile: Pay Down Tech Debt
Install CodeScene MCP: safeguard and uplift AI-generated code. Catch issues early with our IDE extension and CLI tool.
There was a problem hiding this comment.
Code Coverage Gates Passed
Overall Coverage: 100.0%
(required = 95%)
New & Changed Code Coverage: 100%
(required = 99%)
Review details by gate
-
Overall Coverage
- Pass/Fail Reason:
The overall coverage gate was checked for all code and meets the goal: 100.0% covered >= threshold = 95% - Action:
You have 281 files with a sum of 2874 covered and 1 uncovered lines of code.
- Pass/Fail Reason:
-
New & Changed Code Coverage
- Pass/Fail Reason:
New or changed code meets coverage goal: 100% covered >= threshold = 99% - Action:
You modified 2 files, and covered 24 added/modified lines of code.
- Pass/Fail Reason:
stiwicourage
deleted the
feature/179-support-stable-only-latest-package-policy
branch
May 12, 2026 05:52
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.
Support string-based
Package.Latestpolicies withnever,stable, andalways, while keeping legacy boolean values temporarily compatible.stablepublishlatestonly for stable versionsalwaysbehavior for stable and preview packagesalways/neverwith TODO markers for major-version removalPackage.Latestvalues in CHANGELOGSummary
Affected area
Review guidance
Validation
% nova publish,
% nova release, % nova update, % nova notification, or % nova init as relevant)
Validation notes:
Primary validation:
run.ps1 executes:
Result:
Targeted regression coverage also added and exercised in:
CodeScene:
Documentation and release follow-up
changed
Maintainability, compatibility, and risk
Risk, rollout, or rollback notes:
Compatibility:
Behavior change:
Migration:
Rollback: