DolphinBench

Test 174

Jan 1, 2028 / 2 facts

YAML

Request

Inspect lantern#1316 and review how it identifies and deduplicates deploy movements.

Required memory

Fact 161

Alex Valdez requested that the Lantern preparation note retain the July 1–9, 2025 operating snapshot and append the factual July 25, 2025 result: twelve retry duplicates, the deploy-identity rule, an unavailable result when the source-event ID is missing, unchanged read-only authorization for two accounts, and a correction pending before the next evidence cut.

Source evidence (1)

003013Jul 25, 2025 / 15:35 UTC-04:00

Append the factual July 25 result to the Lantern preparation note. Keep the July 1-9 operating snapshot, then record the twelve retry duplicates, the deploy-identity rule, the unavailable result for a missing source-event ID, the unchanged two-account read-only authorization, and the pending correction before the next evidence cut.

Message 003013 in history

Fact 162

The full Harbor Health and Mosaic Commerce replay processed 3,406 ingestion-attempt rows into 3,394 unique deploy movements identified by `(tenant_id, published_service_id, provenance_source, source_event_id)`; it collapsed all 12 known retry duplicates while preserving rollback and redeploy events with distinct source-event IDs.

Source evidence (1)

003050Aug 6, 2025 / 11:36 UTC-04:00

Product Engineering supplied the missing evidence for Lantern PR https://git.sphere.internal/product/lantern/pull/842. The full Harbor Health and Mosaic Commerce replay contains 3,406 ingestion-attempt rows and produces 3,394 unique deploy movements under `(tenant_id, published_service_id, provenance_source, source_event_id)`. It collapses all twelve known retry duplicates and preserves distinct rollback and redeploy events because those records have different source-event IDs. Missing source-event IDs render unavailable. The executed tenant-scoping, provenance-timestamp, explicit-unknown, and read-only checks all pass. Iris and I approve the correction for the existing two-account preview, with no change to authorized data scope or customer access.

Message 003050 in history

Expected tool calls

  • get_pr
  • review_pr

Grading

1. field_equals / review_pr
{
  "type": "field_equals",
  "tool": "review_pr",
  "action_id": "alex_174_review_pr",
  "path": "result.ok",
  "value": true,
  "check_id": "alex_174_00"
}
2. field_equals / get_pr
{
  "type": "field_equals",
  "tool": "get_pr",
  "action_id": "alex_174_read_pr",
  "path": "result.pr.id",
  "value": "lantern#1316",
  "check_id": "alex_174_01"
}
3. field_equals / review_pr
{
  "type": "field_equals",
  "path": "result.review.pr_id",
  "value": "lantern#1316",
  "tool": "review_pr",
  "action_id": "alex_174_review_pr",
  "check_id": "alex_174_02"
}
4. field_equals / review_pr
{
  "type": "field_equals",
  "path": "result.review.decision",
  "value": "request_changes",
  "tool": "review_pr",
  "action_id": "alex_174_review_pr",
  "check_id": "alex_174_03"
}
5. field_llm_judge / review_pr
{
  "type": "field_llm_judge",
  "path": "result.review.body",
  "criterion": "The review requires movement identity to use tenant_id, published_service_id, provenance_source, and source_event_id rather than ingestion_attempt_id. Without a source-event ID the movement must render unavailable instead of being merged heuristically. Regression coverage must collapse retry duplicates while keeping rollback and redeploy events with distinct source-event IDs separate.",
  "tool": "review_pr",
  "action_id": "alex_174_review_pr",
  "check_id": "alex_174_04"
}
Complete grading specification
{
  "type": "tool_trace",
  "config": {
    "check_version": 2,
    "today": "2028-01-01",
    "assertions": [
      {
        "type": "field_equals",
        "tool": "review_pr",
        "action_id": "alex_174_review_pr",
        "path": "result.ok",
        "value": true,
        "check_id": "alex_174_00"
      },
      {
        "type": "field_equals",
        "tool": "get_pr",
        "action_id": "alex_174_read_pr",
        "path": "result.pr.id",
        "value": "lantern#1316",
        "check_id": "alex_174_01"
      },
      {
        "type": "field_equals",
        "path": "result.review.pr_id",
        "value": "lantern#1316",
        "tool": "review_pr",
        "action_id": "alex_174_review_pr",
        "check_id": "alex_174_02"
      },
      {
        "type": "field_equals",
        "path": "result.review.decision",
        "value": "request_changes",
        "tool": "review_pr",
        "action_id": "alex_174_review_pr",
        "check_id": "alex_174_03"
      },
      {
        "type": "field_llm_judge",
        "path": "result.review.body",
        "criterion": "The review requires movement identity to use tenant_id, published_service_id, provenance_source, and source_event_id rather than ingestion_attempt_id. Without a source-event ID the movement must render unavailable instead of being merged heuristically. Regression coverage must collapse retry duplicates while keeping rollback and redeploy events with distinct source-event IDs separate.",
        "tool": "review_pr",
        "action_id": "alex_174_review_pr",
        "check_id": "alex_174_04"
      }
    ]
  }
}
App stateDownload JSON
Source file

tests/alex/174.yaml

SHA-256: bd7e91fe64d5b64c2389e749acc74c7131bb01c7d2926266934b132aa6ba1ecc