Skip to content

Model extension install can finish without runtime registration #232

Description

@DrHepa

Describe the bug

A model extension can be shown as installed while its IDs are absent from the Python registry. Workflows then return Unknown model ID, and /extensions/errors remains empty.

When an extension with setup.py has no usable venv, the registry falls back to direct loading, does not add the extension root to sys.path, and drops discovery exceptions. Installer completion also does not validate the expected IDs.

Steps to reproduce

  1. Install a model extension whose root generator imports a sibling package.
  2. Interrupt setup or remove its platform venv executable.
  3. Start or reload Modly and request its node.

Expected behavior

The extension requires Repair, discovery errors are exposed, and installation only completes after all expected IDs are registered.

Actual behavior

Direct discovery fails with No module named 'pixal3d_extension'; load_errors() is empty; generation returns Unknown model ID: pixal3d/generate; a stale .modly-incomplete folder can appear as a blank duplicate card.

Modly version

v0.4.1 and dev 088b25b.

Operating system

Reported on Windows 11; reproduced in an isolated Linux registry harness.

Screenshots & logs

[Registry] ERROR loading extension 'pixal3d': No module named 'pixal3d_extension'
{"detail":"Unknown model ID: pixal3d/generate"}

Confirmation

  • I searched existing issues.
  • I reproduced this on the latest dev branch.

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