Drop miette from the mirror error types
The MietteLayer rendered these into a single extra["diagnostic"] string
that duplicated sentry-tracing native capture and got scrubbed wholesale
by Sentry @password:filter. Native related-error surfacing is tracked
separately.
Assisted-by: Claude Opus 4.8 via Claude Code
diff --git a/quire-server/src/bin/quire/main.rs b/quire-server/src/bin/quire/main.rs
index 79fe6f7..572a54b 100644
--- a/quire-server/src/bin/quire/main.rs
+++ b/quire-server/src/bin/quire/main.rs
@@ -114,8 +114,7 @@ async fn main() -> Result<()> {
let miette_layer = MietteLayer::new()
.with_type::<quire::Error>()
.with_type::<quire::ci::Error>()
- .with_type::<quire_core::fennel::FennelError>()
- .with_type::<quire::mirror::MirrorError>();
+ .with_type::<quire_core::fennel::FennelError>();
let _guard = telemetry::init_telemetry(
miette_layer,
FmtMode::AutoJson,
diff --git a/quire-server/src/mirror.rs b/quire-server/src/mirror.rs
index 8282d61..b3e9fb1 100644
--- a/quire-server/src/mirror.rs
+++ b/quire-server/src/mirror.rs
@@ -4,7 +4,6 @@
use std::collections::HashMap;
-use miette::Diagnostic;
use quire_core::event::PushEvent;
use quire_core::secret::SecretString;
use thiserror::Error;
@@ -13,7 +12,7 @@ use crate::quire::{Quire, Repo};
/// A mirror failure: either we couldn't get started, or one or more targets
/// failed after we did.
-#[derive(Debug, Error, Diagnostic)]
+#[derive(Debug, Error)]
pub enum MirrorError {
/// Couldn't resolve the repo from the push event — nothing was attempted.
#[error(transparent)]
@@ -21,14 +20,11 @@ pub enum MirrorError {
/// One or more mirror targets failed; the rest may have succeeded.
#[error("mirror: {} target(s) failed", errors.len())]
- Targets {
- #[related]
- errors: Vec<TargetError>,
- },
+ Targets { errors: Vec<TargetError> },
}
/// A failure mirroring one ref, carrying where it happened.
-#[derive(Debug, Error, Diagnostic)]
+#[derive(Debug, Error)]
pub enum TargetError {
/// Couldn't read `.quire/config.fnl` at the pushed ref.
#[error("reading .quire/config.fnl at {ref_name}: {source}")]
@@ -48,7 +44,7 @@ pub enum TargetError {
}
/// Why a single mirror push failed, before ref/url context is attached.
-#[derive(Debug, Error, Diagnostic)]
+#[derive(Debug, Error)]
pub enum PushError {
#[error("git rejected the push: {0}")]
Rejected(String),