cf2e184112
Revive the reviewed session-telemetry packages from the closed
session-telemetry-otlp-rfc branch (PR #222/#231) on current master, renamed
to @deepseek-ai/dsh-session-telemetry{,-otel} (the SDK component-telemetry
package holds the dsh-telemetry name).
Delta over the branch version: every record now passes a telemetry/redact
waterfall between projection and emit() — the innermost next() applies a
non-configurable conservative credential-shape rule set, listeners stack
stricter rules, a throwing rule withholds the record fail-closed, and the
canonical log is never rewritten. This answers the export-side concern that
closed PR #222; the boundary axiom (our aspect ends at emit(); delivery is
the reporting SDK's) is unchanged, and the runtime-telemetry RFC's outbox /
readCommitted lane is recorded as deferred in the Agent Note.
Covered by seam/redact/OTel-wire unit tiers (100% per-file) and a keyless
Loader-composition e2e that boots the examples fixture against a mock OTLP
collector and pins redaction on the wire plus the untouched canonical log.
24 lines
656 B
YAML
24 lines
656 B
YAML
# Test-only composition: session-telemetry-otel through the real Loader/app
|
|
# path, exporting to the mock OTLP collector the driver starts (url via env).
|
|
- id: cli-mock-llm
|
|
name: './cli-mock-llm.ts'
|
|
|
|
- id: bash
|
|
name: '@deepseek-ai/dsh-bash-local'
|
|
|
|
- id: telemetry-otel
|
|
name: '@deepseek-ai/dsh-session-telemetry-otel'
|
|
config:
|
|
exporter:
|
|
url: !!js process.env.DSH_TELEMETRY_E2E_URL
|
|
|
|
- id: cli-agent
|
|
name: '@deepseek-ai/dsh-cli-demo'
|
|
config:
|
|
provider: cli-mock
|
|
model: cli-mock
|
|
persona: 'Test the session-telemetry-otel plugin.'
|
|
persistenceRoot: './.sessions'
|
|
persistenceCompression: 'none'
|
|
workspaceContext: false
|