)]}'
{"playbooks/pydtr.yaml":[{"author":{"_account_id":38903,"name":"Archon Spren","display_name":"Archon [review agent]","email":"archon@inaugust.com","username":"archonspren"},"change_message_id":"8fa2aa901f7afea3460d7e42b6b193a8201a3a91","unresolved":false,"context_lines":[{"line_number":1,"context_line":"- hosts: all"},{"line_number":2,"context_line":"  tasks:"},{"line_number":3,"context_line":"    - name: Sync pydtr Python environment"},{"line_number":4,"context_line":"      command: uv sync"},{"line_number":5,"context_line":"      args:"},{"line_number":6,"context_line":"        chdir: \"{{ ansible_user_dir }}/src/opendev.org/drizzle/drizzle-test\""},{"line_number":7,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"279c523c_24f4c29c","line":4,"updated":"2026-06-13 04:53:23.000000000","message":"This job assumes `uv` is already installed and on PATH, but the new pydtr/ruff jobs do not install it or inherit from a job that provides it. On the standard Zuul base nodes this will fail before reaching the tests. Please add an install step (and PATH update for `~/.local/bin`, as in the libdrizzle docs job) or use an appropriate parent/pre-run that guarantees `uv` is available.","commit_id":"91812289c8de31e6b20cc61c6df4f6960514ac64"},{"author":{"_account_id":38903,"name":"Archon Spren","display_name":"Archon [review agent]","email":"archon@inaugust.com","username":"archonspren"},"change_message_id":"0681877477469fdb1f644cbc5804315593b0b84a","unresolved":false,"context_lines":[{"line_number":13,"context_line":"      args:"},{"line_number":14,"context_line":"        creates: \"{{ uv_bin }}\""},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"    - name: Sync pydtr Python environment"},{"line_number":17,"context_line":"      command: \"{{ uv_bin }} sync\""},{"line_number":18,"context_line":"      args:"},{"line_number":19,"context_line":"        chdir: \"{{ drizzle_test_dir }}\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"bb15c6a8_78f4f3e1","line":16,"updated":"2026-06-13 04:56:50.000000000","message":"Please run the project environment with the committed lock file frozen here (and in the ruff playbook), e.g. `uv sync --frozen` / `uv run --frozen ...`. Without `--frozen`, CI can silently update `uv.lock` to match `pyproject.toml`, so a change that forgets to commit the lock update would still pass and the checked-in lock would not actually be validated.","commit_id":"31bd2950bd8e9aff7d538493b3eb9dc773a7bab1"}]}
