)]}'
{".zuul.yaml":[{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"690e73af1327a0733c3bc1f51328a51a0e3d59eb","unresolved":true,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"- project:"},{"line_number":64,"context_line":"    queue: drizzle"},{"line_number":65,"context_line":"    check:"},{"line_number":66,"context_line":"      jobs:"},{"line_number":67,"context_line":"        - opendev-buildset-registry"},{"line_number":68,"context_line":"        - drizzle-test-pydtr"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"c34f98d3_6d4cf87b","line":65,"updated":"2026-06-13 18:29:10.000000000","message":"We JUST landed the patch in main to correctly move these to vouched. Please remove the check section  - we should be using vouched not check in this project.","commit_id":"520adfb454d6e558c3039505e2c906405e211a10"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"8e29b337986a6eff137dff470a5caf57d1fd132f","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"- project:"},{"line_number":64,"context_line":"    queue: drizzle"},{"line_number":65,"context_line":"    check:"},{"line_number":66,"context_line":"      jobs:"},{"line_number":67,"context_line":"        - opendev-buildset-registry"},{"line_number":68,"context_line":"        - drizzle-test-pydtr"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"7e8dac64_9cb86032","line":65,"in_reply_to":"c34f98d3_6d4cf87b","updated":"2026-06-13 18:32:00.000000000","message":"Done","commit_id":"520adfb454d6e558c3039505e2c906405e211a10"},{"author":{"_account_id":38903,"name":"Archon Spren","display_name":"Archon [review agent]","email":"archon@inaugust.com","username":"archonspren"},"change_message_id":"d4f9abf8b1597085bcd704330bfd4615bfa81c84","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    pre-run: playbooks/ensure-uv.yaml"},{"line_number":61,"context_line":"    run: playbooks/ruff.yaml"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"- project:"},{"line_number":64,"context_line":"    queue: drizzle"},{"line_number":65,"context_line":"    check:"},{"line_number":66,"context_line":"      jobs:"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"ea7acf3a_9fb45624","line":63,"updated":"2026-06-13 18:32:48.000000000","message":"This reintroduces the `check` pipeline block that PS9 removed after Monty\u0027s review. Current main has moved these jobs to `vouched`; the smoke job should be wired through `vouched` only, not `check`.","commit_id":"5598be7fe58f0bfb4a8dca24a88259aeaef71bee"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"0880f81d350a216bbff8e278d788caf760547b6f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"880d60bb_8b70d6b7","updated":"2026-06-13 17:40:11.000000000","message":"swordnimi please look at the log output from the smoke tests. There are 2 problems: a) the tests failed, looks like issue with finding the test paths, probably a volume mount issue. b) tests failed AND THE JOB IS GREEN. this is much worse.","commit_id":"b48cec8132322fbd74dc77836a15968cb9e1f683"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"c456058e51aa43fb4b1d586c089a63c0fbbba92d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"7e05813d_18be49b4","updated":"2026-06-13 18:17:47.000000000","message":"Looks like these actually ran something. 20 seconds per test feels like real behavior. We should really figure out how to get a drizzle startup quicker, but that\u0027s a task for later.","commit_id":"7bbe5de06751f330525775d3f443e369d784f1d5"}],"playbooks/pydtr-smoke.yaml":[{"author":{"_account_id":38903,"name":"Archon Spren","display_name":"Archon [review agent]","email":"archon@inaugust.com","username":"archonspren"},"change_message_id":"139ab2faf2b53d8095722cbc8022bbcd040ffdf8","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"    - name: Run pydtr image-backed smoke tests"},{"line_number":19,"context_line":"      command: \"{{ uv_bin }} run --frozen python -m pydtr.smoke\""},{"line_number":20,"context_line":"      environment:"},{"line_number":21,"context_line":"        PYDTR_SELECTOR: smoke"},{"line_number":22,"context_line":"      args:"},{"line_number":23,"context_line":"        chdir: \"{{ drizzle_test_dir }}\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"081958f3_575017b8","line":20,"updated":"2026-06-13 16:43:22.000000000","message":"This job invokes the smoke CLI through the bootstrapped uv path, but `pydtr.smoke` then shells out to `uv run --frozen stestr ...` using a bare `uv`. `ensure-uv.yaml` only installs/checks `{{ ansible_user_dir }}/uv-bootstrap/bin/uv`; it does not add that directory to PATH, and the existing pydtr unit test even preserves an arbitrary PATH when invoking `subprocess.run`. As written the smoke job can fail with `FileNotFoundError: uv` before it reaches stestr. Please either pass a PATH that includes the bootstrap bin directory from this playbook, or make the smoke runner reuse the current/explicit uv executable instead of resolving bare `uv`.","commit_id":"9a46804f80f3d1f23018fcdeddddda35db02601b"}],"pydtr/fixtures.py":[{"author":{"_account_id":38903,"name":"Archon Spren","display_name":"Archon [review agent]","email":"archon@inaugust.com","username":"archonspren"},"change_message_id":"156431fae11485bd5a3dbf0d14af1e12d83604d8","unresolved":false,"context_lines":[{"line_number":135,"context_line":"            \"--execute\","},{"line_number":136,"context_line":"            \"SELECT 1\","},{"line_number":137,"context_line":"        ]"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    def _port(self) -\u003e int:"},{"line_number":140,"context_line":"        return int(self._attr(\"port\", getattr(self.config, \"port\", _DEFAULT_PORT)))"},{"line_number":141,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"a58b5589_6f615a82","line":138,"updated":"2026-06-13 17:14:48.000000000","message":"This only works for synthetic test info objects that expose a `port` attribute. The discovered DTR tests are built from `parse_opt_file()`, which currently leaves `--port\u003d...` in `server_args` and the `TestInfo` dataclass has no `port` field. So a real case that starts drizzled with a port override (for example the image-backed MySQL-protocol port) will still be probed and later run through `drizzletest` on the default 3306. Please wire port parsing through `ParsedOpts`/`TestInfo` (or otherwise derive the client/probe port from the same server args) so this fixes discovered tests, not just hand-built test doubles.","commit_id":"4bec7d302e4a3bb00e2346df28a7928450b701ae"},{"author":{"_account_id":38903,"name":"Archon Spren","display_name":"Archon [review agent]","email":"archon@inaugust.com","username":"archonspren"},"change_message_id":"98ffa4e4604e9f22f00b820d27480e6722ea1ce5","unresolved":false,"context_lines":[{"line_number":45,"context_line":"                f\"{self.container}: stdout\u003d{result.stdout!r} stderr\u003d{result.stderr!r}\""},{"line_number":46,"context_line":"            )"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        self._wait_until_ready()"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def _teardown(self) -\u003e None:"},{"line_number":51,"context_line":"        if self._removed or self.container is None:"}],"source_content_type":"text/x-python","patch_set":10,"id":"a5c57ff6_52f44dba","line":48,"updated":"2026-06-13 18:32:54.000000000","message":"PS10 appears to have dropped the PS7 scratch-dir preparation that made the image-backed smoke job pass. In PS7/PS8/PS9, `_setUp()` called `_prepare_scratch_dirs()` after readiness so `/scratch/tmp` and `/scratch/log` existed before invoking `drizzletest`. Without that, this looks likely to regress to the prior smoke failure.","commit_id":"5598be7fe58f0bfb4a8dca24a88259aeaef71bee"},{"author":{"_account_id":38903,"name":"Archon Spren","display_name":"Archon [review agent]","email":"archon@inaugust.com","username":"archonspren"},"change_message_id":"4224ce9d393be87e29091b964c3f7dcc4c046709","unresolved":false,"context_lines":[{"line_number":45,"context_line":"                f\"{self.container}: stdout\u003d{result.stdout!r} stderr\u003d{result.stderr!r}\""},{"line_number":46,"context_line":"            )"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        self._wait_until_ready()"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    def _teardown(self) -\u003e None:"},{"line_number":51,"context_line":"        if self._removed or self.container is None:"}],"source_content_type":"text/x-python","patch_set":11,"id":"94bb04b8_ceef77ea","line":48,"updated":"2026-06-13 18:34:17.000000000","message":"The `check` block regression is fixed in PS11, but this still has the PS10 rollback of the green PS7/PS9 smoke fix: `_prepare_scratch_dirs()` is still absent after readiness, so `/scratch/tmp` and `/scratch/log` are not created before `drizzletest` uses them.","commit_id":"ff2051b9ab510aeb68f5040b23fbdcc1327db11e"}],"pydtr/runner.py":[{"author":{"_account_id":38903,"name":"Archon Spren","display_name":"Archon [review agent]","email":"archon@inaugust.com","username":"archonspren"},"change_message_id":"73ca857f569b3233da303f3dd2cb32fd6395ede6","unresolved":false,"context_lines":[{"line_number":81,"context_line":"            \"--no-defaults\","},{"line_number":82,"context_line":"            \"--silent\","},{"line_number":83,"context_line":"            f\"--tmpdir\u003d{_SCRATCH_TMP}\","},{"line_number":84,"context_line":"            f\"--logdir\u003d{_SCRATCH_LOG}\","},{"line_number":85,"context_line":"            \"--database\u003dtest\","},{"line_number":86,"context_line":"            \"--user\u003droot\","},{"line_number":87,"context_line":"            f\"--port\u003d{self._port()}\","}],"source_content_type":"text/x-python","patch_set":10,"id":"3640eb4b_9c3253d5","line":84,"updated":"2026-06-13 18:33:00.000000000","message":"This also drops the PS7 `--password\u003d` argument in the `drizzletest` argv. That was part of the fix for the return-code-139 smoke failure and was present in the green PS7/PS8/PS9 revisions. Please restore it unless there is a new reason it is no longer needed.","commit_id":"5598be7fe58f0bfb4a8dca24a88259aeaef71bee"},{"author":{"_account_id":38903,"name":"Archon Spren","display_name":"Archon [review agent]","email":"archon@inaugust.com","username":"archonspren"},"change_message_id":"32406c80e659babaf0a1ac1d05b78fc93ed8bfe5","unresolved":false,"context_lines":[{"line_number":81,"context_line":"            \"--no-defaults\","},{"line_number":82,"context_line":"            \"--silent\","},{"line_number":83,"context_line":"            f\"--tmpdir\u003d{_SCRATCH_TMP}\","},{"line_number":84,"context_line":"            f\"--logdir\u003d{_SCRATCH_LOG}\","},{"line_number":85,"context_line":"            \"--database\u003dtest\","},{"line_number":86,"context_line":"            \"--user\u003droot\","},{"line_number":87,"context_line":"            f\"--port\u003d{self._port()}\","}],"source_content_type":"text/x-python","patch_set":11,"id":"a648871c_ced3ab13","line":84,"updated":"2026-06-13 18:34:26.000000000","message":"This still lacks the explicit `--password\u003d` argument that was present in the green PS7/PS9 revisions. Since that was part of the CI-proven smoke fix, please restore it along with the scratch-dir setup unless there is a new CI-backed reason to drop it.","commit_id":"ff2051b9ab510aeb68f5040b23fbdcc1327db11e"}]}
