Skip to content

v0.11.0

Compatibility and release ordering

Deploy the Django card-metadata endpoint and its additive migration before releasing or using this CLI version. An older Kardbrd server does not implement the metadata routes and rejects these commands. The backend can be rolled back without reversing the additive migration after users have stored metadata; clients can use the previous CLI release if necessary.

Added

  • Added kardbrd card metadata get CARD_ID [KEY] to read the metadata object and revision, or one JSON value.
  • Added kardbrd card metadata set CARD_ID KEY JSON_VALUE and kardbrd card metadata remove CARD_ID KEY [KEY...] for a single literal key or explicit deletion.
  • Added kardbrd card metadata update CARD_ID with --set, --set-file, and repeatable --remove for atomic multi-key changes. --set-file - reads an object from standard input.
  • Values may be any valid JSON value, including null. Null is stored as a value; deletion is only performed by remove.
  • Writes use --if-revision for optimistic concurrency. When omitted, the CLI reads the revision once before posting. A METADATA_CONFLICT response is returned to the caller without an automatic refreshed-revision retry.

Notes

Metadata keys are literal: ops.status is one key, not a path. JSON output preserves exact JSON numbers, including integers larger than JavaScript's safe integer range.

Other changes since v0.10.0

  • Added fixed schedules and the client --no-retry option for a single request attempt without following redirects. (#62)
  • Added an option to suppress schedule result publication.
  • Published executor final responses as terminal summaries and hardened their lifecycle. (#57)