)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"6cf8d343ce5e418c0035a6f12061752696364af5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b785591c_1f50a2c3","updated":"2021-12-10 14:20:56.000000000","message":"-1 is mainly because you have not mentioned the restore instance action.\n\notherwise im largely ok with this as is.","commit_id":"cf6e99d363fd458da990135328c83e10bd5bbfdf"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"52608d84662f6cd8e344a96e94bb40ff1fd955d1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"684fac4d_0d03f16f","updated":"2021-12-13 11:03:20.000000000","message":"This looks good to me. It correctly gathers what we agreed over IRC.","commit_id":"3107b8f140cc70586174dec8f3d08085e72b07d8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"f3e75fe9d916eef83721e0b2accfc3a0a17669d0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"d41b4e29_edc1a54a","updated":"2021-12-13 12:40:07.000000000","message":"still looks good","commit_id":"3706e912908f102c9afe315fdb37cd1ea24b7eaa"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"048682a10058ccff25e9f2f5f8f4472043ac5b51","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"618d4f35_0d2b3d69","updated":"2021-12-13 14:04:00.000000000","message":"upgrading to +w","commit_id":"3706e912908f102c9afe315fdb37cd1ea24b7eaa"}],"specs/yoga/approved/soft-delete-instance-action.rst":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"6cf8d343ce5e418c0035a6f12061752696364af5","unresolved":true,"context_lines":[{"line_number":16,"context_line":"Problem description"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Actually when an instance is soft-deleted the related instance actions are not"},{"line_number":20,"context_line":"soft-deleted to allow the operator to get the history of actions taken on the"},{"line_number":21,"context_line":"instance, especially who soft-deleted the instance."},{"line_number":22,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"4b444029_112fbb4a","line":19,"range":{"start_line":19,"start_character":0,"end_line":19,"end_character":8},"updated":"2021-12-10 14:20:56.000000000","message":"Currently","commit_id":"cf6e99d363fd458da990135328c83e10bd5bbfdf"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"6cf8d343ce5e418c0035a6f12061752696364af5","unresolved":true,"context_lines":[{"line_number":49,"context_line":"When we soft-delete an instance we have to soft-delete all the instance actions"},{"line_number":50,"context_line":"tables (instance_actions, instance_actions_events) referencing the soft-deleted"},{"line_number":51,"context_line":"instance."},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"**Impacts on nova-manage**"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"* nova-manage db archive_deleted_rows"}],"source_content_type":"text/x-rst","patch_set":2,"id":"8e765465_76a3223c","line":52,"updated":"2021-12-10 14:20:56.000000000","message":"you also need to change instance restore to restore the instance actions","commit_id":"cf6e99d363fd458da990135328c83e10bd5bbfdf"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"6cf8d343ce5e418c0035a6f12061752696364af5","unresolved":true,"context_lines":[{"line_number":84,"context_line":"Data model impact"},{"line_number":85,"context_line":"-----------------"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"None"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"REST API impact"},{"line_number":90,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"8931749f_bc9f5145","line":87,"range":{"start_line":87,"start_character":0,"end_line":87,"end_character":4},"updated":"2021-12-10 14:20:56.000000000","message":"just for context its none because the instnace actions are already marked as soft deleable we jsut dont\ndo it so there are no schema or object changes required.","commit_id":"cf6e99d363fd458da990135328c83e10bd5bbfdf"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"6cf8d343ce5e418c0035a6f12061752696364af5","unresolved":true,"context_lines":[{"line_number":89,"context_line":"REST API impact"},{"line_number":90,"context_line":"---------------"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"None"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"Security impact"},{"line_number":95,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"304c894b_2d8d7de0","line":92,"range":{"start_line":92,"start_character":0,"end_line":92,"end_character":4},"updated":"2021-12-10 14:20:56.000000000","message":"and this is also correct there will be no visible API change \nthe API will continue to return both the soft-deleted and not deleted actions.\nas the deleted state is not returned in the api responce https://docs.openstack.org/api-ref/compute/?expanded\u003dlist-actions-for-server-detail#id166 it will not impact the api in any way","commit_id":"cf6e99d363fd458da990135328c83e10bd5bbfdf"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"29d508bd7e3494e61e5db0de163d3a74a4bc048d","unresolved":true,"context_lines":[{"line_number":99,"context_line":"Notifications impact"},{"line_number":100,"context_line":"--------------------"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"None"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"Other end user impact"},{"line_number":105,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"8b43c8e8_ed4580ae","line":102,"range":{"start_line":102,"start_character":0,"end_line":102,"end_character":4},"updated":"2021-12-10 14:21:56.000000000","message":"one thing i am wondering about is do we include the instance action in any notifications\nand if so whould hte soft deleted status be visable","commit_id":"cf6e99d363fd458da990135328c83e10bd5bbfdf"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"6cf8d343ce5e418c0035a6f12061752696364af5","unresolved":true,"context_lines":[{"line_number":165,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"Can be tested with unit and functional tests."},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"Documentation Impact"},{"line_number":170,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":171,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ddab3975_3c588d65","line":168,"updated":"2021-12-10 14:20:56.000000000","message":"yes it can although it would be good to also ensure that the api sample tests do not need to be modified\nsince this should not have any visible api change.","commit_id":"cf6e99d363fd458da990135328c83e10bd5bbfdf"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3bd5b1d5a579b3ad6533781107249853f3572992","unresolved":true,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"* As an operator I want the instance actions to be soft-deleted when an"},{"line_number":34,"context_line":"  instance is deleted."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Proposed change"},{"line_number":37,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"d01e1429_c0fc7b85","line":35,"updated":"2021-12-13 14:06:59.000000000","message":"Good to different usecases","commit_id":"3107b8f140cc70586174dec8f3d08085e72b07d8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"52608d84662f6cd8e344a96e94bb40ff1fd955d1","unresolved":true,"context_lines":[{"line_number":64,"context_line":"on instances table only. Data on children tables are selected according to the"},{"line_number":65,"context_line":"selected instances."},{"line_number":66,"context_line":"It means that in shadow tables instance actions are not soft deleted, data are"},{"line_number":67,"context_line":"basically moved from main table to sahdow table."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* nova-manage db purge"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"c60ab7ad_db5f761e","line":67,"range":{"start_line":67,"start_character":35,"end_line":67,"end_character":41},"updated":"2021-12-13 11:03:20.000000000","message":"nit:shadow","commit_id":"3107b8f140cc70586174dec8f3d08085e72b07d8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"52608d84662f6cd8e344a96e94bb40ff1fd955d1","unresolved":true,"context_lines":[{"line_number":100,"context_line":""},{"line_number":101,"context_line":"None"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"The API will continue du return both soft-deleted and not deleted actions."},{"line_number":104,"context_line":"As the deleted state is not returned in the api response it won\u0027t impact the"},{"line_number":105,"context_line":"API."},{"line_number":106,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"d3a55efd_5bc83028","line":103,"range":{"start_line":103,"start_character":22,"end_line":103,"end_character":24},"updated":"2021-12-13 11:03:20.000000000","message":"nit:to","commit_id":"3107b8f140cc70586174dec8f3d08085e72b07d8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"52608d84662f6cd8e344a96e94bb40ff1fd955d1","unresolved":true,"context_lines":[{"line_number":178,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"Can be tested with unit and functional tests."},{"line_number":181,"context_line":"We should also verify if API sample tests need to be modifiedsince this souhld"},{"line_number":182,"context_line":"not have any visible api change."},{"line_number":183,"context_line":""},{"line_number":184,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"eb937d8c_ac5fa564","line":181,"range":{"start_line":181,"start_character":53,"end_line":181,"end_character":66},"updated":"2021-12-13 11:03:20.000000000","message":"nit: modified since","commit_id":"3107b8f140cc70586174dec8f3d08085e72b07d8"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"52608d84662f6cd8e344a96e94bb40ff1fd955d1","unresolved":true,"context_lines":[{"line_number":178,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"Can be tested with unit and functional tests."},{"line_number":181,"context_line":"We should also verify if API sample tests need to be modifiedsince this souhld"},{"line_number":182,"context_line":"not have any visible api change."},{"line_number":183,"context_line":""},{"line_number":184,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"cbb667b1_5f4af0b8","line":181,"range":{"start_line":181,"start_character":72,"end_line":181,"end_character":78},"updated":"2021-12-13 11:03:20.000000000","message":"nit:should","commit_id":"3107b8f140cc70586174dec8f3d08085e72b07d8"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3bd5b1d5a579b3ad6533781107249853f3572992","unresolved":true,"context_lines":[{"line_number":31,"context_line":"  deleted instance."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"* As an operator I want the instance actions to be soft-deleted when an"},{"line_number":34,"context_line":"  instance is deleted."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Proposed change"},{"line_number":37,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"fb884fdd_11276f0c","line":34,"updated":"2021-12-13 14:06:59.000000000","message":"Good use cases...","commit_id":"3706e912908f102c9afe315fdb37cd1ea24b7eaa"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"b0ef206f23bb507c0f31ee6743fd89657c58b840","unresolved":true,"context_lines":[{"line_number":54,"context_line":""},{"line_number":55,"context_line":"When restoring an instance we have to restore instance_actions and"},{"line_number":56,"context_line":"instance_actions_events too."},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"**Impacts on nova-manage**"},{"line_number":60,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"217c6095_1540b784","line":57,"updated":"2021-12-13 12:54:26.000000000","message":"+1","commit_id":"3706e912908f102c9afe315fdb37cd1ea24b7eaa"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3bd5b1d5a579b3ad6533781107249853f3572992","unresolved":true,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"We could add a command to nova-manage db that will update the existing instance"},{"line_number":86,"context_line":"action that should be soft deleted. This implies an upgrade step which is much"},{"line_number":87,"context_line":"more tricky than the proposed change."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"Data model impact"}],"source_content_type":"text/x-rst","patch_set":4,"id":"dc67aa16_0b19a84a","line":87,"updated":"2021-12-13 14:06:59.000000000","message":"OK, thanks.","commit_id":"3706e912908f102c9afe315fdb37cd1ea24b7eaa"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3bd5b1d5a579b3ad6533781107249853f3572992","unresolved":true,"context_lines":[{"line_number":138,"context_line":"--------------"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"None as long as we do not choose the alternative."},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"Implementation"},{"line_number":143,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":144,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"df5adb2b_d753d742","line":141,"updated":"2021-12-13 14:06:59.000000000","message":"Indeed, thanks for explaining it.","commit_id":"3706e912908f102c9afe315fdb37cd1ea24b7eaa"}]}
