Files
deepseek-harness/packages/telemetry
kingwl 70febffe1a refactor(telemetry): ship the redact waterfall without built-in rules
The seam keeps the telemetry/redact scrubbing interface but ships no rules
of its own: the innermost next() passes records through unchanged, and
deployments mount their rules as waterfall listeners. As an SDK we cannot
know which patterns are secrets in a given deployment; a shipped list
invites false confidence while catching only known shapes, and false
positives would corrupt exported bodies. Mechanism stays with the seam,
policy moves to the deployment; both READMEs and the Agent Note state the
raw-export default plainly.

The loader-composition e2e now mounts a deployment-style rule fixture and
pins the same wire behavior: secret absent, placeholder present, canonical
log untouched.
2026-07-25 01:55:35 +08:00
..

telemetry/

Outbound session reporting: the telemetry seam plus its OpenTelemetry backend. The design — the boundary axiom (the harness's aspect ends at emit(); delivery is the reporting SDK's), the telemetry/redact waterfall (deployment-mounted rules; the seam ships none), the fixed chunk projection, the handoff cursor, and the operational-record channel — is pinned in the revival Agent Note.

Package Role
@deepseek-ai/dsh-session-telemetry The seam: capture points, projection, redaction, handoff cursor, ops signals, and the minimal backend contract (emit/flush?/shutdown).
@deepseek-ai/dsh-session-telemetry-otel The backend a deployment loads: the OTel JS SDK's log pipeline (LoggerProvider + BatchLogRecordProcessor + OTLP/HTTP exporter), configured verbatim through passthroughs.