)]}'
{"specs/rocky/approved/watcher-planner-selector.rst":[{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"6a8bc019e970184ffe20a31c12d7cd0739e3e79b","unresolved":false,"context_lines":[{"line_number":4,"context_line":""},{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Watcher Planner Selector"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_37cae419","line":7,"range":{"start_line":7,"start_character":24,"end_line":7,"end_character":42},"updated":"2018-04-10 14:31:17.000000000","message":"cut it","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"6a8bc019e970184ffe20a31c12d7cd0739e3e79b","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Watcher Planner Selector"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/watcher/+spec/watcher-planner-selector"},{"line_number":12,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_f7d30cd4","line":9,"range":{"start_line":9,"start_character":24,"end_line":9,"end_character":42},"updated":"2018-04-10 14:31:17.000000000","message":"ditto","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"6a8bc019e970184ffe20a31c12d7cd0739e3e79b","unresolved":false,"context_lines":[{"line_number":16,"context_line":"It is only possible to choose only one (default) `Planner`_ for all strategies"},{"line_number":17,"context_line":"now."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Custom Planners could be added to Watcher, thereby users can adopt Watcher"},{"line_number":20,"context_line":"workflow to their needs. As one of the ways for customization, the option"},{"line_number":21,"context_line":"could be added to set concrete Planner for distinct Strategy that takes"},{"line_number":22,"context_line":"features of users\u0027 workflow into account."}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_f7a1cc47","line":19,"range":{"start_line":19,"start_character":61,"end_line":19,"end_character":66},"updated":"2018-04-10 14:31:17.000000000","message":"Wouldn\u0027t \u0027adapt\u0027 be more suitable in this context?","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"6a8bc019e970184ffe20a31c12d7cd0739e3e79b","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Custom Planners could be added to Watcher, thereby users can adopt Watcher"},{"line_number":20,"context_line":"workflow to their needs. As one of the ways for customization, the option"},{"line_number":21,"context_line":"could be added to set concrete Planner for distinct Strategy that takes"},{"line_number":22,"context_line":"features of users\u0027 workflow into account."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_c2088829","line":21,"range":{"start_line":21,"start_character":43,"end_line":21,"end_character":51},"updated":"2018-04-10 14:31:17.000000000","message":"IMO, certain/specific would be more attractive","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"6a8bc019e970184ffe20a31c12d7cd0739e3e79b","unresolved":false,"context_lines":[{"line_number":25,"context_line":"Problem description"},{"line_number":26,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Currently there is no opportunity to set unique Planner to distinct Strategy."},{"line_number":29,"context_line":"User can set default Planner in config file that would be used alongside every"},{"line_number":30,"context_line":"Audit."},{"line_number":31,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_0228c083","line":28,"range":{"start_line":28,"start_character":59,"end_line":28,"end_character":67},"updated":"2018-04-10 14:31:17.000000000","message":"ditto","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":21692,"name":"licanwei","email":"li.canwei2@zte.com.cn","username":"licanwei"},"change_message_id":"d10edbc0096abc4daab4ff265b335007153ed5e6","unresolved":false,"context_lines":[{"line_number":41,"context_line":"* As an administrator, I want to choose what Planner would be applied to the"},{"line_number":42,"context_line":"  Solution generated by certain Strategy."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"* As an administrator, I expect that if I provide no Applier to Strategy, it"},{"line_number":45,"context_line":"  will use default Planner that I set in config."},{"line_number":46,"context_line":""},{"line_number":47,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_97e63eb0","line":44,"range":{"start_line":44,"start_character":53,"end_line":44,"end_character":60},"updated":"2018-04-11 03:19:57.000000000","message":"Planner?","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":27947,"name":"Egor Panfilov","email":"edpanfilov@sbcloud.ru","username":"erakli"},"change_message_id":"738c6eaf1fa532ab3fc9b27cae2d0a9aac93875a","unresolved":false,"context_lines":[{"line_number":41,"context_line":"* As an administrator, I want to choose what Planner would be applied to the"},{"line_number":42,"context_line":"  Solution generated by certain Strategy."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"* As an administrator, I expect that if I provide no Applier to Strategy, it"},{"line_number":45,"context_line":"  will use default Planner that I set in config."},{"line_number":46,"context_line":""},{"line_number":47,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_434c65c7","line":44,"range":{"start_line":44,"start_character":53,"end_line":44,"end_character":60},"in_reply_to":"bf659307_97e63eb0","updated":"2018-04-11 08:27:11.000000000","message":"Yeah, sure","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"6a8bc019e970184ffe20a31c12d7cd0739e3e79b","unresolved":false,"context_lines":[{"line_number":68,"context_line":""},{"line_number":69,"context_line":"For this propose we need to be able to get Strategy name from Audit object on"},{"line_number":70,"context_line":"AuditHandler._planner_manager.load() method call. By design, whole"},{"line_number":71,"context_line":"AuditHandler class passes current Audit as argument of many of its methods."},{"line_number":72,"context_line":"It would be convenient to have current Audit as field of AuditHandler class."},{"line_number":73,"context_line":"Also, it is good design decision, because it\u0027s true OOP paradigm. To sum up, we"},{"line_number":74,"context_line":"propose to remove all these arguments and replace them with class field."}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_429eb863","line":71,"range":{"start_line":71,"start_character":43,"end_line":71,"end_character":51},"updated":"2018-04-10 14:31:17.000000000","message":"+an","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"6a8bc019e970184ffe20a31c12d7cd0739e3e79b","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":"Also, there is a need in checks such as: is this Strategy is acceptable"},{"line_number":77,"context_line":"for this concrete Planner. It could be done with a list of Strategies that"},{"line_number":78,"context_line":"Planner could work with. To achieve this behaviour, we add config option"},{"line_number":79,"context_line":"\u0027accepts\u0027 to Planner base class and user who adds he\u0027s or she\u0027s own"},{"line_number":80,"context_line":"implementation of Planner should fill this option with acceptable list of"},{"line_number":81,"context_line":"Strategies."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"Alternatives"},{"line_number":84,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_82cff07d","line":81,"range":{"start_line":78,"start_character":25,"end_line":81,"end_character":11},"updated":"2018-04-10 14:31:17.000000000","message":"a little code example would make it more clear and obvious","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"6a8bc019e970184ffe20a31c12d7cd0739e3e79b","unresolved":false,"context_lines":[{"line_number":87,"context_line":"AuditTemplate."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"As an alternative to changing signatures of AuditHandler methods we could add"},{"line_number":90,"context_line":"new field only for Strategy name."},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"Data model impact"},{"line_number":93,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bf659307_c283a803","line":90,"range":{"start_line":90,"start_character":0,"end_line":90,"end_character":3},"updated":"2018-04-10 14:31:17.000000000","message":"+a","commit_id":"9e4e400d7fd00509d136c0b58808ae101cfcc202"},{"author":{"_account_id":21692,"name":"licanwei","email":"li.canwei2@zte.com.cn","username":"licanwei"},"change_message_id":"2eba5eb5d319fc1896348360faec5d1dbb20762b","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        return self.loader.load(name\u003dplanner_name)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"Therefore, AuditHandler now should pass desired Planner name to this method."},{"line_number":65,"context_line":"We propose to get this name from config section that belongs to the Strategy"},{"line_number":66,"context_line":"used in current Audit. In this case we get Strategy name (and section"},{"line_number":67,"context_line":"name consequently) Strategy object associated with current Audit."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"For this propose we need to be able to get Strategy name from Audit object on"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9f6a8fd7_e02ad38e","line":66,"range":{"start_line":65,"start_character":0,"end_line":66,"end_character":22},"updated":"2018-04-16 05:40:04.000000000","message":"Audit can be created with no strategy specified,\nCould you explain exactly how to get planner name from strategy or audit?","commit_id":"f1e6ea75225ad405d83e7eef7b968d73667b6f6e"},{"author":{"_account_id":27947,"name":"Egor Panfilov","email":"edpanfilov@sbcloud.ru","username":"erakli"},"change_message_id":"11d6b1f775d00f740011ded42e75a9ccfe398eb1","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        return self.loader.load(name\u003dplanner_name)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"Therefore, AuditHandler now should pass desired Planner name to this method."},{"line_number":65,"context_line":"We propose to get this name from config section that belongs to the Strategy"},{"line_number":66,"context_line":"used in current Audit. In this case we get Strategy name (and section"},{"line_number":67,"context_line":"name consequently) Strategy object associated with current Audit."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"For this propose we need to be able to get Strategy name from Audit object on"}],"source_content_type":"text/x-rst","patch_set":5,"id":"9f6a8fd7_3921cbfc","line":66,"range":{"start_line":65,"start_character":0,"end_line":66,"end_character":22},"in_reply_to":"9f6a8fd7_e02ad38e","updated":"2018-04-16 23:45:52.000000000","message":"It\u0027s a good question.\n\nOriginally, I wanted to get Strategy with objects.Audit.strategy_id field. But now I see, that in case when there\u0027s no associated Strategy, it\u0027s loaded by hardcoded get_goal_name() value in DefaultStrategyContext with the help of DefaultStrategySelector.select() method.\n\nWe could make same call to DefaultStrategySelector and get default strategy, as it done in DefaultStrategyContext, or  break DefaultStrategyContext.do_execute_strategy() instead. As we can see, it consists of two parts - selecting strategy and execution of it. So it could be convenient to have separate method for selecting, as it could be used in implementation of this spec and would be a good design decision, IMO.","commit_id":"f1e6ea75225ad405d83e7eef7b968d73667b6f6e"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"9dd6ef3c78f35e4595ebe03051516b43fb692e23","unresolved":false,"context_lines":[{"line_number":50,"context_line":""},{"line_number":51,"context_line":"We propose to add property to base Strategy class, say \u0027planner\u0027, and set"},{"line_number":52,"context_line":"default value to this option in concrete Strategies where appropriate (for"},{"line_number":53,"context_line":"example, \u0027workload_stabilization\u0027 Planner as default for Strategy with the"},{"line_number":54,"context_line":"same name)."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Planner should be load in AuditHandler. Currently it\u0027s done with the help of"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9f6a8fd7_d81f77b5","line":53,"range":{"start_line":53,"start_character":10,"end_line":53,"end_character":32},"updated":"2018-04-27 06:19:01.000000000","message":"\u0027weight\u0027 is better because weight planner is the default now.","commit_id":"a8cdbbbfa9a6327ee64f1eae546b398f597242b6"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"a26f7d59e0b217ed68d350e19b5d46956c3dd8d1","unresolved":false,"context_lines":[{"line_number":50,"context_line":""},{"line_number":51,"context_line":"We propose to add property to base Strategy class, say \u0027planner\u0027, and set"},{"line_number":52,"context_line":"default value to this option in concrete Strategies where appropriate (for"},{"line_number":53,"context_line":"example, \u0027workload_stabilization\u0027 Planner as default for Strategy with the"},{"line_number":54,"context_line":"same name)."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Planner should be load in AuditHandler. Currently it\u0027s done with the help of"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9f6a8fd7_8338b43d","line":53,"range":{"start_line":53,"start_character":10,"end_line":53,"end_character":32},"in_reply_to":"9f6a8fd7_583927f0","updated":"2018-04-27 07:03:39.000000000","message":"Other strategies do not have planner of the same name.\nPlease make clear each concrete strategy has its own planner option.","commit_id":"a8cdbbbfa9a6327ee64f1eae546b398f597242b6"},{"author":{"_account_id":27947,"name":"Egor Panfilov","email":"edpanfilov@sbcloud.ru","username":"erakli"},"change_message_id":"e73ac0f615fcf3b1bf85d89681eff95fc225fe57","unresolved":false,"context_lines":[{"line_number":50,"context_line":""},{"line_number":51,"context_line":"We propose to add property to base Strategy class, say \u0027planner\u0027, and set"},{"line_number":52,"context_line":"default value to this option in concrete Strategies where appropriate (for"},{"line_number":53,"context_line":"example, \u0027workload_stabilization\u0027 Planner as default for Strategy with the"},{"line_number":54,"context_line":"same name)."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Planner should be load in AuditHandler. Currently it\u0027s done with the help of"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9f6a8fd7_583927f0","line":53,"range":{"start_line":53,"start_character":10,"end_line":53,"end_character":32},"in_reply_to":"9f6a8fd7_d81f77b5","updated":"2018-04-27 06:37:38.000000000","message":"Here, I highlight example, how it could be done with \u0027workload_stabilization\u0027 Strategy exactly. If it isn\u0027t clear, I can rewrite this sentence.","commit_id":"a8cdbbbfa9a6327ee64f1eae546b398f597242b6"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"9dd6ef3c78f35e4595ebe03051516b43fb692e23","unresolved":false,"context_lines":[{"line_number":140,"context_line":"Other end user impact"},{"line_number":141,"context_line":"---------------------"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"End user could be able to set distinct Planner to every Strategy in config"},{"line_number":144,"context_line":"file."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"Performance Impact"},{"line_number":147,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9f6a8fd7_38ff9335","line":144,"range":{"start_line":143,"start_character":0,"end_line":144,"end_character":5},"updated":"2018-04-27 06:19:01.000000000","message":"It is better workload stabilization strategy uses workload stabilization planner by default.","commit_id":"a8cdbbbfa9a6327ee64f1eae546b398f597242b6"},{"author":{"_account_id":27947,"name":"Egor Panfilov","email":"edpanfilov@sbcloud.ru","username":"erakli"},"change_message_id":"e73ac0f615fcf3b1bf85d89681eff95fc225fe57","unresolved":false,"context_lines":[{"line_number":140,"context_line":"Other end user impact"},{"line_number":141,"context_line":"---------------------"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"End user could be able to set distinct Planner to every Strategy in config"},{"line_number":144,"context_line":"file."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"Performance Impact"},{"line_number":147,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9f6a8fd7_a34b785d","line":144,"range":{"start_line":143,"start_character":0,"end_line":144,"end_character":5},"in_reply_to":"9f6a8fd7_38ff9335","updated":"2018-04-27 06:37:38.000000000","message":"This is exactly, how I done in this PS:\n\nhttps://review.openstack.org/#/c/563477/2/watcher/decision_engine/strategy/strategies/base.py\n\nBut you pointed in a right place, I forgot to correct this sentence. Previously, I wanted to make Selector functionality through config opts, but then I decided, that such configuration is preliminary needed by Strategy designer so I changed description of this spec in a way that you can see now. \n\nI fix it.","commit_id":"a8cdbbbfa9a6327ee64f1eae546b398f597242b6"},{"author":{"_account_id":13111,"name":"Hidekazu Nakamura","email":"hidekazuna@gmail.com","username":"hid-nakamura"},"change_message_id":"cff79d45d2ca1b62745088ea8b07f3542a9f0055","unresolved":false,"context_lines":[{"line_number":140,"context_line":"Other end user impact"},{"line_number":141,"context_line":"---------------------"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"End user could be able to set distinct Planner to every Strategy in config"},{"line_number":144,"context_line":"file."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"Performance Impact"},{"line_number":147,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"9f6a8fd7_a31298b3","line":144,"range":{"start_line":143,"start_character":0,"end_line":144,"end_character":5},"in_reply_to":"9f6a8fd7_a34b785d","updated":"2018-04-27 07:05:26.000000000","message":"Thanks, I agree strategy designer decides planner.","commit_id":"a8cdbbbfa9a6327ee64f1eae546b398f597242b6"},{"author":{"_account_id":19457,"name":"aditi sharma","email":"adi.sky17@gmail.com","username":"aditi"},"change_message_id":"45f79aaeeb3694ad4e9426f6ef01830f674cee8f","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Dependencies"},{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"https://blueprints.launchpad.net/watcher/+spec/efficacy-indicator"},{"line_number":187,"context_line":"https://blueprints.launchpad.net/watcher/+spec/planner-storage-action-plan"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"5f7c97a3_aead2b9c","line":186,"updated":"2018-05-10 07:37:47.000000000","message":"can you explain in detail what is the dependeny in that, It is a implemented BP","commit_id":"3718bc84d8b387e74da1329a9796a346dc5d3e5c"},{"author":{"_account_id":19055,"name":"Alexander Chadin","email":"joker946@gmail.com","username":"joker946"},"change_message_id":"25ded491414d958c11320edb0d8f68d561deca44","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Dependencies"},{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"https://blueprints.launchpad.net/watcher/+spec/efficacy-indicator"},{"line_number":187,"context_line":"https://blueprints.launchpad.net/watcher/+spec/planner-storage-action-plan"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"5f7c97a3_3681924b","line":186,"in_reply_to":"5f7c97a3_830b3322","updated":"2018-05-23 07:16:23.000000000","message":"Done","commit_id":"3718bc84d8b387e74da1329a9796a346dc5d3e5c"},{"author":{"_account_id":19457,"name":"aditi sharma","email":"adi.sky17@gmail.com","username":"aditi"},"change_message_id":"d030fe1861699b78d792d854d8dc053e4f9a1b1e","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Dependencies"},{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"https://blueprints.launchpad.net/watcher/+spec/efficacy-indicator"},{"line_number":187,"context_line":"https://blueprints.launchpad.net/watcher/+spec/planner-storage-action-plan"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"5f7c97a3_830b3322","line":186,"in_reply_to":"5f7c97a3_97b5bb34","updated":"2018-05-14 05:41:00.000000000","message":"Yes, we add here unimplemented things on which blueprint is dependent, you can remove it","commit_id":"3718bc84d8b387e74da1329a9796a346dc5d3e5c"},{"author":{"_account_id":27947,"name":"Egor Panfilov","email":"edpanfilov@sbcloud.ru","username":"erakli"},"change_message_id":"b5238b36c3de6b420954a297b0d1c7f85fc54f11","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Dependencies"},{"line_number":184,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"https://blueprints.launchpad.net/watcher/+spec/efficacy-indicator"},{"line_number":187,"context_line":"https://blueprints.launchpad.net/watcher/+spec/planner-storage-action-plan"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"5f7c97a3_97b5bb34","line":186,"in_reply_to":"5f7c97a3_aead2b9c","updated":"2018-05-12 12:34:03.000000000","message":"To honest, I simply copied dependencies from launchpad entry (https://blueprints.launchpad.net/watcher/+spec/watcher-planner-selector). I hasn\u0027t borrowed in details, why this BP is dependency.\n\nDo think, it should be removed?","commit_id":"3718bc84d8b387e74da1329a9796a346dc5d3e5c"}]}
