Skip to content

S-135743: Require agents to declare evaluation substitutions - #337

Open
EllAchE wants to merge 1 commit into
mainfrom
s-135743-declare-eval-substitutions
Open

S-135743: Require agents to declare evaluation substitutions#337
EllAchE wants to merge 1 commit into
mainfrom
s-135743-declare-eval-substitutions

Conversation

@EllAchE

@EllAchE EllAchE commented Aug 25, 2026

Copy link
Copy Markdown
Owner

Fixes S-135743

Summary

Evaluation runs against the hosted Cicero demo can silently substitute seeded demo entities for the data a scenario brief specifies. The evaluator's own browse skill instructs agents to continue with whatever data exists when the brief's sample data does not match the app, and nothing required declaring that — so a judge looking at an agenda screenshot cannot tell whether the session on it came through the CFP → review → accept chain or was pre-seeded, which makes the downstream evidence ambiguous.

The evaluator kit is external and pinned by ref for cross-run comparability, so the requirement lands in the operational contract both roles read in full, docs/handoff/sessionboard-eval.md:

  • Browsing agents must declare every substitution before finishing a scenario: an observe note naming what the brief specified, what was actually used, and why — and a completed outcome must restate the substitution in its done summary. An undeclared substitution leaves the evidence ambiguous, so the scenario is not honestly complete without it.
  • Judges are directed to read those declarations in the rendered evidence before crediting a scenario, to state when a verdict rests on a seeded stand-in rather than the scenario's own data path, and to flag seeded entities with no declared substitution as an evidence defect rather than crediting the flow.

The declarations travel through fields the agents already control (observe notes and done summaries render into the judge brief), so no evaluator change is needed and archived baselines stay comparable.

Test plan

Docs-only change; no runtime behavior. Verified the claims against the evaluator's sbek-browse/sbek-judge skills and src/evidence.ts rendering (observations and summaries reach the judge brief), and kept "fixture" reserved for the hosted target as sessionboard-eval-loop.md uses it. CI gates cover lint/build.

🤖 Generated with Claude Code

Agent Audit

  • Action: create-pr
  • Timestamp: 2026-08-25T14:50:30Z
  • Agent: claude
  • Agent type: claude
  • Triggered by: loganharless
  • Origin: loganharless@Mac
  • Session: 720d7897-36e6-4632-8f46-0a7beb89faa3
  • Source repo: EllAchE/sessionboard-oss
  • Worktree: /Users/loganharless/Desktop/da/worktrees/s-135743-sb-eval-substitutions-20260825
  • Branch: s-135743-declare-eval-substitutions
  • Head commit: 2b2bc26
  • tmux pane: %40

Evaluation runs can silently substitute Cicero's seeded demo entities for
the data a scenario brief specifies — the evaluator's browse skill tells
agents to continue with whatever data exists, and nothing required saying
so. That leaves judges unable to tell whether agenda/widget evidence came
through the CFP-review-accept chain or from a seeded stand-in.

Require each completed scenario to declare any substitution in its observe
notes and done summary, and direct judges to read those declarations, say
when a verdict rests on a seeded stand-in, and flag undeclared seeded
entities as an evidence defect.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@EllAchE EllAchE added the claude PR primarily authored by Claude label Aug 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

claude PR primarily authored by Claude

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant