)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8878,"name":"Masahito Muroi","email":"masahito.muroi@linecorp.com","username":"masa"},"change_message_id":"fd2cb05ea48b1622df724e1536bdf2ac0b047005","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"a0b427d6_3e474056","updated":"2025-02-21 16:59:01.000000000","message":"IIUC, the `instance_usage_audit_period` has the `offset` option, so the minute configuration needs to support the offset, too.","commit_id":"cec608f400ad452d1c8769e3e3c09efb91bd02e5"},{"author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"change_message_id":"4ec9ce2c38a8b22694f2febdf30394b27d664ab4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"1c92ed70_bf7c09fe","updated":"2025-02-13 12:47:45.000000000","message":"recheck post_failure in ceph job","commit_id":"cec608f400ad452d1c8769e3e3c09efb91bd02e5"},{"author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"change_message_id":"000e5ed3c725a1bf86f6126b5bda424ae0e9ed6f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3c384adf_1d2def37","updated":"2025-02-21 09:01:11.000000000","message":"recheck timed out","commit_id":"cec608f400ad452d1c8769e3e3c09efb91bd02e5"},{"author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"change_message_id":"01ee1f037e55948bbe61451fddb513b73b74d39f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"c67d2485_172bf6ad","updated":"2025-03-11 13:10:35.000000000","message":"thanks!","commit_id":"3a09b755c3a4a8bdfd68c2b586deb55bd5550179"}],"nova/tests/unit/test_utils.py":[{"author":{"_account_id":8878,"name":"Masahito Muroi","email":"masahito.muroi@linecorp.com","username":"masa"},"change_message_id":"fd2cb05ea48b1622df724e1536bdf2ac0b047005","unresolved":true,"context_lines":[{"line_number":326,"context_line":"                                           month\u003d3,"},{"line_number":327,"context_line":"                                           year\u003d2012))"},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"    def test_minute_with_offset_after_current(self):"},{"line_number":330,"context_line":"        begin, end \u003d utils.last_completed_audit_period(unit\u003d\u0027minute@30\u0027)"},{"line_number":331,"context_line":"        self.assertEqual(begin, datetime.datetime("},{"line_number":332,"context_line":"                                           minute\u003d11,"}],"source_content_type":"text/x-python","patch_set":1,"id":"33912613_6d3351bc","line":329,"updated":"2025-02-21 16:59:01.000000000","message":"This test case needs to begin with hour\u003d8, minute\u003d10 and second\u003d30 and to end with hour\u003d8, minute\u003d11 and second\u003d30, as `munite@30` configuration, IIUC.","commit_id":"cec608f400ad452d1c8769e3e3c09efb91bd02e5"}],"nova/utils.py":[{"author":{"_account_id":8878,"name":"Masahito Muroi","email":"masahito.muroi@linecorp.com","username":"masa"},"change_message_id":"fd2cb05ea48b1622df724e1536bdf2ac0b047005","unresolved":true,"context_lines":[{"line_number":213,"context_line":"            end \u003d end - datetime.timedelta(hours\u003d1)"},{"line_number":214,"context_line":"        begin \u003d end - datetime.timedelta(hours\u003d1)"},{"line_number":215,"context_line":"    else:  # unit \u003d\u003d \u0027minute\u0027"},{"line_number":216,"context_line":"        end \u003d rightnow.replace(second\u003d0, microsecond\u003d0)"},{"line_number":217,"context_line":"        if end \u003e\u003d rightnow:"},{"line_number":218,"context_line":"            end \u003d end - datetime.timedelta(minutes\u003d1)"},{"line_number":219,"context_line":"        begin \u003d end - datetime.timedelta(minutes\u003d1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"6c9cf49f_dbefa442","line":216,"updated":"2025-02-21 16:59:01.000000000","message":"The `second` argument should be `offset`, shouldn\u0027t it?  For example, the `minute@10` configuration return audit starting from `10:05:10` to `10:06:10`.","commit_id":"cec608f400ad452d1c8769e3e3c09efb91bd02e5"},{"author":{"_account_id":8878,"name":"Masahito Muroi","email":"masahito.muroi@linecorp.com","username":"masa"},"change_message_id":"fd2cb05ea48b1622df724e1536bdf2ac0b047005","unresolved":true,"context_lines":[{"line_number":215,"context_line":"    else:  # unit \u003d\u003d \u0027minute\u0027"},{"line_number":216,"context_line":"        end \u003d rightnow.replace(second\u003d0, microsecond\u003d0)"},{"line_number":217,"context_line":"        if end \u003e\u003d rightnow:"},{"line_number":218,"context_line":"            end \u003d end - datetime.timedelta(minutes\u003d1)"},{"line_number":219,"context_line":"        begin \u003d end - datetime.timedelta(minutes\u003d1)"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"    return (begin, end)"}],"source_content_type":"text/x-python","patch_set":1,"id":"245ef18d_64eb8403","line":218,"updated":"2025-02-21 16:59:01.000000000","message":"This if-condition becomes true only if the `rightnow` is generated second\u003d0 and microsecond\u003d0 because this `end` ignores the offset.","commit_id":"cec608f400ad452d1c8769e3e3c09efb91bd02e5"}]}
