1207 lines
50 KiB
JSON
1207 lines
50 KiB
JSON
{
|
||
"date": "2026-11-11",
|
||
"contract_sha256": "54258cfc021909a91b66522cc1497f2a20588bf44141470810cda401f237a45c",
|
||
"installation": "cc50a276c10c",
|
||
"port": 8085,
|
||
"sgc_dependency": false,
|
||
"full_product_complete": false,
|
||
"product_backlog": [
|
||
{
|
||
"id": "fiscal_books",
|
||
"status": "partial",
|
||
"implemented": false,
|
||
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
|
||
"description": "Livro/mapa interno QA de uma origem entregue; IVA geral, dedução/regularizações e restantes tratamentos pendentes"
|
||
},
|
||
{
|
||
"id": "irps_inss",
|
||
"status": "partial",
|
||
"implemented": false,
|
||
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
|
||
"description": "RH autónomo QA com cadastro/contratos/assiduidade/férias e remunerações internas entregue; regimes laborais gerais, IRPS/INSS/modelos legais e ligação financeira/contabilística salarial pendentes"
|
||
},
|
||
{
|
||
"id": "irpc",
|
||
"status": "pending",
|
||
"implemented": false,
|
||
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
|
||
"description": "IRPC operacional: ajustamentos, retenções, apuramento"
|
||
},
|
||
{
|
||
"id": "ispc_ice",
|
||
"status": "pending",
|
||
"implemented": false,
|
||
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
|
||
"description": "Motores operacionais ISPC e ICE"
|
||
},
|
||
{
|
||
"id": "official_forms",
|
||
"status": "pending",
|
||
"implemented": false,
|
||
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
|
||
"description": "Modelos oficiais com correspondências e reconciliação de campos"
|
||
},
|
||
{
|
||
"id": "fiscal_calendar",
|
||
"status": "partial",
|
||
"implemented": false,
|
||
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
|
||
"description": "Controlo administrativo de prazo e entrega simulada de uma origem QA entregue; calendário legal, aplicabilidade geral, prazos por fonte/vigência e submissão continuam pendentes"
|
||
},
|
||
{
|
||
"id": "bank_reconciliation",
|
||
"status": "partial",
|
||
"implemented": false,
|
||
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
|
||
"description": "Conferência de duas linhas/extracto artificial QA entregue; integração e reconciliação bancária gerais/reais pendentes"
|
||
},
|
||
{
|
||
"id": "financial_analysis",
|
||
"status": "partial",
|
||
"implemented": false,
|
||
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
|
||
"description": "Dois critérios/indicadores QA com fontes conciliadas entregues; rácios gerais, critérios reais e tendências/séries permanecem pendentes"
|
||
}
|
||
],
|
||
"modules": [
|
||
{
|
||
"id": "commercial",
|
||
"label": "Comercial",
|
||
"features": [
|
||
"Clientes e serviços com associação explícita",
|
||
"Rascunho, revisão e cálculo",
|
||
"Documento emitido de teste e PDF",
|
||
"Continuação para recebível sem duplicação",
|
||
"Orçamentos Comercial/Oficina, revisão e aceitação documentadas e conversão explícita em rascunho",
|
||
"Recibo de afectação efectiva400, crédito nominal100/saldo500 e factura-recibo1000 atómica",
|
||
"PDF/SHA, histórico e anulação técnica com reversão explícita e diário único",
|
||
"Registo unificado autorizado com seis famílias, filtros/SQL25/100 e projecções limitadas à página",
|
||
"Início operacional com percurso, evidências, funções autorizadas e consulta explícita das fontes existentes"
|
||
],
|
||
"sources": [
|
||
{
|
||
"file": "app/Modules/Services/ServiceWorkflow.php",
|
||
"present": true,
|
||
"sha256": "6ea92e6216bec9a0062d9f152d1b758a5527360456589a98f525429402cb94da"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/ServiceInvoicing.php",
|
||
"present": true,
|
||
"sha256": "4138afb7e001b546a65552d71223cd642154945b8021e1ff45ef60a34076e3c5"
|
||
},
|
||
{
|
||
"file": "resources/js/ServicesWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "c170b195ccd78aa74f283a91b0b4f4cd93aea4677e3aaefe0b50af46f7e31669"
|
||
},
|
||
{
|
||
"file": "resources/js/ServiceInvoiceWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "8f95d1775b30a6de73d65eed428595d74cc837755d8157bf8db49a1151350277"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/ServiceDocuments.php",
|
||
"present": true,
|
||
"sha256": "816a85be48b05043f41f9c7d5f842a3fa139b21aaedf9c944d811f74be6f6208"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/DocumentPeriod.php",
|
||
"present": true,
|
||
"sha256": "100c6cf038b925126ddc8fb50adde2f6d938b4d68df6d0ab193f16ea28836ae2"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/BillingRegister.php",
|
||
"present": true,
|
||
"sha256": "115e7832b63e5c29be716140629845137d951da7790421832e1ab4058fb468cc"
|
||
},
|
||
{
|
||
"file": "resources/js/BillingRegisterWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "9ab8d036c9e6d20c588427f5a8c44677810e9713722baea908b8f6b76c8b79f9"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkspaceHome.jsx",
|
||
"present": true,
|
||
"sha256": "32bf2871a52ad5a5632aec4c2eb74207f49a8765d351ebfa5c14b475d54ebd4f"
|
||
},
|
||
{
|
||
"file": "resources/js/workspace-overview.js",
|
||
"present": true,
|
||
"sha256": "3778aeab3b5d98124d9741d91207a4c253de7a3a1396bc6b7f1f4886bc42a7ad"
|
||
}
|
||
],
|
||
"existing_evidence": [
|
||
{
|
||
"file": "docs/proofs/invoice-test-results.json",
|
||
"present": true,
|
||
"sha256": "fd04a58727ffddf1c62ac184d7834b81228dce2abb5b0c1e397505df6a45237c",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/proofs/sgf-six-module-functional-review-20261110.json",
|
||
"present": true,
|
||
"sha256": "64e49bf8681f7555bbff1ccfcb12ad8f42056833c964f3a3a1354ba8160abed7",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_SERVICE_DOCUMENTS_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "a13713f05feaa84766dfaba870e72c98d23aa6223389d1627de911b0856cd15d",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_BILLING_REGISTER_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "fec1b76003187d5f38c8aca8804c26129e312e517dd5b2247f54f0019c2cccf6",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_OPERATIONAL_INFORMATION_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "a4c82f636f5c78874a6cc89bbc42e115c8cc48df0fb957f4a8bc81472d9738f0",
|
||
"not_reexecuted": true
|
||
}
|
||
],
|
||
"missing_host_tables": [],
|
||
"missing_native_tables": [],
|
||
"integrated_release_verified": false,
|
||
"client_presentable": false,
|
||
"remaining": [
|
||
"Revisão visual, aceitação explícita e conformidade real; emissão fiscal real permanece bloqueada",
|
||
"Carga sustentada, armazenamento e capacidade de implantação exigem evidências próprias"
|
||
]
|
||
},
|
||
{
|
||
"id": "purchasing",
|
||
"label": "Compras",
|
||
"features": [
|
||
"Fornecedores e revisão distinta",
|
||
"Requisição até adjudicação e ordem",
|
||
"Recepção, documento e stock único",
|
||
"Factura conferida e obrigação reconhecida",
|
||
"Início operacional com percurso, evidências, funções autorizadas e consulta explícita das fontes existentes"
|
||
],
|
||
"sources": [
|
||
{
|
||
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
|
||
"present": true,
|
||
"sha256": "b08af1f8772cbfafa1f85e37c832f2c6916ccabcfbd4a8bb98c5ef7690c3f07f"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/RequestController.php",
|
||
"present": true,
|
||
"sha256": "c5c2b78866be7f0e1c8ba09c1af538cefcfbafbea81197833b50821bba0fcbca"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/InvoiceController.php",
|
||
"present": true,
|
||
"sha256": "85eb46ca7e65c60bed190e592a134eb48db5762c0a90b8cd4c9d6fbd81198ba4"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/ObligationController.php",
|
||
"present": true,
|
||
"sha256": "347e629306d6c1f4873afac547d13fae8ade7b268906d1312a64e7eb6998e701"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkspaceHome.jsx",
|
||
"present": true,
|
||
"sha256": "32bf2871a52ad5a5632aec4c2eb74207f49a8765d351ebfa5c14b475d54ebd4f"
|
||
},
|
||
{
|
||
"file": "resources/js/workspace-overview.js",
|
||
"present": true,
|
||
"sha256": "3778aeab3b5d98124d9741d91207a4c253de7a3a1396bc6b7f1f4886bc42a7ad"
|
||
}
|
||
],
|
||
"existing_evidence": [
|
||
{
|
||
"file": "docs/proofs/purchasing-completion-final-20261104-r2.json",
|
||
"present": true,
|
||
"sha256": "3b63f8653e8dbb089dfdd8f389e271c022a070d5a67a9f9d4585ce84438070cc",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/proofs/sgf-six-module-functional-review-20261110.json",
|
||
"present": true,
|
||
"sha256": "64e49bf8681f7555bbff1ccfcb12ad8f42056833c964f3a3a1354ba8160abed7",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_OPERATIONAL_INFORMATION_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "a4c82f636f5c78874a6cc89bbc42e115c8cc48df0fb957f4a8bc81472d9738f0",
|
||
"not_reexecuted": true
|
||
}
|
||
],
|
||
"missing_host_tables": [],
|
||
"missing_native_tables": [],
|
||
"integrated_release_verified": false,
|
||
"client_presentable": false,
|
||
"remaining": [
|
||
"Conferência visual restante e aceitação explícita do conjunto; ver SGF_SIX_MODULE_CLOSURE_20261110.md"
|
||
],
|
||
"accepted_component_journey": true
|
||
},
|
||
{
|
||
"id": "stock",
|
||
"label": "Stock",
|
||
"features": [
|
||
"Artigos, armazéns e saldos físicos",
|
||
"Entradas, saídas e origem autorizada",
|
||
"Transferência e conferência de destino",
|
||
"Contagens, ajustamentos e devoluções",
|
||
"Movimentos e relatórios por período",
|
||
"Política QA revista e devolução ao fornecedor por origem exacta; saldo8UN/160MZN no mesmo diário",
|
||
"Inactividade de pares com história conhecida, corte UTC explícito, filtros e SQL25/100 sem inferir ausência de actividade",
|
||
"Início operacional com percurso, evidências, funções autorizadas e consulta explícita das fontes existentes",
|
||
"Cadastro de artigos: preparação/revisão distintas, criação sem saldo, designação revista só dos novos, código/unidade imutáveis, histórico/recibos e catálogo canónico único"
|
||
],
|
||
"sources": [
|
||
{
|
||
"file": "app/Modules/Inventory/StockReadController.php",
|
||
"present": true,
|
||
"sha256": "fd02da1a69f76bf1412f86f43095a0a476de49fbb7d2676a51fe3b29ec66e298"
|
||
},
|
||
{
|
||
"file": "app/Modules/Inventory/CompositionStockRead.php",
|
||
"present": true,
|
||
"sha256": "81bdb5fb374a60974bbad421c461cd12079951fb426361200692a838e413b49e"
|
||
},
|
||
{
|
||
"file": "app/Modules/Inventory/StockPeriodReport.php",
|
||
"present": true,
|
||
"sha256": "d491541c6c60bc0c661dc442b8db8ce2e757f1d63dfc4982a3631f820cfb7a06"
|
||
},
|
||
{
|
||
"file": "app/Modules/Workshop/WorkshopStock.php",
|
||
"present": true,
|
||
"sha256": "c32024ab178a3db29881902199df4e313be34dd770fc14d55a537656bf6f8fa6"
|
||
},
|
||
{
|
||
"file": "app/Modules/Inventory/StockOperationsController.php",
|
||
"present": true,
|
||
"sha256": "34d6c7be4787f4f18ca2a7aa322f6f33dfb281e22336599234c93c655ab4eebf"
|
||
},
|
||
{
|
||
"file": "resources/views/stock-operations-workspace.blade.php",
|
||
"present": true,
|
||
"sha256": "5db67c2d23e5557548c38c82a0d7f6e373651849727b2237dcd73f620309c25a"
|
||
},
|
||
{
|
||
"file": "public/stock-operations-workspace.mjs",
|
||
"present": true,
|
||
"sha256": "56734499e8dd89da293c2edadd0d0e10ac6d06b39f0365e5ae29a8d14e9176d8"
|
||
},
|
||
{
|
||
"file": "app/Modules/Inventory/StockFinalController.php",
|
||
"present": true,
|
||
"sha256": "9d9a242fd8e143fe076ece0454d0789eabf543e37b332db4806d905fad13cdda"
|
||
},
|
||
{
|
||
"file": "resources/views/stock-final-workspace.blade.php",
|
||
"present": true,
|
||
"sha256": "93764471a215735a65e5c07121989b1e2f6499f631a11b9f1177bb0fe8def232"
|
||
},
|
||
{
|
||
"file": "public/sgf-stock-final.mjs",
|
||
"present": true,
|
||
"sha256": "77860b080015528fe4dd84b2e71787ee668da9be17653c64a5d8e64539b5e592"
|
||
},
|
||
{
|
||
"file": "app/Modules/Inventory/StockInactiveReport.php",
|
||
"present": true,
|
||
"sha256": "7db06225fb7bb40c9a4140383caef6dd96c430e3a3e1be8ef7fed2253f2681e2"
|
||
},
|
||
{
|
||
"file": "resources/js/StockInactiveReportWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "5d4f7222bf325550cebddbd00198515da55f15f52b4c99ecaef19f45820a165e"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkspaceHome.jsx",
|
||
"present": true,
|
||
"sha256": "32bf2871a52ad5a5632aec4c2eb74207f49a8765d351ebfa5c14b475d54ebd4f"
|
||
},
|
||
{
|
||
"file": "resources/js/workspace-overview.js",
|
||
"present": true,
|
||
"sha256": "3778aeab3b5d98124d9741d91207a4c253de7a3a1396bc6b7f1f4886bc42a7ad"
|
||
},
|
||
{
|
||
"file": "app/Modules/Inventory/StockCatalogueController.php",
|
||
"present": true,
|
||
"sha256": "ab0a6bc52e635d5bcdee9163b68b1ec6fc14b717de7b887fcc832336961fa128"
|
||
},
|
||
{
|
||
"file": "resources/views/stock-catalogue-workspace.blade.php",
|
||
"present": true,
|
||
"sha256": "4381f81a9aea04fe851f8c7af17cafb98f6bef7cbf52ac2630b0b9912a3dca57"
|
||
},
|
||
{
|
||
"file": "public/sgf-stock-catalogue.mjs",
|
||
"present": true,
|
||
"sha256": "10eedcf1881ad3f1cb71813f0547eae7246795273457cc33b1a2a6761a0a2d6e"
|
||
},
|
||
{
|
||
"file": "config/stock_catalogue.php",
|
||
"present": true,
|
||
"sha256": "811f844cecf76bff62da943042a272301cb8a7f7a586c4f2648ef5b8e5e31dae"
|
||
},
|
||
{
|
||
"file": "database/sql/stock_catalogue.sql",
|
||
"present": true,
|
||
"sha256": "c9c99cec20e6ca60cf0ee56210eac9a2365a2ef9b482698929a70295d2893809"
|
||
}
|
||
],
|
||
"existing_evidence": [
|
||
{
|
||
"file": "docs/proofs/stock-period-report-20261103.json",
|
||
"present": true,
|
||
"sha256": "0ab25af6ffbff7d8ecb651df833771b082bf92d52f97eca4278fcac3fd5ea53b",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/proofs/sgf-stock-operations-20261110.json",
|
||
"present": true,
|
||
"sha256": "1d241fcfb81fcf6c1b374f9fc89c1f2130b17eee1314f06b4b8e4b59c476fc08",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/proofs/sgf-six-module-functional-review-20261110.json",
|
||
"present": true,
|
||
"sha256": "64e49bf8681f7555bbff1ccfcb12ad8f42056833c964f3a3a1354ba8160abed7",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_STOCK_POLICIES_SUPPLIER_RETURN.md",
|
||
"present": true,
|
||
"sha256": "b8848090f1e19a6b7c19b684e07c0c95cafcf93bd1551357f6afc314f4413d8b",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_STOCK_INACTIVITY_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "8773d53140b291c01358b8e71c584373cd0e440f67d0107e64ecea13980990d3",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_OPERATIONAL_INFORMATION_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "a4c82f636f5c78874a6cc89bbc42e115c8cc48df0fb957f4a8bc81472d9738f0",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_STOCK_CATALOGUE_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "43ce839f882aeeab48b272d5eb1a4e34fcd855052db88643a8ca7b08556631f8",
|
||
"not_reexecuted": true
|
||
}
|
||
],
|
||
"missing_host_tables": [],
|
||
"missing_native_tables": [],
|
||
"integrated_release_verified": false,
|
||
"client_presentable": false,
|
||
"remaining": [
|
||
"Revisão visual dos novos relatórios e aceitação explícita do conjunto; carga sustentada e implantação separadas"
|
||
]
|
||
},
|
||
{
|
||
"id": "workshop",
|
||
"label": "Oficinas",
|
||
"features": [
|
||
"Ordem e autorização",
|
||
"Apontamentos e revisão distinta",
|
||
"Material consumido ligado ao movimento físico",
|
||
"Custo directo/industrial e correcção",
|
||
"Continuação comercial por documento de origem",
|
||
"Agenda sem sobreposição, reagendamento e cancelamento versionados",
|
||
"Cadastro independente e reutilização de equipamento por cliente",
|
||
"Início operacional com percurso, evidências, funções autorizadas e consulta explícita das fontes existentes",
|
||
"Ordens SQL25/100 por cliente/equipamento/responsável/estado, apontamentos actuais e minutos verificados, sem mutex de escrita na leitura",
|
||
"Relatório por período de abertura explícito/dia local, SQL25/100 antes de paginar, apontamentos actuais e CSV da página sem fecho histórico presumido",
|
||
"Equipamento escolhido → ordens exactas SQL25/100 com filtros, identificação actual, CSV da página e regresso ao catálogo"
|
||
],
|
||
"sources": [
|
||
{
|
||
"file": "app/Modules/Workshop/WorkshopStock.php",
|
||
"present": true,
|
||
"sha256": "c32024ab178a3db29881902199df4e313be34dd770fc14d55a537656bf6f8fa6"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkshopWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "a1ceca33c234a759b2abf13b087bba8d18d70187ad9161e59425a5932771f8bb"
|
||
},
|
||
{
|
||
"file": "resources/js/DirectCostsWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "dcaf72fe36d80e16bab8e962f939168650336d1450fc3eb01693acb7ef7e0743"
|
||
},
|
||
{
|
||
"file": "resources/js/IndustrialCostsWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "51a3307fa8b2526efa12d8a16fee613bdfe141d02bd6e5af4535d581ed69c6d0"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkshopBillingWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "601853bd383ef2d1891158e89578bbc7f26ae1c7220bc11ddfadf1868cb63afc"
|
||
},
|
||
{
|
||
"file": "app/Modules/Workshop/ComposedWorkshopStockBook.php",
|
||
"present": true,
|
||
"sha256": "01e7392827a6453a357a0b5140905757bbee76f57fae6aa9906490788690e24c"
|
||
},
|
||
{
|
||
"file": "app/Modules/Workshop/WorkshopBilling.php",
|
||
"present": true,
|
||
"sha256": "0eac2d91fd9f006aa8c198e3652731142aee478c93de090c408df54cdd9d292d"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkspaceHome.jsx",
|
||
"present": true,
|
||
"sha256": "32bf2871a52ad5a5632aec4c2eb74207f49a8765d351ebfa5c14b475d54ebd4f"
|
||
},
|
||
{
|
||
"file": "resources/js/workspace-overview.js",
|
||
"present": true,
|
||
"sha256": "3778aeab3b5d98124d9741d91207a4c253de7a3a1396bc6b7f1f4886bc42a7ad"
|
||
},
|
||
{
|
||
"file": "app/Modules/Workshop/WorkshopOrderRead.php",
|
||
"present": true,
|
||
"sha256": "f741a5ac6c16376ea26b1bacd7b5e706b14a4548a26f59c4a96ec882fb6a6fa5"
|
||
},
|
||
{
|
||
"file": "app/Modules/Workshop/Http/WorkshopOrderReadController.php",
|
||
"present": true,
|
||
"sha256": "f4dd027d01c0730603f3b312c2eb263740f6ebe1c969c762ed99d19520fab584"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkshopOrderList.jsx",
|
||
"present": true,
|
||
"sha256": "4cad148295acb7c462425fa300dccc7c203255f5f616163575e205bfc8a80e34"
|
||
},
|
||
{
|
||
"file": "resources/js/workshop-report-view.js",
|
||
"present": true,
|
||
"sha256": "28125af02e25b4befb9914c5dee753dae4164100f3c0f94988c332a50021bf9f"
|
||
},
|
||
{
|
||
"file": "app/Modules/Workshop/WorkshopEquipment.php",
|
||
"present": true,
|
||
"sha256": "37223b732865f273831d0bf61a464137cc53526a4c55750347450ba20bcbbc37"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkshopEquipmentWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "450af001d385f42cd4d0ae42b34fa6b373cdd6811d94f8f4a1f5de2c591ed843"
|
||
}
|
||
],
|
||
"existing_evidence": [
|
||
{
|
||
"file": "docs/proofs/workshop-stock-closure-20261102.json",
|
||
"present": true,
|
||
"sha256": "261d5502f6905d53ef8046e0e900c9bee159c8c9d7e1bae4fddd8ec698313bf7",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/proofs/sgf-six-module-functional-review-20261110.json",
|
||
"present": true,
|
||
"sha256": "64e49bf8681f7555bbff1ccfcb12ad8f42056833c964f3a3a1354ba8160abed7",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_WORKSHOP_AGENDA_EQUIPMENT.md",
|
||
"present": true,
|
||
"sha256": "3a44a1b6ac5148013c815cc6cc8919f08c15ac911f900aac5b4a0af903589481",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_OPERATIONAL_INFORMATION_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "a4c82f636f5c78874a6cc89bbc42e115c8cc48df0fb957f4a8bc81472d9738f0",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_WORKSHOP_PERIOD_REPORT_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "1455e3dc4203c81f49ddaba05a7bf7de10cfd9b3bb4dbd2eb4480aa05b7ccf08",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_WORKSHOP_EQUIPMENT_ORDERS_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "4d4249613a1b3fc339f342c3854eda08bf1ec280c0681eb3b2551469b2da2b36",
|
||
"not_reexecuted": true
|
||
}
|
||
],
|
||
"missing_host_tables": [],
|
||
"missing_native_tables": [],
|
||
"integrated_release_verified": false,
|
||
"client_presentable": false,
|
||
"remaining": [
|
||
"Conferência visual restante e aceitação explícita do conjunto; ver SGF_SIX_MODULE_CLOSURE_20261110.md"
|
||
]
|
||
},
|
||
{
|
||
"id": "finance",
|
||
"label": "Financeiro",
|
||
"features": [
|
||
"Obrigações a fornecedores",
|
||
"Recebíveis de clientes",
|
||
"Liquidação/afectação e reversão sintéticas",
|
||
"Posição financeira e comprovativos por origem",
|
||
"Caixa QA explícita0+1000-50=950, revisão distinta, contagem e fecho sem reabertura",
|
||
"Extracto paginado, recuperação de confirmação e classificação/despesa no mesmo diário",
|
||
"Extracto artificial QA e correspondências individuais com duas linhas nativas existentes, revisão distinta, conferência final e relatório",
|
||
"Critérios e indicadores QA950/100=9,5 vezes e50/1000=5%, revisão distinta, fontes conciliadas/retrato/fracção/histórico/relatório",
|
||
"Início operacional com percurso, evidências, funções autorizadas e consulta explícita das fontes existentes",
|
||
"Posições actuais de clientes por documento, pesquisa/estado/vencimento, SQL25/100, saldos reconhecidos e CSV da página; referência de vencimento distinta de saldo histórico",
|
||
"Posições de fornecedores por factura/fornecedor e estado documental, SQL25/100, saldos do motor original, CSV da página e abertura exacta do documento; vencimento desconhecido sem atraso presumido",
|
||
"Condições administrativas QA de vencimento: preparação13/revisão14, evidência/fundamento, prévia/revalidação de origem/saldo/versão/pessoa, recusa/correcção, histórico25/100, recibo e recuperação; lista/CSV separam original e condição revista, referência explícita no detalhe",
|
||
"Mapa de antiguidade de fornecedores por referência explícita e condição administrativa revista, faixas0/1–30/31–60/61–90/>90/desconhecido, valores exactos por moeda só da página/CSV, sem alterar saldo ou vencimento original"
|
||
],
|
||
"sources": [
|
||
{
|
||
"file": "app/Modules/Services/ServiceReceivables.php",
|
||
"present": true,
|
||
"sha256": "79e1669b2423c521c0c56ab6fb07e085daef88eff8a41748c424e4a827f1e453"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/SupplierPayables.php",
|
||
"present": true,
|
||
"sha256": "c17d44391cbd96941aa2dd2eac2cb167508faf6453c6a1e86333846df1ba18b9"
|
||
},
|
||
{
|
||
"file": "resources/js/ServiceReceivablesWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "6e654a03cb47e52dedd52ce6b2abf89a61d22860e4ffae92fd393027a54cc445"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/ComposedFinance.php",
|
||
"present": true,
|
||
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
|
||
"present": true,
|
||
"sha256": "14f8e440d8bd383913129586338521313952f2f14136a34871253dec0fa6b4b4"
|
||
},
|
||
{
|
||
"file": "app/Modules/Finance/CashWorkspace.php",
|
||
"present": true,
|
||
"sha256": "bb65060461cea3a844cf523733644cdd630f35ba02c82aeed961821ec5970800"
|
||
},
|
||
{
|
||
"file": "app/Modules/Finance/Http/CashController.php",
|
||
"present": true,
|
||
"sha256": "982c161f3ef7314a9671f848f0da2aefb27841e40003ef47102d0d956c08cd78"
|
||
},
|
||
{
|
||
"file": "app/Modules/Accounting/CashLedgerSource.php",
|
||
"present": true,
|
||
"sha256": "3a46162f0a62363dd4015f0047a5bff95e8aebd8dd3007fc705daaf58c10684b"
|
||
},
|
||
{
|
||
"file": "app/Modules/Finance/BankReconciliation.php",
|
||
"present": true,
|
||
"sha256": "5421141bcc6e15bda142687661774238c7203c85d0ef30696fd4d56dd5b9e328"
|
||
},
|
||
{
|
||
"file": "app/Modules/Finance/BankLedgerSource.php",
|
||
"present": true,
|
||
"sha256": "f33779fa736aea7027d4cf449ba85c5982bfb565c75bbb2a477d7a2666820338"
|
||
},
|
||
{
|
||
"file": "app/Modules/Finance/Http/BankReconciliationController.php",
|
||
"present": true,
|
||
"sha256": "896d710db108364263a1404d2aafdc52eff4d3b6efcbe3dbdbcca1978befffe4"
|
||
},
|
||
{
|
||
"file": "public/sgf-bank.mjs",
|
||
"present": true,
|
||
"sha256": "959214ad94bb5c29ffdaf1c8fd3e59bf8718837d4c1fe9bea52d3b04c261a80b"
|
||
},
|
||
{
|
||
"file": "app/Modules/Finance/FinancialIndicators.php",
|
||
"present": true,
|
||
"sha256": "9785a801c5fb13b34770bdd05c828f5e924058eb872a7b33bc1db139a3024d10"
|
||
},
|
||
{
|
||
"file": "app/Modules/Finance/FinancialIndicatorSource.php",
|
||
"present": true,
|
||
"sha256": "72039264cbb25ae2eaa5eaa4af488aabf7061a4a298c09490b8957b4ade55731"
|
||
},
|
||
{
|
||
"file": "app/Modules/Finance/Http/FinancialIndicatorsController.php",
|
||
"present": true,
|
||
"sha256": "5245064e40b884e432afa2fd26d45fddccebf6963ef3366f585b93ee78f12cca"
|
||
},
|
||
{
|
||
"file": "public/sgf-indicators.mjs",
|
||
"present": true,
|
||
"sha256": "62442edc14da534e0166cc65074389e74cc67246cd5922994628644fd900cbb9"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkspaceHome.jsx",
|
||
"present": true,
|
||
"sha256": "32bf2871a52ad5a5632aec4c2eb74207f49a8765d351ebfa5c14b475d54ebd4f"
|
||
},
|
||
{
|
||
"file": "resources/js/workspace-overview.js",
|
||
"present": true,
|
||
"sha256": "3778aeab3b5d98124d9741d91207a4c253de7a3a1396bc6b7f1f4886bc42a7ad"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/ReceivablePositionRead.php",
|
||
"present": true,
|
||
"sha256": "6aaf0211c4427643c84152edc6a7937dbf48387e2844d3bbe31328d1f6789f2d"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/Http/ReceivablePositionReadController.php",
|
||
"present": true,
|
||
"sha256": "9e8be7c2cd328aebb31cbe0be4eeaaa6abc02d5bff0895aeb90c24ab8d134541"
|
||
},
|
||
{
|
||
"file": "resources/js/ReceivablePositionsWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "5bd8ee952aeee87d733ab434cfe50b675d84c0341ade4f354c93e4acfdbe57e9"
|
||
},
|
||
{
|
||
"file": "resources/js/receivable-position-view.js",
|
||
"present": true,
|
||
"sha256": "08f8cb6d17b79b89ee8cebe4723458c1a4979d8fb824afa0b585ae51076e6f21"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/PayablePositionReadController.php",
|
||
"present": true,
|
||
"sha256": "1d147f14826793f97605ea442c6a93612a55caf265311a86824611650dfc0005"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
|
||
"present": true,
|
||
"sha256": "14f8e440d8bd383913129586338521313952f2f14136a34871253dec0fa6b4b4"
|
||
},
|
||
{
|
||
"file": "resources/js/PayablePositionsWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "e52fa90276e6251b38bb48f83a11ec2b11ac819ffa3c2239da9712e50ce66343"
|
||
},
|
||
{
|
||
"file": "resources/js/payable-position-view.js",
|
||
"present": true,
|
||
"sha256": "ff4b32f404cd575ddc134cf373ae6ded5d0abae8641b14b591c0f5a856437938"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/PayableDueController.php",
|
||
"present": true,
|
||
"sha256": "39e4c95b910d3b1c4aa227c7c2aa0ee24399921b9578748b95ff5aa519f34db7"
|
||
},
|
||
{
|
||
"file": "resources/js/PayableDueWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "c7127bbb2edc6c5acce57a55a6c3c5b94969170ccf1adb7236fee80d45f555ae"
|
||
},
|
||
{
|
||
"file": "database/sql/payable_due.sql",
|
||
"present": true,
|
||
"sha256": "faefce9f2c11da613293e23bbc2f630bdae345d872cca7f3c2923c77fea0f75e"
|
||
},
|
||
{
|
||
"file": "config/payable_due.php",
|
||
"present": true,
|
||
"sha256": "39fc036c111c443ee2bc8fac28d94dde055083b2abfb955d5aa9299b90b26cdb"
|
||
},
|
||
{
|
||
"file": "app/Modules/Purchasing/PayableAge.php",
|
||
"present": true,
|
||
"sha256": "19f4a3994b679b74275e72e906251c8d32ee9950ebedfae07bd4002abe740a9e"
|
||
}
|
||
],
|
||
"existing_evidence": [
|
||
{
|
||
"file": "docs/proofs/supplier-settlements.json",
|
||
"present": true,
|
||
"sha256": "b1bce9218f99ea2d8c780022ad385e169c7acc5778ac6950236eef0630f77ad0",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/proofs/sgf-six-module-functional-review-20261110.json",
|
||
"present": true,
|
||
"sha256": "64e49bf8681f7555bbff1ccfcb12ad8f42056833c964f3a3a1354ba8160abed7",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_CASH_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "bfb40ff8849eb4d9fcb641aa9b8d07bbaab89326a0f89b8f113cf0bf62653093",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_BANK_RECONCILIATION_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "acf53f7dfd2ec0f501cef8b1623e090c1e1b8a07a8591f4f042fb8a0b7b57273",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_FINANCIAL_INDICATORS_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "9902e37504dd9f5e1d3c73cd78a283e29be00ffb33ce13ca8f76577d1163cc65",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_OPERATIONAL_INFORMATION_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "a4c82f636f5c78874a6cc89bbc42e115c8cc48df0fb957f4a8bc81472d9738f0",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_RECEIVABLE_POSITIONS_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "7a829a6dcae28fa42e996874b7b65ed1de325dbab5bae12a28731ecfc2e849d7",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_PAYABLE_POSITIONS_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "2c0a25051540527e87ca9abfa43db5efb288e0b40e2315e06f6084693ce9c8c3",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_PAYABLE_DUE_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "614ca3b1c432760e1911112951f138cf72d5d8370173336472529e9549e965b8",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_PAYABLE_AGING_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "a0af96108702bbb687a655de744e78e01a3e7c98365244410eb291fcb7a5fafa",
|
||
"not_reexecuted": true
|
||
}
|
||
],
|
||
"missing_host_tables": [],
|
||
"missing_native_tables": [],
|
||
"integrated_release_verified": false,
|
||
"client_presentable": false,
|
||
"remaining": [
|
||
"Conferência visual restante e aceitação explícita do conjunto; ver SGF_SIX_MODULE_CLOSURE_20261110.md",
|
||
"Conferência de extracto QA entregue; reconciliação bancária geral/real permanece fora do recorte"
|
||
]
|
||
},
|
||
{
|
||
"id": "accounting",
|
||
"label": "Contabilidade",
|
||
"features": [
|
||
"Plano e classificação",
|
||
"Diário com preparação/revisão distintas",
|
||
"Razão e balancete",
|
||
"Estorno/correcção e conferência de período",
|
||
"Fecho sintético com rastreabilidade de origens",
|
||
"Livro de saídas e mapa interno IVA QA da origem FR seleccionada, revisão distinta, histórico e CSV congelado",
|
||
"Catálogo de fontes/regras versionadas QA, revisão distinta, vigência/conflitos/retirada e cálculo explicável com história preservada",
|
||
"Cálculo QA por1–25linhas sem/com imposto incluído, representação por linha aprovada, exactos/diferenças e mapa interno recuperável",
|
||
"Início operacional com percurso, evidências, funções autorizadas e consulta explícita das fontes existentes",
|
||
"Submenus distintos e balancete/razão por datas explícitas, escolha de conta por linha, páginas25/100, detecção de mudança de livro e CSV da página",
|
||
"Controlo administrativo QA de obrigação/prazo/responsável do mapa interno revisto, preparação13/revisão14, correcção/cancelamento, entrega apenas simulada com SHA verificado, histórico/recibo/SQL25/100/CSV; sem calendário legal ou submissão",
|
||
"Correspondências explícitas revistas15/16 e balanço/resultados internos parciais QA:19contas/nove pendentes, resultado congelado19linhas/SHA, história/recibo/CSV contextual, ligação exacta ao razão; capital e resultado completo não presumidos"
|
||
],
|
||
"sources": [
|
||
{
|
||
"file": "app/Modules/Accounting/GeneralLedger.php",
|
||
"present": true,
|
||
"sha256": "a87d2ea373bc61bb139aa29f2a354b9813bbb2d6229a389f8d37fd8e9890edec"
|
||
},
|
||
{
|
||
"file": "app/Modules/Accounting/GeneralLedgerController.php",
|
||
"present": true,
|
||
"sha256": "afd2f4ae55e694f0aff18233a6f5cf52444e185aaf5a159865f74f0243783f2a"
|
||
},
|
||
{
|
||
"file": "packages/general-ledger/src/LedgerSchema.php",
|
||
"present": true,
|
||
"sha256": "d9c203286b3a04121c265dffe412d2e86726ec4bb9222a2ed654d0296d86b5d8"
|
||
},
|
||
{
|
||
"file": "app/Modules/Accounting/ComposedLedger.php",
|
||
"present": true,
|
||
"sha256": "2e4dfa133831c78514e1010d373db905b892c315c455ba53b997edd514cac035"
|
||
},
|
||
{
|
||
"file": "app/Modules/Accounting/ComposedLedgerController.php",
|
||
"present": true,
|
||
"sha256": "b96749981b0d4daa7861eab62c5de60c96c5ffa9c72183f88bb89e2d4f7bdf2b"
|
||
},
|
||
{
|
||
"file": "packages/general-ledger/src/StockTransitEvidence.php",
|
||
"present": true,
|
||
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/FiscalCoverage.php",
|
||
"present": true,
|
||
"sha256": "55f8b947bd63cffdc63f268a88ac441fda62e144d1a2013eaa954d57970fa716"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/FiscalAssessment.php",
|
||
"present": true,
|
||
"sha256": "c2dbe192e6bba75f6fc4057bbb51c85bcf024a674cfeb7950ba239e700213128"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/Http/FiscalAssessmentController.php",
|
||
"present": true,
|
||
"sha256": "425278110af20393e71de446f9b0ce41408352216249e5055de4165b075631e4"
|
||
},
|
||
{
|
||
"file": "public/sgf-iva.mjs",
|
||
"present": true,
|
||
"sha256": "1d8c2a07f606799257c090ab2ddb52c309553a15009d6fb457dbbf4770c51ee6"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/FiscalRules.php",
|
||
"present": true,
|
||
"sha256": "520edda0a013d41a80e3e3b56a1b39597a4f1b6407d78118f8855277ffeb3548"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/FiscalRuleExpression.php",
|
||
"present": true,
|
||
"sha256": "108d8401c9c2bc85b3e5f663322c3d36c267afd8529b370e7e16c1d565a3daef"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/Http/FiscalRulesController.php",
|
||
"present": true,
|
||
"sha256": "cc7e05e18c4bbc98a70a19eabdd653bbb44a717214f8d8ee19cd2ffeb1c032c9"
|
||
},
|
||
{
|
||
"file": "public/sgf-fiscal-rules.mjs",
|
||
"present": true,
|
||
"sha256": "5c865e018c5b7d3b3f1232b80e81da379c729ea816a9e08a73225e76a678502c"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/FiscalDocumentMath.php",
|
||
"present": true,
|
||
"sha256": "6e67b7b1363d24b38ca0dd40c4349dba82a4b746965f0af8aa7d65bb4f8f731d"
|
||
},
|
||
{
|
||
"file": "resources/js/WorkspaceHome.jsx",
|
||
"present": true,
|
||
"sha256": "32bf2871a52ad5a5632aec4c2eb74207f49a8765d351ebfa5c14b475d54ebd4f"
|
||
},
|
||
{
|
||
"file": "resources/js/workspace-overview.js",
|
||
"present": true,
|
||
"sha256": "3778aeab3b5d98124d9741d91207a4c253de7a3a1396bc6b7f1f4886bc42a7ad"
|
||
},
|
||
{
|
||
"file": "resources/js/ComposedAccountingWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "9288df122be42e436bb4aeffc3e84cc1687ba82ab4cab07754d27d507d0012ac"
|
||
},
|
||
{
|
||
"file": "resources/js/LedgerReportsWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "312157b80599e0f4407520ec968460af9c31913f79365ef6efa9a243c98ba419"
|
||
},
|
||
{
|
||
"file": "resources/js/ledger-report-view.js",
|
||
"present": true,
|
||
"sha256": "54a1eb09ab4b451b4aa34d8b0c1ebc3d8cea91da4f242ea25a0c4b3bb1db79b4"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/FiscalObligations.php",
|
||
"present": true,
|
||
"sha256": "bcf24717cf5828fed440b8e86f29a5ed4d325d392000240b224d155954170d1d"
|
||
},
|
||
{
|
||
"file": "app/Modules/Services/Http/FiscalObligationsController.php",
|
||
"present": true,
|
||
"sha256": "95b03b505e588333206766b862d0f0cff006b1af1a3dc0466370ac6a7518e097"
|
||
},
|
||
{
|
||
"file": "resources/js/FiscalObligationsWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "77e6741581305739000e6ac4923f350464338d93346a860bf840ff08d7740b90"
|
||
},
|
||
{
|
||
"file": "resources/js/fiscal-obligations-view.js",
|
||
"present": true,
|
||
"sha256": "d3c1aafddac987de0a8e432746533da8832c140474f9d9d49055020f7c9e67dd"
|
||
},
|
||
{
|
||
"file": "database/sql/fiscal_obligations.sql",
|
||
"present": true,
|
||
"sha256": "c68988342ca1ed5817485355844c2f502f5c2ca12954461c1555d5c5f2abf7fe"
|
||
},
|
||
{
|
||
"file": "config/fiscal_obligations.php",
|
||
"present": true,
|
||
"sha256": "39fc036c111c443ee2bc8fac28d94dde055083b2abfb955d5aa9299b90b26cdb"
|
||
},
|
||
{
|
||
"file": "app/Modules/Accounting/InternalStatementsController.php",
|
||
"present": true,
|
||
"sha256": "b05990c7fdb195957808b63a77599eaaabed5c5eb435dd8e7dd13d662c22fd8d"
|
||
},
|
||
{
|
||
"file": "app/Modules/Accounting/InternalStatementTotals.php",
|
||
"present": true,
|
||
"sha256": "f13f6f356100e49786869196c54343fd629f6a1d38fa81665eb768dae4731601"
|
||
},
|
||
{
|
||
"file": "resources/js/InternalStatementsWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "2fadac08cd6162dd06d056bfc4fb00479e9a5d930fdde10c1a4b57507982e76e"
|
||
},
|
||
{
|
||
"file": "resources/js/internal-statements-view.js",
|
||
"present": true,
|
||
"sha256": "f1f7b44f2dc1679e537d77522e0fc5ee84da23068ef3157677bc20a8409d3464"
|
||
},
|
||
{
|
||
"file": "resources/js/statement-download.js",
|
||
"present": true,
|
||
"sha256": "adb8a84a7de7678f67761cd64c4752adb3c6c802ff15754752d2417c5c35b646"
|
||
},
|
||
{
|
||
"file": "resources/js/FiscalObligationsWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "77e6741581305739000e6ac4923f350464338d93346a860bf840ff08d7740b90"
|
||
},
|
||
{
|
||
"file": "database/sql/internal_statements.sql",
|
||
"present": true,
|
||
"sha256": "2beccb0bb7d91f48e5a5e386c1e010fb7d95cbfa90aa35a68e28dc63ae6a6f6b"
|
||
},
|
||
{
|
||
"file": "config/internal_statements.php",
|
||
"present": true,
|
||
"sha256": "39fc036c111c443ee2bc8fac28d94dde055083b2abfb955d5aa9299b90b26cdb"
|
||
}
|
||
],
|
||
"existing_evidence": [
|
||
{
|
||
"file": "docs/proofs/purchasing-completion-matrix-final-20261104.json",
|
||
"present": true,
|
||
"sha256": "94cb37698f294c38df9b94a5535ba4b9ac63907f94dab1e7f951a3bb27623083",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/proofs/sgf-six-module-functional-review-20261110.json",
|
||
"present": true,
|
||
"sha256": "64e49bf8681f7555bbff1ccfcb12ad8f42056833c964f3a3a1354ba8160abed7",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_FISCAL_COVERAGE_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "4951a2514253c71710fd18ddbffcec1c4dca597355b1cf998b1c7f1b38078506",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_IVA_ASSESSMENT_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "b0a3ae64699352242108d782a229f0250344f238fad02e14e6fa4dbb520e997f",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_FISCAL_RULES_COMMON_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "10f8801d59dbdeb3f075e5bf2650e4538097a92151db516e3c0357ac011c8a5a",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_MULTI_LINE_INCLUDED_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "7b1d6bbdea15845cf7f4fe104057a4053be1c0f0edb2186da26d11dded45b690",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_OPERATIONAL_INFORMATION_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "a4c82f636f5c78874a6cc89bbc42e115c8cc48df0fb957f4a8bc81472d9738f0",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_ACCOUNTING_REPORTS_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "f910d6d11fd7f4e18a675fea9f07a50137bbed72d4718bb7ec6e022bdd1959e5",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_FISCAL_OBLIGATIONS_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "028e3172128435924dc9594b68b25560cb0b30495f27c522864a94a1f8cc9504",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_FINANCIAL_STATEMENTS_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "53a07e2c0517de5b6881584c598b2f1d1d5665422ac2f8f5932626822daf3359",
|
||
"not_reexecuted": true
|
||
}
|
||
],
|
||
"missing_host_tables": [],
|
||
"missing_native_tables": [],
|
||
"integrated_release_verified": false,
|
||
"client_presentable": false,
|
||
"remaining": [
|
||
"Conferência visual restante e aceitação explícita do conjunto; ver SGF_SIX_MODULE_CLOSURE_20261110.md",
|
||
"Backlog fiscal/financeiro amplo pendente; tabela de cobertura não implementa motores ou modelos"
|
||
]
|
||
},
|
||
{
|
||
"id": "human_resources",
|
||
"label": "Recursos Humanos",
|
||
"features": [
|
||
"Módulo autónomo com perfis QA próprios separados do Financeiro",
|
||
"Cadastro pseudónimo individual preparado e revisto",
|
||
"Regras artificiais versionadas com vigência e fonte explícitas",
|
||
"Processamento exacto por trabalhador/período com escolha de fontes e revisão distinta",
|
||
"Correcção/cancelamento versionados, prévia, histórico, recibos e recuperação",
|
||
"Mapa individual revisto conservado com SHA e exportação autenticada; filtros SQL25/100",
|
||
"Contratos internos QA revistos com correcção/terminação/cancelamento e dependências",
|
||
"Plano e assiduidade por dia com intervalos explícitos, dados desconhecidos e revisão distinta",
|
||
"Condição de férias QA, reserva/gozo/cancelamento individuais, saldo efectivo sem duplicação",
|
||
"Conferência parcial do período por pessoa, fontes/versões e CSV/SHA conservado",
|
||
"Ligação contratual explícita opcional em novas preparações salariais, provada na regressão sem alterar salários8085"
|
||
],
|
||
"sources": [
|
||
{
|
||
"file": "app/Modules/HumanResources/Remunerations.php",
|
||
"present": true,
|
||
"sha256": "950333ced35d6949487bdf78ef109fad608338525acfe60b05b9a320fd3aac01"
|
||
},
|
||
{
|
||
"file": "app/Modules/HumanResources/Http/RemunerationsController.php",
|
||
"present": true,
|
||
"sha256": "3725145a623791a6c2825d8aaa4f122ba7b80908c08603211d6d9e74df76e801"
|
||
},
|
||
{
|
||
"file": "app/Shared/Installation/HumanResourcesProfiles.php",
|
||
"present": true,
|
||
"sha256": "f908b8cf9f7121bb9b43733f507771a60aa34eb553df8342c250e5b39940ae93"
|
||
},
|
||
{
|
||
"file": "resources/js/RemunerationsWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "edb225504bff359d5c53c040421e322bb4cd887ac946b3316852ecd1ed25b76e"
|
||
},
|
||
{
|
||
"file": "resources/js/statement-download.js",
|
||
"present": true,
|
||
"sha256": "adb8a84a7de7678f67761cd64c4752adb3c6c802ff15754752d2417c5c35b646"
|
||
},
|
||
{
|
||
"file": "app/Modules/HumanResources/Personnel.php",
|
||
"present": true,
|
||
"sha256": "c0bf3d63c5d5ec5b7556af6abe36b94eef35f2e73235103e2aff67e08015b538"
|
||
},
|
||
{
|
||
"file": "app/Modules/HumanResources/PersonnelTime.php",
|
||
"present": true,
|
||
"sha256": "e0fc1bdecbbd24c1ac21a426d8547fc049c00fd18ae6faa7ded64128252bbfd6"
|
||
},
|
||
{
|
||
"file": "app/Modules/HumanResources/Http/PersonnelController.php",
|
||
"present": true,
|
||
"sha256": "642ea349b2ae84b3ad3e40a47e6c2644df1bf6a3d9c44a862e7c92d299f339a0"
|
||
},
|
||
{
|
||
"file": "resources/js/PersonnelWorkspace.jsx",
|
||
"present": true,
|
||
"sha256": "1752295b0c3de5250387226e2200e0ca1204cbd7b97388ab72a2b07a74b526fe"
|
||
}
|
||
],
|
||
"existing_evidence": [
|
||
{
|
||
"file": "docs/SGF_HUMAN_RESOURCES_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "1494d29938565bb6f5d552385d7b32dd0a8f22856755bf638d81cf9a41a65f60",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/proofs/sgf-human-resources-20261111.json",
|
||
"present": true,
|
||
"sha256": "95d0c3fcd407cfbb03226288b94570478b906fdf3cb50c26a9960956f536cf29",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/SGF_HUMAN_RESOURCES_PERSONNEL_DELIVERY.md",
|
||
"present": true,
|
||
"sha256": "045d111cd08ad58c22a802d6d728c7f300d91b4078b65c3ac61683791747a02e",
|
||
"not_reexecuted": true
|
||
},
|
||
{
|
||
"file": "docs/proofs/sgf-hr-personnel-20261111.json",
|
||
"present": true,
|
||
"sha256": "b4ce53d6099a13acbe6bd2d7431f9109b8a318000f9d69813353349cd823cdc7",
|
||
"not_reexecuted": true
|
||
}
|
||
],
|
||
"missing_host_tables": [],
|
||
"missing_native_tables": [],
|
||
"integrated_release_verified": false,
|
||
"client_presentable": false,
|
||
"remaining": [
|
||
"Conformidade e aplicabilidade laboral real: contratos legais, turnos/calendário, férias legais, benefícios e modelos",
|
||
"Cálculo legal IRPS/INSS e ligação a dívida/pagamento/Contabilidade sem efeitos implícitos",
|
||
"Revisão visual, carga sustentada, armazenamento e capacidade de implantação"
|
||
]
|
||
}
|
||
],
|
||
"release_gates": [
|
||
{
|
||
"id": "single_installation",
|
||
"criterion": "Os seis módulos operam no mesmo endereço e empresa/unidade, sem mudar de demonstração",
|
||
"passed": false
|
||
},
|
||
{
|
||
"id": "functional_modules",
|
||
"criterion": "Cada funcionalidade obrigatória tem ecrã/comando/consulta executável; menus e fontes isoladas não bastam",
|
||
"passed": false
|
||
},
|
||
{
|
||
"id": "cross_module_flows",
|
||
"criterion": "Os documentos atravessam as fronteiras mantendo origem, versão, autoridade e efeito único",
|
||
"passed": false
|
||
},
|
||
{
|
||
"id": "access_isolation",
|
||
"criterion": "Perfis explícitos e recusas de empresa/unidade/módulo/permissão verificadas",
|
||
"passed": false
|
||
},
|
||
{
|
||
"id": "presentation",
|
||
"criterion": "Percurso de apresentação coerente, dados fictícios identificados, linguagem e navegação revistas",
|
||
"passed": false
|
||
},
|
||
{
|
||
"id": "operations",
|
||
"criterion": "Arranque e recuperação da instalação entregues e ensaiados, sem depender do SGC",
|
||
"passed": false
|
||
},
|
||
{
|
||
"id": "commercial_honesty",
|
||
"criterion": "Documentos de teste não são emissão fiscal; capacidade de implantação exige prova própria",
|
||
"passed": false
|
||
},
|
||
{
|
||
"id": "preservation",
|
||
"criterion": "Seis registos, cache, dados aprovados e trabalho alheio preservados",
|
||
"passed": false
|
||
}
|
||
],
|
||
"client_presentable": false,
|
||
"limits": [
|
||
"Host-table footprint is a minimum projection, not a full migration/dependency validation.",
|
||
"Native purchasing/stock tables live in their existing separate native book; this scan does not call that missing.",
|
||
"Source/evidence presence does not mean a feature is integrated, visually accepted or deployment-ready."
|
||
],
|
||
"database_writes": 0,
|
||
"application_bootstraps": 0,
|
||
"cache_cleared": false,
|
||
"new_demo": false,
|
||
"new_rights": false
|
||
}
|