monochange_core
monochange_core is the shared vocabulary for the monochange workspace.
Reach for this crate when you are building ecosystem adapters, release planners, or custom automation and need one set of types for packages, dependency edges, version groups, change signals, and release plans.
Why use it?
- avoid redefining package and release domain models in each crate
- share one error and result surface across discovery, planning, and command layers
- pass normalized workspace data between adapters and planners without extra translation
Best for
- implementing new ecosystem adapters against the shared
EcosystemAdaptercontract - moving normalized package or release data between crates without custom conversion code
- depending on the workspace domain model without pulling in discovery or planning behavior
What it provides
- normalized package and dependency records
- version-group definitions and planned group outcomes
- change signals and compatibility assessments
- changelog formats, changelog targets, structured release-note types, release-manifest types, source-automation config types, and changeset-policy evaluation types
- shared error and result types
Example
use render_release_notes;
use ChangelogFormat;
use ReleaseNotesDocument;
use ReleaseNotesSection;
let notes = ReleaseNotesDocument ;
let rendered = render_release_notes;
assert!;
assert!;
assert!;