test: validar localmente y separar smoke real - #132
Conversation
PR Review — Loreframe StudioRisk: low Automated review from Findings
Changed files
CONTRIBUTING checklist
Posted by the repo PR review workflow. Re-runs on each push to the PR. |
Code healthQuality score: 49.0/100Higher is better. The score is a trend dashboard; the independent ratchet below remains the CI gate.
Change vs PR base: +0.0 points.
Markdown, JSON catalogs and tests are out of this table. Only Most complex functions
Trend vs baseline
Ratchet passed. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 2 potential issues.
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Baseline scan uses system Python
- The baseline worktree scan now invokes $PYTHON like the rest of validate_local.sh, so a missing or Python 2 system python no longer aborts a working venv.
Or push these changes by commenting:
@cursor push 1fec4af6dd
Preview (1fec4af6dd)
diff --git a/scripts/validate_local.sh b/scripts/validate_local.sh
--- a/scripts/validate_local.sh
+++ b/scripts/validate_local.sh
@@ -19,7 +19,7 @@
trap 'git -C "$ROOT" worktree remove --force "$BASE_DIR" >/dev/null 2>&1 || true' EXIT
git -C "$ROOT" worktree add --detach "$BASE_DIR" "$BASE_SHA" >/dev/null
ln -s "$UI/node_modules" "$BASE_DIR/ui/node_modules" 2>/dev/null || true
- (cd "$BASE_DIR" && python scripts/code_health.py --json) > "$BASE_DIR/code-health-base.json"
+ (cd "$BASE_DIR" && "$PYTHON" scripts/code_health.py --json) > "$BASE_DIR/code-health-base.json"
"$PYTHON" "$ROOT/scripts/code_health.py" --check --baseline "$BASE_DIR/code-health-base.json" >/dev/null
trap - EXIT
git -C "$ROOT" worktree remove --force "$BASE_DIR" >/dev/null 2>&1 || trueYou can send follow-ups to the cloud agent here.
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit 17d1300. Configure here.
| trap 'git -C "$ROOT" worktree remove --force "$BASE_DIR" >/dev/null 2>&1 || true' EXIT | ||
| git -C "$ROOT" worktree add --detach "$BASE_DIR" "$BASE_SHA" >/dev/null | ||
| ln -s "$UI/node_modules" "$BASE_DIR/ui/node_modules" 2>/dev/null || true | ||
| (cd "$BASE_DIR" && python scripts/code_health.py --json) > "$BASE_DIR/code-health-base.json" |
There was a problem hiding this comment.
Baseline scan uses system Python
Medium Severity
Baseline generation calls python from PATH while the rest of the script uses $PYTHON (app/env/bin/python). If python is missing or is Python 2, the new ratchet aborts even when the project interpreter works.
Reviewed by Cursor Bugbot for commit 17d1300. Configure here.
| git -C "$ROOT" worktree add --detach "$BASE_DIR" "$BASE_SHA" >/dev/null | ||
| ln -s "$UI/node_modules" "$BASE_DIR/ui/node_modules" 2>/dev/null || true | ||
| (cd "$BASE_DIR" && python scripts/code_health.py --json) > "$BASE_DIR/code-health-base.json" | ||
| "$PYTHON" "$ROOT/scripts/code_health.py" --check --baseline "$BASE_DIR/code-health-base.json" >/dev/null |
There was a problem hiding this comment.
Ratchet failures hide diagnostics
Low Severity
--check stdout is discarded, so a failed ratchet is only a silent non-zero exit after the step banner. The budget that was exceeded is not shown, and the baseline file is removed with the worktree.
Reviewed by Cursor Bugbot for commit 17d1300. Configure here.



Completa los bloques 2, 3 y 4 tras mergear Tools: replica code-health contra origin/main en validación local, añade scopes song/all para smoke real ACE/H3 y documenta que las generaciones reales son manuales. Validado localmente: 10 Python, 605 UI, build/lint y 7 E2E simulados.
Note
Low Risk
Changes are limited to local validation scripts and developer docs; no runtime API or auth paths are modified.
Overview
Extends local pre-push validation with a code-health ratchet against
origin/main:validate_local.shchecks out the merge-base in a temporary worktree, records baseline metrics viacode_health.py, and fails if the current branch regresses versus that baseline.For manual real-media smoke, adds
NIGHTLY_MEDIA_SCOPE(alldefault,songfor ACE-Step only).runMediaSmokereturns after song generation and library update when scope issong, skipping audio analysis, structure planning, and the director videoclip pipeline; the shell wrapper forwards the env var and LOCAL_VALIDATION.md documents the song-only flow.Reviewed by Cursor Bugbot for commit 17d1300. Configure here.