Skip to content

fix(insane-review): make dependency onboarding work on externally managed Python #27

Description

@devswha

Problem

python3 pack_and_ask.py --check-env --install does not complete the documented click-only onboarding on a clean Ubuntu 24.04 host.

Observed on 2026-09-01 while running /omg:insane-review:

  1. /usr/bin/python3 had no pip, so both install attempts failed with No module named pip.
  2. After installing python3-pip, the normal install command was rejected by PEP 668 (externally-managed-environment).
  3. The review could proceed only after an out-of-band system operation and python3 -m pip install --user --break-system-packages pyperclip playwright.

Current implementation at plugins/oh-my-gjc/bin/pack_and_ask.py:897-903 calls:

subprocess.run([sys.executable, "-m", "pip", "install", pip])

It does not check the return code, distinguish missing pip from PEP 668, or provide a reusable isolated environment. The following environment report therefore still says deps=missing after --install, while the command contract says GJC should finish blocked onboarding steps for the user.

Expected behavior

  • --check-env --install checks every installer return code and never reports an attempted installation as successful.
  • On PEP 668 systems, use a durable per-user venv (preferred) or another explicitly justified isolated mechanism; do not silently modify system Python.
  • If python3-venv/pip itself is unavailable, emit a machine-readable status that lets the command ask once and install the OS prerequisite through the selected package-manager path.
  • A later --ensure-env automatically reuses the environment without asking again.
  • Add an Ubuntu 24.04 regression fixture covering missing pip and externally managed Python.

Evidence

The browser/model path itself succeeded after dependencies were installed: 5.6 Sol · 최대 was verified and a 419-line response was harvested. This issue is limited to environment onboarding, not review correctness.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions