)]}'
{"id":"openstack%2Fcyborg~1002256","triplet_id":"openstack%2Fcyborg~master~I814124451bd61a7c68f45bc8319e058486ebc399","project":"openstack/cyborg","branch":"master","attention_set":{"11604":{"account":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"last_update":"2026-08-25 10:50:22.000000000","reason":"Someone else replied on the change"}},"removed_from_attention_set":{},"hashtags":[],"change_id":"I814124451bd61a7c68f45bc8319e058486ebc399","subject":"agent: Reconcile PCI attach handle metadata","status":"NEW","created":"2026-08-25 10:49:43.000000000","updated":"2026-08-25 12:21:09.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":"a91ce14bc36f5c13d32cc7e01cb1d76addad09f0","_number":1002256,"virtual_id_number":1002256,"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-08-25 11:50:12.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"]}],"CC":[{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-08-25 10:50:22.000000000","updated_by":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"reviewer":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"state":"CC"},{"updated":"2026-08-25 11:50:12.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":"11d14292aecd2b6668b4defcd97fd08229e895e3","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"date":"2026-08-25 10:49:43.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"89899ba910b155f850171c64b10cd80c0a2051d7","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-25 10:50:22.000000000","message":"Patch Set 1:\n\nStarting automatic-ci jobs.","accounts_in_message":[],"_revision_number":1},{"id":"d8ad0af3b96396a6783192534e35da55f012534d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-25 11:50:12.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e386d63fa09e47e5ab14b992e8fe5dee\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/0123115a100a4798b2a8e7da02910e64 : SUCCESS in 4m 53s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/e3968f7ac6cd4b539572887292fa3f35 : SUCCESS in 4m 01s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1e57a6fb31b24e04a5fdb3e4a199d245 : SUCCESS in 8m 05s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/59cded16b2f04ee5aec971acbb24da75 : SUCCESS in 4m 31s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/fcf495f580d74df68a08a3f95bc38ee1 : SUCCESS in 4m 15s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/9a4a95d1c3494d528cf9f1f15c29af5c : SUCCESS in 3m 57s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/cc8174cc668444a185530915ac5ecbf5 : SUCCESS in 6m 09s (non-voting)\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/803ef124a56e4402b236c38f891e9670 : SUCCESS in 3m 02s\n- cyborg-tempest-py3 https://zuul.opendev.org/t/openstack/build/6ab8c6413a884ed39ec5e42604ba5ea5 : SUCCESS in 30m 56s\n- cyborg-tempest-ipv6 https://zuul.opendev.org/t/openstack/build/2b8dd1f4e1a042649b7cb3f3fc72dac7 : SUCCESS in 47m 46s\n- cyborg-grenade https://zuul.opendev.org/t/openstack/build/75bd0139f4cd4f1888eabdb5989d39eb : SUCCESS in 51m 10s\n- cyborg-grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/45ba21193f8748a79bb3143ba659ddad : SUCCESS in 29m 05s\n- cyborg-tempest-srbac https://zuul.opendev.org/t/openstack/build/7cd3d4cb465a4d0d9a82642c0402bb4b : SUCCESS in 53m 16s","accounts_in_message":[],"_revision_number":1},{"id":"a91ce14bc36f5c13d32cc7e01cb1d76addad09f0","tag":"autogenerated:zuul:automatic-ci","author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"date":"2026-08-25 12:21:09.000000000","message":"Patch Set 1:\n\nBuild succeeded (automatic-ci pipeline).\nhttps://zuul.teim.app/t/main/buildset/d3c320c4195548c9ae3cedd595dae724\n\n- teim-code-review https://zuul.teim.app/t/main/build/7cf05c4fcf6a4c63959dee9a77fabcb7 : SUCCESS in 16m 00s\n\nWarning:\n  The change makes cyborg-agent perform discovery and reconciliation synchronously in init_host and refuse to start when a PCI managed-mode conflict or invalid PCI handle metadata is detected, and it stops running the periodic report immediately. These are operator-visible behavior changes but no reno note was added. Impact: Operators upgrading to this release are not told that an allocated PCI handle with a conflicting managed value now prevents the agent service from starting, which can look like a regression during a rolling upgrade. Recommendation: Add a reno note (e.g. \u0027agent-fails-fast-on-pci-managed-conflict\u0027) describing the synchronous startup report, the new PciManagedChangeInUse/PciAttachHandleInvalid startup abort, and the remediation (unbind the ARQ or correct the configuration).","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"9ee6bf20ecfb04ae18fddee2ff7be8dfadce01e1","revisions":{"9ee6bf20ecfb04ae18fddee2ff7be8dfadce01e1":{"kind":"REWORK","_number":1,"created":"2026-08-25 10:49:43.000000000","uploader":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"ref":"refs/changes/56/1002256/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/56/1002256/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/56/1002256/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/56/1002256/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/56/1002256/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/56/1002256/1"}}},"commit":{"parents":[{"commit":"b58879f15d88017b66a46facd15708ee68eb2fee","subject":"objects: Add remote accelerator inventory access","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/b58879f15d88017b66a46facd15708ee68eb2fee"}]}],"author":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-08-24 21:26:42.000000000","tz":0},"committer":{"name":"Sean Mooney","email":"work@seanmooney.info","date":"2026-08-25 10:43:08.000000000","tz":0},"subject":"agent: Reconcile PCI attach handle metadata","message":"agent: Reconcile PCI attach handle metadata\n\nOrdinary resource report diffing can replace an attach handle when\nlocally discovered metadata changes. That is unsafe for an allocated\nhandle and can race with ARQ binding because the authoritative\nallocation state resides in the conductor.\n\nUse remotable canonical objects to correlate PCI handles by control\npath, deployable, and PCI address. Reject managed-mode changes while a\nhandle is allocated, and update unallocated metadata through the stale-\nchecked canonical operation. If allocation state changes during the\nupdate, refresh the canonical state and retry once.\n\nPerform the initial discovery and reconciliation synchronously during\nagent startup so an allocated configuration conflict prevents the\nservice from starting. Preserve periodic reporting behavior for later\ntransient failures.\n\nChange-Id: I814124451bd61a7c68f45bc8319e058486ebc399\nSigned-off-by: Sean Mooney \u003cwork@seanmooney.info\u003e\nAssisted-By: pi gpt-5.6-sol\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/9ee6bf20ecfb04ae18fddee2ff7be8dfadce01e1"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/9ee6bf20ecfb04ae18fddee2ff7be8dfadce01e1"}]},"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":""}}}]}
