{ "date": "2026-09-24", "environment": "Isolated temporary local PostgreSQL instance, loopback port 55439; application database untouched", "versions": { "php": "8.5.11", "postgresql": "17.11", "postgis": "3.6.2" }, "schema": { "application_tables": 59, "new_tables": 47, "legacy_tables": 12, "columns": 684, "foreign_keys": 69, "new_migrations": 15, "framework_tables": [ "migrations" ], "extension_tables": [ "spatial_ref_sys" ] }, "checks": { "schema_lifecycle": { "tests": 1, "assertions": 3106, "result": "passed" }, "application_suite": { "tests": 39, "assertions": 136, "result": "passed" }, "pint_changed_php": "passed", "phpstan_changed_models_factories_seeders": "passed, zero errors", "php_syntax": { "files": 22, "result": "passed" }, "generator_reproduction": "43 generated files reproduce exactly", "static_consistency": "passed" }, "confirmed": [ "migrate:fresh --seed", "migrate ledger idempotency", "reference seed idempotency", "rollback of 15 new migrations preserves legacy", "ordinary rollback of the latest upgrade batch", "reapply after rollback", "extensions retained", "PostGIS type/SRID/validity/empty/bounds checks", "monetary precision and checks", "FK actions and referential integrity", "append-only audit and immutable event envelopes", "exact catalogue columns/types/nullability/defaults/index set", "GiST index eligibility" ], "not_confirmed": [ "Production readiness", "RLS and application permission matrix pending P-05", "Real MySQL import and reconciliation", "Latency SLO at representative volume", "Retention/purge policy", "Business domains without complete DDL" ], "tested_artifact_sha256": { "database/migrations/2026_09_24_000100_investmoz_extensions_functions.php": "3daa494165853ba673f99012ed5651cfecfba153c676ae4b7099b9e6596ade38", "database/migrations/2026_09_24_001000_investmoz_identity.php": "f644b0369b17b2954b05f563a569d92533ae1bb06f89bf1cc8454d069b733b96", "database/migrations/2026_09_24_002000_investmoz_content.php": "9f3006caa7092eb3651033d7756982b176a54c79ac47a9cf9a67c306e369a81c", "database/migrations/2026_09_24_003000_investmoz_geography.php": "405a75432fb9b90b4472c697a9239fc8d59907da8defbb985cf81cd3da958ee6", "database/migrations/2026_09_24_004000_investmoz_projects.php": "7b7f652cf323299c346133e7fda6564722eab60e8bba193387f8fa2af8bf2d35", "database/migrations/2026_09_24_005000_investmoz_clusters.php": "93dc9bff75f759fc209f00b1bbb2d6727fbf4d3014fa368db394254789ad7df1", "database/migrations/2026_09_24_006000_investmoz_corridors.php": "8061e16466dfd505785bdd233851216cd01a62397d144da2f9c996a15b5481cf", "database/migrations/2026_09_24_007000_investmoz_crm.php": "ef49c4e0b15f1a0e2eaccc6c60b578e88a616aeb42e3a420865bb29aa83009a8", "database/migrations/2026_09_24_008000_investmoz_journey_aftercare.php": "f64af9031e071ff30b94df64c13f507800928d3bb54e5d7d0bd6a8f2c495cd51", "database/migrations/2026_09_24_009000_investmoz_education.php": "fa6245b9a0a07dadd3512099450230919cfaa134c98b81c6362fb76abc9a3ea0", "database/migrations/2026_09_24_009500_investmoz_document_links.php": "68601d5dec9410609ae34050b137b46af3d8e09e3510a331aa824fc58d01ed9f", "database/migrations/2026_09_24_010000_investmoz_governance_ai.php": "c66ce3cf351a97f164c325c87941260a448b2b301ed037d251e0562143e48f85", "database/migrations/2026_09_24_011000_investmoz_integrations.php": "3bab367d76ae5d3a9ef5836a95ddc41d01b35d24d119c7f1380b9153f4055b38", "database/migrations/2026_09_24_012000_investmoz_indexes.php": "ff069e7a2cd518b104671bb2879444aba1df504fce6664cd61cce80038901eca", "database/migrations/2026_09_24_013000_investmoz_triggers.php": "a41f8563aada3f3dba8882e67c3647fd1e9edc88f11b382af59399d380f6b83e", "app/Models/Project.php": "d5831329ebc47ce8e367159b76817a612bf57ab07135aefad80f836aa362f0ac", "app/Models/Investor.php": "aba61fa85e074db4aab1973c91a2a476ce88f43d91f1c1ef8c471f4c8d9d3fc4", "database/factories/ProjectFactory.php": "e8851a5ce4751e8d34d3f50d8ef3d103c76c88b8278fe0097750944aabf88080", "database/factories/InvestorFactory.php": "38db8127c708d1dcd41e9ffbce27593166156d050a082b60549e963e2499b585", "database/seeders/InvestMozReferenceSeeder.php": "b8cefc04fe38b8f1d8c40fc527e9671a2fc34a80557165f1675a03b1ad45ff93", "database/seeders/DatabaseSeeder.php": "5a5aedf020f281a6749e62f90e5fe6235f6b99236641bffff9049e6080454583", "tests/InvestMoz/SchemaLifecycleTest.php": "ab3c25168dd27bae1a6f03f0dde77012d60be44fa799d96487a63c6a3a735fdd", "phpunit.xml": "69c7c7391339eacad36e73f656232b2a3492f6826915d4b3c938fc0bff4585dc", "phpunit.investmoz.xml": "0444d3d575846a772bca1c1e791f78bfc351e5d84200238bb3251c11f366c2e9", "docs/investmoz/schema.json": "8881545beb64f48c7c1afe97d24744054bccfe9f698861d809c8e714a3bb29c4", "docs/investmoz/legacy-schema.json": "4c6982432c7451d144ae1b03a8291e7796c977f698c8b809b57824aacf5d3629" } }