Skip to content

Schema: optional artifacts + DL-HARD dataset entry#20

Merged
radinhamidi merged 2 commits into
mainfrom
schema/optional-artifacts-and-dlhard
May 20, 2026
Merged

Schema: optional artifacts + DL-HARD dataset entry#20
radinhamidi merged 2 commits into
mainfrom
schema/optional-artifacts-and-dlhard

Conversation

@radinhamidi
Copy link
Copy Markdown
Member

@radinhamidi radinhamidi commented May 20, 2026

Summary

Two small additions:

Optional artifacts in schema v1. artifacts.run_file and artifacts.reformulated_queries become optional. Their filename regex patterns still apply when the fields are present, so a run remains valid whether it carries both, one, or neither artifact. This lets a run be published from just its scores when the per-run TREC ranking or queries TSV isn't attached.

  • reproducibility/schema.jsonartifacts.required removed.
  • reproducibility/lib/emit.pybuild_run_summary takes a new artifacts_present parameter to control which artifact fields are emitted (defaults to both, unchanged for the standard pipeline).
  • reproducibility/scripts/submit_run.py — artifact files are required only when referenced by the payload, and silently skipped when omitted.

msmarco-v1-passage.dlhard dataset entry. Hard subset of MS MARCO passage queries. Uses the prebuilt msmarco-v1-passage index with default BM25 weights (k1=0.9, b=0.4); eval metrics ndcg_cut.10, recall.1000.

Test Plan

  • make repro-test — 44 passed (36 prior + 8 new covering the optional artifact paths and the DL-HARD entry).
  • make repro-check — clean.
  • CI reproducibility-check.yml green on PR.

🤖 Generated with Claude Code

radinhamidi and others added 2 commits May 19, 2026 22:59
`schema.json`: `artifacts.run_file` and `artifacts.reformulated_queries`
become optional in schema v1; their filename regex patterns still apply
when the fields are present. A run is now valid whether it carries
both artifacts, one, or neither.

`emit.py`: `build_run_summary` accepts a new `artifacts_present`
parameter selecting which artifact fields to include. Default is both,
preserving the existing contract for runs produced by the standard
pipeline.

`submit_run.py`: artifact files are required only when the payload's
`artifacts` block references them, and silently skipped when omitted.

Tests cover the optional path (empty `artifacts`, only `run_file`,
only `reformulated_queries`) and assert the existing required path
still works.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
DL-HARD is the hard subset of MS MARCO passage queries. Uses the
prebuilt `msmarco-v1-passage` Pyserini index with default BM25 weights
(k1=0.9, b=0.4). Eval metrics: `ndcg_cut.10`, `recall.1000`.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@radinhamidi radinhamidi merged commit 2327091 into main May 20, 2026
2 checks passed
@radinhamidi radinhamidi deleted the schema/optional-artifacts-and-dlhard branch May 20, 2026 04:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant