{% extends "base.html" %} {% from "_macros.html" import badge, counts_line, legend %} {% set fam_name = family_names.get(cell.family, cell.family) %} {% block title %}{{ fam_name }} on {{ cell.engine }} {{ cell.engine_version }} ยท CanIToolCall{% endblock %} {% block main %}
{{ badge(cell.status) }} {% if cell.pass_rate is not none %}{{ cell.pass_rate|pct }} strict pass{% endif %} {{ counts_line(cell.counts) }}
{{ corpus_note }}
{% endif %}| Check | Pass | Soft | Fail | Error | Strict pass rate |
|---|---|---|---|---|---|
{{ k.check }} |
{{ k.counts["pass"] }} | {{ k.counts["soft_pass"] }} | {{ k.counts["fail"] }} | {{ k.counts["error"] }} | {{ k.pass_rate|pct }} |
No checks applied (no supported fixtures).
{% endif %} {% if skipped %}Strategies the worker could not run (not counted):
{{ strategy }} skipped for {{ n }} fixture(s): {{ reason }}{{ cell.stress_failures }} fixture(s) failed only a synthetic strategy: char:* (which can split
special tokens){% if cell.multi_token_synthetic %}, or a multi-token strategy this engine never produces because its server streams one token per event ({% for s in cell.multi_token_synthetic %}{{ s }}{% if not loop.last %}, {% endif %}{% endfor %}){% endif %}. These are listed below but never count toward the status.
Every supported fixture passed strictly on every realistic strategy.
{% endif %} {% for v in attention %}{{ v.fixture_id }}
{% set names = v.failing|map(attribute="check")|unique|list %}
{% if names %}{{ names|join(", ") }}{% endif %}
| Check | Strategy | Result | Detail |
|---|---|---|---|
{{ c.check }} | {{ c.strategy }} | {{ badge(c.status) }} | {{ c.detail or "" }} |
Synthetic strategies (not counted): {% for c in v.stress %}{{ c.check }}@{{ c.strategy }} {{ c.status|label }}{% if not loop.last %}, {% endif %}{% endfor %}
Skipped strategies: {% for s, r in v.skipped.items() %}{{ s }} ({{ r }}){% if not loop.last %}, {% endif %}{% endfor %}
{{ v.harness_error }}
{% endif %}
{{ v.repro }}
Set up the engine first with scripts/engines/{{ cell.engine }}.sh; this run used {{ run.engine.name }} {{ run.engine.version }}.
{% if v.fixture and v.fixture.source %}The fixture is line {{ v.fixture.line }} of {{ v.fixture.source }}.{% endif %}
Identical parses are grouped. Empty strings are shown as null, as in strict comparison.
Strategies: {% for s in o.strategies %}{{ s }}{% if not loop.last %}, {% endif %}{% endfor %}
{% for cls, line in o.diff %}{{ line }}
{% endfor %}
{% else %}
{% if o.matches_expected %}Matches the expected parse.
{% endif %}{{ o.observed_json }}
{% endif %}
The results file does not include the observed parses for this fixture.
{% endif %} {% if v.fixture %}Provenance: {{ v.fixture.provenance_kind }}, {% if v.fixture.provenance_url %}{{ v.fixture.provenance_url }}{% else %}{{ v.fixture.provenance_text }}{% endif %}.
Tags: {% for t in v.fixture.tags %}{{ t }}{% if not loop.last %}, {% endif %}{% else %}none{% endfor %}.
Expected graceful failure: {{ v.fixture.expected_error }}.
{% endif %}{{ v.fixture.raw_output }}
{% if v.fixture.expected_json %}
{{ v.fixture.expected_json }}
{% endif %}
{{ v.fixture.record_jsonl }}
{{ v.parser_config_json }}
The adapter declined these fixtures because this engine version has no parser for the family or model.
{{ v.fixture_id }}{% if v.reason %}: {{ v.reason }}{% elif v.harness_error %}: {{ v.harness_error }}{% endif %}