Skip to content

feat: add Task.runtimeMetadata for host-resolved worker secrets#124

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

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

Conversation

@NicholasDCole

Copy link
Copy Markdown

Summary

Adds a Map<String,String> runtimeMetadata 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

  • Task.runtimeMetadata (Map<String,String>), @JsonInclude(NON_EMPTY) so it's omitted when empty. Lombok @Data supplies the getter/setter.
  • TaskRuntimeMetadataSerDeTest — round-trips the field, omits it when empty.

Test

./gradlew :conductor-client:test --tests "*TaskRuntimeMetadataSerDeTest" passes; validated fail-first (flipping @JsonInclude to ALWAYS fails the omit-when-empty assertion).

🤖 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.

- Map<String,String> runtimeMetadata with @JsonInclude(NON_EMPTY) (empty omitted).
- Lombok @DaTa supplies the getter/setter; @builder support included.
- TaskRuntimeMetadataSerDeTest: round-trips the field, omits it when empty.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@codecov

codecov Bot commented Jul 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

Files with missing lines Coverage Δ Complexity Δ
.../netflix/conductor/common/metadata/tasks/Task.java 87.80% <100.00%> (+0.07%) 73.00 <1.00> (+1.00)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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