artifact extend pushes out the expiration of a finalized
artifact in this workspace.
This enables dynamic, access-based retention: create artifacts with a short
expiration and extend it whenever they are accessed.
At least one of --by or --ensure_minimum must be set. When both are set,
--by is applied first and --ensure_minimum then acts as a lower bound on the
result.