)]}'
{"specs/ocata/approved/audit-versioned-notifications-api.rst":[{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"8bea20404b2f3a80d113182ed112291572bd46c1","unresolved":false,"context_lines":[{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"As of now, there is no way for any service (Watcher included) to know when an"},{"line_number":22,"context_line":"audit has been modified. This prevents any form of event-based reaction which"},{"line_number":23,"context_line":"may be useful for 3rd party services or plugins."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"Use Cases"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_3f3ce8e1","line":22,"range":{"start_line":22,"start_character":15,"end_line":22,"end_character":23},"updated":"2016-10-12 09:46:24.000000000","message":"created, modified or deleted ?","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"As of now, there is no way for any service (Watcher included) to know when an"},{"line_number":22,"context_line":"audit has been modified. This prevents any form of event-based reaction which"},{"line_number":23,"context_line":"may be useful for 3rd party services or plugins."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"Use Cases"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_8659195d","line":22,"range":{"start_line":22,"start_character":15,"end_line":22,"end_character":23},"in_reply_to":"fa6399be_3f3ce8e1","updated":"2016-10-13 09:34:57.000000000","message":"Done","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"8bea20404b2f3a80d113182ed112291572bd46c1","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the decision engine)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Project Priority"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_a23d3bbd","line":41,"range":{"start_line":41,"start_character":56,"end_line":41,"end_character":71},"updated":"2016-10-12 09:46:24.000000000","message":"May we add a link to \nhttp://docs.openstack.org/developer/watcher/architecture.html#watcher-decision-engine\n???","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the decision engine)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Project Priority"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_610f8f2e","line":41,"range":{"start_line":41,"start_character":56,"end_line":41,"end_character":71},"in_reply_to":"fa6399be_a23d3bbd","updated":"2016-10-13 09:34:57.000000000","message":"Done","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"8bea20404b2f3a80d113182ed112291572bd46c1","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the decision engine)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Project Priority"},{"line_number":45,"context_line":"-----------------"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_42f45ff1","line":43,"updated":"2016-10-12 09:46:24.000000000","message":"As an OpenStack developer, I want to be able to know (i.e. to configure) on what topic I can listen (on the message bus) to receive Watcher notifications.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the decision engine)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Project Priority"},{"line_number":45,"context_line":"-----------------"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_9ddeaa6b","line":43,"in_reply_to":"fa6399be_42f45ff1","updated":"2016-10-13 09:34:57.000000000","message":"This use is handled in the watcher-notifications-ovo spec.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"823f0d8af010840421f2471824b4f07c5b71518d","unresolved":false,"context_lines":[{"line_number":55,"context_line":"- ``audit.create`` will have to be emitted whenever an audit has been created."},{"line_number":56,"context_line":"- ``audit.update`` will have to be emitted whenever an audit has been updated."},{"line_number":57,"context_line":"  This includes all state updates including the deletion of the audit."},{"line_number":58,"context_line":"- ``audit.strategy.start`` will have to be emitted whenever an audit starts."},{"line_number":59,"context_line":"- ``audit.strategy.end`` will have to be emitted whenever an audit ends."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Moreover, we will rely on `oslo.versionedobjects`_ to version the payloads of"},{"line_number":62,"context_line":"audit-related notifications."}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_3a13080f","line":59,"range":{"start_line":58,"start_character":0,"end_line":59,"end_character":72},"updated":"2016-10-12 14:18:44.000000000","message":"Explain that the strategy may take a long time to execute and this is why we have two events here.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":55,"context_line":"- ``audit.create`` will have to be emitted whenever an audit has been created."},{"line_number":56,"context_line":"- ``audit.update`` will have to be emitted whenever an audit has been updated."},{"line_number":57,"context_line":"  This includes all state updates including the deletion of the audit."},{"line_number":58,"context_line":"- ``audit.strategy.start`` will have to be emitted whenever an audit starts."},{"line_number":59,"context_line":"- ``audit.strategy.end`` will have to be emitted whenever an audit ends."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Moreover, we will rely on `oslo.versionedobjects`_ to version the payloads of"},{"line_number":62,"context_line":"audit-related notifications."}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_41552b4e","line":59,"range":{"start_line":58,"start_character":0,"end_line":59,"end_character":72},"in_reply_to":"fa6399be_3a13080f","updated":"2016-10-13 09:34:57.000000000","message":"Done","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"8bea20404b2f3a80d113182ed112291572bd46c1","unresolved":false,"context_lines":[{"line_number":57,"context_line":"  This includes all state updates including the deletion of the audit."},{"line_number":58,"context_line":"- ``audit.strategy.start`` will have to be emitted whenever an audit starts."},{"line_number":59,"context_line":"- ``audit.strategy.end`` will have to be emitted whenever an audit ends."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Moreover, we will rely on `oslo.versionedobjects`_ to version the payloads of"},{"line_number":62,"context_line":"audit-related notifications."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_22304b9e","line":60,"updated":"2016-10-12 09:46:24.000000000","message":"audit.create sounds more like a command to execute. Shouldn\u0027t we use \"audit.created\" instead ?\nSame comment regarding the other event types.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"823f0d8af010840421f2471824b4f07c5b71518d","unresolved":false,"context_lines":[{"line_number":57,"context_line":"  This includes all state updates including the deletion of the audit."},{"line_number":58,"context_line":"- ``audit.strategy.start`` will have to be emitted whenever an audit starts."},{"line_number":59,"context_line":"- ``audit.strategy.end`` will have to be emitted whenever an audit ends."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Moreover, we will rely on `oslo.versionedobjects`_ to version the payloads of"},{"line_number":62,"context_line":"audit-related notifications."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_da2ccc4c","line":60,"in_reply_to":"fa6399be_22304b9e","updated":"2016-10-12 14:18:44.000000000","message":"Also add events related to the execution of the Planner which may take also a long time depending on the complexity of the implementation.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":57,"context_line":"  This includes all state updates including the deletion of the audit."},{"line_number":58,"context_line":"- ``audit.strategy.start`` will have to be emitted whenever an audit starts."},{"line_number":59,"context_line":"- ``audit.strategy.end`` will have to be emitted whenever an audit ends."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Moreover, we will rely on `oslo.versionedobjects`_ to version the payloads of"},{"line_number":62,"context_line":"audit-related notifications."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_5da0c443","line":60,"in_reply_to":"fa6399be_22304b9e","updated":"2016-10-13 09:34:57.000000000","message":"This is indeed arguable, but my intent here was to try and keep the same naming pattern the Nova team used (see http://docs.openstack.org/developer/nova/notifications.html#existing-versioned-notifications).\n\nSo unless you see a good reason, I would prefer keeping it as is.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":57,"context_line":"  This includes all state updates including the deletion of the audit."},{"line_number":58,"context_line":"- ``audit.strategy.start`` will have to be emitted whenever an audit starts."},{"line_number":59,"context_line":"- ``audit.strategy.end`` will have to be emitted whenever an audit ends."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Moreover, we will rely on `oslo.versionedobjects`_ to version the payloads of"},{"line_number":62,"context_line":"audit-related notifications."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_fd45e6b2","line":60,"in_reply_to":"fa6399be_da2ccc4c","updated":"2016-10-13 09:34:57.000000000","message":"Done","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"8bea20404b2f3a80d113182ed112291572bd46c1","unresolved":false,"context_lines":[{"line_number":62,"context_line":"audit-related notifications."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"Here below is suggestion of notification structure for each one of the"},{"line_number":65,"context_line":"aforementioned events:"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"**audit.create**"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_82c5978f","line":65,"range":{"start_line":65,"start_character":0,"end_line":65,"end_character":14},"updated":"2016-10-12 09:46:24.000000000","message":"aforementioned ?","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":62,"context_line":"audit-related notifications."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"Here below is suggestion of notification structure for each one of the"},{"line_number":65,"context_line":"aforementioned events:"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"**audit.create**"},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_b83d6ebd","line":65,"range":{"start_line":65,"start_character":0,"end_line":65,"end_character":14},"in_reply_to":"fa6399be_82c5978f","updated":"2016-10-13 09:34:57.000000000","message":"yes, I am referring to https://review.openstack.org/#/c/385077/1/specs/ocata/approved/audit-versioned-notifications-api.rst@55","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"8bea20404b2f3a80d113182ed112291572bd46c1","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                \"interval\": null,"},{"line_number":78,"context_line":"                \"parameters\": {},"},{"line_number":79,"context_line":"                \"state\": \"SUCCEEDED\","},{"line_number":80,"context_line":"                \"goal\": {"},{"line_number":81,"context_line":"                    \"watcher_object.data\": {"},{"line_number":82,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":83,"context_line":"                        \"name\": \"server_consolidation\","}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_022c2701","line":80,"range":{"start_line":80,"start_character":17,"end_line":80,"end_character":21},"updated":"2016-10-12 09:46:24.000000000","message":"Is it really necessary to send the whole Goal object ?\nShould we send only a link to request the object throught REST API ?\nSee HATEOAS (Hypermedia As The Engine Of Application State) good practices.\nBut is it possible to have a unique URL for each version of the goal object ?\n\nIMHO we should only put in the payload of audit what would make sense to be used for filtering or routing events. The global efficacy for example does not seems to be useful whereas maybe the goal or strategy names could make more sense to put as some kind of \"routing headers\" of the payload.\n\nIt also depends on whether you want to persist versioned objects of goals in the database, or do some event sourcing and store the whole context of an event each time.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                \"interval\": null,"},{"line_number":78,"context_line":"                \"parameters\": {},"},{"line_number":79,"context_line":"                \"state\": \"SUCCEEDED\","},{"line_number":80,"context_line":"                \"goal\": {"},{"line_number":81,"context_line":"                    \"watcher_object.data\": {"},{"line_number":82,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":83,"context_line":"                        \"name\": \"server_consolidation\","}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_61e30f06","line":80,"range":{"start_line":80,"start_character":17,"end_line":80,"end_character":21},"in_reply_to":"fa6399be_022c2701","updated":"2016-10-13 09:34:57.000000000","message":"IMHO, HATEOAS concepts should only apply the the REST API Watcher provides. So since we are here dealing with notifications, I would argue that some good context should be provided so the notification consumer has all the needed information without having to query Watcher notice at a later notice.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"8bea20404b2f3a80d113182ed112291572bd46c1","unresolved":false,"context_lines":[{"line_number":153,"context_line":"          \"state_update\":{"},{"line_number":154,"context_line":"            \"watcher_object.data\":{"},{"line_number":155,"context_line":"              \"old_state\":\"PENDING\","},{"line_number":156,"context_line":"              \"state\":\"SUCCEEDED\""},{"line_number":157,"context_line":"            },"},{"line_number":158,"context_line":"            \"watcher_object.name\":\"AuditStateUpdatePayload\","},{"line_number":159,"context_line":"            \"watcher_object.namespace\":\"watcher\","}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_a250db5f","line":156,"range":{"start_line":156,"start_character":15,"end_line":156,"end_character":32},"updated":"2016-10-12 09:46:24.000000000","message":"maybe it would be usefull to also have the timestamp when the state change occured ?\nBut maybe this timestamp should be placed at the same level as the event_type field because it makes sense to have it for every notification.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":153,"context_line":"          \"state_update\":{"},{"line_number":154,"context_line":"            \"watcher_object.data\":{"},{"line_number":155,"context_line":"              \"old_state\":\"PENDING\","},{"line_number":156,"context_line":"              \"state\":\"SUCCEEDED\""},{"line_number":157,"context_line":"            },"},{"line_number":158,"context_line":"            \"watcher_object.name\":\"AuditStateUpdatePayload\","},{"line_number":159,"context_line":"            \"watcher_object.namespace\":\"watcher\","}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_5d8444d3","line":156,"range":{"start_line":156,"start_character":15,"end_line":156,"end_character":32},"in_reply_to":"fa6399be_a250db5f","updated":"2016-10-13 09:34:57.000000000","message":"Sorry, I forgot to add the timestamp field that is meant to be here anyway. You should see it at the bottom of the payload.","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"823f0d8af010840421f2471824b4f07c5b71518d","unresolved":false,"context_lines":[{"line_number":370,"context_line":""},{"line_number":371,"context_line":"New versioned objects will be created although none of them are to be persisted"},{"line_number":372,"context_line":"as they will be used to structure the content of the notifications."},{"line_number":373,"context_line":""},{"line_number":374,"context_line":"REST API impact"},{"line_number":375,"context_line":"---------------"},{"line_number":376,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_fa8b501c","line":373,"updated":"2016-10-12 14:18:44.000000000","message":"provide some examples of such objects: GoalPayload, StrategyPayload, ...","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":370,"context_line":""},{"line_number":371,"context_line":"New versioned objects will be created although none of them are to be persisted"},{"line_number":372,"context_line":"as they will be used to structure the content of the notifications."},{"line_number":373,"context_line":""},{"line_number":374,"context_line":"REST API impact"},{"line_number":375,"context_line":"---------------"},{"line_number":376,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_0d60a5a4","line":373,"in_reply_to":"fa6399be_fa8b501c","updated":"2016-10-13 09:34:57.000000000","message":"Done","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"8bea20404b2f3a80d113182ed112291572bd46c1","unresolved":false,"context_lines":[{"line_number":386,"context_line":""},{"line_number":387,"context_line":"This blueprint will implement the following notifications:"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"- ``audit.create``"},{"line_number":390,"context_line":"- ``audit.update``"},{"line_number":391,"context_line":"- ``audit.strategy.start``"},{"line_number":392,"context_line":"- ``audit.strategy.end``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_42453f6e","line":389,"range":{"start_line":389,"start_character":4,"end_line":389,"end_character":16},"updated":"2016-10-12 09:46:24.000000000","message":"audit.created ?","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":386,"context_line":""},{"line_number":387,"context_line":"This blueprint will implement the following notifications:"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"- ``audit.create``"},{"line_number":390,"context_line":"- ``audit.update``"},{"line_number":391,"context_line":"- ``audit.strategy.start``"},{"line_number":392,"context_line":"- ``audit.strategy.end``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_81e663b2","line":389,"range":{"start_line":389,"start_character":4,"end_line":389,"end_character":16},"in_reply_to":"fa6399be_42453f6e","updated":"2016-10-13 09:34:57.000000000","message":"Ditto on the Nova naming convention","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"823f0d8af010840421f2471824b4f07c5b71518d","unresolved":false,"context_lines":[{"line_number":450,"context_line":""},{"line_number":451,"context_line":"A notification sample should be provided and made dynamically available in the"},{"line_number":452,"context_line":"online documentation."},{"line_number":453,"context_line":""},{"line_number":454,"context_line":"References"},{"line_number":455,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":456,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_3a45c816","line":453,"updated":"2016-10-12 14:18:44.000000000","message":"Don\u0027t forget to update the sequence diagrams in http://docs.openstack.org/developer/watcher/architecture.html#watcher-decision-engine","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"1d8c88ae4e92afdfdcc7bf9559fa4f7c6c33ec1e","unresolved":false,"context_lines":[{"line_number":450,"context_line":""},{"line_number":451,"context_line":"A notification sample should be provided and made dynamically available in the"},{"line_number":452,"context_line":"online documentation."},{"line_number":453,"context_line":""},{"line_number":454,"context_line":"References"},{"line_number":455,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":456,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_fc09882d","line":453,"in_reply_to":"fa6399be_3a45c816","updated":"2016-10-13 09:34:57.000000000","message":"Done","commit_id":"f8ba74e06fd19397f1063676b32bf44bc50fc09e"},{"author":{"_account_id":23210,"name":"YumengBao","email":"bao.yumeng@zte.com.cn","username":"YumengBao"},"change_message_id":"69c3e1a1369dc20541783af5393261ba080129f7","unresolved":false,"context_lines":[{"line_number":39,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the `decision engine`_)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_76f2029c","line":42,"range":{"start_line":42,"start_character":22,"end_line":42,"end_character":75},"updated":"2016-10-19 09:51:29.000000000","message":"Should we also notify the situations where the audit fails (no solutions found or other technical error occurs)?","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"205138ca7eb11bf74834e8dd4bee096aa5ac6ea8","unresolved":false,"context_lines":[{"line_number":39,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the `decision engine`_)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_a60a931f","line":42,"range":{"start_line":42,"start_character":22,"end_line":42,"end_character":75},"in_reply_to":"fa6399be_76f2029c","updated":"2016-11-03 16:43:20.000000000","message":"When an audit fails, it will result in a state transition from the ONGOING state to the FAILED state. Hence, one can listen onto the audit.update event and wait for such as transition to know that something has gone wrong.\n\nA nice-to-have would then be to also send a notification about the nature of the error, but I\u0027m not sure we actually need this.","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":11750,"name":"Antoine Cabot","email":"antoine.cabot@b-com.com","username":"antoinecabot"},"change_message_id":"e3a4f4049f7d4520ed6fb8e12c6fbdd20d61a3c4","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"- the planning of the solution produced by the strategy of the audit"},{"line_number":47,"context_line":"  starts"},{"line_number":48,"context_line":"- the planning of the solution produced by the strategy of the audit"},{"line_number":49,"context_line":"  finishes"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_e50bb27b","line":46,"range":{"start_line":46,"start_character":2,"end_line":46,"end_character":55},"updated":"2016-10-19 09:40:48.000000000","message":"what du you mean by \"planning\" here ?","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"205138ca7eb11bf74834e8dd4bee096aa5ac6ea8","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"- the planning of the solution produced by the strategy of the audit"},{"line_number":47,"context_line":"  starts"},{"line_number":48,"context_line":"- the planning of the solution produced by the strategy of the audit"},{"line_number":49,"context_line":"  finishes"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_d730250a","line":46,"range":{"start_line":46,"start_character":2,"end_line":46,"end_character":55},"in_reply_to":"fa6399be_e50bb27b","updated":"2016-11-03 16:43:20.000000000","message":"I was referring to the work done by the planner (http://docs.openstack.org/developer/watcher/glossary.html#watcher-planner-definition)","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":23210,"name":"YumengBao","email":"bao.yumeng@zte.com.cn","username":"YumengBao"},"change_message_id":"69c3e1a1369dc20541783af5393261ba080129f7","unresolved":false,"context_lines":[{"line_number":60,"context_line":"be needed:"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"- ``audit.create`` whenever an audit has been created."},{"line_number":63,"context_line":"- ``audit.update`` whenever an audit has been updated. This includes all state"},{"line_number":64,"context_line":"  updates including the deletion of the audit."},{"line_number":65,"context_line":"- ``audit.strategy.start`` whenever an audit starts."},{"line_number":66,"context_line":"- ``audit.strategy.end`` whenever an audit ends."},{"line_number":67,"context_line":"- ``audit.planner.start`` whenever planning of the audit solution starts."}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_d6910e48","line":64,"range":{"start_line":63,"start_character":19,"end_line":64,"end_character":46},"updated":"2016-10-19 09:51:29.000000000","message":"Does \"audit.update\" here include all possible audit state changes from one of the current state to any other one? (The current state is described in the following\nhttp://docs.openstack.org/developer/watcher/architecture.html#audit-state-machine )","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"205138ca7eb11bf74834e8dd4bee096aa5ac6ea8","unresolved":false,"context_lines":[{"line_number":60,"context_line":"be needed:"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"- ``audit.create`` whenever an audit has been created."},{"line_number":63,"context_line":"- ``audit.update`` whenever an audit has been updated. This includes all state"},{"line_number":64,"context_line":"  updates including the deletion of the audit."},{"line_number":65,"context_line":"- ``audit.strategy.start`` whenever an audit starts."},{"line_number":66,"context_line":"- ``audit.strategy.end`` whenever an audit ends."},{"line_number":67,"context_line":"- ``audit.planner.start`` whenever planning of the audit solution starts."}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_3747a178","line":64,"range":{"start_line":63,"start_character":19,"end_line":64,"end_character":46},"in_reply_to":"fa6399be_d6910e48","updated":"2016-11-03 16:43:20.000000000","message":"Yes, this notification will have to be systematically sent when as soon as a change made onto the audit is persisted.","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":23210,"name":"YumengBao","email":"bao.yumeng@zte.com.cn","username":"YumengBao"},"change_message_id":"69c3e1a1369dc20541783af5393261ba080129f7","unresolved":false,"context_lines":[{"line_number":160,"context_line":"          \"parameters\":{"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"          },"},{"line_number":163,"context_line":"          \"state\":\"SUCCEEDED\","},{"line_number":164,"context_line":"          \"state_update\":{"},{"line_number":165,"context_line":"            \"watcher_object.data\":{"},{"line_number":166,"context_line":"              \"old_state\":\"ONGOING\","}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_57209549","line":163,"range":{"start_line":163,"start_character":11,"end_line":163,"end_character":16},"updated":"2016-10-19 09:51:29.000000000","message":"Does \"state\" stands for current_state by default ? if not, shall we use \"current_state\" instead?","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"205138ca7eb11bf74834e8dd4bee096aa5ac6ea8","unresolved":false,"context_lines":[{"line_number":160,"context_line":"          \"parameters\":{"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"          },"},{"line_number":163,"context_line":"          \"state\":\"SUCCEEDED\","},{"line_number":164,"context_line":"          \"state_update\":{"},{"line_number":165,"context_line":"            \"watcher_object.data\":{"},{"line_number":166,"context_line":"              \"old_state\":\"ONGOING\","}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_e669ebbf","line":163,"range":{"start_line":163,"start_character":11,"end_line":163,"end_character":16},"in_reply_to":"fa6399be_57209549","updated":"2016-11-03 16:43:20.000000000","message":"Yes, this refers to the current state.","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":23210,"name":"YumengBao","email":"bao.yumeng@zte.com.cn","username":"YumengBao"},"change_message_id":"69c3e1a1369dc20541783af5393261ba080129f7","unresolved":false,"context_lines":[{"line_number":164,"context_line":"          \"state_update\":{"},{"line_number":165,"context_line":"            \"watcher_object.data\":{"},{"line_number":166,"context_line":"              \"old_state\":\"ONGOING\","},{"line_number":167,"context_line":"              \"state\":\"SUCCEEDED\""},{"line_number":168,"context_line":"            },"},{"line_number":169,"context_line":"            \"watcher_object.name\":\"AuditStateUpdatePayload\","},{"line_number":170,"context_line":"            \"watcher_object.namespace\":\"watcher\","}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_170ffde1","line":167,"range":{"start_line":167,"start_character":15,"end_line":167,"end_character":20},"updated":"2016-10-19 09:51:29.000000000","message":"Ditto","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"205138ca7eb11bf74834e8dd4bee096aa5ac6ea8","unresolved":false,"context_lines":[{"line_number":164,"context_line":"          \"state_update\":{"},{"line_number":165,"context_line":"            \"watcher_object.data\":{"},{"line_number":166,"context_line":"              \"old_state\":\"ONGOING\","},{"line_number":167,"context_line":"              \"state\":\"SUCCEEDED\""},{"line_number":168,"context_line":"            },"},{"line_number":169,"context_line":"            \"watcher_object.name\":\"AuditStateUpdatePayload\","},{"line_number":170,"context_line":"            \"watcher_object.namespace\":\"watcher\","}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_c9ceb8b3","line":167,"range":{"start_line":167,"start_character":15,"end_line":167,"end_character":20},"in_reply_to":"fa6399be_170ffde1","updated":"2016-11-03 16:43:20.000000000","message":"This one is also the new state, it is the same value as the other state field you have commented on.","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":11750,"name":"Antoine Cabot","email":"antoine.cabot@b-com.com","username":"antoinecabot"},"change_message_id":"e3a4f4049f7d4520ed6fb8e12c6fbdd20d61a3c4","unresolved":false,"context_lines":[{"line_number":614,"context_line":"- ``audit.create``"},{"line_number":615,"context_line":"- ``audit.update``"},{"line_number":616,"context_line":"- ``audit.strategy.start``"},{"line_number":617,"context_line":"- ``audit.strategy.end``"},{"line_number":618,"context_line":""},{"line_number":619,"context_line":"Other end user impact"},{"line_number":620,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_e5b5727e","line":617,"updated":"2016-10-19 09:40:48.000000000","message":"why audit.planner.* are missing here ?","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"205138ca7eb11bf74834e8dd4bee096aa5ac6ea8","unresolved":false,"context_lines":[{"line_number":614,"context_line":"- ``audit.create``"},{"line_number":615,"context_line":"- ``audit.update``"},{"line_number":616,"context_line":"- ``audit.strategy.start``"},{"line_number":617,"context_line":"- ``audit.strategy.end``"},{"line_number":618,"context_line":""},{"line_number":619,"context_line":"Other end user impact"},{"line_number":620,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5da102_07a1f9f7","line":617,"in_reply_to":"fa6399be_e5b5727e","updated":"2016-11-03 16:43:20.000000000","message":"Done","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":11750,"name":"Antoine Cabot","email":"antoine.cabot@b-com.com","username":"antoinecabot"},"change_message_id":"e3a4f4049f7d4520ed6fb8e12c6fbdd20d61a3c4","unresolved":false,"context_lines":[{"line_number":657,"context_line":"- Implement ``audit.create``"},{"line_number":658,"context_line":"- Implement ``audit.update``"},{"line_number":659,"context_line":"- Implement ``audit.strategy.start``"},{"line_number":660,"context_line":"- Implement ``audit.strategy.end``"},{"line_number":661,"context_line":""},{"line_number":662,"context_line":"Dependencies"},{"line_number":663,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_e511f25e","line":660,"updated":"2016-10-19 09:40:48.000000000","message":"ditto","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"205138ca7eb11bf74834e8dd4bee096aa5ac6ea8","unresolved":false,"context_lines":[{"line_number":657,"context_line":"- Implement ``audit.create``"},{"line_number":658,"context_line":"- Implement ``audit.update``"},{"line_number":659,"context_line":"- Implement ``audit.strategy.start``"},{"line_number":660,"context_line":"- Implement ``audit.strategy.end``"},{"line_number":661,"context_line":""},{"line_number":662,"context_line":"Dependencies"},{"line_number":663,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5da102_277b5d7c","line":660,"in_reply_to":"fa6399be_e511f25e","updated":"2016-11-03 16:43:20.000000000","message":"Done","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":11750,"name":"Antoine Cabot","email":"antoine.cabot@b-com.com","username":"antoinecabot"},"change_message_id":"e3a4f4049f7d4520ed6fb8e12c6fbdd20d61a3c4","unresolved":false,"context_lines":[{"line_number":662,"context_line":"Dependencies"},{"line_number":663,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":664,"context_line":""},{"line_number":665,"context_line":"# `watcher-versioned-objects`_"},{"line_number":666,"context_line":"# `watcher-notifications-ovo`_"},{"line_number":667,"context_line":""},{"line_number":668,"context_line":"Testing"},{"line_number":669,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_d773c5b2","line":666,"range":{"start_line":665,"start_character":0,"end_line":666,"end_character":30},"updated":"2016-10-19 09:40:48.000000000","message":"please use a list instead of #","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"205138ca7eb11bf74834e8dd4bee096aa5ac6ea8","unresolved":false,"context_lines":[{"line_number":662,"context_line":"Dependencies"},{"line_number":663,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":664,"context_line":""},{"line_number":665,"context_line":"# `watcher-versioned-objects`_"},{"line_number":666,"context_line":"# `watcher-notifications-ovo`_"},{"line_number":667,"context_line":""},{"line_number":668,"context_line":"Testing"},{"line_number":669,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5da102_8794298b","line":666,"range":{"start_line":665,"start_character":0,"end_line":666,"end_character":30},"in_reply_to":"fa6399be_d773c5b2","updated":"2016-11-03 16:43:20.000000000","message":"Done","commit_id":"e8efbc7b58c294c3c4011ae4de60a3a8ef99c5b3"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"9e2975a3946cfc26e56cd7612f1d332393573afa","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the `decision engine`_)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_78745935","line":41,"range":{"start_line":41,"start_character":6,"end_line":41,"end_character":11},"updated":"2016-11-10 10:58:51.000000000","message":"s/audit/strategy algorithm","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the `decision engine`_)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_488e6728","line":41,"range":{"start_line":41,"start_character":6,"end_line":41,"end_character":11},"in_reply_to":"9a629dbe_78745935","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"9e2975a3946cfc26e56cd7612f1d332393573afa","unresolved":false,"context_lines":[{"line_number":39,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the `decision engine`_)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_b890b144","line":42,"range":{"start_line":42,"start_character":6,"end_line":42,"end_character":11},"updated":"2016-11-10 10:58:51.000000000","message":"ditto","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":39,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"- the audit starts (the strategy is triggered on by the `decision engine`_)"},{"line_number":42,"context_line":"- the audit finishes (the strategy has finished and produced an action plan)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_a8b463d1","line":42,"range":{"start_line":42,"start_character":6,"end_line":42,"end_character":11},"in_reply_to":"9a629dbe_b890b144","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"9e2975a3946cfc26e56cd7612f1d332393573afa","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"- the planning of the solution produced by the strategy of the audit"},{"line_number":47,"context_line":"  starts"},{"line_number":48,"context_line":"- the planning of the solution produced by the strategy of the audit"},{"line_number":49,"context_line":"  finishes"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_f8094985","line":46,"range":{"start_line":46,"start_character":31,"end_line":46,"end_character":68},"updated":"2016-11-10 10:58:51.000000000","message":"maybe add commas before and after this block","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"As an OpenStack developer, I would also want to be notified whenever:"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"- the planning of the solution produced by the strategy of the audit"},{"line_number":47,"context_line":"  starts"},{"line_number":48,"context_line":"- the planning of the solution produced by the strategy of the audit"},{"line_number":49,"context_line":"  finishes"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_c8da77e9","line":46,"range":{"start_line":46,"start_character":31,"end_line":46,"end_character":68},"in_reply_to":"9a629dbe_f8094985","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"09ff9df13a4f13a7c3ec5e89cad992fda43bccc2","unresolved":false,"context_lines":[{"line_number":91,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":92,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":93,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":94,"context_line":"                        \"global_efficacy\": {"},{"line_number":95,"context_line":"                            \"value\": 55.2,"},{"line_number":96,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":97,"context_line":"                            \"unit\": \"%\","},{"line_number":98,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":99,"context_line":"                        },"},{"line_number":100,"context_line":"                        \"efficacy_specification\": ["},{"line_number":101,"context_line":"                            {"},{"line_number":102,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_8436bce5","line":99,"range":{"start_line":94,"start_character":0,"end_line":99,"end_character":26},"updated":"2016-11-04 15:46:16.000000000","message":"It is not part of goal object. It is an attribute of ActionPlan object","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":91,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":92,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":93,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":94,"context_line":"                        \"global_efficacy\": {"},{"line_number":95,"context_line":"                            \"value\": 55.2,"},{"line_number":96,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":97,"context_line":"                            \"unit\": \"%\","},{"line_number":98,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":99,"context_line":"                        },"},{"line_number":100,"context_line":"                        \"efficacy_specification\": ["},{"line_number":101,"context_line":"                            {"},{"line_number":102,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_e8fe5b37","line":99,"range":{"start_line":94,"start_character":0,"end_line":99,"end_character":26},"in_reply_to":"ba5da102_8436bce5","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"9e2975a3946cfc26e56cd7612f1d332393573afa","unresolved":false,"context_lines":[{"line_number":143,"context_line":"        \"priority\": \"INFO\","},{"line_number":144,"context_line":"        \"timestamp\": \"2016-10-07 09:31:10.895274\","},{"line_number":145,"context_line":"        \"message_id\": \"a13cb7a6-8fae-4e20-8fc8-1c4e851fa6f5\","},{"line_number":146,"context_line":"        \"publisher_id\": \"decision-engine:fake-mini\""},{"line_number":147,"context_line":"    }"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"**audit.update**"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_588875c5","line":146,"range":{"start_line":146,"start_character":25,"end_line":146,"end_character":50},"updated":"2016-11-10 10:58:51.000000000","message":"set publisher_id to \u0027infra-optim:localhost\u0027","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":143,"context_line":"        \"priority\": \"INFO\","},{"line_number":144,"context_line":"        \"timestamp\": \"2016-10-07 09:31:10.895274\","},{"line_number":145,"context_line":"        \"message_id\": \"a13cb7a6-8fae-4e20-8fc8-1c4e851fa6f5\","},{"line_number":146,"context_line":"        \"publisher_id\": \"decision-engine:fake-mini\""},{"line_number":147,"context_line":"    }"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"**audit.update**"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_4894a7e7","line":146,"range":{"start_line":146,"start_character":25,"end_line":146,"end_character":50},"in_reply_to":"9a629dbe_588875c5","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"9e2975a3946cfc26e56cd7612f1d332393573afa","unresolved":false,"context_lines":[{"line_number":144,"context_line":"        \"timestamp\": \"2016-10-07 09:31:10.895274\","},{"line_number":145,"context_line":"        \"message_id\": \"a13cb7a6-8fae-4e20-8fc8-1c4e851fa6f5\","},{"line_number":146,"context_line":"        \"publisher_id\": \"decision-engine:fake-mini\""},{"line_number":147,"context_line":"    }"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"**audit.update**"},{"line_number":150,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_d8500535","line":147,"range":{"start_line":147,"start_character":0,"end_line":147,"end_character":5},"updated":"2016-11-10 10:58:51.000000000","message":"fault parameter is missing","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":144,"context_line":"        \"timestamp\": \"2016-10-07 09:31:10.895274\","},{"line_number":145,"context_line":"        \"message_id\": \"a13cb7a6-8fae-4e20-8fc8-1c4e851fa6f5\","},{"line_number":146,"context_line":"        \"publisher_id\": \"decision-engine:fake-mini\""},{"line_number":147,"context_line":"    }"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"**audit.update**"},{"line_number":150,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_68996b1f","line":147,"range":{"start_line":147,"start_character":0,"end_line":147,"end_character":5},"in_reply_to":"9a629dbe_d8500535","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"09ff9df13a4f13a7c3ec5e89cad992fda43bccc2","unresolved":false,"context_lines":[{"line_number":175,"context_line":"              \"uuid\":\"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":176,"context_line":"              \"name\":\"server_consolidation\","},{"line_number":177,"context_line":"              \"display_name\":\"Basic offline consolidation\","},{"line_number":178,"context_line":"              \"global_efficacy\":{"},{"line_number":179,"context_line":"                \"value\":55.2,"},{"line_number":180,"context_line":"                \"name\":\"released_nodes_ratio\","},{"line_number":181,"context_line":"                \"unit\":\"%\","},{"line_number":182,"context_line":"                \"description\":\"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":183,"context_line":"              },"},{"line_number":184,"context_line":"              \"efficacy_specification\":["},{"line_number":185,"context_line":"                {"},{"line_number":186,"context_line":"                  \"description\":\"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_246df0cc","line":183,"range":{"start_line":178,"start_character":0,"end_line":183,"end_character":16},"updated":"2016-11-04 15:46:16.000000000","message":"ditto","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":175,"context_line":"              \"uuid\":\"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":176,"context_line":"              \"name\":\"server_consolidation\","},{"line_number":177,"context_line":"              \"display_name\":\"Basic offline consolidation\","},{"line_number":178,"context_line":"              \"global_efficacy\":{"},{"line_number":179,"context_line":"                \"value\":55.2,"},{"line_number":180,"context_line":"                \"name\":\"released_nodes_ratio\","},{"line_number":181,"context_line":"                \"unit\":\"%\","},{"line_number":182,"context_line":"                \"description\":\"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":183,"context_line":"              },"},{"line_number":184,"context_line":"              \"efficacy_specification\":["},{"line_number":185,"context_line":"                {"},{"line_number":186,"context_line":"                  \"description\":\"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_889ebf05","line":183,"range":{"start_line":178,"start_character":0,"end_line":183,"end_character":16},"in_reply_to":"ba5da102_246df0cc","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"09ff9df13a4f13a7c3ec5e89cad992fda43bccc2","unresolved":false,"context_lines":[{"line_number":248,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":249,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":250,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":251,"context_line":"                        \"global_efficacy\": {"},{"line_number":252,"context_line":"                            \"value\": 55.2,"},{"line_number":253,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":254,"context_line":"                            \"unit\": \"%\","},{"line_number":255,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":256,"context_line":"                        },"},{"line_number":257,"context_line":"                        \"efficacy_specification\": ["},{"line_number":258,"context_line":"                            {"},{"line_number":259,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_84ab1cd6","line":256,"range":{"start_line":251,"start_character":0,"end_line":256,"end_character":26},"updated":"2016-11-04 15:46:16.000000000","message":"ditto","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":248,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":249,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":250,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":251,"context_line":"                        \"global_efficacy\": {"},{"line_number":252,"context_line":"                            \"value\": 55.2,"},{"line_number":253,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":254,"context_line":"                            \"unit\": \"%\","},{"line_number":255,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":256,"context_line":"                        },"},{"line_number":257,"context_line":"                        \"efficacy_specification\": ["},{"line_number":258,"context_line":"                            {"},{"line_number":259,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_0858ef55","line":256,"range":{"start_line":251,"start_character":0,"end_line":256,"end_character":26},"in_reply_to":"ba5da102_84ab1cd6","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"09ff9df13a4f13a7c3ec5e89cad992fda43bccc2","unresolved":false,"context_lines":[{"line_number":321,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":322,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":323,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":324,"context_line":"                        \"global_efficacy\": {"},{"line_number":325,"context_line":"                            \"value\": 55.2,"},{"line_number":326,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":327,"context_line":"                            \"unit\": \"%\","},{"line_number":328,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":329,"context_line":"                        },"},{"line_number":330,"context_line":"                        \"efficacy_specification\": ["},{"line_number":331,"context_line":"                            {"},{"line_number":332,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_a4b8202c","line":329,"range":{"start_line":324,"start_character":0,"end_line":329,"end_character":26},"updated":"2016-11-04 15:46:16.000000000","message":"ditto","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":321,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":322,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":323,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":324,"context_line":"                        \"global_efficacy\": {"},{"line_number":325,"context_line":"                            \"value\": 55.2,"},{"line_number":326,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":327,"context_line":"                            \"unit\": \"%\","},{"line_number":328,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":329,"context_line":"                        },"},{"line_number":330,"context_line":"                        \"efficacy_specification\": ["},{"line_number":331,"context_line":"                            {"},{"line_number":332,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_2855b31c","line":329,"range":{"start_line":324,"start_character":0,"end_line":329,"end_character":26},"in_reply_to":"ba5da102_a4b8202c","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"09ff9df13a4f13a7c3ec5e89cad992fda43bccc2","unresolved":false,"context_lines":[{"line_number":402,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":403,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":404,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":405,"context_line":"                        \"global_efficacy\": {"},{"line_number":406,"context_line":"                            \"value\": 55.2,"},{"line_number":407,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":408,"context_line":"                            \"unit\": \"%\","},{"line_number":409,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":410,"context_line":"                        },"},{"line_number":411,"context_line":"                        \"efficacy_specification\": ["},{"line_number":412,"context_line":"                            {"},{"line_number":413,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_e480584c","line":410,"range":{"start_line":405,"start_character":0,"end_line":410,"end_character":26},"updated":"2016-11-04 15:46:16.000000000","message":"ditto","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":402,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":403,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":404,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":405,"context_line":"                        \"global_efficacy\": {"},{"line_number":406,"context_line":"                            \"value\": 55.2,"},{"line_number":407,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":408,"context_line":"                            \"unit\": \"%\","},{"line_number":409,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":410,"context_line":"                        },"},{"line_number":411,"context_line":"                        \"efficacy_specification\": ["},{"line_number":412,"context_line":"                            {"},{"line_number":413,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_6835ebf5","line":410,"range":{"start_line":405,"start_character":0,"end_line":410,"end_character":26},"in_reply_to":"ba5da102_e480584c","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"09ff9df13a4f13a7c3ec5e89cad992fda43bccc2","unresolved":false,"context_lines":[{"line_number":483,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":484,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":485,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":486,"context_line":"                        \"global_efficacy\": {"},{"line_number":487,"context_line":"                            \"value\": 55.2,"},{"line_number":488,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":489,"context_line":"                            \"unit\": \"%\","},{"line_number":490,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":491,"context_line":"                        },"},{"line_number":492,"context_line":"                        \"efficacy_specification\": ["},{"line_number":493,"context_line":"                            {"},{"line_number":494,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_44802447","line":491,"range":{"start_line":486,"start_character":0,"end_line":491,"end_character":26},"updated":"2016-11-04 15:46:16.000000000","message":"ditto","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"b9506e7c38d348c223f4d84aab6a225141961b1a","unresolved":false,"context_lines":[{"line_number":483,"context_line":"                        \"uuid\": \"030ac764-e0fb-4e16-921e-a0fc0f034e3d\","},{"line_number":484,"context_line":"                        \"name\": \"server_consolidation\","},{"line_number":485,"context_line":"                        \"display_name\": \"Basic offline consolidation\","},{"line_number":486,"context_line":"                        \"global_efficacy\": {"},{"line_number":487,"context_line":"                            \"value\": 55.2,"},{"line_number":488,"context_line":"                            \"name\": \"released_nodes_ratio\","},{"line_number":489,"context_line":"                            \"unit\": \"%\","},{"line_number":490,"context_line":"                            \"description\": \"Ratio of released compute nodes divided by the number of VM migrations.\""},{"line_number":491,"context_line":"                        },"},{"line_number":492,"context_line":"                        \"efficacy_specification\": ["},{"line_number":493,"context_line":"                            {"},{"line_number":494,"context_line":"                                \"description\": \"The number of compute nodes to be released.\","}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a629dbe_a83f03d5","line":491,"range":{"start_line":486,"start_character":0,"end_line":491,"end_character":26},"in_reply_to":"ba5da102_44802447","updated":"2016-11-14 16:51:37.000000000","message":"Done","commit_id":"9f217b80adeab426c5c3f5331770ca5fd0c2ec74"},{"author":{"_account_id":12394,"name":"David TARDIVEL","email":"David.TARDIVEL@b-com.com","username":"David.T"},"change_message_id":"5a7c98572993f17eae51d47705eb3b7106e88bd6","unresolved":false,"context_lines":[{"line_number":65,"context_line":"- ``audit.planner.start`` whenever planning of the audit solution starts."},{"line_number":66,"context_line":"- ``audit.planner.end`` whenever planning of the audit solution ends."},{"line_number":67,"context_line":"- ``audit.planner.error`` whenever the planning of an audit solution fails."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Moreover, we will rely on `oslo.versionedobjects`_ to version the payloads of"},{"line_number":70,"context_line":"audit-related notifications."},{"line_number":71,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"7a77a97e_e6abb887","line":68,"updated":"2016-11-16 10:38:33.000000000","message":"audit.delete is missing","commit_id":"84eabf98caa3f843533ec13bd671c52bf44ac637"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"49e11a73288a0529db648c4a0366182e4d9d8b4a","unresolved":false,"context_lines":[{"line_number":65,"context_line":"- ``audit.planner.start`` whenever planning of the audit solution starts."},{"line_number":66,"context_line":"- ``audit.planner.end`` whenever planning of the audit solution ends."},{"line_number":67,"context_line":"- ``audit.planner.error`` whenever the planning of an audit solution fails."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Moreover, we will rely on `oslo.versionedobjects`_ to version the payloads of"},{"line_number":70,"context_line":"audit-related notifications."},{"line_number":71,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"7a77a97e_4621ccb3","line":68,"in_reply_to":"7a77a97e_e6abb887","updated":"2016-11-16 10:48:05.000000000","message":"Done","commit_id":"84eabf98caa3f843533ec13bd671c52bf44ac637"}]}
