Files
SGF/docs/proofs/sgf-six-module-composition-20261110.json
2026-11-11 09:00:17 +02:00

250 lines
12 KiB
JSON

{
"version": "SGF-SIX-MODULE-COMPOSITION-PREPARATION-v1",
"date": "2026-11-10",
"passed": true,
"complete_sgf": false,
"installation": "cc50a276c10c",
"port": 8085,
"new_databases": 0,
"new_demonstrations": 0,
"sgc_required": false,
"composition": {
"installed": true,
"new_tables": [
"b_internal_confirmations",
"ca_commands",
"ca_decisions",
"ca_proposals",
"ca_resolutions",
"ca_submissions",
"dc_calculations",
"dc_commands",
"dc_decisions",
"dc_events",
"dc_outbox",
"dc_rates",
"doc_history",
"doc_records",
"document_preview_model_history",
"document_preview_models",
"ib_budgets",
"ib_commands",
"ib_comparisons",
"ib_decisions",
"ib_events",
"ib_outbox",
"ic_commands",
"ic_decisions",
"ic_events",
"ic_inputs",
"ic_lots",
"ic_outbox",
"ic_products",
"ic_results",
"service_calculation_profiles",
"service_calculation_results",
"sf_activation_events",
"sf_decisions",
"sf_proposals",
"sgf_composition_schema",
"si_commands",
"si_correction_requests",
"si_counters",
"si_decisions",
"si_events",
"si_invoices",
"si_outbox",
"si_proposals",
"sr_commands",
"sr_deliveries",
"sr_effects",
"sr_events",
"sr_outbox",
"sr_records",
"wb_claims",
"wb_commands",
"wb_decisions",
"wb_events",
"wb_generations",
"wb_outbox",
"wb_proposals",
"wc_applications",
"wc_commands",
"wc_events",
"wc_outbox",
"wc_requests",
"wc_reviews",
"wo_commands",
"wo_decisions",
"wo_entries",
"wo_equipment",
"wo_events",
"wo_orders",
"wo_outbox"
],
"previous_rows_sequences_permissions_associations_preserved": true,
"schema_sha256": "b3e0cea308710c6839125eeb98651156b745bb075a03019b457b7dc44ffde079",
"backup_sha256": "f09ad87c77aec16da8b2aea0e8c42a36052d74c4b128840b0663494ce34580db",
"new_public_function_defaults_removed": 44,
"runtime_enabled": false
},
"evidence": {
"schema_rehearsal": [
"composed runtime accepts only the physically verified host and schema pin",
"existing domain guard accepts the verified composition",
"synthetic invoice guard operates on the composed host",
"workshop and direct costs guards operate on the same host",
"four SQL environment guards point to the exact composed QA identity",
"a stale schema pin blocks the runtime",
"same host contains a_clients",
"same host contains a_services",
"same host contains a_service_drafts",
"same host contains a_billing_drafts",
"same host contains b_internal_confirmations",
"same host contains doc_records",
"same host contains document_preview_models",
"same host contains service_calculation_profiles",
"same host contains ca_proposals",
"same host contains sf_proposals",
"same host contains si_invoices",
"same host contains sr_records",
"same host contains wo_orders",
"same host contains dc_calculations",
"same host contains ic_results",
"same host contains ib_budgets",
"same host contains wb_proposals",
"same host contains wc_requests",
"existing grants retained without assigning new access",
"existing clients retain identifiers versions payloads and associations",
"new module whitelist accepts scoped workshop right",
"module constraints and append-only guards installed",
"four existing compatible A tables reused without rebuilding",
"rehearsal rolls back instead of installing",
"all previous rows sequences constraints and triggers unchanged after rehearsal",
"installer rejects production environment"
],
"composed_commercial_workshop_flow": [
"Comercial preserves service-to-billing origin in the composed host",
"new client explicitly belongs to Comercial",
"cross-module client is refused before an explicit individual association",
"Oficinas opens once and recovers the same order without duplication",
"Oficinas retains the exact explicitly associated Comercial client",
"another authorized unit cannot see the new order",
"destructive command is refused by the command-start guard without executing it",
"new drafts and workshop order do not issue invoices or create financial effects automatically",
"all original table rows unchanged after rolling back the new composed flow"
],
"stock": [
"HTML workspace available in explicit Stock context",
"warehouse catalogue restricted to explicit map",
"literal wildcard search and page size 100",
"item catalogue paginated at 25",
"responsible catalogue restricted to source tenant",
"query cannot inject company authority",
"Purchasing context cannot execute Stock routes",
"current physical basis from the original book",
"foreign warehouse refused",
"foreign item refused",
"original writer validates reversible preview",
"preview leaves no movements operations or audit rows",
"individual confirmation applies original physical writer",
"one issue creates exactly one physical movement",
"uncertain response recovers the same receipt without duplicate",
"audit retains actor reason before after and operation receipt",
"old ledger version requires new conference",
"receipt cannot be reused after context generation changes",
"confirmation permission revalidated even on replay",
"transfer preview validates both bound warehouses",
"two independent conferences can observe the same original revision",
"transfer confirms through the same writer",
"transfer produces two balanced physical movements atomically",
"second conference refuses the revision changed by the first confirmation",
"failure-recovery conference prepared on current state",
"failure after physical write rolls back operation movement and native audit",
"same confirmation succeeds once after transient audit failure is removed",
"equipment catalogue available without selecting a destination automatically",
"count preview uses original current ledger revision",
"count stores the physical observation without changing stock",
"only counts for the selected bound pair are offered",
"adjustment impact is calculated by the original count workflow",
"adjustment reconciles the physical book with the explicit count",
"count adjustment receipt is recovered without applying the difference twice",
"an applied count is no longer offered for a second adjustment",
"tampered conference refused",
"feature remains independently disabled",
"all preexisting host and native rows restored after isolated regression"
],
"stock_interface": [
"startup makes reads only",
"catalogues never auto-select item or responsible",
"unsaved draft guards page exit",
"form captured before disabling fields; exact decimal and reason retained",
"issue does not send a hidden transfer destination",
"impact shown in readable form before confirmation",
"preview never auto-confirms",
"uncertain result protects fields and permits only recovery",
"recovery uses identical sealed conference without a new key",
"recovered receipt closes confirmation",
"successful recovery releases exit guard",
"count uses freshly observed revision and permits explicit zero quantity",
"count excludes issue-only fields",
"adjustment uses the explicitly selected count rather than a manually entered difference",
"adjustment impact distinguishes difference from the counted total"
],
"http8085": [
"existing obligation remains 100MZN with no new settlement",
"accepted purchase receipt remains readable after shared runtime update",
"explicit transition to authorized Stock module is preserved",
"new Stock operations remain disabled without granting new rights",
"installed workspace is blocked until explicit activation",
"same server delivers the installed workspace asset"
]
},
"stock_code_installed": true,
"stock_operations_enabled": false,
"stock_build": {
"installed": true,
"reused_valid_private_build": true,
"entry_sha256": "722b472f838c2a981f72b95e154ff0374e6f098a192905dece9edcaa1f1b9e42"
},
"new_access_granted": false,
"cache_cleared": false,
"financial_commands8085": 0,
"browser_visual_review": false,
"parallel_concurrency_proof_new": false,
"source_hashes": {
"app/Shared/Installation/CompositionSchema.php": "b5f24360327c3bc69b76ad551705bad1cfed504151cc85e316e0b10bb8b9533f",
"app/Shared/Installation/CompositionSchemaConnection.php": "592fb897bd2f28f300ebd9924c62f2863792853de053cdf58bac213617395d9f",
"app/Shared/Installation/CompositionSchemaBuilder.php": "6c4ee34d6670744548dd536f869a3493f19b4e0bd3d4df6e93005d5081b5f3a3",
"app/Shared/Installation/CompositionRuntime.php": "ccf478b097f874576e348755e7944e12f0a2fa68d1902a0d0f96315074ed3036",
"app/Shared/Testing/TestingDatabaseGuard.php": "d6564f90da999d679de4c27509bc394cd32883f35b0b9b4e9a2baab47ae19565",
"app/Providers/AppServiceProvider.php": "04be4fa8b938168f6296f0b061cc9eca4383eeb3374a0117112500a2c0390f88",
"app/Modules/Services/ServiceCalculation.php": "f7d2120ffb3c65a4e7f228c824598178227411b1489f689d421f03bdb909526b",
"scripts/sgf-compose-install.php": "200f67d75e153a964c6b97ddf8f990ca15f5a51b666517b2598acb539ffb14c5",
"scripts/sgf-install-stock-prepared.mjs": "b7f9e1cde2526cc81b54beade6bcca5120fe5cf5fbfb352a730a61633e67a174",
"scripts/sgf-composition-http-check.mjs": "c593a7abf3b45c24a3893abef407176f58aa0ee5ca45d246be8ecc904ae95d99",
"scripts/receipt-composition-http.php": "7acce4c5db8a748bbc6e094592387b01acef7a5b038e484375c5b4b5700386cd",
"scripts/stock-operations-client-check.mjs": "83e1b87e00e8d4777ab98bbac5dc1eeef9ae6465bd8abc624d06b97425af940b"
},
"stock_source_hashes": {
"app/Modules/Inventory/StockOperationsController.php": "34d6c7be4787f4f18ca2a7aa322f6f33dfb281e22336599234c93c655ab4eebf",
"app/Modules/Purchasing/ReceiptRuntime.php": "a8f3aac4b65ceea15ac7a8e8e34510d689b09fab8c2f689c466eb90d5e8632dc",
"config/stock_operations.php": "0351259789d6909aca1a9133168f2b6ed66bf90867de88417ebc307cdeb89149",
"routes/web.php": "7a8cc3f15e9732014e866102f353c31699666ec87ecef81409485c3022703ae7",
"app/Shared/Context/ModuleNavigation.php": "0fd39d7635d9a2744111ee39a21b10d04c73b32d1df35b473b61413cd14bc555",
"app/Modules/Identity/Services/IdentityWorkflow.php": "677bdb459aa751f3af37a3b4162f40bcbc7dd8190167202441b3374f244f52b5",
"resources/js/StockMenuWorkspace.jsx": "33c4624727e752dec7a916a37c4ce5cd0c9650c1e046c411be645dd944c4db32",
"resources/views/stock-operations-workspace.blade.php": "5db67c2d23e5557548c38c82a0d7f6e373651849727b2237dcd73f620309c25a",
"public/stock-operations-workspace.mjs": "56734499e8dd89da293c2edadd0d0e10ac6d06b39f0365e5ae29a8d14e9176d8",
"scripts/stock-operations-proof.php": "c7feeaca6ef31e61cc851f97ba641ddcf7d8529df9fceb3c7fec895d2d0d290a"
},
"awaiting_decision": "docs/SGF_8085_NEXT_AUTHORIZATION.md",
"limitations": [
"Source SQL structures and code installation do not constitute six-module acceptance",
"Finance ledger remains to be composed; no debt mirror is created to satisfy a host-table footprint",
"New QA profiles and Stock rights not granted",
"Native supplier100MZN financial effects remain excluded pending explicit approval",
"Visual review and deployment capacity unverified"
]
}