Skip to content

[P0] Surface skipped models and parser failures as structured diagnostics #5

Description

@jackyclever

CLI scope

Expose extraction coverage and failures as machine-readable diagnostics so consumers can distinguish not found from not indexed.

Split from Aether #4. Aether remains responsible for fail-closed interpretation of these diagnostics.

Current problem

The extraction layer is best-effort in several paths: model/object parse failures, malformed descriptors/XML, unreadable directories, and intentional exclusions can result in omitted objects without a complete structured reconciliation.

Acceptance criteria

  • Every discovered model has a terminal state: processed, intentionally excluded, failed, or unreadable.
  • Every discovered supported object has a terminal parse state.
  • JSON output includes stable diagnostic codes, object/path identity, and sanitized messages.
  • Intentional exclusions are counted separately from failures.
  • Extraction summary reconciles discovered = processed + intentionally excluded + failed/unreadable.
  • Regression tests cover malformed XML, parser failure, access failure, and model-level failure.
  • The same diagnostics are available to both CLI and MCP consumers without scraping console logs.

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