Skip to content

v0.10.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 23:58
· 57 commits to main since this release
0c5a65e

Highlights

Link a workload to a Use Case at create time

dr workload create takes --use-case-id <id> (or a top-level useCaseId field in the spec) to link the new workload to a Use Case. Two distinct uses:

  • Organizational link only. On its own the flag does not place the workload on an Enclave: a Use Case without a selection policy is an organizational link, and the workload runs outside any Enclave like any other asset in the Use Case.
  • Enclave placement. Set runtime.enclaveSelectionPolicy: "availability" in the spec to place the workload on the Enclaves an administrator has granted to the Use Case, or pass --enclave <name> together with --use-case-id to pin one named Enclave (that sets the policy to manual). Enclave placement is opt-in per workload: with neither the policy nor --enclave, the workload is not placed on an Enclave.

⚠️ Breaking change: dr workload create --enclave alone now fails locally with --enclave requires --use-case-id (or useCaseId in the spec) instead of round-tripping to the server. Enclave placement is governed by a Use Case, and the server already rejected any Enclave-targeted create without one — the CLI now refuses it before the call. Update scripts that passed --enclave by itself.

Typed placement errors. Server-side placement rejections now render as the server's own sentence with the machine code in parentheses — for example useCaseId is required: this workload will be placed on an Enclave, and Enclave placement is governed by a use case. (MISSING_USE_CASE) — instead of a raw JSON dump. If the Use Case has Enclaves and the spec sets no policy, the server refuses the create with ENCLAVE_TARGETING_REQUIRED. A malformed id (not a 24-character hex id) is also refused locally, before the round trip.

Note for spec authors: --use-case-id and --enclave refuse to override a spec that already sets useCaseId or runtime.enclaveSelectionPolicy — remove one or the other. Passing either flag also means the spec is re-encoded rather than sent byte-for-byte.

Opencode plugin v0.1.10

The bundled opencode remote plugin is updated to v0.1.10.

Operational notes

  • Versioning on 0.x. This release is a minor bump because it contains a breaking change: while the CLI is on 0.x, a breaking change bumps the minor version, and new features and fixes share the patch slot. The rule is now documented in docs/development/releasing.md along with a checklist for identifying a breaking change.
  • Feature gates: no feature gates were added or removed in this release. (dr pipeline, dr workload and dr artifact were already generally available; dr workload up and dr workload config remain gated.)
  • Documentation: the new flag is not yet on the dr workload reference page — the spec-file fields (useCaseId, runtime.enclaveSelectionPolicy) are described in commands/workload-spec.md. A docs follow-up is planned.

Full Changelog: v0.9.2...v0.10.0

Brought to you by