)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fc0c8cfad6874ccc26e6c73818f9ba622ea14b88","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"a6ebd0c0_af3e20e6","updated":"2026-10-07 10:23:33.000000000","message":"thanks for the answers Stephen!","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fa2168cec423930519a01b5bf2d47e3cc6ae6d86","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"50d591b7_4e5abee5","updated":"2026-10-06 11:57:51.000000000","message":"thanks for the patch @stephenfin@redhat.com ! I have two nit questions, hence giving -1 to highlight them.","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"}],"openstack_releases/schema.yaml":[{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"1f6ebed01a6ecf9d645f1337e0507daa0bf27f56","unresolved":true,"context_lines":[{"line_number":68,"context_line":"      - \"python-service\""},{"line_number":69,"context_line":"      - \"python-pypi\""},{"line_number":70,"context_line":"      - \"xstatic\""},{"line_number":71,"context_line":"      - \"fuel\","},{"line_number":72,"context_line":"      - \"nodejs\""},{"line_number":73,"context_line":"      - \"puppet\""},{"line_number":74,"context_line":"      - \"neutron\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"8653e238_f3e244b8","line":71,"updated":"2026-06-17 08:28:32.000000000","message":"```suggestion\n      - \"fuel\"\n```","commit_id":"4a8ff5374693f640bb21f1e5126c460027b7fc30"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"a746b6d1f1bb3a8891d0f4214cae98daf5ef2a42","unresolved":false,"context_lines":[{"line_number":68,"context_line":"      - \"python-service\""},{"line_number":69,"context_line":"      - \"python-pypi\""},{"line_number":70,"context_line":"      - \"xstatic\""},{"line_number":71,"context_line":"      - \"fuel\","},{"line_number":72,"context_line":"      - \"nodejs\""},{"line_number":73,"context_line":"      - \"puppet\""},{"line_number":74,"context_line":"      - \"neutron\""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"17812fd4_ebd1d6f5","line":71,"in_reply_to":"8653e238_f3e244b8","updated":"2026-06-17 09:32:29.000000000","message":"Fix applied.","commit_id":"4a8ff5374693f640bb21f1e5126c460027b7fc30"},{"author":{"_account_id":308,"name":"Thierry Carrez","email":"thierry@openstack.org","username":"ttx"},"change_message_id":"52abe5c5b89a3eb40eb45e593477a57785794d34","unresolved":true,"context_lines":[{"line_number":29,"context_line":"  release-model:"},{"line_number":30,"context_line":"    type: \"string\""},{"line_number":31,"context_line":"    enum:"},{"line_number":32,"context_line":"    - \"cycle-with-intermediary\""},{"line_number":33,"context_line":"    - \"cycle-with-milestones\""},{"line_number":34,"context_line":"    - \"cycle-trailing\""},{"line_number":35,"context_line":"    - \"untagged\""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"6bc73a53_f0f8ad77","line":32,"range":{"start_line":32,"start_character":0,"end_line":32,"end_character":4},"updated":"2026-06-18 11:41:11.000000000","message":"missing indent?","commit_id":"13147d6f120b4422b5865f9b5db4d7e3e3dc307e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"7fc5ae662d86ba71e53caae63b1f0c9e2f0ecd28","unresolved":false,"context_lines":[{"line_number":29,"context_line":"  release-model:"},{"line_number":30,"context_line":"    type: \"string\""},{"line_number":31,"context_line":"    enum:"},{"line_number":32,"context_line":"    - \"cycle-with-intermediary\""},{"line_number":33,"context_line":"    - \"cycle-with-milestones\""},{"line_number":34,"context_line":"    - \"cycle-trailing\""},{"line_number":35,"context_line":"    - \"untagged\""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"c493c931_887b3c0e","line":32,"range":{"start_line":32,"start_character":0,"end_line":32,"end_character":4},"in_reply_to":"6bc73a53_f0f8ad77","updated":"2026-06-23 11:33:23.000000000","message":"Done","commit_id":"13147d6f120b4422b5865f9b5db4d7e3e3dc307e"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fa2168cec423930519a01b5bf2d47e3cc6ae6d86","unresolved":true,"context_lines":[{"line_number":4,"context_line":"# Do not allow any properties not defined here. This lets us catch"},{"line_number":5,"context_line":"# typos."},{"line_number":6,"context_line":"additionalProperties: false"},{"line_number":7,"context_line":"required: [\"team\", \"type\"]"},{"line_number":8,"context_line":"properties:"},{"line_number":9,"context_line":"  team:"},{"line_number":10,"context_line":"    type: \"string\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"1b41487d_598fd5ba","line":7,"updated":"2026-10-06 11:57:51.000000000","message":"why is this better than the original? 🤔","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"e228b9d52314b0d86d57cbbf98a90388b2e513ad","unresolved":true,"context_lines":[{"line_number":4,"context_line":"# Do not allow any properties not defined here. This lets us catch"},{"line_number":5,"context_line":"# typos."},{"line_number":6,"context_line":"additionalProperties: false"},{"line_number":7,"context_line":"required: [\"team\", \"type\"]"},{"line_number":8,"context_line":"properties:"},{"line_number":9,"context_line":"  team:"},{"line_number":10,"context_line":"    type: \"string\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"d659e00a_2edd0186","line":7,"in_reply_to":"1b41487d_598fd5ba","updated":"2026-10-07 06:21:35.000000000","message":"I was about to ask the same, IMO the expanded form is nicer to read","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"68a2abd6a12aaf8aed0ee27f49d8a6afb0d1be5f","unresolved":true,"context_lines":[{"line_number":4,"context_line":"# Do not allow any properties not defined here. This lets us catch"},{"line_number":5,"context_line":"# typos."},{"line_number":6,"context_line":"additionalProperties: false"},{"line_number":7,"context_line":"required: [\"team\", \"type\"]"},{"line_number":8,"context_line":"properties:"},{"line_number":9,"context_line":"  team:"},{"line_number":10,"context_line":"    type: \"string\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"ff10b234_70293b55","line":7,"in_reply_to":"d1efb2e8_b79ea11f","updated":"2026-10-07 09:13:35.000000000","message":"(if not, I would be inclined to keep this as-is here, since it would at least be locally consistent)","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0d360e83cffeff8520b3c755e6c4aa46cfe2701b","unresolved":true,"context_lines":[{"line_number":4,"context_line":"# Do not allow any properties not defined here. This lets us catch"},{"line_number":5,"context_line":"# typos."},{"line_number":6,"context_line":"additionalProperties: false"},{"line_number":7,"context_line":"required: [\"team\", \"type\"]"},{"line_number":8,"context_line":"properties:"},{"line_number":9,"context_line":"  team:"},{"line_number":10,"context_line":"    type: \"string\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"d1efb2e8_b79ea11f","line":7,"in_reply_to":"d659e00a_2edd0186","updated":"2026-10-07 09:12:49.000000000","message":"I was copying the form used for other short 2-3 element arrays below. I can revert this, but should I also change e.g. `properties.storyboard.type`, `properties.artifact-link-mode.enum` etc.?","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fc0c8cfad6874ccc26e6c73818f9ba622ea14b88","unresolved":false,"context_lines":[{"line_number":4,"context_line":"# Do not allow any properties not defined here. This lets us catch"},{"line_number":5,"context_line":"# typos."},{"line_number":6,"context_line":"additionalProperties: false"},{"line_number":7,"context_line":"required: [\"team\", \"type\"]"},{"line_number":8,"context_line":"properties:"},{"line_number":9,"context_line":"  team:"},{"line_number":10,"context_line":"    type: \"string\""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"d98496fc_0d858c11","line":7,"in_reply_to":"ff10b234_70293b55","updated":"2026-10-07 10:23:33.000000000","message":"it\u0027s not a big issue, i just thought if we end up changing things here maybe we want to make the whole consistent.","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fa2168cec423930519a01b5bf2d47e3cc6ae6d86","unresolved":true,"context_lines":[{"line_number":32,"context_line":"      - \"untagged\""},{"line_number":33,"context_line":"      - \"cycle-with-rc\""},{"line_number":34,"context_line":"      - \"cycle-automatic\""},{"line_number":35,"context_line":"      - \"abandoned\""},{"line_number":36,"context_line":"  type:"},{"line_number":37,"context_line":"    type: \"string\""},{"line_number":38,"context_line":"    enum:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"bd9d0f1c_0b75a67a","line":35,"updated":"2026-10-06 11:57:51.000000000","message":"yes, this is nicer, it is more human readable like this. my question is though why do we need the quotation marks? yaml handles everything as strings, doesn\u0027t it? 🤔","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0d360e83cffeff8520b3c755e6c4aa46cfe2701b","unresolved":false,"context_lines":[{"line_number":32,"context_line":"      - \"untagged\""},{"line_number":33,"context_line":"      - \"cycle-with-rc\""},{"line_number":34,"context_line":"      - \"cycle-automatic\""},{"line_number":35,"context_line":"      - \"abandoned\""},{"line_number":36,"context_line":"  type:"},{"line_number":37,"context_line":"    type: \"string\""},{"line_number":38,"context_line":"    enum:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"f080e3c0_9f643c0c","line":35,"in_reply_to":"bd9d0f1c_0b75a67a","updated":"2026-10-07 09:12:49.000000000","message":"\u003e yaml handles everything as strings, doesn\u0027t it? \n\nIf only it were that simple. YAML is notoriously complicated. See [The yaml document from hell](https://ruuda.nl/2023/the-yaml-document-from-hell). A snippet from there:\n\n```\ngeoblock_regions:\n  - dk\n  - fi\n  - is\n  - no\n  - se\n```\n\nis parsed as `{\"geoblock_regions\": [\"dk\", \"fi\", \"is\", false, \"se\"]}`\n\nI prefer to quote all strings and avoid the cognitive load of figuring out whether something can be parsed as something other than a string or not.","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fc0c8cfad6874ccc26e6c73818f9ba622ea14b88","unresolved":false,"context_lines":[{"line_number":32,"context_line":"      - \"untagged\""},{"line_number":33,"context_line":"      - \"cycle-with-rc\""},{"line_number":34,"context_line":"      - \"cycle-automatic\""},{"line_number":35,"context_line":"      - \"abandoned\""},{"line_number":36,"context_line":"  type:"},{"line_number":37,"context_line":"    type: \"string\""},{"line_number":38,"context_line":"    enum:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"6ee22359_eb063e30","line":35,"in_reply_to":"f080e3c0_9f643c0c","updated":"2026-10-07 10:23:33.000000000","message":"thanks for the explanation and the nice reading :) i get your point. nevertheless, i like the listing better without quotation mark in this repository, anyway. but maybe it\u0027s just nicer only to my eyes 😇","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"}],"openstack_releases/series_status_schema.yaml":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"46a01df2859143e6b4ad7d6f35287878549daedb","unresolved":true,"context_lines":[{"line_number":45,"context_line":"      type: \"object\""},{"line_number":46,"context_line":"      additionalProperties: false"},{"line_number":47,"context_line":"      properties:"},{"line_number":48,"context_line":"        required: [\"status\", \"date\"]"},{"line_number":49,"context_line":"        status: *status"},{"line_number":50,"context_line":"        date:"},{"line_number":51,"context_line":"          type: \"date\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"c306cd67_2b97719e","line":48,"updated":"2026-06-23 11:34:08.000000000","message":"Oh, this is at the wrong indent level","commit_id":"84ae41e9a8d9e8d7260744d961a20375f5dd13e8"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2add44473f31e08ecb82fac63e9227abfe212119","unresolved":false,"context_lines":[{"line_number":45,"context_line":"      type: \"object\""},{"line_number":46,"context_line":"      additionalProperties: false"},{"line_number":47,"context_line":"      properties:"},{"line_number":48,"context_line":"        required: [\"status\", \"date\"]"},{"line_number":49,"context_line":"        status: *status"},{"line_number":50,"context_line":"        date:"},{"line_number":51,"context_line":"          type: \"date\""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"8f4b47a7_93158f96","line":48,"in_reply_to":"c306cd67_2b97719e","updated":"2026-06-23 11:38:06.000000000","message":"Done","commit_id":"84ae41e9a8d9e8d7260744d961a20375f5dd13e8"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"46a01df2859143e6b4ad7d6f35287878549daedb","unresolved":true,"context_lines":[{"line_number":53,"context_line":"      type: \"object\""},{"line_number":54,"context_line":"      additionalProperties: false"},{"line_number":55,"context_line":"      properties:"},{"line_number":56,"context_line":"        required: [\"key\", \"start\", \"end\"]"},{"line_number":57,"context_line":"        key:"},{"line_number":58,"context_line":"          type: \"string\""},{"line_number":59,"context_line":"        start:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7a33a862_b050721d","line":56,"updated":"2026-06-23 11:34:08.000000000","message":"As is this","commit_id":"84ae41e9a8d9e8d7260744d961a20375f5dd13e8"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"2add44473f31e08ecb82fac63e9227abfe212119","unresolved":false,"context_lines":[{"line_number":53,"context_line":"      type: \"object\""},{"line_number":54,"context_line":"      additionalProperties: false"},{"line_number":55,"context_line":"      properties:"},{"line_number":56,"context_line":"        required: [\"key\", \"start\", \"end\"]"},{"line_number":57,"context_line":"        key:"},{"line_number":58,"context_line":"          type: \"string\""},{"line_number":59,"context_line":"        start:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9d73dd38_cfbac3ca","line":56,"in_reply_to":"7a33a862_b050721d","updated":"2026-06-23 11:38:06.000000000","message":"Done","commit_id":"84ae41e9a8d9e8d7260744d961a20375f5dd13e8"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fa2168cec423930519a01b5bf2d47e3cc6ae6d86","unresolved":false,"context_lines":[{"line_number":32,"context_line":"    next-phase:"},{"line_number":33,"context_line":"      type: \"object\""},{"line_number":34,"context_line":"      additionalProperties: false"},{"line_number":35,"context_line":"      required: [\"status\"]"},{"line_number":36,"context_line":"      properties:"},{"line_number":37,"context_line":"        status: *status"},{"line_number":38,"context_line":"        date:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"8962acd7_093a0beb","line":35,"updated":"2026-10-06 11:57:51.000000000","message":"oh, nice catch. we use `end of life` in `next phase` two ways:\n- non-SLURP series will move to EOL directly when the maintained phase ends\n- unmaintained series will move to EOL when community decides, so it does not have an exact date, hence there is note `date` field and a `TBD` is written instead.\n✅","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"e228b9d52314b0d86d57cbbf98a90388b2e513ad","unresolved":false,"context_lines":[{"line_number":32,"context_line":"    next-phase:"},{"line_number":33,"context_line":"      type: \"object\""},{"line_number":34,"context_line":"      additionalProperties: false"},{"line_number":35,"context_line":"      required: [\"status\"]"},{"line_number":36,"context_line":"      properties:"},{"line_number":37,"context_line":"        status: *status"},{"line_number":38,"context_line":"        date:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"ced47361_0e5a4e35","line":35,"in_reply_to":"8962acd7_093a0beb","updated":"2026-10-07 06:21:35.000000000","message":"well one could argue that next-phase should never be \"future\", but maybe this reduction in duplication is the better solution","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"},{"author":{"_account_id":17685,"name":"Elod Illes","email":"elod.illes@est.tech","username":"elod.illes"},"change_message_id":"fc0c8cfad6874ccc26e6c73818f9ba622ea14b88","unresolved":false,"context_lines":[{"line_number":32,"context_line":"    next-phase:"},{"line_number":33,"context_line":"      type: \"object\""},{"line_number":34,"context_line":"      additionalProperties: false"},{"line_number":35,"context_line":"      required: [\"status\"]"},{"line_number":36,"context_line":"      properties:"},{"line_number":37,"context_line":"        status: *status"},{"line_number":38,"context_line":"        date:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"c59893f5_2fc6fa42","line":35,"in_reply_to":"ced47361_0e5a4e35","updated":"2026-10-07 10:23:33.000000000","message":"true. on the other hand `future` was listed originally under `next-phase` anyway... so meh...","commit_id":"c64c810a6e69cfee23f42b9f3304566faf7051fc"}]}
