Skip to content

Separate install callability from doctor content maturity #208

Description

@100yenadmin

TL;DR

eva-v0.42.63.2 installs and is callable through CLI, Codex MCP, and an OpenClaw agent, but scripts/update-local-install.sh exits nonzero because it treats every upstream doctor content-maturity failure as an install/runtime failure. On the local canary, source-scoped searches, Voyage 2048, the OpenClaw plugin, Codex MCP, gateway inference, and a real gbrain_query agent call all passed; doctor still failed on never-run dream cycles, stale sync bookkeeping for an import-managed docs source, and non-actionable type proliferation.

The updater should gate on runtime callability and report doctor content readiness separately. It must not run costly or destructive content mutation just to make an install score green.

Reproduction

  1. Install exact tag with Support KB and workspace docs.
  2. Both sources import/embed and source-scoped searches pass.
  3. gbrain doctor --scope=brain --json exits 1 for:
    • cycle_freshness (no full dream cycle)
    • sync_freshness (workspace docs are import-managed)
    • type_proliferation even though gbrain onboard --check --explain --json returns zero recommendations
  4. The updater aborts before its source-aware health report.

Expected

  • Provider probe, CLI availability, DB open, source presence/search, plugin load, and explicit adapter callability remain release gates.
  • Doctor JSON is always recorded.
  • Content, taxonomy, and cycle maturity is reported without making a working install fail.
  • type_proliferation is non-blocking when no built-in successor/remediation exists, restoring the behavior previously shipped for Doctor type_proliferation blocks 100/100 when onboard reports no action #192.
  • Removed upstream freshness subcommands are not invoked as if they still exist.

Acceptance criteria

  • Regression tests cover a doctor exit 1 with successful source searches and plugin inspection.
  • Runtime or search failure still fails health.
  • Type proliferation with no successor is actionable metadata, not a false blocking command.
  • Full GitHub CI is green.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions