Repository navigation
feat!: Rescaffold and update dependencies. - #124
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Rescaffolds the OneAccess WordPress plugin to align with the OneSearch/OneMedia structure, modernizes tooling (PHP 8.2+, TS, lint/test automation), and adds new CI/release workflows.
Changes:
- Modernized build/tooling: TypeScript setup, updated Webpack config, Jest/Playwright configs, and expanded lint/test scripts.
- Updated plugin bootstrap + settings/assets plumbing (localized globals, new admin menu wiring), plus various PHP strict typing/docblock adjustments.
- Added/updated CI and release automation (reusable workflows, release-please, playground previews), plus new PHPUnit/Jest/E2E test scaffolding.
Reviewed changes
Copilot reviewed 102 out of 112 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| webpack.config.js | Updates wp-scripts webpack setup; defines TS entrypoints and CSS extraction. |
| uninstall.php | Refactors uninstall flow; centralizes option/table prefixes. |
| tsconfig.json | Switches to shared base config; adjusts include/exclude/types. |
| tsconfig.base.json | Adds shared TS strictness + module settings. |
| tests/phpunit/TestCase.php | Introduces PHPUnit 11.5 compatibility base test class. |
| tests/phpunit/Integration/Modules/Core/RestTest.php | Adds integration tests for REST header behavior. |
| tests/phpunit/Integration/Modules/Core/AssetsTest.php | Adds integration tests for assets registration/localization. |
| tests/phpunit/Integration/MainTest.php | Adds integration tests for Main singleton + permalink requirement notice. |
| tests/phpunit/Integration/EncryptorTest.php | Adds integration tests for Encryptor roundtrip and failure modes. |
| tests/phpunit/Integration/Contracts/Traits/SingletonTest.php | Adds tests for Singleton trait protections. |
| tests/phpunit/Integration/AutoloaderTest.php | Adds tests for autoloader behavior + admin notices. |
| tests/phpunit/bootstrap.php | Updates PHPUnit bootstrap wiring and repo root constant. |
| tests/js/tsconfig.json | Adds TS config for JS tests. |
| tests/js/setup.ts | Adds Jest setup (fetch mock, globals, clipboard mock). |
| tests/js/mocks/@wordpress/api-fetch.ts | Adds Jest mock for @wordpress/api-fetch. |
| tests/e2e/settings/activation.spec.ts | Adds Playwright E2E spec for activate/deactivate flow. |
| tests/_data/plugins/localhost-helper.php | Adds dev helper plugin for wp-env localhost routing. |
| release-please-config.json | Adds release-please configuration for PHP release type. |
| readme.txt | Updates minimum PHP version metadata. |
| README.md | Updates requirements and minor markdown cleanup. |
| playwright.config.ts | Adds Playwright config extending wp-scripts defaults + artifacts paths. |
| phpunit.xml.dist | Updates PHPUnit 11.5 config, coverage/source config, stricter failure settings. |
| phpstan.neon.dist | Updates PHPStan config + PHP version range for PHP 8.2+. |
| phpcs.xml.dist | Removes legacy PHPCS ruleset file. |
| package.json | Updates scripts/deps; adds lint/test/build tooling. |
| oneaccess.php | Updates plugin header + bootstrap/init flow; PHP 8.2 metadata. |
| jest.config.js | Adds Jest config extending wp-scripts with setup/mappers/coverage outputs. |
| inc/Modules/User/Profile_Request.php | Adds strict_types + improves param/return phpdoc typing. |
| inc/Modules/User/Notice.php | Adds strict_types + doc cleanup. |
| inc/Modules/User/Admin.php | Adds strict_types + formatting/doc cleanup. |
| inc/Modules/Settings/Settings.php | Adjusts settings handling; adds encryption/decryption behavior for API keys. |
| inc/Modules/Settings/Admin.php | Refactors admin menu/screen setup; adds onboarding modal logic and enqueues. |
| inc/Modules/Rest/Governing_Site_Controller.php | Adds strict_types + doc cleanup. |
| inc/Modules/Rest/Brand_Site_Controller.php | Adds strict_types + doc cleanup. |
| inc/Modules/Rest/Basic_Options_Controller.php | Adds strict_types + doc cleanup. |
| inc/Modules/Rest/Actions_Controller.php | Adds strict_types + typing/doc improvements + minor logic cleanup. |
| inc/Modules/Rest/Abstract_REST_Controller.php | Doc cleanup. |
| inc/Modules/Core/User_Roles.php | Adds strict_types + typing/doc improvements. |
| inc/Modules/Core/Rest.php | Minor cleanup. |
| inc/Modules/Core/Hooks.php | Adds strict_types + doc cleanup. |
| inc/Modules/Core/DB.php | Adds strict_types + typing/doc improvements. |
| inc/Modules/Core/Assets.php | Refactors asset registration/localization keys; adds admin style enqueue + defer list updates. |
| inc/Main.php | Loads textdomain and defines registrable class list/order. |
| inc/Contracts/Interfaces/Registrable.php | Minor cleanup. |
| eslint.config.mjs | Introduces flat ESLint config + TS/Jest/Playwright overrides. |
| docs/SECURITY.md | Markdown formatting cleanup. |
| docs/CONTRIBUTING.md | Updates contributing workflow and improves clarity/formatting. |
| docs/CODE_OF_CONDUCT.md | Markdown formatting cleanup. |
| composer.json | Updates platform PHP version and dev tooling deps. |
| blueprint.json | Adds WP Playground blueprint for demo/preview. |
| babel.config.js | Minor formatting tweak. |
| assets/src/user-profile/index.ts | Replaces old JS profile disabling behavior with TS version. |
| assets/src/types/global.d.ts | Adds window global typings for localized objects. |
| assets/src/js/utils.ts | Converts utilities to TS exports + adds password strength types. |
| assets/src/js/user-profile.js | Removes legacy JS implementation (replaced by TS entry). |
| assets/src/js/main.js | Removes empty/placeholder file. |
| assets/src/js/editor.js | Removes empty/placeholder file. |
| assets/src/js/admin.js | Removes empty/placeholder file. |
| assets/src/components/SiteTable.tsx | Formatting/type improvements for settings UI table + modal. |
| assets/src/components/SiteSettings.tsx | Updates nonce key usage; TS/formatting improvements. |
| assets/src/components/SiteModal.tsx | TS/formatting improvements; validation and UX tightening. |
| assets/src/admin/settings/page.tsx | Updates types/global import; nonce key update; formatting/flow tweaks. |
| assets/src/admin/settings/index.tsx | Updates global typing import + SettingsPage wiring. |
| assets/src/admin/onboarding/page.tsx | Refactors onboarding to use shared global types + nonce middleware. |
| assets/src/admin/onboarding/index.tsx | Updates global typing import for onboarding. |
| assets/src/admin/manage-users/index.tsx | Updates nonce key usage; improves types and rendering logic. |
| .wp-env.test.json | Adds dedicated wp-env config for tests. |
| .wp-env.json | Simplifies wp-env config and adds helper plugin + debug defaults. |
| .wp-env.child.json | Adds child wp-env config for multi-instance/dev. |
| .stylelintrc.json | Removes legacy Stylelint JSON config. |
| .stylelint.config.js | Adds Stylelint JS config using wp stylelint config. |
| .release-please-manifest.json | Adds release-please manifest. |
| .prettierrc.js | Adds Prettier config extending wp-prettier with overrides. |
| .prettierignore | Adds ignore list for generated/vendor artifacts. |
| .phpcs.xml.dist | Adds new PHPCS ruleset using rtcamp coding standards. |
| .lintstagedrc.mjs | Adds lint-staged config for pre-commit enforcement. |
| .lefthook.yml | Adds lefthook pre-commit hook for lint-staged. |
| .gitignore | Updates ignore patterns for build/vendor/tests/output/IDE. |
| .github/workflows/test.yml | Removes old monolithic CI workflow. |
| .github/workflows/reusable-wp-playground-pr-preview.yml | Adds reusable PR preview workflow for WP Playground. |
| .github/workflows/reusable-phpunit.yml | Adds reusable PHPUnit workflow. |
| .github/workflows/reusable-phpstan.yml | Adds reusable PHPStan workflow. |
| .github/workflows/reusable-phpcs.yml | Adds reusable PHPCS workflow. |
| .github/workflows/reusable-lint-css-js.yml | Adds reusable JS/CSS lint workflow. |
| .github/workflows/reusable-jest.yml | Adds reusable Jest workflow. |
| .github/workflows/reusable-e2e.yml | Adds reusable Playwright E2E workflow. |
| .github/workflows/reusable-build.yml | Adds reusable build+zip workflow. |
| .github/workflows/release.yml | Replaces release workflow with release-please + build/upload pipeline. |
| .github/workflows/README.md | Documents workflows and local testing guidance. |
| .github/workflows/pr-title.yml | Adds conventional-commit PR title validation workflow. |
| .github/workflows/copilot-setup-steps.yml | Updates Copilot setup steps workflow. |
| .github/workflows/ci.yml | Adds main modular CI workflow orchestrating reusable jobs. |
| .github/PULL_REQUEST_TEMPLATE.md | Updates PR template (adds AI disclosure section and checklist tweaks). |
| .github/dependabot.yml | Updates Dependabot grouping and schedules. |
| .github/.codecov.yml | Adds Codecov config (path fixes, targets, ignores). |
| .gitattributes | Adds export-ignore rules for distribution packaging. |
| .eslintrc.json | Removes legacy ESLint config. |
| .eslintignore | Removes legacy ESLint ignore file. |
| .editorconfig | Consolidates md/txt formatting rules and yaml settings. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Kallyan01
approved these changes
Jun 22, 2026
This was referenced Jun 22, 2026
7 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Rescaffolds plugin to match OneSearch & OneMedia.
Why
Related Issue(s):
How
Testing Instructions
Screenshots
Additional Info
Checklist