Skip to content

fix(protocol): decode artifact policy metadata - #50

Merged
intel352 merged 1 commit into
mainfrom
agent/task-artifact-policy-metadata-20260725
Oct 2, 2026
Merged

intel352 merged 1 commit into
mainfrom
agent/task-artifact-policy-metadata-20260725

Conversation

@intel352

@intel352 intel352 commented Oct 2, 2026

Copy link
Copy Markdown
Contributor

Summary

  • decode run-log artifact policy metadata returned by workflow-compute
  • preserve strict JSON decoding for genuinely unknown artifact fields
  • add exact JSON round-trip and unknown-field regression coverage

Root cause

workflow-compute includes artifact policy and provenance fields in task-artifact list responses. The v0.8.8 client uses strict decoding but does not declare those fields, so consumers cannot read retained run-log artifacts.

Regression proof

With the production fields reverted and the test retained:

json: unknown field "artifact_class"

With the fields restored:

ok github.com/GoCodeAlone/workflow-plugin-compute-core/protocol

Verification

  • GOTOOLCHAIN=go1.26.4 GOCACHE=/tmp/workflow-plugin-compute-core-gocache go test -tags=http2legacy ./... -race -count=1
  • GOTOOLCHAIN=go1.26.4 GOCACHE=/tmp/workflow-plugin-compute-core-gocache go vet -tags=http2legacy ./...
  • GOTOOLCHAIN=go1.26.4 GOCACHE=/tmp/workflow-plugin-compute-core-gocache GOLANGCI_LINT_CACHE=/tmp/workflow-plugin-compute-core-golangci-cache golangci-lint run --new-from-rev=origin/main ./...
  • git diff --check

Doc-reconciliation: clean

@intel352
intel352 merged commit 46fb9ae into main Oct 2, 2026
4 checks passed
@intel352
intel352 deleted the agent/task-artifact-policy-metadata-20260725 branch October 2, 2026 16:09
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