)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"ffd9a59bb2754896e4cf8dd50cd10c15d8e2c3a4","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     songwenping \u003csongwenping@inspur.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-05-13 02:55:21 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Update rc to placment when rc changed in reporting datas"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When rc is changed in reporting datas, we shoulf first ensure the"},{"line_number":10,"context_line":"resource class exists and then delete the old resource class if no rp"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"67f41dde_6a83f8c2","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":56},"updated":"2021-05-14 03:10:11.000000000","message":"Update rc to placment in reporting datas when rc changed","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"dca799aca46cf8d68ad74358e5007ff44465ba89","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     songwenping \u003csongwenping@inspur.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-05-13 02:55:21 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Update rc to placment when rc changed in reporting datas"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When rc is changed in reporting datas, we shoulf first ensure the"},{"line_number":10,"context_line":"resource class exists and then delete the old resource class if no rp"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"0b590921_ac6e5b64","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":56},"in_reply_to":"67f41dde_6a83f8c2","updated":"2021-05-26 06:50:21.000000000","message":"Done","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"ffd9a59bb2754896e4cf8dd50cd10c15d8e2c3a4","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Update rc to placment when rc changed in reporting datas"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When rc is changed in reporting datas, we shoulf first ensure the"},{"line_number":10,"context_line":"resource class exists and then delete the old resource class if no rp"},{"line_number":11,"context_line":"uses."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1b128f67_416d92e4","line":9,"range":{"start_line":9,"start_character":39,"end_line":9,"end_character":61},"updated":"2021-05-14 03:10:11.000000000","message":"firstly, we should ensure..., and then ...","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"ffd9a59bb2754896e4cf8dd50cd10c15d8e2c3a4","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Update rc to placment when rc changed in reporting datas"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When rc is changed in reporting datas, we shoulf first ensure the"},{"line_number":10,"context_line":"resource class exists and then delete the old resource class if no rp"},{"line_number":11,"context_line":"uses."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"e580731c_2b166e1e","line":9,"range":{"start_line":9,"start_character":42,"end_line":9,"end_character":49},"updated":"2021-05-14 03:10:11.000000000","message":"shuold","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"dca799aca46cf8d68ad74358e5007ff44465ba89","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Update rc to placment when rc changed in reporting datas"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When rc is changed in reporting datas, we shoulf first ensure the"},{"line_number":10,"context_line":"resource class exists and then delete the old resource class if no rp"},{"line_number":11,"context_line":"uses."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ea9ef8ab_4545d3f0","line":9,"range":{"start_line":9,"start_character":39,"end_line":9,"end_character":61},"in_reply_to":"1b128f67_416d92e4","updated":"2021-05-26 06:50:21.000000000","message":"Done","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"dca799aca46cf8d68ad74358e5007ff44465ba89","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Update rc to placment when rc changed in reporting datas"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When rc is changed in reporting datas, we shoulf first ensure the"},{"line_number":10,"context_line":"resource class exists and then delete the old resource class if no rp"},{"line_number":11,"context_line":"uses."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"fec97af9_1ecd5fe4","line":9,"range":{"start_line":9,"start_character":42,"end_line":9,"end_character":49},"in_reply_to":"b66601ac_5abc2975","updated":"2021-05-26 06:50:21.000000000","message":"Done","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"2f7d66fdf0553f9afbd1f9da2f7dec21a033da0a","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Update rc to placment when rc changed in reporting datas"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When rc is changed in reporting datas, we shoulf first ensure the"},{"line_number":10,"context_line":"resource class exists and then delete the old resource class if no rp"},{"line_number":11,"context_line":"uses."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"b66601ac_5abc2975","line":9,"range":{"start_line":9,"start_character":42,"end_line":9,"end_character":49},"in_reply_to":"e580731c_2b166e1e","updated":"2021-05-14 03:11:05.000000000","message":"\u003e shuold\n\ns/should/shuold/","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"ffd9a59bb2754896e4cf8dd50cd10c15d8e2c3a4","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When rc is changed in reporting datas, we shoulf first ensure the"},{"line_number":10,"context_line":"resource class exists and then delete the old resource class if no rp"},{"line_number":11,"context_line":"uses."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Closes-Bug: #1928156"},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"dabf9988_e462510c","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":4},"updated":"2021-05-14 03:10:11.000000000","message":"s/using/uses/","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"dca799aca46cf8d68ad74358e5007ff44465ba89","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When rc is changed in reporting datas, we shoulf first ensure the"},{"line_number":10,"context_line":"resource class exists and then delete the old resource class if no rp"},{"line_number":11,"context_line":"uses."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Closes-Bug: #1928156"},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"0ff23f8a_9dc036d7","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":4},"in_reply_to":"dabf9988_e462510c","updated":"2021-05-26 06:50:21.000000000","message":"Done","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"}],"cyborg/common/placement_client.py":[{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"ffd9a59bb2754896e4cf8dd50cd10c15d8e2c3a4","unresolved":true,"context_lines":[{"line_number":312,"context_line":"        raise exception.ResourceProviderDeletionFailed(uuid\u003drp_uuid)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def delet_rc_by_name(self, context, name):"},{"line_number":315,"context_line":"        \"\"\"Delete resource class for placement by name.\"\"\""},{"line_number":316,"context_line":"        version \u003d \u00271.7\u0027"},{"line_number":317,"context_line":"        resp \u003d self.delete("},{"line_number":318,"context_line":"            \"/resouce_classes/%s\" % name, version\u003dversion,"}],"source_content_type":"text/x-python","patch_set":1,"id":"164c3359_faf01d72","line":315,"range":{"start_line":315,"start_character":33,"end_line":315,"end_character":37},"updated":"2021-05-14 03:10:11.000000000","message":"from","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"dca799aca46cf8d68ad74358e5007ff44465ba89","unresolved":false,"context_lines":[{"line_number":312,"context_line":"        raise exception.ResourceProviderDeletionFailed(uuid\u003drp_uuid)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def delet_rc_by_name(self, context, name):"},{"line_number":315,"context_line":"        \"\"\"Delete resource class for placement by name.\"\"\""},{"line_number":316,"context_line":"        version \u003d \u00271.7\u0027"},{"line_number":317,"context_line":"        resp \u003d self.delete("},{"line_number":318,"context_line":"            \"/resouce_classes/%s\" % name, version\u003dversion,"}],"source_content_type":"text/x-python","patch_set":1,"id":"30cb5daa_a1bb5336","line":315,"range":{"start_line":315,"start_character":33,"end_line":315,"end_character":37},"in_reply_to":"164c3359_faf01d72","updated":"2021-05-26 06:50:21.000000000","message":"Done","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"ffd9a59bb2754896e4cf8dd50cd10c15d8e2c3a4","unresolved":true,"context_lines":[{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def delet_rc_by_name(self, context, name):"},{"line_number":315,"context_line":"        \"\"\"Delete resource class for placement by name.\"\"\""},{"line_number":316,"context_line":"        version \u003d \u00271.7\u0027"},{"line_number":317,"context_line":"        resp \u003d self.delete("},{"line_number":318,"context_line":"            \"/resouce_classes/%s\" % name, version\u003dversion,"},{"line_number":319,"context_line":"            global_request_id\u003dcontext.global_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"893aa0af_a2b96ab9","line":316,"range":{"start_line":316,"start_character":8,"end_line":316,"end_character":23},"updated":"2021-05-14 03:10:11.000000000","message":"There is no microversion limit in placement while you are using \"DELETE /resource_classes/{name}\" API [1], is this 1.7 version necessary?\n\n[1]https://docs.openstack.org/api-ref/placement/?expanded\u003dlist-versions-detail,list-resource-providers-detail,delete-resource-class-detail,list-resource-provider-inventories-detail,update-resource-provider-inventories-detail,delete-resource-provider-inventories-detail,show-resource-provider-inventory-detail,update-resource-provider-inventory-detail,delete-resource-provider-inventory-detail,list-resource-provider-aggregates-detail,update-resource-provider-aggregates-detail,list-traits-detail,show-traits-detail,update-traits-detail,delete-traits-detail,list-resource-provider-traits-detail,update-resource-provider-traits-detail,delete-resource-provider-traits-detail,manage-allocations-detail,list-allocations-detail,update-allocations-detail,delete-allocations-detail,list-resource-provider-allocations-detail,list-usages-detail,list-resource-provider-usages-detail,list-allocation-candidates-detail,id87-detail,update-resource-class-microversions-1-2-1-6-detail#delete-resource-class","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"dca799aca46cf8d68ad74358e5007ff44465ba89","unresolved":true,"context_lines":[{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def delet_rc_by_name(self, context, name):"},{"line_number":315,"context_line":"        \"\"\"Delete resource class for placement by name.\"\"\""},{"line_number":316,"context_line":"        version \u003d \u00271.7\u0027"},{"line_number":317,"context_line":"        resp \u003d self.delete("},{"line_number":318,"context_line":"            \"/resouce_classes/%s\" % name, version\u003dversion,"},{"line_number":319,"context_line":"            global_request_id\u003dcontext.global_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"c52b61a0_f22783f3","line":316,"range":{"start_line":316,"start_character":8,"end_line":316,"end_character":23},"in_reply_to":"893aa0af_a2b96ab9","updated":"2021-05-26 06:50:21.000000000","message":"yes, we neednot version to delete resource class.","commit_id":"9b5f20d27da85e3f81b1a50373dee2ddc4f0b6d3"},{"author":{"_account_id":30395,"name":"Arthur Dayne","display_name":"Arthur Dayne","email":"palagend@foxmail.com","username":"acewit"},"change_message_id":"3299d08ba91dae5759092c473d3986001a3d3493","unresolved":true,"context_lines":[{"line_number":311,"context_line":"            raise exception.ResourceProviderInUse()"},{"line_number":312,"context_line":"        raise exception.ResourceProviderDeletionFailed(uuid\u003drp_uuid)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def delet_rc_by_name(self, context, name):"},{"line_number":315,"context_line":"        \"\"\"Delete resource class from placement by name.\"\"\""},{"line_number":316,"context_line":"        resp \u003d self.delete("},{"line_number":317,"context_line":"            \"/resouce_classes/%s\" % name, global_request_id\u003dcontext.global_id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"b0f7ce0b_4238c6b6","line":314,"range":{"start_line":314,"start_character":8,"end_line":314,"end_character":13},"updated":"2021-05-27 06:06:39.000000000","message":"nit:delete?","commit_id":"9c126b0865b6d01651d46797a7749d4c09cb99f5"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"34e0bd9ef0f2c718ca3680feb44947d5a6487092","unresolved":true,"context_lines":[{"line_number":311,"context_line":"            raise exception.ResourceProviderInUse()"},{"line_number":312,"context_line":"        raise exception.ResourceProviderDeletionFailed(uuid\u003drp_uuid)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def delet_rc_by_name(self, context, name):"},{"line_number":315,"context_line":"        \"\"\"Delete resource class from placement by name.\"\"\""},{"line_number":316,"context_line":"        resp \u003d self.delete("},{"line_number":317,"context_line":"            \"/resouce_classes/%s\" % name, global_request_id\u003dcontext.global_id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"d7fb1c06_c6b6ab8d","line":314,"range":{"start_line":314,"start_character":8,"end_line":314,"end_character":13},"in_reply_to":"b0f7ce0b_4238c6b6","updated":"2021-05-29 01:54:53.000000000","message":"+1","commit_id":"9c126b0865b6d01651d46797a7749d4c09cb99f5"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"f045f3d171228fa532592da1c77e0b540a924b40","unresolved":false,"context_lines":[{"line_number":311,"context_line":"            raise exception.ResourceProviderInUse()"},{"line_number":312,"context_line":"        raise exception.ResourceProviderDeletionFailed(uuid\u003drp_uuid)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def delet_rc_by_name(self, context, name):"},{"line_number":315,"context_line":"        \"\"\"Delete resource class from placement by name.\"\"\""},{"line_number":316,"context_line":"        resp \u003d self.delete("},{"line_number":317,"context_line":"            \"/resouce_classes/%s\" % name, global_request_id\u003dcontext.global_id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"d5d22ed5_12b48b02","line":314,"range":{"start_line":314,"start_character":8,"end_line":314,"end_character":13},"in_reply_to":"d7fb1c06_c6b6ab8d","updated":"2021-05-29 02:37:34.000000000","message":"Done","commit_id":"9c126b0865b6d01651d46797a7749d4c09cb99f5"}],"cyborg/conductor/manager.py":[{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"02dbecc6dec3273c02fb86179ea0e8a58db9834b","unresolved":true,"context_lines":[{"line_number":319,"context_line":"                        context, [new_driver_attr_obj.value])"},{"line_number":320,"context_line":"                    inv_data \u003d _gen_resource_inventory("},{"line_number":321,"context_line":"                        new_driver_attr_obj.value, dep_obj.num_accelerators)"},{"line_number":322,"context_line":"                    self.placement_client.update_inventory(rp_uuid, inv_data)"},{"line_number":323,"context_line":"                    self.placement_client.delet_rc_by_name("},{"line_number":324,"context_line":"                        context, old_driver_attr_obj.value)"},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"    @classmethod"},{"line_number":327,"context_line":"    def drv_ah_make_diff(cls, context, dep_id, cpid_id, old_driver_ah_list,"}],"source_content_type":"text/x-python","patch_set":2,"id":"c05253d5_644eb194","line":324,"range":{"start_line":322,"start_character":0,"end_line":324,"end_character":59},"updated":"2021-05-26 10:40:50.000000000","message":"same question as the trait, how can we make sure the rc is not used by others.","commit_id":"9c126b0865b6d01651d46797a7749d4c09cb99f5"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"34e0bd9ef0f2c718ca3680feb44947d5a6487092","unresolved":true,"context_lines":[{"line_number":319,"context_line":"                        context, [new_driver_attr_obj.value])"},{"line_number":320,"context_line":"                    inv_data \u003d _gen_resource_inventory("},{"line_number":321,"context_line":"                        new_driver_attr_obj.value, dep_obj.num_accelerators)"},{"line_number":322,"context_line":"                    self.placement_client.update_inventory(rp_uuid, inv_data)"},{"line_number":323,"context_line":"                    self.placement_client.delet_rc_by_name("},{"line_number":324,"context_line":"                        context, old_driver_attr_obj.value)"},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"    @classmethod"},{"line_number":327,"context_line":"    def drv_ah_make_diff(cls, context, dep_id, cpid_id, old_driver_ah_list,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5029f68f_42fe49a9","line":324,"range":{"start_line":322,"start_character":0,"end_line":324,"end_character":59},"in_reply_to":"279404c3_26dc4c25","updated":"2021-05-29 01:54:53.000000000","message":"Agree dealing it keep in placement, if there is a conflict when we want to delete the using rp, it will rais conflict(409).","commit_id":"9c126b0865b6d01651d46797a7749d4c09cb99f5"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"f045f3d171228fa532592da1c77e0b540a924b40","unresolved":false,"context_lines":[{"line_number":319,"context_line":"                        context, [new_driver_attr_obj.value])"},{"line_number":320,"context_line":"                    inv_data \u003d _gen_resource_inventory("},{"line_number":321,"context_line":"                        new_driver_attr_obj.value, dep_obj.num_accelerators)"},{"line_number":322,"context_line":"                    self.placement_client.update_inventory(rp_uuid, inv_data)"},{"line_number":323,"context_line":"                    self.placement_client.delet_rc_by_name("},{"line_number":324,"context_line":"                        context, old_driver_attr_obj.value)"},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"    @classmethod"},{"line_number":327,"context_line":"    def drv_ah_make_diff(cls, context, dep_id, cpid_id, old_driver_ah_list,"}],"source_content_type":"text/x-python","patch_set":2,"id":"68425348_04b994d2","line":324,"range":{"start_line":322,"start_character":0,"end_line":324,"end_character":59},"in_reply_to":"5029f68f_42fe49a9","updated":"2021-05-29 02:37:34.000000000","message":"Done","commit_id":"9c126b0865b6d01651d46797a7749d4c09cb99f5"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"d4fc9e13f7a57b7e731b88809ef16e496ef9a3a4","unresolved":true,"context_lines":[{"line_number":319,"context_line":"                        context, [new_driver_attr_obj.value])"},{"line_number":320,"context_line":"                    inv_data \u003d _gen_resource_inventory("},{"line_number":321,"context_line":"                        new_driver_attr_obj.value, dep_obj.num_accelerators)"},{"line_number":322,"context_line":"                    self.placement_client.update_inventory(rp_uuid, inv_data)"},{"line_number":323,"context_line":"                    self.placement_client.delet_rc_by_name("},{"line_number":324,"context_line":"                        context, old_driver_attr_obj.value)"},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"    @classmethod"},{"line_number":327,"context_line":"    def drv_ah_make_diff(cls, context, dep_id, cpid_id, old_driver_ah_list,"}],"source_content_type":"text/x-python","patch_set":2,"id":"279404c3_26dc4c25","line":324,"range":{"start_line":322,"start_character":0,"end_line":324,"end_character":59},"in_reply_to":"c05253d5_644eb194","updated":"2021-05-27 01:46:38.000000000","message":"the important thing is to update the rp inventory.\nwe neednot check whether the trait is used, if it is used, placement will raise 409 error when we delete it.","commit_id":"9c126b0865b6d01651d46797a7749d4c09cb99f5"}]}
