Files
SGF/docs/proofs/purchasing-completion-20261104.json
2026-11-04 09:37:20 +02:00

419 lines
18 KiB
JSON

{
"date": "2026-11-04",
"increment": "SGF-PURCHASING-SINGLE-INSTALLATION-COMPLETE-v1",
"passed": true,
"checks": 59,
"criteria": {
"C01": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
},
"C02": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
},
"C03": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
},
"C04": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
},
"C05": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
},
"C06": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
},
"C07": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
},
"C08": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
},
"C09": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
},
"C10": {
"passed": true,
"definition": "docs/PURCHASING_COMPLETION.md"
}
},
"installation": {
"id": "cc50a276c10c",
"entry": "http://127.0.0.1:8085/compras",
"port": 8085,
"reuses_existing_application_and_books": true,
"new_database": false,
"new_role": false,
"new_port": false,
"new_demonstration": false
},
"tests": {
"flow": {
"file": "private/receipt-composition-cc50a276c10c/completion-flow-result.json",
"sha256": "d7a5f7d0067b319f410fefbca0317bb733327868d0a2d70359010c2ceb552332",
"checks": 13,
"result": {
"passed": true,
"installation": "cc50a276c10c",
"port": 8085,
"checks": [
"C02 fornecedor novo criado pelo formulário real",
"C02 revisão distinta activa o fornecedor na mesma instalação",
"C03 necessidade criada pelo formulário sem preparar outra demonstração",
"C03 submissão e aprovação pela chefia usam a mesma necessidade",
"C04 três propostas incluem o fornecedor criado e revisto nesta instalação",
"C04 seis avaliações individuais por duas identidades no mesmo processo",
"C05 adjudicação fundamentada recebe aprovação distinta",
"C05 ordem emitida pelo botão real a partir da adjudicação aprovada",
"C06 recepção pelo formulário cria um movimento e recupera resposta perdida sem duplicar",
"C07 documento recebido registado e validado por outra identidade",
"C08 obrigação reconhecida por revisão distinta na mesma instalação",
"C08 documento reconhecido deixa de oferecer nova preparação",
"C08 vencimento ausente fica explícito sem data inventada"
],
"source_ids": {
"supplier": 8,
"request": 3,
"award": 2,
"order": 1,
"receipt": 1,
"movement": 1,
"invoice": 2,
"proposal": 2,
"obligation": 2
},
"actual_workspace_modules": true,
"real_http": true,
"dom_simulation": true,
"new_database": false,
"new_server": false,
"new_demonstration": false,
"payments_created": 0,
"visual_review": false
}
},
"reads": {
"file": "private/receipt-composition-cc50a276c10c/completion-read-result.json",
"sha256": "02d237debb2e87714fd69d443001a4f03861ddf9af81cc9a1bc3d2b203513446",
"checks": 22,
"result": {
"passed": true,
"checks": [
"C09 suppliers conserva o documento exacto para trocar de função",
"C09 suppliers abre o documento real da mesma compra",
"C09 requests conserva o documento exacto para trocar de função",
"C09 requests abre o documento real da mesma compra",
"C09 sourcing conserva o documento exacto para trocar de função",
"C09 sourcing abre o documento real da mesma compra",
"C09 orders conserva o documento exacto para trocar de função",
"C09 orders abre o documento real da mesma compra",
"C09 receipts conserva o documento exacto para trocar de função",
"C09 receipts abre o documento real da mesma compra",
"C09 invoices conserva o documento exacto para trocar de função",
"C09 invoices abre o documento real da mesma compra",
"C09 obligations conserva o documento exacto para trocar de função",
"C09 obligations abre o documento real da mesma compra",
"C08 principal e saldo100MZN com origem coerente e vencimento desconhecido",
"C01 entrada recusa função inexistente",
"C01 entrada recusa etapa sem direito",
"C01 entrada recusa destino externo",
"C01 entrada recusa origem ambígua",
"C01 entrada recusa origens misturadas",
"C01 escolha de função exige CSRF",
"C09 painel único consulta documentos autorizados existentes"
],
"principal_minor": 10000,
"balance_minor": 10000,
"source_conflict": false,
"new_business_commands": 0,
"role_selection_posts": true,
"real_http": true,
"dom_simulation": true,
"visual_review": false
}
},
"client": {
"file": "private/receipt-composition-cc50a276c10c/completion-client-result.json",
"sha256": "0f58fda6de5e5c0755641a2a68d04876167f699d5f5b10bafc2693f232d386fc",
"checks": 10,
"result": {
"passed": true,
"checks": [
"C09 prévia legível conserva montantes quantidades estado e pendências",
"C09 dados recebidos são texto e não instruções HTML",
"C09 designações não são confundidas com propriedades de objectos",
"C09 carregamento automático de selectores não marca formulários vazios como alterados",
"C09 cancelar a saída conserva campos por confirmar",
"C09 descarte só ocorre após escolha explícita",
"C09 operação em curso impede mudar função e editar a confirmação",
"C09 confirmação íntegra liberta navegação e restaura controlos",
"C09 resposta incerta mantém campos para recuperação manual",
"C09 fechar a página avisa de campos ainda por confirmar"
],
"dom_simulation": true,
"business_commands": 0,
"visual_review": false
}
},
"canonical": {
"file": "private/receipt-composition-cc50a276c10c/completion-data-result.json",
"sha256": "335fc6f7a66be092fd6543aec92933cba76afd4296fcf7d0c5984ac710cf520b",
"checks": 12,
"result": {
"passed": true,
"checks": [
"C10 requisição adjudicação e ordem pertencem ao mesmo processo nativo",
"C10 três propostas e seis avaliações permanecem gravadas",
"C10 proposta 4 tem dois avaliadores distintos",
"C10 proposta 6 tem dois avaliadores distintos",
"C10 proposta 2 tem dois avaliadores distintos",
"C10 reserva compromisso e consumo100MZN únicos no orçamento nativo",
"C10 uma recepção por identidade distinta do emissor",
"C10 um único movimento físico1UN depois da recuperação da resposta",
"C10 uma factura validada por identidade distinta",
"C10 principal100MZN único e reconhecimento por identidade distinta",
"C10 nenhum pagamento criado no percurso",
"C10 decisões e avaliações mantêm auditoria dos comandos originais"
],
"facts": {
"request_number": "REQ-2026-000003",
"order_number": "OC-2026-000001",
"invoice_number": "FACT-COMPRA-COMPLETA-20261104",
"principal_minor": 10000,
"physical_milli": 1000
},
"source_ids": {
"supplier": 8,
"request": 3,
"award": 2,
"order": 1,
"receipt": 1,
"movement": 1,
"invoice": 2,
"proposal": 2,
"obligation": 2
},
"read_only_verification": true,
"new_database": false,
"new_rights": false,
"visual_review": false
}
},
"preservation": {
"file": "private/receipt-composition-cc50a276c10c/completion-preservation-result.json",
"sha256": "7d4cc9b6ba9c249fdd192ba997a3c1129259cf394062aafb39f54cc4af875635",
"checks": 2,
"result": {
"passed": true,
"checks": [
"C10 nenhuma concessão alterada durante a conclusão",
"C10 orçamento do host intacto sem autoridade concorrente"
],
"tables": {
"permission_grants": {
"rows": 65,
"before_sha256": "4299820077d92fc6e9d0d52380bca6e6131aba387f9cf79dbffb58cbacee3f12",
"after_sha256": "4299820077d92fc6e9d0d52380bca6e6131aba387f9cf79dbffb58cbacee3f12"
},
"cb_budget_entries": {
"rows": 0,
"before_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"after_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
}
},
"baseline": "private pre-flow backup",
"database_writes": false,
"restored_database": false,
"new_database": false
}
}
},
"sources": [
{
"file": "app/Modules/Purchasing/PurchasingEntry.php",
"sha256": "a02d47be1a6970a2903d1cb33b16a2fd75e89b81908bda7a1bdeae9592dd8c25"
},
{
"file": "resources/views/purchasing-entry.blade.php",
"sha256": "4b65deb9b17af7eb7e512bf64117fb99ea14fb2ebc5b49b2d425fcbad13e3291"
},
{
"file": "resources/views/purchasing-workspace.blade.php",
"sha256": "23bf96eeb90e006df58d260eee70494441d3954c0c390aa9ae043c8bdcff1115"
},
{
"file": "resources/views/partials/purchasing-navigation.blade.php",
"sha256": "b1b4e8a4aed0c2fc4020a34f430ebe76a6e3a13e137cd6179c6c6cd872f272c2"
},
{
"file": "resources/views/supplier-workspace.blade.php",
"sha256": "7931bd3cde587a021fbc260186702f701098080e3c61296efd48d1855c745355"
},
{
"file": "resources/js/PurchasingHome.jsx",
"sha256": "8021d78e6188ce2586bb0d48d50e2b42cc210dff862a307106b065803951ffe6"
},
{
"file": "public/purchasing-exit.mjs",
"sha256": "73c312bf6ff45af3a1a58fb5b48d312573eda1e0cc975c2a2b8f48e942f783d4"
},
{
"file": "public/purchasing-board.mjs",
"sha256": "dca255bf504d90fb74e7de9e4ce647f28e17ced470850c0fd2d74bf404b83971"
},
{
"file": "public/purchasing-presenter.mjs",
"sha256": "2d20354ff573ec05ac4acc9e64d4ba3f10e9554f84e11afb502127649c84c389"
},
{
"file": "public/purchasing-focus.mjs",
"sha256": "804854fbcf066be1688f2d4f15dc13c986dcb44ab30f9fbcbc56d6428c60d21c"
},
{
"file": "public/request-workspace.mjs",
"sha256": "35875cff6b4cdba1be080896c986a799b59a08fd5e8f956d0b587e11731dbbb7"
},
{
"file": "public/sourcing-workspace.mjs",
"sha256": "a39889528688affa974f48d3e74994339d0692ea478264a7ab79520db9c8fcd5"
},
{
"file": "public/order-workspace.mjs",
"sha256": "7658d7b55180e634a71998dad44ba707e0def3c06471a5e1cae1b29381d650f4"
},
{
"file": "public/receipt-workspace.mjs",
"sha256": "c8e06b575d66a4e160516eff151fd4bc2d901fa68da6e120dbd6673f06f8e18a"
},
{
"file": "public/supplier-workspace.mjs",
"sha256": "0b0e5e4ccc6f7fe1232c7129045063890e493c56431899e7590ebb5872155516"
},
{
"file": "public/supplier-invoice-workspace.mjs",
"sha256": "cd84dc3d40546f18f4e091fbe94473405f658fe7cdbafc4e44aee9a9460ddf32"
},
{
"file": "public/supplier-obligation-workspace.mjs",
"sha256": "d33c2e8426885036b63cd8ce9a6001ae17aab42b775d6a7930eedf721d539bda"
},
{
"file": "public/obligation-evidence.mjs",
"sha256": "4d9aeac1b404275accf15a3a6ef0d392175cd7afbc02a4e891f19a6a1131f4b3"
}
],
"unchanged_business_authority": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"sha256": "9b426476b2805094fb317cc753385ef43882fb4964883e880eac287eed89d9e0"
},
{
"file": "app/Modules/Purchasing/RequestController.php",
"sha256": "c5c2b78866be7f0e1c8ba09c1af538cefcfbafbea81197833b50821bba0fcbca"
},
{
"file": "app/Modules/Purchasing/SupplierController.php",
"sha256": "30d4ef72e079a63b470c952727aaa7c42a45302a58b50d085a53a57737a99048"
},
{
"file": "app/Modules/Purchasing/SourcingController.php",
"sha256": "84d807fe841a47335836e281677813157d78ed28c4e46cf1a4267121b7aedf17"
},
{
"file": "app/Modules/Purchasing/OrderController.php",
"sha256": "4ebab47ecb008f3c31f970f399e8c19df7e860d7b6482227a800fb61dd28dd48"
},
{
"file": "app/Modules/Purchasing/ReceiptController.php",
"sha256": "0226b354db20a0eab19598ff35dbb35e0fa7f117de0c477e0b870159024d49df"
},
{
"file": "app/Modules/Purchasing/InvoiceController.php",
"sha256": "85eb46ca7e65c60bed190e592a134eb48db5762c0a90b8cd4c9d6fbd81198ba4"
},
{
"file": "app/Modules/Purchasing/ObligationController.php",
"sha256": "347e629306d6c1f4873afac547d13fae8ade7b268906d1312a64e7eb6998e701"
},
{
"file": "packages/payables/src/Payables.php",
"sha256": "ed853f3eb48ebcf91f51a8fe9ed8e49b0e1bc30cce4852cc9394d51cff28c74d"
},
{
"file": "resources/js/context-transition.js",
"sha256": "3d76e21eca185ae97c1a6a6f5965ab33c242a28391c8c50f5af30dfc0a4a3c6a"
},
{
"file": "app/Shared/Context/ModuleNavigation.php",
"sha256": "397d7a4af7d16547ff60ea20a6733aa994d98a6ecf0cbca4b1437da14c3c55a1"
}
],
"pinned_native_manifests": {
"bundle": "7709a3d447d54c17d2fb4be4f9a0f70455c4a38c34e4bb8c643f6b5169071556",
"economic": "8b2d3aa61054e0edc54fcd818467eb2bacb5e1178f903b12ab44119e0f2e8d2e",
"internal": "2343af71f72259dd705f4cc3a3b163c90edf331a5b6ebe173531aeb341649e1b"
},
"pre_navigation_flow_sources": {
"captured_after_success_before_navigation_changes": true,
"files": {
"public/request-workspace.mjs": "1190836eb4397d3dbdd6d655e22d80bf32564bcf579f46b3d7066d3aa211eec7",
"public/supplier-workspace.mjs": "179d2d41d764262d952f67cf5ddec3f5001a5aedb3f876fd427d8f16893bb4d7",
"public/sourcing-workspace.mjs": "a8cb7f90453a914cf1419267197919d51ca57b4d2f0e70400c18df0272039295",
"public/order-workspace.mjs": "3b0192130b600f891e9f9bbd00fe60ee24e8cde5a82d4f79cd9065b2c279334b",
"public/receipt-workspace.mjs": "c99e668d1b55bf233531e2dd90898b21a890bd0b8653cc3fcc7d23de1ee13a0e",
"public/supplier-invoice-workspace.mjs": "4b7868ab73d4da67e161ca8d8565e7e4d5e5c15a81b1c2acc62626428609fc4c",
"public/supplier-obligation-workspace.mjs": "19d5b7778e904e5e6d80aeccd06406472414c29737868c3826370fd35f19dcc0"
}
},
"build": {
"manifest_sha256": "398b42a158488d42c64e74bc76e59053d19d15089ad7d4f36c1efe4c25c512c5",
"entry_sha256": "1a12c21ebd42d09624e2af87e0132ea0e73c4343193636be10e6548a2ea5decb"
},
"prior_proofs_preserved": [
{
"file": "docs/proofs/stock-period-report-20261103.json",
"sha256": "0ab25af6ffbff7d8ecb651df833771b082bf92d52f97eca4278fcac3fd5ea53b"
},
{
"file": "docs/proofs/purchasing-integrated-composition-20261103.json",
"sha256": "10e8a7862a5a96cac6ec03dece68743605fd0ca98313c38070797fe40fcd2396"
},
{
"file": "docs/proofs/module-association-consolidation-summary-20261102.json",
"sha256": "8f693f39763ee21a22ebd3929d95ba1480f339eca18742fa53055c69eb5219ef"
}
],
"preservation": {
"installed_purchasing_sha256": "81899e531e9eec449717e694d8bdc106a9e220a828f5491ce918c1d2dc612787",
"protected_six_records_changed": false,
"blocked_cache_cleared": false,
"other_demo_instances_changed": false,
"target_database_connected": false,
"new_public_or_real_rights": false,
"permission_grants_unchanged": true,
"host_budget_unchanged": true,
"activation_of_candidates": false,
"publication": false,
"checkpoint": false
},
"functional_scope": "Existing local synthetic purchasing acquisition from new supplier and requisition through independently recognised payable. One persistent installation, normal native workflows and UI modules, no replay of completed commands.",
"limits": [
"The main path uses actual workspace modules/forms and HTTP on8085 with a simulated DOM, not a browser visual/accessibility acceptance.",
"After the successful business flow, document-retention navigation and exit guards were improved;22 read/entry checks and10 client checks cover those changes without repeating the business operations.",
"The final SQL check is READ ONLY and checks canonical state, distinct identities, unique effects and audit. An initial verifier used the wrong evaluation-table name; corrected to the existing proposal_evaluations without replaying any command.",
"The initial host/native database dumps and code-update backups are private and excluded from the repository. Backup extraction comparison proves permissions and host-budget rows unchanged; no restore was executed.",
"8085 is now the continuing working installation with a completed100MZN example, superseding its earlier empty-demo state. Other demos and their historical proofs are preserved.",
"Real operations, payments, accounting of this new origin, fiscal issuance, historical responsibility migration, deployment and publication remain outside this completion.",
"Visual review, sustained load, deployment capability and full operating-system restart have not been validated. The start command was checked against the already running installation and does not provision a new one."
],
"acceptance_presumed": false
}