Skip to content

fix(installer): declare onetime for npx wizard#790

Open
rafaelscosta wants to merge 9 commits into
mainfrom
automation/issues-773
Open

fix(installer): declare onetime for npx wizard#790
rafaelscosta wants to merge 9 commits into
mainfrom
automation/issues-773

Conversation

@rafaelscosta

Copy link
Copy Markdown
Collaborator

Summary

  • declare onetime as a direct runtime dependency for shipped manifests that load inquirer
  • update the generated install manifest and root lockfile
  • add a Jest manifest guard for the npx installer dependency path

Issue coverage

Validation

  • npm test -- --runTestsByPath tests/installer/runtime-dependencies.test.js --runInBand
  • npm run lint
  • npm run typecheck
  • npm test -- --runInBand --forceExit
  • npm run generate:manifest
  • npm run validate:manifest
  • node bin/aiox.js doctor (passes with 13 PASS / 2 WARN after temporary .aiox-core dependency install; temp deps removed before publish validation)
  • npm run validate:publish
  • npm -C pro run validate:publish-surface

Notes

  • package.json has no build script, so no build command was applicable.
  • pro has no lint/typecheck/test/build scripts in its package manifest; validate:publish-surface is the available check.

rafaelscosta and others added 9 commits May 20, 2026 14:25
…y PRO-UX.1]

5 top-5 codes mapped to EXISTING ErrorCategory (PERMISSION/NETWORK/
EXTERNAL_EXECUTOR — no invented categories). Warm G3 PT-BR userMessage +
recovery arrays. Codes mirror license-server (no AIOX_ prefix). No collision
with core registry. 7 tests.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ry PRO-UX.1][Story PRO-UX.2]

- error-bridge: parseEnvelopeToAIOXError, 3-tier fallback (message_pt >
  registry.userMessage > server message), graceful on legacy/malformed
- render-error: warm output + numbered steps + support_code + conditional
  support link + technical footer
- recovery-actions: planRecoveryAction + OS-aware cache cleanup (PowerShell
  vs bash — fixes the bug that made Robert run bash in PowerShell)
- 15 tests (bridge fallback, render anchor case, cross-platform)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ory PRO-UX.1]

ROOT CAUSE of the anchor incident (Robert's opaque "HTTP 403"): _request read
parsed.message / parsed.code at the ROOT, but the structured envelope nests
them under `error`. So err.code was always undefined → the typed error
branches (NOT_A_BUYER, SEAT_LIMIT_EXCEEDED, ...) in runProWizard were NEVER
reached → fell through to the generic "HTTP <status>" message.

Fix: read errorBody from parsed.error (nested) first, attach err.httpStatus +
err.envelope for downstream renderError. Restores the existing i18n error
branches. Preserves legacy root-shape compat.

pro-setup suite 39/39 green (no regression).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…-UX.1]

IDS hook auto-registration for .aiox-core/core/errors/pro-error-registry.js.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The IDS hook's incremental update diverged from clean regen output (structural
delta). Regenerated via populate-entity-registry.js. validate:registry-determinism
now PASSES (821 entities).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ack [Story PRO-UX.2]

Addresses 2 CodeRabbit Major findings on PR #775:
- renderError: guard against null/non-object err (prints generic message)
- pro-setup _request: guard parsed.message/parsed.code against parsed === null

The 5 "absolute import" suggestions are NOT applied: CLI runtime modules
(error-bridge, pro-error-registry) require relative paths — there is no runtime
module alias for `aiox-core/*` outside Jest's moduleNameMapper. Same-dir `./`
imports do not violate the no-`../../../` rule.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 13, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
aiox-core Ready Ready Preview, Comment Jun 13, 2026 9:12am

Request Review

@coderabbitai

coderabbitai Bot commented Jun 13, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review (1)
  • main

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 15da3763-9e95-4823-93d6-be18e5ef1b6b

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch automation/issues-773

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added type: test Test coverage and quality area: installer Installer and setup (packages/installer/) area: docs Documentation (docs/) labels Jun 13, 2026
@rafaelscosta
rafaelscosta force-pushed the feature/pro-ux-error-bridge branch from d20dcb0 to 299d730 Compare July 13, 2026 19:57
Base automatically changed from feature/pro-ux-error-bridge to main July 13, 2026 22:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: docs Documentation (docs/) area: installer Installer and setup (packages/installer/) type: test Test coverage and quality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant