)]}'
{"openstackclient/accelerator/v2/accelerator_request.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"e830c61da5192db2e8158ce3b2f4d7d52f566c6d","unresolved":true,"context_lines":[{"line_number":85,"context_line":"                \"UUID of the device resource provider to \""},{"line_number":86,"context_line":"                \"bind the accelerator request to\""},{"line_number":87,"context_line":"            ),"},{"line_number":88,"context_line":"        )"},{"line_number":89,"context_line":"        return parser"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def take_action("}],"source_content_type":"text/x-python","patch_set":1,"id":"c1bd169b_cb4b6146","line":88,"updated":"2026-09-21 20:18:15.000000000","message":"Just to confirm: as those arguments optional or required? If the latter, you can simply rename positional arguments. The change will be reflected in the help text but not at runtime.","commit_id":"f8f4515a2382b002a1ec7413d2cc5e0aecd22de0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"a5cd7599cdf13d09aa64acdde3dedb47bf9c9471","unresolved":false,"context_lines":[{"line_number":85,"context_line":"                \"UUID of the device resource provider to \""},{"line_number":86,"context_line":"                \"bind the accelerator request to\""},{"line_number":87,"context_line":"            ),"},{"line_number":88,"context_line":"        )"},{"line_number":89,"context_line":"        return parser"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def take_action("}],"source_content_type":"text/x-python","patch_set":1,"id":"fe134208_77d4964d","line":88,"in_reply_to":"8988fb5e_a6d5b285","updated":"2026-09-22 02:55:06.000000000","message":"Done","commit_id":"f8f4515a2382b002a1ec7413d2cc5e0aecd22de0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"c2224d4be2108fc52d5a5ed5137587f6f554e879","unresolved":true,"context_lines":[{"line_number":85,"context_line":"                \"UUID of the device resource provider to \""},{"line_number":86,"context_line":"                \"bind the accelerator request to\""},{"line_number":87,"context_line":"            ),"},{"line_number":88,"context_line":"        )"},{"line_number":89,"context_line":"        return parser"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def take_action("}],"source_content_type":"text/x-python","patch_set":1,"id":"8988fb5e_a6d5b285","line":88,"in_reply_to":"c1bd169b_cb4b6146","updated":"2026-09-22 02:12:41.000000000","message":"Hm yeah, it seems none were actually optional so they could all be renamed. Will update.","commit_id":"f8f4515a2382b002a1ec7413d2cc5e0aecd22de0"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"e830c61da5192db2e8158ce3b2f4d7d52f566c6d","unresolved":true,"context_lines":[{"line_number":105,"context_line":"                \"The \u0027instance_uuid\u0027 positional argument has been \""},{"line_number":106,"context_line":"                \"deprecated. Please use the \u0027--server\u0027 option instead.\""},{"line_number":107,"context_line":"            )"},{"line_number":108,"context_line":"            instance_uuid \u003d parsed_args.instance_uuid"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"        device_rp_uuid \u003d parsed_args.resource_provider"},{"line_number":111,"context_line":"        if parsed_args.device_rp_uuid:"}],"source_content_type":"text/x-python","patch_set":1,"id":"0c823b41_58a0a852","line":108,"updated":"2026-09-21 20:18:15.000000000","message":"So what I was suggested in the earlier PR was to change this to e.g.\n\n\n```suggestion\n            instance_id \u003d compute_proxy.find_server(\n                parsed_args.instance_uuid, ignore_missing\u003dFalse\n            )\n```\n\nThat was people can call this with e.g. `\"my server name\"` and it\u0027ll \"just work(TM)\"","commit_id":"f8f4515a2382b002a1ec7413d2cc5e0aecd22de0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"a5cd7599cdf13d09aa64acdde3dedb47bf9c9471","unresolved":false,"context_lines":[{"line_number":105,"context_line":"                \"The \u0027instance_uuid\u0027 positional argument has been \""},{"line_number":106,"context_line":"                \"deprecated. Please use the \u0027--server\u0027 option instead.\""},{"line_number":107,"context_line":"            )"},{"line_number":108,"context_line":"            instance_uuid \u003d parsed_args.instance_uuid"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"        device_rp_uuid \u003d parsed_args.resource_provider"},{"line_number":111,"context_line":"        if parsed_args.device_rp_uuid:"}],"source_content_type":"text/x-python","patch_set":1,"id":"fb1b32b0_444f2e6a","line":108,"in_reply_to":"0c823b41_58a0a852","updated":"2026-09-22 02:55:06.000000000","message":"Done","commit_id":"f8f4515a2382b002a1ec7413d2cc5e0aecd22de0"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":126,"context_line":"            dest\u003d\u0027group_id\u0027,"},{"line_number":127,"context_line":"            help\u003dargparse.SUPPRESS,"},{"line_number":128,"context_line":"        )"},{"line_number":129,"context_line":"        # Deprecated: has no SDK Body mapping; silently dropped"},{"line_number":130,"context_line":"        parser.add_argument("},{"line_number":131,"context_line":"            \u0027--image-uuid\u0027,"},{"line_number":132,"context_line":"            dest\u003d\u0027img_uuid\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"809fdc00_8ada6ff9","line":129,"updated":"2026-09-22 09:34:20.000000000","message":"Just to be clear, is this simply a feature gap/bug in SDK or something we don\u0027t want to/can\u0027t support? The comment suggests the former","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"40a18c043d9ed393f7af7b64e647593eb0d76c7c","unresolved":true,"context_lines":[{"line_number":126,"context_line":"            dest\u003d\u0027group_id\u0027,"},{"line_number":127,"context_line":"            help\u003dargparse.SUPPRESS,"},{"line_number":128,"context_line":"        )"},{"line_number":129,"context_line":"        # Deprecated: has no SDK Body mapping; silently dropped"},{"line_number":130,"context_line":"        parser.add_argument("},{"line_number":131,"context_line":"            \u0027--image-uuid\u0027,"},{"line_number":132,"context_line":"            dest\u003d\u0027img_uuid\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"1c2c424e_ebc63fc0","line":129,"in_reply_to":"809fdc00_8ada6ff9","updated":"2026-09-22 14:46:29.000000000","message":"It appears to be a feature gap ... everywhere. On the Cyborg API side, it\u0027s mentioned only in a code comment as a future desired parameter [1]:\n\n```\n    @authorize_wsgi.authorize_wsgi(\"cyborg:arq\", \"create\")\n    @expose.expose(\n        ARQCollection, body\u003dtypes.jsontype, status_code\u003dHTTPStatus.CREATED\n    )\n    def post(self, req):\n        \"\"\"Create one or more ARQs for a single device profile.\n        Request body:\n           { \u0027device_profile_name\u0027: \u003cstring\u003e }\n        Future:\n           { \u0027device_profile_name\u0027: \u003cstring\u003e # required\n             \u0027device_profile_group_id\u0027: \u003cinteger\u003e, # opt, default\u003d0\n             \u0027image_uuid\u0027: \u003cglance-image-UUID\u003e, #optional, for future\n           }\n        :param req: request body.\n        \"\"\"\n```\n\nSame with group_id, indicated as desired in the future but there is no support on the server side.\n\n[1] https://github.com/openstack/cyborg/blob/dfa0b80ca7060a799db191f73c32b5d9bd577103/cyborg/api/controllers/v2/arqs.py#L160","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"}],"openstackclient/accelerator/v2/attribute.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"802c1b21_147d3305","updated":"2026-09-22 09:34:20.000000000","message":"As a meta point, attributes feel very much like metadata properties. I assume there\u0027s a reason they weren\u0027t modeled that way? Being able to retrieve attributes as part of the e.g. `GET /deployables` API would be nice.\n\nLater: or maybe we can already do that? I see a `attributes_list` field in [the api-ref](https://docs.openstack.org/api-ref/accelerator/#list-deployables). Would it make more sense to add `SetDeployable` / `UnsetDeployable` commands at some point?\n\n```\nopenstack deployable set --attribute foo\u003dbar ...\nopenstack deployable unset --attribute foo ...\nopenstack deployable unset --all-attributes ...\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"40a18c043d9ed393f7af7b64e647593eb0d76c7c","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"7cbf7ea0_b257017a","in_reply_to":"802c1b21_147d3305","updated":"2026-09-22 14:46:29.000000000","message":"I don\u0027t know the details but it\u0027s a known issue that the attributes API spec [1] shows it was supposed to have been implemented that way `/v2/deployable/{uuid}/attribute` but that is not what ended up being merged. And I\u0027m not sure anyone who is around now knows the reason for it.\n\nI think it is a desired but distant TODO item from the Cyborg team perspective, to fix that and provide the implementation shown in the spec, and deprecate the existing `/v2/attributes` API.\n\n[1] https://specs.openstack.org/openstack/cyborg-specs/specs/2023.2/implemented/attribute-api-support.html","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"}],"openstackclient/accelerator/v2/deployable.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":100,"context_line":"        parser.add_argument("},{"line_number":101,"context_line":"            \u0027deployable\u0027,"},{"line_number":102,"context_line":"            metavar\u003d\u0027\u003cdeployable\u003e\u0027,"},{"line_number":103,"context_line":"            help\u003d_(\"The deployable to reconfigure\"),"},{"line_number":104,"context_line":"        )"},{"line_number":105,"context_line":"        parser.add_argument("},{"line_number":106,"context_line":"            \u0027image\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"e2648c19_5388d9dc","line":103,"updated":"2026-09-22 09:34:20.000000000","message":"This can be a name or ID, right?\n\n```suggestion\n            help\u003d_(\"The deployable to reconfigure (name or ID)\"),\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"40a18c043d9ed393f7af7b64e647593eb0d76c7c","unresolved":true,"context_lines":[{"line_number":100,"context_line":"        parser.add_argument("},{"line_number":101,"context_line":"            \u0027deployable\u0027,"},{"line_number":102,"context_line":"            metavar\u003d\u0027\u003cdeployable\u003e\u0027,"},{"line_number":103,"context_line":"            help\u003d_(\"The deployable to reconfigure\"),"},{"line_number":104,"context_line":"        )"},{"line_number":105,"context_line":"        parser.add_argument("},{"line_number":106,"context_line":"            \u0027image\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"81a60cee_b775fa4f","line":103,"in_reply_to":"e2648c19_5388d9dc","updated":"2026-09-22 14:46:29.000000000","message":"I think no because there is no SDK find method for it -- there are no `find_*` methods implemented in the SDK accelerator proxy yet:\n\nhttps://github.com/openstack/openstacksdk/blob/c82a966559634399fa20a0ac53cace0142f10fd4/openstack/accelerator/v2/_proxy.py\n\nSo currently, it\u0027s not really accurate to say \"(name of ID)\" for any of these.","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":113,"context_line":"        self, parsed_args: argparse.Namespace"},{"line_number":114,"context_line":"    ) -\u003e tuple[Sequence[str], Iterable[Any]]:"},{"line_number":115,"context_line":"        acc_client \u003d self.app.client_manager.accelerator"},{"line_number":116,"context_line":"        dep_uuid \u003d parsed_args.deployable"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"        acc_client.get_deployable(dep_uuid)"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"        image_client \u003d self.app.client_manager.image"},{"line_number":121,"context_line":"        image_uuid \u003d parsed_args.image"}],"source_content_type":"text/x-python","patch_set":2,"id":"ec47421f_6da2d597","line":118,"range":{"start_line":116,"start_character":0,"end_line":118,"end_character":43},"updated":"2026-09-22 09:34:20.000000000","message":"Deployable\u0027s have a name attribute (per [the api-ref](https://docs.openstack.org/api-ref/accelerator/#list-deployables)) so we should probably use `find_` here?\n\n```suggestion\n        dep_uuid \u003d acc_client.find_deployable(\n            parsed_args.deployable, ignore_missing\u003dFalse\n        ).id\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":145,"context_line":"        parser.add_argument("},{"line_number":146,"context_line":"            \u0027deployable\u0027,"},{"line_number":147,"context_line":"            metavar\u003d\u0027\u003cdeployable\u003e\u0027,"},{"line_number":148,"context_line":"            help\u003d_(\"The deployable\"),"},{"line_number":149,"context_line":"        )"},{"line_number":150,"context_line":"        return parser"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7967cc9a_2b447ad4","line":148,"updated":"2026-09-22 09:34:20.000000000","message":"```suggestion\n            help\u003d_(\"The deployable to show (name or ID)\"),\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":153,"context_line":"        self, parsed_args: argparse.Namespace"},{"line_number":154,"context_line":"    ) -\u003e tuple[Sequence[str], Iterable[Any]]:"},{"line_number":155,"context_line":"        acc_client \u003d self.app.client_manager.accelerator"},{"line_number":156,"context_line":"        deployable \u003d acc_client.get_deployable(parsed_args.deployable)"},{"line_number":157,"context_line":"        return _format_deployable(deployable)"}],"source_content_type":"text/x-python","patch_set":2,"id":"2e64f91c_8ed5cfbd","line":156,"updated":"2026-09-22 09:34:20.000000000","message":"as above?\n\n```suggestion\n        deployable \u003d acc_client.find_deployable(\n            parsed_args.deployable, ignore_missing\u003dFalse\n        )\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"}],"openstackclient/accelerator/v2/device.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":95,"context_line":"        parser.add_argument("},{"line_number":96,"context_line":"            \u0027device\u0027,"},{"line_number":97,"context_line":"            metavar\u003d\u0027\u003cdevice\u003e\u0027,"},{"line_number":98,"context_line":"            help\u003d_(\"The device\"),"},{"line_number":99,"context_line":"        )"},{"line_number":100,"context_line":"        return parser"},{"line_number":101,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"0cf29169_ad7e829c","line":98,"updated":"2026-09-22 09:34:20.000000000","message":"```suggestion\n            help\u003d_(\"The device to show (ID)\"),\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"}],"openstackclient/accelerator/v2/device_profile.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":122,"context_line":"            \u0027device_profiles\u0027,"},{"line_number":123,"context_line":"            metavar\u003d\u0027\u003cdevice_profile\u003e\u0027,"},{"line_number":124,"context_line":"            nargs\u003d\u0027+\u0027,"},{"line_number":125,"context_line":"            help\u003d_(\"The device profile(s) to delete\"),"},{"line_number":126,"context_line":"        )"},{"line_number":127,"context_line":"        return parser"},{"line_number":128,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"d36ab78b_d384db12","line":125,"updated":"2026-09-22 09:34:20.000000000","message":"```suggestion\n            help\u003d_(\"The device profile(s) to delete (name or ID)\"),\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    def take_action(self, parsed_args: argparse.Namespace) -\u003e None:"},{"line_number":130,"context_line":"        acc_client \u003d self.app.client_manager.accelerator"},{"line_number":131,"context_line":"        result \u003d 0"},{"line_number":132,"context_line":"        for uuid in parsed_args.device_profiles:"},{"line_number":133,"context_line":"            try:"},{"line_number":134,"context_line":"                acc_client.delete_device_profile(uuid, ignore_missing\u003dFalse)"},{"line_number":135,"context_line":"            except Exception as e:"},{"line_number":136,"context_line":"                result +\u003d 1"},{"line_number":137,"context_line":"                LOG.error("}],"source_content_type":"text/x-python","patch_set":2,"id":"1c63c17c_00a5badd","line":134,"range":{"start_line":131,"start_character":18,"end_line":134,"end_character":76},"updated":"2026-09-22 09:34:20.000000000","message":"```suggestion\n        result \u003d 0\n        for device_profile in parsed_args.device_profiles:\n            try:\n                uuid \u003d acc_client.find_device_profile(\n                    device_profile, ignore_missing\u003dFalse\n                ).id\n                acc_client.delete_device_profile(uuid, ignore_missing\u003dFalse)\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":192,"context_line":"        parser.add_argument("},{"line_number":193,"context_line":"            \u0027device_profile\u0027,"},{"line_number":194,"context_line":"            metavar\u003d\u0027\u003cdevice_profile\u003e\u0027,"},{"line_number":195,"context_line":"            help\u003d_(\"The device profile\"),"},{"line_number":196,"context_line":"        )"},{"line_number":197,"context_line":"        return parser"},{"line_number":198,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"c755b1c0_54fd79be","line":195,"updated":"2026-09-22 09:34:20.000000000","message":"```suggestion\n            help\u003d_(\"The device profile to show (name or ID)\"),\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"59b0629d4b7887e39dca467aad019a3d0097dc29","unresolved":true,"context_lines":[{"line_number":200,"context_line":"        self, parsed_args: argparse.Namespace"},{"line_number":201,"context_line":"    ) -\u003e tuple[Sequence[str], Iterable[Any]]:"},{"line_number":202,"context_line":"        acc_client \u003d self.app.client_manager.accelerator"},{"line_number":203,"context_line":"        device_profile \u003d acc_client.get_device_profile("},{"line_number":204,"context_line":"            parsed_args.device_profile"},{"line_number":205,"context_line":"        )"},{"line_number":206,"context_line":"        return _format_device_profile(device_profile)"}],"source_content_type":"text/x-python","patch_set":2,"id":"de2eee24_04e2debf","line":205,"range":{"start_line":203,"start_character":1,"end_line":205,"end_character":9},"updated":"2026-09-22 09:34:20.000000000","message":"```suggestion\n        device_profile \u003d acc_client.find_device_profile(\n            parsed_args.device_profile, ignore_missing\u003dFalse\n        )\n```","commit_id":"51462b5fa7017ea6d9c6089b8915f74213506798"}]}
