[{"url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/comments/4128333742","html_url":"https://github.com/Ultimate-Multisite/ultimate-multisite/pull/470#issuecomment-4128333742","issue_url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/470","id":4128333742,"node_id":"IC_kwDONXDWGc72EV-u","user":{"login":"coderabbitai[bot]","id":136622811,"node_id":"BOT_kgDOCCSy2w","avatar_url":"https://avatars.githubusercontent.com/in/347564?v=4","gravatar_id":"","url":"https://api.github.com/users/coderabbitai%5Bbot%5D","html_url":"https://github.com/apps/coderabbitai","followers_url":"https://api.github.com/users/coderabbitai%5Bbot%5D/followers","following_url":"https://api.github.com/users/coderabbitai%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/coderabbitai%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/coderabbitai%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coderabbitai%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/coderabbitai%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/coderabbitai%5Bbot%5D/repos","events_url":"https://api.github.com/users/coderabbitai%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/coderabbitai%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"created_at":"2026-03-25T17:17:21Z","updated_at":"2026-03-25T18:04:34Z","body":"<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\n<!-- walkthrough_start -->\n\n<details>\n<summary>📝 Walkthrough</summary>\n\n## Walkthrough\n\nOverrides of `to_array()` were added to seven models (Broadcast, Checkout_Form, Customer, Email, Payment, Product, Site) to call their lazy-loaded, meta-backed getters for persisted instances before delegating to `parent::to_array()`. Corresponding unit tests were added verifying those meta fields appear in serialized arrays.\n\n## Changes\n\n|Cohort / File(s)|Summary|\n|---|---|\n|**Model `to_array()` Overrides** <br> `inc/models/class-broadcast.php`, `inc/models/class-checkout-form.php`, `inc/models/class-customer.php`, `inc/models/class-email.php`, `inc/models/class-payment.php`, `inc/models/class-product.php`, `inc/models/class-site.php`|Added `to_array()` overrides that, when the model has an ID, call lazy-loaded meta-backed getters (e.g., `get_notice_type()`, `get_thank_you_page_id()`, `has_trialed()`, `get_event()`, `get_line_items()`, product meta getters, site meta getters) before calling `parent::to_array()`. Site override also ensures `id` in output equals the model's blog/network ID.|\n|**Unit tests for lazy-loaded fields** <br> `tests/WP_Ultimo/Models/Broadcast_Test.php`, `tests/WP_Ultimo/Models/Checkout_Form_Test.php`, `tests/WP_Ultimo/Models/Customer_Test.php`, `tests/WP_Ultimo/Models/Email_Test.php`, `tests/WP_Ultimo/Models/Payment_Test.php`, `tests/WP_Ultimo/Models/Product_Test.php`, `tests/WP_Ultimo/Models/Site_Test.php`|Added `test_to_array_includes_lazy_loaded_meta_properties()` to each test file asserting that the respective `to_array()` output contains the meta-backed fields and they are populated (non-null and matching set values).|\n\n## Estimated code review effort\n\n🎯 3 (Moderate) | ⏱️ ~20 minutes\n\n## Poem\n\n> 🐰 I nudge the getters, soft and shy,  \n> > so meta-fields no longer lie.  \n> > For saved models I call each key,  \n> > the API wakes — hooray for me! ✨\n\n</details>\n\n<!-- walkthrough_end -->\n\n\n<!-- pre_merge_checks_walkthrough_start -->\n\n<details>\n<summary>🚥 Pre-merge checks | ✅ 5</summary>\n\n<details>\n<summary>✅ Passed checks (5 passed)</summary>\n\n|         Check name         | Status   | Explanation                                                                                                                                                                                   |\n| :------------------------: | :------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n|      Description Check     | ✅ Passed | Check skipped - CodeRabbit’s high-level summary is enabled.                                                                                                                                   |\n|         Title check        | ✅ Passed | Title clearly summarizes the main change: overriding to_array() method in seven models to fix lazy-loaded property population.                                                                |\n|     Linked Issues check    | ✅ Passed | All coding requirements from issue `#469` are met: to_array() overrides added to all 7 models with appropriate lazy-loading calls, Site.id fixed to return blog_id, tests added for each model. |\n| Out of Scope Changes check | ✅ Passed | All changes are directly within scope: model to_array() overrides and corresponding unit tests follow the issue requirements and existing patterns from Discount_Code and Event models.       |\n|     Docstring Coverage     | ✅ Passed | Docstring coverage is 96.43% which is sufficient. The required threshold is 80.00%.                                                                                                           |\n\n</details>\n\n<sub>✏️ Tip: You can configure your own custom pre-merge checks in the settings.</sub>\n\n</details>\n\n<!-- pre_merge_checks_walkthrough_end -->\n\n<!-- finishing_touch_checkbox_start -->\n\n<details>\n<summary>✨ Finishing Touches</summary>\n\n<details>\n<summary>📝 Generate docstrings</summary>\n\n- [ ] <!-- {\"checkboxId\": \"7962f53c-55bc-4827-bfbf-6a18da830691\"} --> Create stacked PR\n- [ ] <!-- {\"checkboxId\": \"3e1879ae-f29b-4d0d-8e06-d12b7ba33d98\"} --> Commit on current branch\n\n</details>\n<details>\n<summary>🧪 Generate unit tests (beta)</summary>\n\n- [ ] <!-- {\"checkboxId\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\", \"radioGroupId\": \"utg-output-choice-group-unknown_comment_id\"} -->   Create PR with unit tests\n- [ ] <!-- {\"checkboxId\": \"6ba7b810-9dad-11d1-80b4-00c04fd430c8\", \"radioGroupId\": \"utg-output-choice-group-unknown_comment_id\"} -->   Commit unit tests in branch `bugfix/issue-469-to-array`\n\n</details>\n\n</details>\n\n<!-- finishing_touch_checkbox_end -->\n\n<!-- tips_start -->\n\n---\n\nThanks for using [CodeRabbit](https://coderabbit.ai?utm_source=oss&utm_medium=github&utm_campaign=Ultimate-Multisite/ultimate-multisite&utm_content=470)! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.\n\n<details>\n<summary>❤️ Share</summary>\n\n- [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai)\n- [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai)\n- [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai)\n- [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)\n\n</details>\n\n<sub>Comment `@coderabbitai help` to get the list of available commands and usage tips.</sub>\n\n<!-- tips_end -->\n\n<!-- internal state start -->\n\n\n<!-- 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 -->\n\n<!-- internal state end -->","author_association":"CONTRIBUTOR","reactions":{"url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/comments/4128333742/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":{"id":347564,"client_id":"Iv1.6aaafe4fe882736b","slug":"coderabbitai","node_id":"A_kwHOB96YWc4ABU2s","owner":{"login":"coderabbitai","id":132028505,"node_id":"O_kgDOB96YWQ","avatar_url":"https://avatars.githubusercontent.com/u/132028505?v=4","gravatar_id":"","url":"https://api.github.com/users/coderabbitai","html_url":"https://github.com/coderabbitai","followers_url":"https://api.github.com/users/coderabbitai/followers","following_url":"https://api.github.com/users/coderabbitai/following{/other_user}","gists_url":"https://api.github.com/users/coderabbitai/gists{/gist_id}","starred_url":"https://api.github.com/users/coderabbitai/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coderabbitai/subscriptions","organizations_url":"https://api.github.com/users/coderabbitai/orgs","repos_url":"https://api.github.com/users/coderabbitai/repos","events_url":"https://api.github.com/users/coderabbitai/events{/privacy}","received_events_url":"https://api.github.com/users/coderabbitai/received_events","type":"Organization","user_view_type":"public","site_admin":false},"name":"coderabbitai","description":"# Transforming Code Reviews with AI\r\n\r\n## Features\r\n\r\n**Automated Reviews**: Continuous reviews of the pull requests including incremental commits. \r\n\r\n**Summarization**: Generates high-level summary and a technical walkthrough of the PR changes. \r\n\r\n**Line-by-line review**: Provides line-by-line suggestions committable with one click.\r\n\r\n**Codebase verification**:  Verifies the impact on the overall codebase and identifies missing changes.\r\n\r\n**Insights into your code**:  Ask any questions on your codebase within the pull request \r\n\r\n**Chat about your code** : Chat with the bot around your code. The more you chat, the smarter it gets.\r\n\r\n**Issue Validation**:  Validates the PR against the linked issues and identifies other related issues \r\n\r\n\r\n\r\n","external_url":"https://coderabbit.ai?utm_source=cr_app&utm_medium=github","html_url":"https://github.com/apps/coderabbitai","created_at":"2023-06-14T15:47:27Z","updated_at":"2026-03-14T07:58:44Z","permissions":{"actions":"read","checks":"write","contents":"write","discussions":"read","issues":"write","members":"read","metadata":"read","pull_requests":"write","statuses":"write"},"events":["issues","issue_comment","label","organization","pull_request","pull_request_review","pull_request_review_comment","pull_request_review_thread","release","repository"]}},{"url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/comments/4128350821","html_url":"https://github.com/Ultimate-Multisite/ultimate-multisite/pull/470#issuecomment-4128350821","issue_url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/470","id":4128350821,"node_id":"IC_kwDONXDWGc72EaJl","user":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"created_at":"2026-03-25T17:19:54Z","updated_at":"2026-03-25T17:19:54Z","body":"## 🔨 Build Complete - Ready for Testing!\n\n### 📦 Download Build Artifact (Recommended)\nDownload the zip build, upload to WordPress and test:\n\n- **Build:** `ultimate-multisite`\n- **[⬇️ Download from GitHub Actions](https://github.com/Ultimate-Multisite/ultimate-multisite/actions/runs/23554305676)**\n- **[⬇️ Download without Github Account (nightly.link)](https://nightly.link/Ultimate-Multisite/ultimate-multisite/actions/runs/23554305676/ultimate-multisite.zip)**\n\n### 🌐 Test in WordPress Playground (Very Experimental)\nClick the link below to instantly test this PR in your browser - no installation needed!\nPlayground support for multisite is very limitied, hopefully it will get better in the future.\n\n**[🚀 Launch in Playground](https://playground.wordpress.net/#eyIkc2NoZW1hIjoiaHR0cHM6Ly9wbGF5Z3JvdW5kLndvcmRwcmVzcy5uZXQvYmx1ZXByaW50LXNjaGVtYS5qc29uIiwibWV0YSI6eyJhdXRob3IiOiJVbHRpbWF0ZSBNdWx0aXNpdGUiLCJ0aXRsZSI6IlVsdGltYXRlIE11bHRpc2l0ZSBQUiAjNDcwIFRlc3QiLCJkZXNjcmlwdGlvbiI6IlRlc3QgYnVpbGQgZnJvbSBQUiAjNDcwIn0sImxhbmRpbmdQYWdlIjoiL3dwLWFkbWluL25ldHdvcmsvYWRtaW4ucGhwP3BhZ2U9d3AtdWx0aW1vLXNldHVwIiwicHJlZmVycmVkVmVyc2lvbnMiOnsicGhwIjoiOC4zIiwid3AiOiJsYXRlc3QifSwicGhwRXh0ZW5zaW9uQnVuZGxlcyI6WyJraXRjaGVuLXNpbmsiXSwiZmVhdHVyZXMiOnsibmV0d29ya2luZyI6dHJ1ZX0sInBsdWdpbnMiOlt7InJlc291cmNlIjoidXJsIiwidXJsIjoiaHR0cHM6Ly9uaWdodGx5LmxpbmsvVWx0aW1hdGUtTXVsdGlzaXRlL3VsdGltYXRlLW11bHRpc2l0ZS9hY3Rpb25zL3J1bnMvMjM1NTQzMDU2NzYvdWx0aW1hdGUtbXVsdGlzaXRlLnppcCJ9XSwic3RlcHMiOlt7InN0ZXAiOiJlbmFibGVNdWx0aXNpdGUifSx7InN0ZXAiOiJ3cC1jbGkiLCJjb21tYW5kIjoid3Agc2l0ZSBjcmVhdGUgLS1zbHVnPXNpdGUwMSJ9LHsic3RlcCI6IndwLWNsaSIsImNvbW1hbmQiOiJ3cCBwbHVnaW4gYWN0aXZhdGUgdWx0aW1hdGUtbXVsdGlzaXRlIC0tbmV0d29yayJ9LHsic3RlcCI6ImxvZ2luIiwidXNlcm5hbWUiOiJhZG1pbiIsInBhc3N3b3JkIjoicGFzc3dvcmQifV19Cg==)**\n\nLogin credentials: `admin` / `password`\n\n","author_association":"NONE","reactions":{"url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/comments/4128350821/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":{"id":15368,"client_id":"Iv1.05c79e9ad1f6bdfa","slug":"github-actions","node_id":"MDM6QXBwMTUzNjg=","owner":{"login":"github","id":9919,"node_id":"MDEyOk9yZ2FuaXphdGlvbjk5MTk=","avatar_url":"https://avatars.githubusercontent.com/u/9919?v=4","gravatar_id":"","url":"https://api.github.com/users/github","html_url":"https://github.com/github","followers_url":"https://api.github.com/users/github/followers","following_url":"https://api.github.com/users/github/following{/other_user}","gists_url":"https://api.github.com/users/github/gists{/gist_id}","starred_url":"https://api.github.com/users/github/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github/subscriptions","organizations_url":"https://api.github.com/users/github/orgs","repos_url":"https://api.github.com/users/github/repos","events_url":"https://api.github.com/users/github/events{/privacy}","received_events_url":"https://api.github.com/users/github/received_events","type":"Organization","user_view_type":"public","site_admin":false},"name":"GitHub Actions","description":"Automate your workflow from idea to production","external_url":"https://help.github.com/en/actions","html_url":"https://github.com/apps/github-actions","created_at":"2018-07-30T09:30:17Z","updated_at":"2026-06-18T16:17:48Z","permissions":{"actions":"write","administration":"read","artifact_metadata":"write","attestations":"write","checks":"write","code_quality":"write","contents":"write","copilot_requests":"write","deployments":"write","discussions":"write","drives":"write","issues":"write","merge_queues":"write","metadata":"read","models":"read","packages":"write","pages":"write","pull_requests":"write","repository_hooks":"write","repository_projects":"write","security_events":"write","statuses":"write","vulnerability_alerts":"read"},"events":["branch_protection_rule","check_run","check_suite","create","delete","deployment","deployment_status","discussion","discussion_comment","fork","gollum","issues","issue_comment","label","merge_group","milestone","page_build","public","pull_request","pull_request_review","pull_request_review_comment","push","registry_package","release","repository","repository_dispatch","status","watch","workflow_dispatch","workflow_run"]}},{"url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/comments/4128382440","html_url":"https://github.com/Ultimate-Multisite/ultimate-multisite/pull/470#issuecomment-4128382440","issue_url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/470","id":4128382440,"node_id":"IC_kwDONXDWGc72Eh3o","user":{"login":"superdav42","id":1534605,"node_id":"MDQ6VXNlcjE1MzQ2MDU=","avatar_url":"https://avatars.githubusercontent.com/u/1534605?v=4","gravatar_id":"","url":"https://api.github.com/users/superdav42","html_url":"https://github.com/superdav42","followers_url":"https://api.github.com/users/superdav42/followers","following_url":"https://api.github.com/users/superdav42/following{/other_user}","gists_url":"https://api.github.com/users/superdav42/gists{/gist_id}","starred_url":"https://api.github.com/users/superdav42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/superdav42/subscriptions","organizations_url":"https://api.github.com/users/superdav42/orgs","repos_url":"https://api.github.com/users/superdav42/repos","events_url":"https://api.github.com/users/superdav42/events{/privacy}","received_events_url":"https://api.github.com/users/superdav42/received_events","type":"User","user_view_type":"public","site_admin":false},"created_at":"2026-03-25T17:24:42Z","updated_at":"2026-03-25T17:24:42Z","body":"Dispatching CI-fix worker.\n- **Model**: sonnet (anthropic/claude-sonnet-4-6)\n- **Branch**: bugfix/issue-469-to-array\n- **Scope**: Fix E2E test failure in 020-free-trial-flow.spec.js — pricing table element `#wrapper-field-pricing_table label[id^=\"wu-product-\"]` not found. Likely regression from to_array() changes affecting product/plan data serialization in checkout form.\n- **Attempt**: 1 of 1\n- **Direction**: Check if to_array() changes on Product/Plan models affect how checkout form renders pricing options. The test expects `#wrapper-field-pricing_table` to contain product labels — verify the REST API or checkout rendering still returns product data correctly.","author_association":"COLLABORATOR","reactions":{"url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/comments/4128382440/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":null},{"url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/comments/4128651092","html_url":"https://github.com/Ultimate-Multisite/ultimate-multisite/pull/470#issuecomment-4128651092","issue_url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/470","id":4128651092,"node_id":"IC_kwDONXDWGc72FjdU","user":{"login":"github-actions[bot]","id":41898282,"node_id":"MDM6Qm90NDE4OTgyODI=","avatar_url":"https://avatars.githubusercontent.com/in/15368?v=4","gravatar_id":"","url":"https://api.github.com/users/github-actions%5Bbot%5D","html_url":"https://github.com/apps/github-actions","followers_url":"https://api.github.com/users/github-actions%5Bbot%5D/followers","following_url":"https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}","gists_url":"https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}","starred_url":"https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github-actions%5Bbot%5D/subscriptions","organizations_url":"https://api.github.com/users/github-actions%5Bbot%5D/orgs","repos_url":"https://api.github.com/users/github-actions%5Bbot%5D/repos","events_url":"https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}","received_events_url":"https://api.github.com/users/github-actions%5Bbot%5D/received_events","type":"Bot","user_view_type":"public","site_admin":false},"created_at":"2026-03-25T18:03:14Z","updated_at":"2026-03-25T18:03:14Z","body":"## 🔨 Build Complete - Ready for Testing!\n\n### 📦 Download Build Artifact (Recommended)\nDownload the zip build, upload to WordPress and test:\n\n- **Build:** `ultimate-multisite`\n- **[⬇️ Download from GitHub Actions](https://github.com/Ultimate-Multisite/ultimate-multisite/actions/runs/23556269753)**\n- **[⬇️ Download without Github Account (nightly.link)](https://nightly.link/Ultimate-Multisite/ultimate-multisite/actions/runs/23556269753/ultimate-multisite.zip)**\n\n### 🌐 Test in WordPress Playground (Very Experimental)\nClick the link below to instantly test this PR in your browser - no installation needed!\nPlayground support for multisite is very limitied, hopefully it will get better in the future.\n\n**[🚀 Launch in Playground](https://playground.wordpress.net/#eyIkc2NoZW1hIjoiaHR0cHM6Ly9wbGF5Z3JvdW5kLndvcmRwcmVzcy5uZXQvYmx1ZXByaW50LXNjaGVtYS5qc29uIiwibWV0YSI6eyJhdXRob3IiOiJVbHRpbWF0ZSBNdWx0aXNpdGUiLCJ0aXRsZSI6IlVsdGltYXRlIE11bHRpc2l0ZSBQUiAjNDcwIFRlc3QiLCJkZXNjcmlwdGlvbiI6IlRlc3QgYnVpbGQgZnJvbSBQUiAjNDcwIn0sImxhbmRpbmdQYWdlIjoiL3dwLWFkbWluL25ldHdvcmsvYWRtaW4ucGhwP3BhZ2U9d3AtdWx0aW1vLXNldHVwIiwicHJlZmVycmVkVmVyc2lvbnMiOnsicGhwIjoiOC4zIiwid3AiOiJsYXRlc3QifSwicGhwRXh0ZW5zaW9uQnVuZGxlcyI6WyJraXRjaGVuLXNpbmsiXSwiZmVhdHVyZXMiOnsibmV0d29ya2luZyI6dHJ1ZX0sInBsdWdpbnMiOlt7InJlc291cmNlIjoidXJsIiwidXJsIjoiaHR0cHM6Ly9uaWdodGx5LmxpbmsvVWx0aW1hdGUtTXVsdGlzaXRlL3VsdGltYXRlLW11bHRpc2l0ZS9hY3Rpb25zL3J1bnMvMjM1NTYyNjk3NTMvdWx0aW1hdGUtbXVsdGlzaXRlLnppcCJ9XSwic3RlcHMiOlt7InN0ZXAiOiJlbmFibGVNdWx0aXNpdGUifSx7InN0ZXAiOiJ3cC1jbGkiLCJjb21tYW5kIjoid3Agc2l0ZSBjcmVhdGUgLS1zbHVnPXNpdGUwMSJ9LHsic3RlcCI6IndwLWNsaSIsImNvbW1hbmQiOiJ3cCBwbHVnaW4gYWN0aXZhdGUgdWx0aW1hdGUtbXVsdGlzaXRlIC0tbmV0d29yayJ9LHsic3RlcCI6ImxvZ2luIiwidXNlcm5hbWUiOiJhZG1pbiIsInBhc3N3b3JkIjoicGFzc3dvcmQifV19Cg==)**\n\nLogin credentials: `admin` / `password`\n\n","author_association":"NONE","reactions":{"url":"https://api.github.com/repos/Ultimate-Multisite/ultimate-multisite/issues/comments/4128651092/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":{"id":15368,"client_id":"Iv1.05c79e9ad1f6bdfa","slug":"github-actions","node_id":"MDM6QXBwMTUzNjg=","owner":{"login":"github","id":9919,"node_id":"MDEyOk9yZ2FuaXphdGlvbjk5MTk=","avatar_url":"https://avatars.githubusercontent.com/u/9919?v=4","gravatar_id":"","url":"https://api.github.com/users/github","html_url":"https://github.com/github","followers_url":"https://api.github.com/users/github/followers","following_url":"https://api.github.com/users/github/following{/other_user}","gists_url":"https://api.github.com/users/github/gists{/gist_id}","starred_url":"https://api.github.com/users/github/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/github/subscriptions","organizations_url":"https://api.github.com/users/github/orgs","repos_url":"https://api.github.com/users/github/repos","events_url":"https://api.github.com/users/github/events{/privacy}","received_events_url":"https://api.github.com/users/github/received_events","type":"Organization","user_view_type":"public","site_admin":false},"name":"GitHub Actions","description":"Automate your workflow from idea to production","external_url":"https://help.github.com/en/actions","html_url":"https://github.com/apps/github-actions","created_at":"2018-07-30T09:30:17Z","updated_at":"2026-06-18T16:17:48Z","permissions":{"actions":"write","administration":"read","artifact_metadata":"write","attestations":"write","checks":"write","code_quality":"write","contents":"write","copilot_requests":"write","deployments":"write","discussions":"write","drives":"write","issues":"write","merge_queues":"write","metadata":"read","models":"read","packages":"write","pages":"write","pull_requests":"write","repository_hooks":"write","repository_projects":"write","security_events":"write","statuses":"write","vulnerability_alerts":"read"},"events":["branch_protection_rule","check_run","check_suite","create","delete","deployment","deployment_status","discussion","discussion_comment","fork","gollum","issues","issue_comment","label","merge_group","milestone","page_build","public","pull_request","pull_request_review","pull_request_review_comment","push","registry_package","release","repository","repository_dispatch","status","watch","workflow_dispatch","workflow_run"]}}]