Skip to content

feat(runtime): RuntimeData on RuntimeConfig for platform data files - #661

Open
andrew-vogulkin wants to merge 2 commits into
hud-evals:mainfrom
andrew-vogulkin:feature/fs-layer-andrei-wt
Open

andrew-vogulkin wants to merge 2 commits into
hud-evals:mainfrom
andrew-vogulkin:feature/fs-layer-andrei-wt

Conversation

@andrew-vogulkin

@andrew-vogulkin andrew-vogulkin commented Sep 12, 2026

Copy link
Copy Markdown

Summary

Adds RuntimeData to RuntimeConfig so a task can declare platform data files, by data-file id, that the hosted rollout box provides to the environment under a mount path. This is the SDK half of the rollout data layer; the control plane resolves ids to storage and the EC2 daemon mounts them (monorepo change follows).

  • RuntimeDataFile(file_id, path) and RuntimeData(files, mount_path, mode) in hud/eval/runtime/core.py; RuntimeConfig.data, omitted from JSON when unset, replaced whole by with_overrides.
  • Exported from hud.eval.runtime, hud.eval and hud.
  • Docs: "Data files" section in docs/v6/reference/runtime.mdx.
  • Tests: hud/eval/tests/test_runtime_data.py (defaults, serialization, malformed payloads, override semantics); export test updated.

The block is declarative: which files and where they appear. No bucket or prefix is ever named by a task. Files are bound into the container writable (overlay, the default, copy-on-write to local disk) or read-only (readonly). HUD-hosted EC2 rollouts only; other runtimes reject data.

Test plan

  • pytest hud/eval/tests/test_runtime_data.py hud/tests/test_init_module.py hud/tests/test_init.py (12 passed)
  • ruff check and format on touched files
  • Control-plane contract test in the monorepo passes against this model (backend and SDK serialize the block identically)
  • End-to-end in dev-andrei: two tasks declaring one CSV each read it from /data; each container saw exactly its own file

🤖 Generated with Claude Code


Note

Low Risk
Additive, optional RuntimeConfig schema and exports with pydantic validation; mounting and enforcement live in the platform, not in SDK runtime providers in this PR.

Overview
Adds RuntimeData / RuntimeDataFile and an optional RuntimeConfig.data block so tasks can declare HUD Data files by id and where they appear in the environment (default mount /data, overlay or readonly mode). The SDK serializes the block like other nested runtime options (omitted when unset) and with_overrides replaces the whole data block rather than merging file lists.

RuntimeData and RuntimeDataFile are exported from hud, hud.eval, and hud.eval.runtime. Reference docs gain a Data files section describing EC2 hosted-rollout behavior, contrast with DataFileArg, and unsupported local/cloud runtimes. New tests cover defaults, JSON shape, validation failures, and override semantics.

Reviewed by Cursor Bugbot for commit 93dffa6. Bugbot is set up for automated code reviews on this repo. Configure here.

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