Skip to content

[Feature]: add --no-health opt-out to aicr recipe list #1311

Description

@njhensley

Prerequisites

  • I searched existing issues

Feature Summary

Add an opt-out flag (--no-health / --skip-health) to aicr recipe list that skips the per-leaf structural-health computation and renders only the #1208 enumeration columns/fields.

Problem / Use Case

As of #1228, aicr recipe list resolves every leaf overlay through pkg/health.Compute on every invocation to populate the STATUS/COVERAGE columns (table) and the health block (json/yaml). The previously-cheap catalog enumeration now always pays the full health-compute cost, with no way to opt out.

This is within ADR-009's sub-minute budget so it's acceptable for v1, but for purely interactive "what overlays exist?" lookups — or scripted/CI callers that only consume name/criteria/is_leaf/source — the health resolution is wasted latency.

Raised as a non-blocking follow-up in PR #1302 review (#1302).

Proposed Solution

Add a boolean flag to the recipe list command:

Wiring is minimal: gate the ComputeHealth call on the flag and pass an empty healthByName map to writeCatalogEntries when skipped. pkg/cli stays logic-free; no pkg/health or facade changes needed.

Success Criteria

Alternatives Considered

  • Always compute (status quo): simplest, but no escape hatch for latency-sensitive callers.
  • Lazy/cached health: more complex; caching across invocations is out of scope for a CLI that re-loads the catalog each run.
  • --columns selector: more general but heavier; a single opt-out flag is the minimal fix for the raised concern.

Component

CLI (aicr)

Metadata

Metadata

Assignees

Labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions