Phase 14a: bootstrap iManager 2.0 container in Scriptor#18
Merged
Conversation
- composer.json now requires bigins/imanager:2.0.x-dev via a path
repository on ../imanager (symlinked); platform pinned to PHP 8.2
so the lock file matches ServBay's runtime even when the dev
machine has a newer PHP.
- New PSR-4 namespace `Scriptor\Boot\` (-> boot/) holds:
- ImanagerBootstrap::create() — wires PDO + Sqlite storage +
every repository + Sanitizer + FieldTypeRegistry (all 16 v1
field types) + FilesystemCache + LocalFileStorage +
ImageProcessor + FullTextSearch.
- App — process-wide service-locator bridge so legacy code can
reach the container during the 14b–14e transition; emptied
out at the end of Phase 14.
- boot.php is gutted to container-only. The legacy 1.x library
(Scriptor/imanager/) shares the `Imanager\` namespace with the
new vendor package and cannot coexist, so the public site and
editor are intentionally non-functional on this branch until
14b/14c rebuild them. `master` remains the working 1.x build.
- test-bootstrap.php is the §14a smoke page: boots the container,
resolves every registered service, and dumps categories + fields
+ item counts as JSON.
- .gitignore covers vendor/, the migrated SQLite db (+ wal/shm),
the new uploads-2.0 layout, the section cache, and data.bak.*
migration backups.
Migration was run beforehand against /data with the iManager 2.0
CLI (PR #17): 2 categories, 10 fields, 9 items, 12 assets, 0
errors. Backup at data.bak.2026-05-03.
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.
Summary
bigins/imanager:2.0.x-dev,platform pinned to PHP 8.2 to match ServBay's runtime.
Scriptor\Boot\(boot/):ImanagerBootstrap::create()— wires PDO + Sqlite storage + all repos +Sanitizer + FieldTypeRegistry (16 field types) + FilesystemCache +
LocalFileStorage + ImageProcessor + FullTextSearch.
App— process-wide service locator bridge for the 14b–14e transition.boot.phpgutted to container-only. Legacy 1.x site/editor areintentionally non-functional on this branch (Imanager\ namespace clash).
masterremains the working 1.x build as the rollback path.test-bootstrap.phpsmoke page resolves every registered service andreads back categories+fields+item counts from the migrated SQLite DB.
.gitignorefor vendor/, imanager.db*, uploads-2.0/, cache/sections/,data.bak.*.
Migration ran beforehand against /data with the iManager 2.0 CLI:
2 categories, 10 fields, 9 items, 12 assets, 0 errors. Backup at
data.bak.2026-05-03/.
Test plan
php test-bootstrap.phpgibt JSON mit allen Services + Categories ausphp -r 'require "boot.php"; ...'lädt Container ohne Fehlerhttps://<scriptor-host>/test-bootstrap.php