Crate winbrew_models

Crate winbrew_models 

Source
Expand description

Typed model contracts for the Winbrew workspace.

winbrew-models owns the stable Rust data types shared by the parser, storage, engines, UI, and CLI layers. The crate is intentionally split into a small set of domain families so consumers can import the exact concept they need without depending on a broad compatibility surface.

Public namespaces:

  • shared: errors, validation, identifiers, config, hash, deployment, and version
  • package: package identity, queries, dependencies, and package aggregates
  • catalog: typed catalog records and raw upstream catalog payloads
  • command_resolution: command exposure results, confidence, provenance, and fingerprinting
  • install: installer metadata, engine receipts, installed state, and removal planning
  • reporting: diagnostics, health reports, and recovery findings
  • msi_inventory: MSI snapshot records used for repair and inventory persistence

The domains facade remains as the stable grouping layer for downstream callers. Inside this crate, prefer the owning module paths; outside the crate, prefer crate::domains::... when a grouped namespace is clearer than a direct module path.

Modulesยง

catalog
Typed catalog payloads and raw upstream catalog records.
command_resolution
domains
Grouped namespace for the major model families.
install
Installer metadata, engine receipts, installed state, and removal planning.
msi_inventory
MSI inventory snapshot records.
package
Package identity and query models.
reporting
Diagnostics, info, and recovery reports.
shared
Foundational types shared across every model family.