fix(#148): improve interactive validation for nova init prompts#164
Merged
stiwicourage merged 2 commits intoMay 5, 2026
Merged
Conversation
- Implement immediate inline validation for invalid module names during interactive flow. - Update prompt behavior to retry on validation failure before proceeding. - Enhance documentation to reflect new validation behavior.
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! |
- Introduce a test case for validation without a validator - Ensure expected validation message is null
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 = 100%)
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 278 files with a sum of 2772 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 = 100% - Action:
You modified 11 files, and covered 71 added/modified lines of code.
- Pass/Fail Reason:
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.
Summary
nova init/nova init -escaffold flow so invalid answers are rejected at the prompt where they are entered instead of after the full questionnaire.Affected area
novaCLI or command routingproject.jsonhandlingREADME.md,CONTRIBUTING.md, repository workflow docs)docs/*.html)docs/NovaModuleTools/en-US/*.md)src/resources/example/project.json, workflow dependencies, release tooling)Review guidance
src/private/cli/ReadAwesomeStandardPrompt.ps1andsrc/private/cli/TestAwesomePromptRequiresRetry.ps1, because that is where mandatory retries and validation retries now converge.src/private/scaffold/GetNovaModuleQuestions.ps1andsrc/private/scaffold/ReadNovaModuleAnswers.ps1to see howProjectNamevalidation moved from a late hard-coded check into per-question metadata plus a defensive fallback.src/private/cli/,src/private/scaffold/,tests/CoverageCompletion.Tests.ps1,tests/CoverageGaps.Tests.ps1,src/resources/cli/help/init.psd1, anddocs/NovaModuleTools/en-US/Initialize-NovaModule.md.ProjectName, so the new inline retry behavior stays shared and incremental.Validation
Invoke-NovaBuildTest-NovaBuild./scripts/build/Invoke-ScriptAnalyzerCI.ps1./scripts/build/ci/Invoke-NovaModuleToolsCI.ps1% nova build,% nova test,% nova merge,% nova deploy,% nova publish,% nova release,% nova update,% nova notification, or% nova initas relevant)Validation notes:
Documentation and release follow-up
README.mdreviewed and updated if contributor workflow, architecture, CI, release, or automation changedCONTRIBUTING.mdreviewed and updated if contribution expectations or review guidance changedCHANGELOG.mdreviewed and updated if the change matters to users, maintainers, or contributorsdocs/NovaModuleTools/en-US/help updated if a public command or CLI behavior changeddocs/*.htmlupdated if end-user workflows or examples changedsrc/resources/example/reviewed and updated if the real-world project layout, package model, or upload workflowchanged
Maintainability, compatibility, and risk
Risk, rollout, or rollback notes:
Important
Do not use a public pull request to disclose a vulnerability before coordinated handling.
Use the private reporting path in
SECURITY.mdfor new security issues.