You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When OTel is disabled on a runtime (e.g. TELEMETRY_HMAC_SALT absent or OTEL_SDK_DISABLED=true), eval domains backed by f167-runtime-eval cannot produce fresh evidence. Without a prerequisite gate, the daily eval scheduler invokes the eval cat anyway, consuming a full LLM session to evaluate a gap that was already known at boot time.
Design questions (from maintainer review of #1352)
1. Is "telemetry unavailable" a first-class eval result, or should repeated identical gaps be skipped?
The F192 spec treats telemetry unavailability as a legitimate eval finding. The question is whether the repeated daily re-discovery of the same boot-time condition adds value, or whether a single skip notice (with the gap remaining visible in the domain thread) is sufficient until the condition changes.
Proposed: A boot-time check that posts a stable SKIPPED notice is sufficient. The gap remains visible in the eval domain's system thread. The eval cat is only invoked when evidence production is possible.
2. How should availability be checked against the actual adapter target?
PR #1352's probe checks the scheduler process'stelemetryHandle.getMetricsText. In a split-runtime deployment where the scheduler and the evidence source are different processes (e.g. scheduler on one host, EVAL_BASE_URL pointing to another), this probe checks the wrong runtime.
Options:
A) Probe the adapter target endpoint — correct in split-runtime, but adds network I/O to the cron hot path
B) Probe the local scheduler's telemetry state — correct when scheduler == evidence source (single-process deployment), simpler
C) Configurable: local probe with an optional remote override — covers both deployment shapes
Current deployment uses single-process (scheduler is the evidence source), making option B correct today.
3. Scope of ownerCatId correction
ownerCatId: opus-47 in eval-a2a.yaml references a catId no longer in the active roster. This should be split into a separate commit or its own PR.
4. Provenance corrections for upstream context
The original PR referenced fork-internal artifacts that don't resolve in this upstream repo.
Observable evidence in this repo:
eval-domain-daily.ts fires at 0 3 * * * UTC for every registered domain
eval:a2a domain uses sourceAdapter: f167-runtime-eval which requires live OTel
When OTel is disabled, the eval cat receives the full prompt but cannot produce meaningful evidence
Problem
When OTel is disabled on a runtime (e.g.
TELEMETRY_HMAC_SALTabsent orOTEL_SDK_DISABLED=true), eval domains backed byf167-runtime-evalcannot produce fresh evidence. Without a prerequisite gate, the daily eval scheduler invokes the eval cat anyway, consuming a full LLM session to evaluate a gap that was already known at boot time.Design questions (from maintainer review of #1352)
1. Is "telemetry unavailable" a first-class eval result, or should repeated identical gaps be skipped?
The F192 spec treats telemetry unavailability as a legitimate eval finding. The question is whether the repeated daily re-discovery of the same boot-time condition adds value, or whether a single skip notice (with the gap remaining visible in the domain thread) is sufficient until the condition changes.
Proposed: A boot-time check that posts a stable SKIPPED notice is sufficient. The gap remains visible in the eval domain's system thread. The eval cat is only invoked when evidence production is possible.
2. How should availability be checked against the actual adapter target?
PR #1352's probe checks the scheduler process's
telemetryHandle.getMetricsText. In a split-runtime deployment where the scheduler and the evidence source are different processes (e.g. scheduler on one host,EVAL_BASE_URLpointing to another), this probe checks the wrong runtime.Options:
Current deployment uses single-process (scheduler is the evidence source), making option B correct today.
3. Scope of ownerCatId correction
ownerCatId: opus-47ineval-a2a.yamlreferences a catId no longer in the active roster. This should be split into a separate commit or its own PR.4. Provenance corrections for upstream context
The original PR referenced fork-internal artifacts that don't resolve in this upstream repo.
Observable evidence in this repo:
eval-domain-daily.tsfires at0 3 * * *UTC for every registered domaineval:a2adomain usessourceAdapter: f167-runtime-evalwhich requires live OTelpublishPrereqProbe(added in Bug: eval:a2a 跑在任意活跃 runtime(dogfood worktree)→ 投到无关 feature thread + 产出 infra blocker 而非 A2A verdict #923) only checks code-level prerequisites, not runtime evidence availabilityProposed scope
evidencePrereqProbetoEvalDomainScheduleOpts— runs upstream of existingpublishPrereqProbecreateTelemetryEvidencePrereqProbe— checks whether the evidence source can produce dataReferences
packages/api/src/infrastructure/harness-eval/domain/eval-domain-daily.tsdocs/harness-feedback/eval-domains/eval-a2a.yaml