Skip to content

add core.anchor.* named tracing spans for vault-anchor put/get/delete/sweep #6464

Description

@bug-ops

Description

PR #6461 (closing #6449) added vault-anchor put/get/delete operations and
a reconcile-and-cap sweep in crates/zeph-core/src/anchor_store.rs. These
paths are functionally observable today (covered by
TaskSupervisor::spawn_blocking's generic supervised_blocking_task
span with a task.name field, plus AgeVaultProvider::save()'s own
vault.age.save span), but do not have dedicated spans under the
project's <crate_short>.<subsystem>.<operation> naming convention
(CLAUDE.md tracing instrumentation requirement), e.g.
core.anchor.put/core.anchor.get/core.anchor.delete/core.anchor.sweep.

This is a polish/consistency gap, not a functional observability gap --
timing data for these operations is already captured, just not under the
project's standard naming scheme, which makes ad-hoc trace queries
(jq on .local/traces/*.json grouping by span name) less discoverable
for this specific subsystem compared to others.

Expected Behavior

tracing::info_span!("core.anchor.put") / "core.anchor.get" /
"core.anchor.delete" / "core.anchor.sweep" (with sub-phase spans for
the sweep's reconcile/cap/save phases if useful) wrapping the relevant
operations in crates/zeph-core/src/anchor_store.rs.

Actual Behavior

No dedicated spans; only the generic supervisor/vault-save spans exist.

Environment

Metadata

Metadata

Assignees

Labels

P4Long-term / exploratorytelemetryOpenTelemetry, tracing, metrics

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions