Files
SGF/docs/proofs/sgf-stock-operations-20261110.json
2026-11-11 09:00:17 +02:00

98 lines
5.0 KiB
JSON

{
"version": "SGF-STOCK-OPERATIONS-PREPARED-v1",
"date": "2026-11-10",
"passed": true,
"pg": {
"checks": [
"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",
"tampered conference refused",
"feature remains independently disabled",
"all preexisting host and native rows restored after isolated regression"
],
"transactions_rolled_back": true,
"book": "b4093c6f6707",
"previous_rows_identical": true,
"qa_sequences_may_advance": true
},
"interface": {
"checks": [
"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"
],
"dom_simulation": true,
"visual_review": false
},
"private_build": {
"passed": true,
"entry_sha256": "722b472f838c2a981f72b95e154ff0374e6f098a192905dece9edcaa1f1b9e42",
"manifest_sha256": "fbe58be712763935e353605e55f4fd4da18fbd4732830e035766ec762bc09aaa"
},
"source_hashes": {
"app/Modules/Inventory/StockOperationsController.php": "860321cf232be6b829a3bcae2657c9ac840b5ea25c996bf82b7f0223def959c5",
"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": "ae079a34a6fea2b4bf4a2dbaba44a1f7972657bd9e43b1da29488fa0737fdbdc",
"public/stock-operations-workspace.mjs": "bf60a2c46608f6fca93b70211d170f598551dc2d0884e62e280447f0cdaaf48b",
"scripts/stock-operations-proof.php": "a7fbfa6f96b25f8b8a1b2e214c70cfbcf1bb15929ec534e97225d242e59bd840",
"scripts/stock-operations-client-check.mjs": "3349b8bef330bb82ae1e59a93a23531d6b66c57fa5ade131294e4871a532a1a8",
"packages/inventory-issue/releases/0.1.0/manifest.json": "3c24d9e9fb99bfbb274077495c3a42ddb7eccab06b5c6a956cd739b2bc9b56f0"
},
"prepared_package": "ac204a6bf15315d0e634",
"installed8085": false,
"activated": false,
"rights_granted": false,
"new_demos": 0,
"new_databases": 0,
"sgc_required": false,
"limitations": [
"No new parallel-process concurrency or lock-timeout proof",
"Transfer is immediate atomic, no transit reception",
"Count/adjustment/returns and equipment selector still pending in this interface",
"No visual acceptance or deployment-capacity evidence",
"Six-module composition not complete"
],
"private_diagnostics": {
"ssr_probe": "interrupted while development dependency optimizer was pending; not counted as passed",
"production_client_build": "passed independently; private output only"
}
}