fix(hermes): guard ui-tui and web npm ci steps for older Hermes versions#4476
fix(hermes): guard ui-tui and web npm ci steps for older Hermes versions#4476hunglp6d wants to merge 1 commit into
Conversation
The rebuild-hermes E2E tests build agents/hermes/Dockerfile.base with HERMES_VERSION=v2026.4.13, which predates the ui-tui/ and web/ subdirectories added in v2026.5.16. The unconditional `npm ci --prefix ui-tui` fails with EUSAGE because the old tarball has no ui-tui/package-lock.json. Wrap the ui-tui and web npm-ci + build steps in `[ -f <dir>/package-lock.json ]` guards so the Dockerfile stays compatible with older Hermes releases used by the stale-base rebuild test matrix. Fixes rebuild-hermes-e2e and rebuild-hermes-stale-base-e2e nightly failures on run 26610274905. Signed-off-by: Hung Le <hple@nvidia.com>
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
PR Review AdvisorFindings: 0 needs attention, 2 worth checking, 0 nice ideas Review findings🛠️ Needs attention
🔎 Worth checking
🌱 Nice ideas
This is an automated advisory review. A human maintainer must make the final merge decision. |
E2E Advisor RecommendationRequired E2E: Dispatch hint: Full advisor summaryE2E Recommendation AdvisorBase: Required E2E
Optional E2E
New E2E recommendations
Dispatch hint
|
E2E Scenario Advisor RecommendationRequired scenario E2E: None Full scenario advisor summaryE2E Scenario AdvisorBase: Required scenario E2E
Optional scenario E2E
Relevant changed files
|
|
✨ |
|
Closing as superseded — an equivalent fix for the same root cause landed on
Same approach (guard the Thanks @hunglp6d for the quick, correct diagnosis on issue #4477 — the analysis here directly matched the merged fix. Closing this PR; #4477 will be verified by dispatching |
|
Superseded by ce6099b on main. See prior comment. |
Summary
Guard the
ui-tuiandwebnpm ci/ build steps inagents/hermes/Dockerfile.basewith[ -f <dir>/package-lock.json ]existence checks so the Dockerfile stays compatible with older Hermes releases (v2026.4.13) that lack these subdirectories.Commit 40ea247 (#4442 "feat(hermes): expose optional web dashboard") added unconditional
npm ci --prefix ui-tuiandnpm ci --prefix websteps. The rebuild-hermes E2E tests build Dockerfile.base withHERMES_VERSION=v2026.4.13, which predates theui-tui/andweb/directories — causingnpm cito fail withEUSAGE("no existing package-lock.json").Related Issue
Linked after issue creation below.
Changes
npm ci --prefix ui-tui+npm run build --prefix ui-tuiinif [ -f ui-tui/package-lock.json ]npm ci --prefix web+npm run build --prefix webinif [ -f web/package-lock.json ]Validation
d3e0f3ba27969847591c00af08a6c79681ba24e8rebuild-hermes-e2e / run (#78414410806),rebuild-hermes-stale-base-e2e / run (#78414410803)Type of Change
Verification
npx prek run --all-filespassesnpm testpassesAI Disclosure
Signed-off-by: Hung Le hple@nvidia.com