Repository navigation
fix(cli): stop veryfront build printing a bare bullet line - #3617
Conversation
`veryfront build --dry-run` printed a glyph-only " ● " line between the
dry-run notice and "Building...". The CLI logger preset renders every
message as ` <glyph> <message>`, so the `cliLogger.info("")` used as a
section break got the glyph with an empty message instead of emitting a
blank line.
This is the same defect 7b25cb7 (#3556) fixed for `veryfront routes`;
the build path had two more instances of it -- the dry-run notice break
and the verbose config block break. Emit both section breaks directly
with `console.log("")`, matching the routes fix and the "blank line
between logical sections" rule in the CLI output conventions.
Locked with a regression test that renders `displayBuildConfig` through
the real CLI logger preset and asserts no glyph-only line is emitted and
that a blank line precedes "Building...". Verified both cases fail
before the fix with 'emitted a glyph-only line with no content: " ● "'.
|
Warning Review limit reached
Next review available in: 29 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
Comment |
kwakayama
left a comment
There was a problem hiding this comment.
No actionable findings.
Evidence: cli/commands/build/config-display.ts:34,39 emits unprefixed blank separators for both verbose and dry-run blocks. cli/commands/build/config-display.test.ts:139-175 exercises both paths through the CLI logger preset and verifies no glyph-only line is emitted before Building....
Rubric: correctness 40/40, tests 20/20, reliability/security 15/15, maintainability 15/15, scope/docs 10/10.
Review-Gate:
Reviewer: Codex
Reviewed-SHA: 7d47c02
Score: 100/100
Actionable-Findings: 0
Verdict: APPROVE
Symptom
veryfront build --dry-runprints a glyph-only line —●with no text — between the dry-run notice andBuilding....Reproduced against published 0.1.1229 in a sandbox outside the platform checkout (
npm i veryfront@0.1.1229, scaffolded withveryfront init):--verbose --dry-runon 0.1.1229 emits two of them (lines 23 and 25 — one after the config block, one after the dry-run notice).Root cause
The CLI logger preset renders every message as
<glyph> <message>.cli/commands/build/config-display.tsusedcliLogger.info("")as a section break, so the glyph was emitted with an empty message instead of a blank line.This is the same defect commit 7b25cb7 (#3556) fixed for
veryfront routesin this release — the build path had two more instances of it that the earlier fix did not touch.Fix
Emit both section breaks directly with
console.log(""), matching the routes fix and the "blank line between logical sections" rule in the CLI output conventions. No behaviour change beyond the layout.Verification against the published repro
Same sandbox project, same command, run against this branch:
--verbose --dry-rungrep for^ ● $: 2 matches on 0.1.1229, 0 matches on this branch.Dry-run behaviour is unchanged — seeded
dist/keepme.txtsurvives the dry run intact and nothing is written.Test
cli/commands/build/config-display.test.tsgains asection separators under the CLI logger presetblock that rendersdisplayBuildConfigthrough the realclilogger preset and asserts:Building...is blank — so deleting the separator fails here rather than passing silently.Both cases were confirmed to fail before the fix with
AssertionError: emitted a glyph-only line with no content: " ● ".Scope
cli/commands/build/config-display.tsonly. OthercliLogger.info("")callers (pull,lock,analyze-chunks,task,workflow,env-prompt) have the same latent issue but are out of scope for this finding.