)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":38562,"name":"Richard Cruise","email":"rcruise@redhat.com","username":"rcruise"},"change_message_id":"4ff05d5fff1c4759e158207a000ae1985792ce9a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"3d8a0e72_1288baf4","updated":"2026-06-02 13:55:44.000000000","message":"Couple of minor issues (see Next Steps above) and needs a Release Note\nAlso, the commit message has a few typos. Can you fix those as well?\n\nOtherwise it should be good to go\n\nReviewed with assistance from Claude Sonnet 4.6","commit_id":"f321fe7994f08d2cacabaa786c17e2c2145be6ee"},{"author":{"_account_id":38562,"name":"Richard Cruise","email":"rcruise@redhat.com","username":"rcruise"},"change_message_id":"9f329bfeed0efb9abcb1d816608a6cb3fe4347f3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"9d52c84b_eb32bf55","updated":"2026-06-02 13:53:25.000000000","message":"I think the Gerrit character limit cut off a chunk of the automated review so here\u0027s the summary:\n\n## Final Verdict\n\n**Overall Assessment**: The functional implementation is correct and follows established patterns in the codebase. The change successfully replaces raw API enum strings with i18n-friendly human-readable labels in the L7 policy/rule UI dropdowns without breaking edit-mode pre-fill or API submission. The commit message quality and minor label capitalisation inconsistency should be addressed before merge.\n\n**Recommendation**:\n🔄 **Request Changes** (Issues must be addressed)\n\n**Confidence Level**: High\nThe change is small and well-scoped. The AngularJS `ng-options` semantics and edit-flow interactions were verified by reading the full model service. The issues identified are clear and actionable.\n\n---\n\n## Backport Recommendation\n\n**Recommendation:** ❌ No backport needed\n\n**Rationale:** No backport branches are configured for this repository. Additionally, this is a UX improvement (replacing raw enum strings with human-readable labels) rather than a high-severity bug fix, and stable branch policies generally do not accept pure UI display improvements unless they address a critical user-facing defect.\n\n---\n\n## Next Steps\n\n1. **Author**: Fix the commit message — correct the garbled subject line, remove the \"labelse\" typo, and remove the duplicate `Change-Id` trailer.\n2. **Author**: Align capitalisation of \"Redirect to URL\" / \"Redirect to Pool\" in `model.service.js` to match the help text (lowercase \"to\").\n3. **Author**: Fix the indentation of the `\u003cstrong\u003eEnds With\u003c/strong\u003e` line in `l7rule.help.html`.\n4. **Author**: Add a release note under `releasenotes/notes/` describing the UI improvement.\n5. **Author (optional but recommended)**: Add unit tests to `model.service.spec.js` that verify the `{value, label}` structure of `l7policyActions`, `l7ruleTypes`, `l7ruleCompareTypes`, and `l7ruleFileTypeCompareTypes`.","commit_id":"f321fe7994f08d2cacabaa786c17e2c2145be6ee"},{"author":{"_account_id":37632,"name":"Dmitriy Chubinidze","email":"dcu995@gmail.com","username":"chubinidzedr"},"change_message_id":"073c8d9dfc89870f13396efca0fd1c946ad7cf13","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"969690a3_b3c7d364","in_reply_to":"3d8a0e72_1288baf4","updated":"2026-06-02 21:30:18.000000000","message":"Thanks for comments, done.","commit_id":"f321fe7994f08d2cacabaa786c17e2c2145be6ee"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"7bf3a1e183b828b6b32b36cd3c7f8e348d634f13","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"3e50abf7_06d2a9d7","updated":"2026-06-03 08:16:37.000000000","message":"LGTM thanks","commit_id":"03bae77dd096ff33c0b5767b1f0ad4776e80647f"},{"author":{"_account_id":38562,"name":"Richard Cruise","email":"rcruise@redhat.com","username":"rcruise"},"change_message_id":"32b1b95357a200b0ccff7592d242f6c6c00afa9f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"3d0251a8_d2334455","updated":"2026-06-03 08:02:35.000000000","message":"Thanks for making those changes, LGTM!","commit_id":"03bae77dd096ff33c0b5767b1f0ad4776e80647f"}],"octavia_dashboard/static/dashboard/project/lbaasv2/workflow/l7rule/l7rule.help.html":[{"author":{"_account_id":38562,"name":"Richard Cruise","email":"rcruise@redhat.com","username":"rcruise"},"tag":"autogenerated:claude-review","change_message_id":"1e8256211488794c279495a2264ef5e9d18aa048","unresolved":false,"context_lines":[{"line_number":44,"context_line":"      \u003cstrong\u003eStarts With\u003c/strong\u003e: String starts with."},{"line_number":45,"context_line":"    \u003c/li\u003e"},{"line_number":46,"context_line":"    \u003cli translate\u003e"},{"line_number":47,"context_line":"     \u003cstrong\u003eEnds With\u003c/strong\u003e: String ends with."},{"line_number":48,"context_line":"    \u003c/li\u003e"},{"line_number":49,"context_line":"    \u003cli translate\u003e"},{"line_number":50,"context_line":"      \u003cstrong\u003eContains\u003c/strong\u003e: String contains."}],"source_content_type":"text/html","patch_set":8,"id":"5a2b51d7_3c11636a","line":47,"updated":"2026-06-02 13:36:26.000000000","message":"— Severity: Nit","commit_id":"f321fe7994f08d2cacabaa786c17e2c2145be6ee"}],"octavia_dashboard/static/dashboard/project/lbaasv2/workflow/model.service.js":[{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"a413a84c7d177288711175a17dd443009aadf43d","unresolved":true,"context_lines":[{"line_number":89,"context_line":"      listenerProtocols: [\u0027HTTP\u0027, \u0027TCP\u0027, \u0027TERMINATED_HTTPS\u0027, \u0027HTTPS\u0027, \u0027UDP\u0027, \u0027SCTP\u0027],"},{"line_number":90,"context_line":"      availability_zones: {},"},{"line_number":91,"context_line":"      l7policyActions: ["},{"line_number":92,"context_line":"        {value: \u0027REJECT\u0027, label: \u0027Reject\u0027},"},{"line_number":93,"context_line":"        {value: \u0027REDIRECT_TO_URL\u0027, label: \u0027Redirect To URL\u0027},"},{"line_number":94,"context_line":"        {value: \u0027REDIRECT_TO_POOL\u0027, label: \u0027Redirect To Pool\u0027}"},{"line_number":95,"context_line":"      ],"}],"source_content_type":"text/javascript","patch_set":2,"id":"96a61555_4dc774f0","line":92,"range":{"start_line":92,"start_character":33,"end_line":92,"end_character":41},"updated":"2026-03-26 16:25:04.000000000","message":"shouldn\u0027t we use gettext() for these strings?","commit_id":"6b51bae508b05f42d46fc87b4da02ae0df198980"},{"author":{"_account_id":37632,"name":"Dmitriy Chubinidze","email":"dcu995@gmail.com","username":"chubinidzedr"},"change_message_id":"301ea824f3438dba8f41d20aba6c6deb93b130b6","unresolved":false,"context_lines":[{"line_number":89,"context_line":"      listenerProtocols: [\u0027HTTP\u0027, \u0027TCP\u0027, \u0027TERMINATED_HTTPS\u0027, \u0027HTTPS\u0027, \u0027UDP\u0027, \u0027SCTP\u0027],"},{"line_number":90,"context_line":"      availability_zones: {},"},{"line_number":91,"context_line":"      l7policyActions: ["},{"line_number":92,"context_line":"        {value: \u0027REJECT\u0027, label: \u0027Reject\u0027},"},{"line_number":93,"context_line":"        {value: \u0027REDIRECT_TO_URL\u0027, label: \u0027Redirect To URL\u0027},"},{"line_number":94,"context_line":"        {value: \u0027REDIRECT_TO_POOL\u0027, label: \u0027Redirect To Pool\u0027}"},{"line_number":95,"context_line":"      ],"}],"source_content_type":"text/javascript","patch_set":2,"id":"4f596433_50d34e35","line":92,"range":{"start_line":92,"start_character":33,"end_line":92,"end_character":41},"in_reply_to":"96a61555_4dc774f0","updated":"2026-03-26 17:34:19.000000000","message":"Thanks for pointing, indeed we should.","commit_id":"6b51bae508b05f42d46fc87b4da02ae0df198980"},{"author":{"_account_id":38562,"name":"Richard Cruise","email":"rcruise@redhat.com","username":"rcruise"},"tag":"autogenerated:claude-review","change_message_id":"1e8256211488794c279495a2264ef5e9d18aa048","unresolved":false,"context_lines":[{"line_number":90,"context_line":"      availability_zones: {},"},{"line_number":91,"context_line":"      l7policyActions: ["},{"line_number":92,"context_line":"        {value: \u0027REJECT\u0027, label: gettext(\u0027Reject\u0027)},"},{"line_number":93,"context_line":"        {value: \u0027REDIRECT_TO_URL\u0027, label: gettext(\u0027Redirect To URL\u0027)},"},{"line_number":94,"context_line":"        {value: \u0027REDIRECT_TO_POOL\u0027, label: gettext(\u0027Redirect To Pool\u0027)}"},{"line_number":95,"context_line":"      ],"},{"line_number":96,"context_line":"      l7ruleTypes: ["},{"line_number":97,"context_line":"        {value: \u0027HOST_NAME\u0027, label: gettext(\u0027Host Name\u0027)},"}],"source_content_type":"text/javascript","patch_set":8,"id":"b1338cf3_16f0a04c","line":94,"range":{"start_line":93,"start_character":0,"end_line":94,"end_character":0},"updated":"2026-06-02 13:36:26.000000000","message":"— Severity: Minor","commit_id":"f321fe7994f08d2cacabaa786c17e2c2145be6ee"}]}
