Add a new development seed preset with rich content - #321
Open
iMattPro wants to merge 9 commits into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR introduces a new development seed preset that generates richer phpBB fixture content, while keeping the older extension-dev preset accepted (but hidden/deprecated). It also refactors seeding to use a unified runtime package copied into the board container, rather than generating a single seeder script.
Changes:
- Add
SeedPresetCatalogto centralize accepted/visible/default/deprecated seed presets and update CLI + web UI to default todevelopmentwhile warning on deprecatedextension-dev. - Replace single-file seeder script generation with a modular
SeedRuntime/package (plans, builders, manifest tracking, reset/replace lifecycle). - Expand and update unit/integration tests and docs to cover the new preset, visibility/deprecation behavior, and the new runtime packaging.
Reviewed changes
Copilot reviewed 25 out of 25 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tests/Unit/SeedPresetCatalogTest.php | Adds unit coverage for default/visible/accepted/deprecated preset behavior. |
| tests/Unit/SeederWriterTest.php | Updates expectations for writing the modular runtime package instead of a single script. |
| tests/Unit/SeederPackageTest.php | Adds unit coverage for generated runtime package contents and deterministic assets. |
| tests/Unit/BoardRunnerTest.php | Updates command expectations for copying/executing the runtime package inside containers. |
| tests/Integration/WebApplicationTest.php | Verifies the web UI shows development and hides extension-dev. |
| tests/Integration/ApplicationTest.php | Verifies CLI help output reflects development and hides deprecated presets. |
| src/QuickInstall/Sandbox/Web/Application.php | Uses SeedPresetCatalog for defaults/validation, visibility lists, and deprecation warnings. |
| src/QuickInstall/Sandbox/SeedRuntime/VolumeSeeder.php | Implements volume-based seeding for non-development presets. |
| src/QuickInstall/Sandbox/SeedRuntime/UserBuilder.php | Adds development user creation, signatures, warnings, and avatar generation. |
| src/QuickInstall/Sandbox/SeedRuntime/StateBuilder.php | Seeds attachments, reports, PMs, notifications, and search index state. |
| src/QuickInstall/Sandbox/SeedRuntime/SeedPlan.php | Adds shared helpers for seed plan verification. |
| src/QuickInstall/Sandbox/SeedRuntime/Seeder.php | Introduces unified seeding lifecycle (manifest load, reset/replace, finalize, verify). |
| src/QuickInstall/Sandbox/SeedRuntime/SeedContext.php | Adds manifest + file tracking, storage integration, and shared runtime context utilities. |
| src/QuickInstall/Sandbox/SeedRuntime/run.php | Adds the CLI entrypoint executed inside the container to run the selected preset/action. |
| src/QuickInstall/Sandbox/SeedRuntime/ForumBuilder.php | Seeds development forums/categories, permissions, rules, and forum state scenarios. |
| src/QuickInstall/Sandbox/SeedRuntime/DevelopmentSeeder.php | Implements the rich development preset plan plus verification checks. |
| src/QuickInstall/Sandbox/SeedRuntime/ContentBuilder.php | Seeds rich topics/posts/polls plus volume posting for load-style presets. |
| src/QuickInstall/Sandbox/SeedPresetCatalog.php | New catalog defining accepted/visible/default/deprecation messaging for presets. |
| src/QuickInstall/Sandbox/SeederWriter.php | Refactors to copy the SeedRuntime/ package into per-board runtime state. |
| src/QuickInstall/Sandbox/bootstrap.php | Ensures SeedPresetCatalog is loaded in bootstrap ordering. |
| src/QuickInstall/Sandbox/BoardRunner.php | Updates seeding to copy runtime package into container and execute run.php. |
| src/QuickInstall/Sandbox/Application.php | Updates CLI defaults/help/validation to use SeedPresetCatalog and warn on deprecated preset. |
| README.md | Updates quickstart to use development and mentions unified runtime/manifest behavior. |
| docs/sandbox-cli.md | Updates docs to describe the new development preset and revised preset guidance. |
| composer.json | Adds attribution for the inspiration source. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.
No description provided.