95 lines
5.0 KiB
JSON
95 lines
5.0 KiB
JSON
{
|
|
"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"
|
|
}
|
|
}
|