Skip to content

feat: add Task.runtime_metadata for host-resolved worker secrets#420

Open
NicholasDCole wants to merge 1 commit into
conductor-oss:mainfrom
NicholasDCole:feat/task-runtime-metadata
Open

feat: add Task.runtime_metadata for host-resolved worker secrets#420
NicholasDCole wants to merge 1 commit into
conductor-oss:mainfrom
NicholasDCole:feat/task-runtime-metadata

Conversation

@NicholasDCole

Copy link
Copy Markdown

Summary

Adds a runtime_metadata field to the client Task model.

The server can resolve a worker's declared TaskDef.runtimeMetadata secret names at poll time and deliver the resolved values on the wire-only Task.runtimeMetadata (never persisted to task input). Without this field on the client model, that data is silently dropped on deserialization.

Changes

  • runtime_metadata (dict(str, str)) added to swagger_types + attribute_map (runtimeMetadata), the constructor, and a property getter/setter. Omitted from the wire when empty (sanitize_for_serialization skips None).
  • tests/serdeser/test_task_runtime_metadata.py — round-trips the field, omits it when empty.

Test

python -m pytest tests/serdeser/test_task_runtime_metadata.py passes; validated fail-first (removing the swagger_types entry breaks the round-trip).

🤖 Generated with Claude Code

The server can resolve a worker's declared TaskDef.runtimeMetadata secret names
at poll time and deliver the values on the wire-only Task.runtimeMetadata
(conductor-oss PR #1255) — never persisted to task input. Add the field to the
client Task model so it is not dropped on deserialization.

- runtime_metadata (dict(str, str)) in swagger_types + attribute_map
  ('runtimeMetadata'), constructor param, and property getter/setter.
- Omitted from the wire when empty (sanitize_for_serialization skips None).
- tests/serdeser/test_task_runtime_metadata.py: round-trips and omit-when-empty.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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