Description
SubAgentError in crates/zeph-subagent/src/error.rs is a public pub enum without #[non_exhaustive]. This prevents downstream crates from adding new variants without a breaking change, which conflicts with the workspace-wide non-exhaustive policy applied in PR #4658 (62ccdd4).
Location
crates/zeph-subagent/src/error.rs:18 — pub enum SubAgentError
Expected Behavior
#[non_exhaustive] attribute added to SubAgentError so downstream match arms compile without exhaustive wildcard on every minor release.
Actual Behavior
Missing #[non_exhaustive] — any downstream match on SubAgentError will break when new variants are added.
Environment
Logs / Evidence
grep -n 'pub enum SubAgentError' crates/zeph-subagent/src/error.rs → no #[non_exhaustive] on the preceding line.
Note: WorktreeError has the same gap (tracked in #4703).
Description
SubAgentErrorincrates/zeph-subagent/src/error.rsis a publicpub enumwithout#[non_exhaustive]. This prevents downstream crates from adding new variants without a breaking change, which conflicts with the workspace-wide non-exhaustive policy applied in PR #4658 (62ccdd4).Location
crates/zeph-subagent/src/error.rs:18—pub enum SubAgentErrorExpected Behavior
#[non_exhaustive]attribute added toSubAgentErrorso downstream match arms compile without exhaustive wildcard on every minor release.Actual Behavior
Missing
#[non_exhaustive]— any downstreammatchonSubAgentErrorwill break when new variants are added.Environment
Logs / Evidence
grep -n 'pub enum SubAgentError' crates/zeph-subagent/src/error.rs→ no#[non_exhaustive]on the preceding line.Note:
WorktreeErrorhas the same gap (tracked in #4703).