)]}'
{"id":"openstack%2Fagentic-workflows~985305","triplet_id":"openstack%2Fagentic-workflows~master~I320bfa5d457f4a68009fdf90f4ecacad1bf96d60","project":"openstack/agentic-workflows","branch":"master","topic":"strawman","hashtags":[],"change_id":"I320bfa5d457f4a68009fdf90f4ecacad1bf96d60","subject":"Add OpenStack Python testing skill","status":"NEW","created":"2026-04-20 00:20:49.000000000","updated":"2026-04-24 20:12:04.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"10fbeb7a035b507b47981a086b27762b39e09a90","_number":985305,"virtual_id_number":985305,"owner":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":1,"date":"2026-04-24 20:12:04.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"all":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-04-20 00:28:42.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"12d63d0a256bc9aa1b85542a7f4e69dda3add99c","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-04-20 00:20:49.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"3e48880d62af093627b58ed77709fcf10e462bb5","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-20 00:28:42.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/d4f234870c224e57bdd4fdb978c5ce66\n\n- agentic-workflows-linters https://zuul.opendev.org/t/openstack/build/bcb135baa60341ae923e2f89980d0417 : SUCCESS in 2m 30s","accounts_in_message":[],"_revision_number":1},{"id":"4b4e5b57a7e30f44d66c97f911c077d6685e02f4","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-04-21 06:33:59.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"5c60fd3d753d5c93bbae8f30d1c2db73eaf8511c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-21 06:46:29.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7ea78e34856f49978e2f6c085dba1e4e\n\n- agentic-workflows-linters https://zuul.opendev.org/t/openstack/build/0971e7eff3724fbd8a84af62fbf000ff : SUCCESS in 2m 36s","accounts_in_message":[],"_revision_number":2},{"id":"7467c5fe9040d86a2a8b7392cc306c3b4f7db56c","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-04-24 20:01:20.000000000","message":"Uploaded patch set 3: Patch Set 2 was rebased. Commit message was updated.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"10fbeb7a035b507b47981a086b27762b39e09a90","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 20:12:04.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/add493b9be4245a6ade1ac9c11a0ac70\n\n- agentic-workflows-linters https://zuul.opendev.org/t/openstack/build/fd4200edb9b6475e842df85a897b8d54 : SUCCESS in 2m 37s","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"00d156e40563f76d9209340167825ac8625f4df4","revisions":{"7b614d6adf1a5e2cd6dad7561f62ca59ea2042e8":{"kind":"REWORK","_number":1,"created":"2026-04-20 00:20:49.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/05/985305/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/agentic-workflows","ref":"refs/changes/05/985305/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/1"}}},"commit":{"parents":[{"commit":"7b634d7fc9e29b6cd75b2f944e7f6df3d56b4f76","subject":"Add OpenStack typing rollout workflow","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/7b634d7fc9e29b6cd75b2f944e7f6df3d56b4f76"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-19 23:53:03.000000000","tz":60},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-19 23:53:03.000000000","tz":60},"subject":"Teach OpenStack Python testing patterns","message":"Teach OpenStack Python testing patterns\n\nThe OpenStack testing skill should teach agents how OpenStack projects\nrun and write tests, not just list a few tox commands.\n\nThis change adds source-backed testing knowledge for tox, stestr,\nunittest-compatible helpers, fixtures, unit tests, functional tests, and\nGabbi API tests. It also adds Nova and Placement fallback overlays so\nagents can reuse those proven patterns without hardcoding service-specific\ndetails into the reusable skill.\n\nChange-Id: I320bfa5d457f4a68009fdf90f4ecacad1bf96d60\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\nAssisted-By: codex gpt 5.4\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/7b614d6adf1a5e2cd6dad7561f62ca59ea2042e8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/7b614d6adf1a5e2cd6dad7561f62ca59ea2042e8"}]},"branch":"refs/heads/master"},"980705ee53a5e59b556fb27e39471b0f4f5e217f":{"kind":"REWORK","_number":2,"created":"2026-04-21 06:33:59.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/05/985305/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/agentic-workflows","ref":"refs/changes/05/985305/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/2"}}},"commit":{"parents":[{"commit":"7229b7100ab85b486f26bd42b810dd54c0ae8d1d","subject":"Add OpenStack typing rollout workflow","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/7229b7100ab85b486f26bd42b810dd54c0ae8d1d"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-21 05:37:00.000000000","tz":60},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-21 06:25:15.000000000","tz":60},"subject":"Teach OpenStack Python testing patterns","message":"Teach OpenStack Python testing patterns\n\nThe OpenStack testing skill should teach how OpenStack projects run and\nwrite tests, not just list a few tox commands.\n\nThis change adds source-backed testing knowledge for tox, stestr,\nunittest-compatible helpers, fixtures, unit tests, functional tests, and\nGabbi API tests. It also adds Nova and Placement fallback overlays so\nagents can reuse those patterns without hardcoding service details.\n\nChange-Id: I320bfa5d457f4a68009fdf90f4ecacad1bf96d60\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\nAssisted-By: codex gpt 5.4\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/980705ee53a5e59b556fb27e39471b0f4f5e217f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/980705ee53a5e59b556fb27e39471b0f4f5e217f"}]},"branch":"refs/heads/master"},"00d156e40563f76d9209340167825ac8625f4df4":{"kind":"TRIVIAL_REBASE_WITH_MESSAGE_UPDATE","_number":3,"created":"2026-04-24 20:01:20.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/05/985305/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/agentic-workflows","ref":"refs/changes/05/985305/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/agentic-workflows refs/changes/05/985305/3"}}},"commit":{"parents":[{"commit":"b1a1b369b99703eac5470cdc10c48a5c87190cd2","subject":"Add OpenStack typing rollout workflow","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/b1a1b369b99703eac5470cdc10c48a5c87190cd2"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-21 05:37:00.000000000","tz":60},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-04-24 19:37:39.000000000","tz":60},"subject":"Add OpenStack Python testing skill","message":"Add OpenStack Python testing skill\n\nThe OpenStack testing skill should cover how OpenStack projects run and\nwrite tests, not just list a few tox commands.\n\nThis change adds source-backed testing knowledge for tox, stestr,\nunittest-compatible helpers, fixtures, unit tests, functional tests,\nand Gabbi API tests. It also adds Nova and Placement fallback overlays\nso agents can reuse those patterns without hardcoding service details.\n\nChange-Id: I320bfa5d457f4a68009fdf90f4ecacad1bf96d60\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\nAssisted-By: codex gpt 5.4\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/00d156e40563f76d9209340167825ac8625f4df4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/agentic-workflows/commit/00d156e40563f76d9209340167825ac8625f4df4"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY"},{"label":"Workflow","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
