Skip to content

Add harbor leaderboard submit command#1695

Merged
alexgshaw merged 15 commits into
harbor-framework:mainfrom
rebekah-west:rebekah/tb-12-db-changes-on-leaderboard-supabase-branch
Jun 1, 2026
Merged

Add harbor leaderboard submit command#1695
alexgshaw merged 15 commits into
harbor-framework:mainfrom
rebekah-west:rebekah/tb-12-db-changes-on-leaderboard-supabase-branch

Conversation

@rebekah-west

@rebekah-west rebekah-west commented May 21, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds harbor leaderboard submit, the CLI path for entering official Harbor Hub leaderboards after harbor run and harbor upload. Submissions are validated client-side against leaderboard rules, then written to Supabase as pending entries for admin review.

  • New command: harbor leaderboard submit (-l leaderboard slug, -j job UUID(s), -m metadata.yaml, optional -s existing submission, -o JSON report). Supports creating a submission, attaching more jobs to a pending submission, and metadata-only updates.
  • Static validation (~15 checks): job ownership, leaderboard/dataset package match, dataset version consistency across jobs, metadata schema, no job/trial config overrides, complete trial results, correct task versions (via registry lookups), minimum trials per task (5), passing-trial trajectories, and blocking jobs already on another pending submission for the same leaderboard.
  • Hub integration: LeaderboardDB for authenticated Supabase reads/writes (leaderboard, leaderboard_submission, trial pagination, attach_submission_job RPC); RegistryDB extensions for dataset version resolution and task-ref → dataset version hints.
  • Docs: New "Submit to a leaderboard" page (terminal-bench-2-1 documented as the first supported slug).
  • Tests: Unit coverage for validation, metadata, report display, submit orchestration, and registry task-ref helpers; scripts/test_leaderboard_submit.sh for manual end-to-end checks against a configured Supabase project.

Depends on: Supabase schema/RPC from the leaderboard Supabase branch (e.g. leaderboard_submission, leaderboard_submission_job, attach_submission_job). This PR is the Harbor client; merge or deploy DB changes before the command works in production.

Test plan

  • uv run pytest tests/unit/test_leaderboard_*.py tests/unit/test_registry_db_task_refs.py
  • uv run ruff check --fix . && uv run ruff format . && uv run ty check
  • harbor auth login against a project with leaderboard tables seeded
  • Run harbor run + harbor upload for terminal-bench-2-1 with -k 5, then:
    • harbor leaderboard submit -l terminal-bench-2-1 -j <JOB_UUID> -m ./metadata.yaml → pending submission id printed
    • Attach a second job: -s <SUBMISSION_UUID> -j <JOB_UUID_2> (same dataset version)
    • Metadata-only update: -s <SUBMISSION_UUID> -m ./metadata.yaml
    • Failure cases: wrong slug, another user's job, validation errors (report on stderr; -o writes full JSON)
  • Optional: ./scripts/test_leaderboard_submit.sh with HARBOR_SUPABASE_URL, HARBOR_SUPABASE_PUBLISHABLE_KEY, and test job/submission UUIDs (RUN_MUTATING=1 for write paths)

@vercel

vercel Bot commented May 21, 2026

Copy link
Copy Markdown

@rebekah-west is attempting to deploy a commit to the Harbor Framework Team on Vercel.

A member of the Team first needs to authorize it.

@vercel

vercel Bot commented May 21, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
harbor-docs Ready Ready Preview, Comment May 21, 2026 11:44pm

Request Review

@github-actions

Copy link
Copy Markdown
Contributor

Enjoy a better diff viewing experience by clicking one of these URLs:

@github-actions github-actions Bot removed the area:ci label May 28, 2026
@alexgshaw
alexgshaw merged commit 67bcaea into harbor-framework:main Jun 1, 2026
5 checks passed
Messimeimei added a commit to Messimeimei/bitfun-harbor that referenced this pull request Jul 7, 2026
81e9c27 Add job plugin support and refactor Harbor Hub upload (harbor-framework#1762)
a870a8b Add harbor-langsmith plugin package for LangSmith integration. (harbor-framework#1702)
284456b Add harbor-langsmith publish script and PyPI package metadata.
a7ea96b Fail fast on Harbor Hub auth errors when using --upload (harbor-framework#1781)
087217b claude_code: bundle one LLM turn into a single ATIF step (RFC-0001) (harbor-framework#1760)
5c7d0ea fix(openclaw): Use --retry-all-errors flag only when available (harbor-framework#1789)
67bcaea Add harbor leaderboard submit command (harbor-framework#1695)
466fb98 fix: experiment sessions can now be found on reruns (harbor-framework#1804)
298a27d Release harbor-langsmith 0.1.1
e23c4d5 ci: upgrade github actions to latest versions (harbor-framework#1819)
51f6007 v0.13.1

Co-authored-by: Cursor <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants