commit melhorias sgf

This commit is contained in:
2026-11-11 09:00:17 +02:00
parent 0b05a1192c
commit 1d11a5e57b
736 changed files with 40746 additions and 210 deletions
@@ -0,0 +1,104 @@
{
"date": "2026-11-10",
"passed": true,
"scope": "integration preparation, no installation or activation",
"preparation": {
"id": "d09aac9d09da98e61df5",
"manifest_sha256": "e7dbcff1261b239ea07f570a075e492404a9309fcfbd29287c895bcd20bc06a7",
"endpoint_files": 8,
"client_files": 3,
"configurations_disabled": true,
"source_package_installed": false,
"target_package_installed": false,
"mappings_assigned": false,
"credentials_created": false
},
"unit": {
"command": "php vendor/phpunit/phpunit/phpunit tests/Unit/SgcInvoiceClientTest.php --no-progress",
"tests": 16,
"assertions": 46,
"passed": true,
"database_connections": 0,
"network_requests": 0,
"evidence": "Observed successful command output; fake transport, no native SGC workflow boot"
},
"kernel": {
"result_sha256": "f1e0c8d3311db387593b75720818ba5b6a57f7f0acd6146eb0fc6b72cf09bb12",
"checks": [
"prepared client recovers real existing native receipt through kernel",
"client performs exact context read and explicit preview/recovery only",
"native protocol retains one original UUID",
"prepared client consumes real native impact without confirming",
"client contract proof adds no invoice or audit rows",
"serialised transport states exclude bearer credential"
],
"new_business_rows": 0,
"existing_regression_book": "da77bb730751",
"tcp_8085": false
},
"sources": [
{
"file": "packages/sgc-invoice-client/src/InvoiceClient.php",
"sha256": "64572c1630f4ed05086241ed519abf02b6e16b508af5b71f2f099df1ed5a72d8"
},
{
"file": "tests/Unit/SgcInvoiceClientTest.php",
"sha256": "a52660eda916daa6baf75394c6da16847ee8126fe845e572b15fb73de8cd5652"
},
{
"file": "scripts/prepare-sgc-8085.mjs",
"sha256": "b0078b804210f042c2cdd55eb9bfcd2677bf4ad29f48a173b5783618dbe4b051"
},
{
"file": "scripts/sgc-invoice-client-kernel-proof.php",
"sha256": "f1527a69e786751a3cd7111cc8fd638460b50cb16b8904ef69f88181b83da5c1"
}
],
"sgc_sources": [
{
"file": "C:/laragon/www/compras/app/Services/SgfInvoiceGateway.php",
"sha256": "8fb4eb64f63562ca83be96584beb42de70b4f47a951900c92d14a8ab7e7b8039"
},
{
"file": "C:/laragon/www/compras/config/sgf_invoice.php",
"sha256": "e82fea9fae8ab6fe0fb30daf21b88fd31881a20b3ecbdec28f88edc1615e8fdd"
}
],
"reused_proofs": [
{
"file": "docs/proofs/sgc-invoice-endpoint-20261110.json",
"sha256": "5dcdb843b18c1d33e9b1bc8351d7d0addeb780a63ae9fb374821bd414faa7c75",
"checks": 78,
"repeated": false
},
{
"file": "docs/proofs/purchasing-completion-final-20261104-r2.json",
"sha256": "3b63f8653e8dbb089dfdd8f389e271c022a070d5a67a9f9d4585ce84438070cc",
"checks": 63,
"repeated": false
}
],
"preservation": {
"protected_8085_code_and_state_unchanged": true,
"protected_8085_database_writes": 0,
"sgc_pilot_database_connections": 0,
"six_records_changed": false,
"cache_cleared": false,
"new_demo": false,
"new_database": false,
"new_server": false,
"new_role": false,
"new_real_rights": false,
"activation": false,
"publication": false,
"checkpoint": false
},
"pending": [
"Durable unregistered source-draft/intent/approval/receipt workflow and UI in SGC before use; no existing SGC Invoice forwarding",
"Explicit approved source/target/order/line mappings",
"Approved named QA principal and private credentials/context versions",
"Disabled-code installation followed by separately approved end-to-end network trial in the same8085",
"Real use/deployment is not established by these preparation checks"
],
"report": "docs/SGC_8085_INTEGRATION_PREPARATION.md"
}
@@ -0,0 +1,237 @@
{
"date": "2026-11-10",
"passed": true,
"checks": 78,
"tests": {
"result.json": {
"sha256": "ba882fdd91b731f128f77810e737960ca60962864c5bcc8a903858fd580163e3",
"checks": [
"existing regression native order readable with mapped identity",
"actual invoice preview via API transport",
"preview has no budget consumption or payable",
"preview rolls all business rows back",
"successful response is not cached",
"disabled endpoint refuses even valid credentials",
"missing or wrong principal/token refused",
"missing or wrong principal/token refused",
"missing or wrong principal/token refused",
"stale context version refused",
"non-TLS remote request refused",
"non JSON refused",
"oversized body refused",
"malformed JSON refused",
"client cannot choose tenant",
"supplier cannot be silently associated",
"floating point amounts refused",
"inconsistent total refused by original writer",
"foreign native line refused",
"foreign native order refused",
"malformed idempotency key refused",
"revoked authentication version refused",
"unauthorised unit mapping refused",
"revoked prepare right refused",
"confirmation creates pending invoice only",
"lost response recovered by same confirmation",
"same request recovered through preview after commit",
"same key different content conflicts",
"confirmation must use the preview key",
"tampered preview refused",
"replay revalidates current authority",
"second individually prepared document confirmed",
"changed source invalidates earlier preview",
"failure between writer and receipt rolls invoice back",
"same operation recovers after failure",
"concurrent same-key confirmations return one create and one recovery",
"concurrent receipts identify one invoice",
"no new consumption stock obligation payment or ledger effects",
"previous accepted invoice rows preserved",
"host rows permissions budget and sequences unchanged",
"8085 host/native all rows and sequences unchanged",
"context cleaned after request"
]
},
"security-result.json": {
"sha256": "60b3e603926d1896ef0a37366e57f05b54f21eb68b61c14865839b09b0016ef4",
"checks": [
"existing confirmed invoice recovered without new business write",
"foreign tenant_id principal rejected",
"foreign company_id principal rejected",
"disabled principal rejected even for replay",
"rotated credential invalidates old bearer",
"old context header rejected after rotation",
"old preview rejected with new context header",
"disabled purchasing module refuses API replay",
"same key cannot be moved to another authorised order",
"UUID case does not create a second operation",
"query cannot inject another context",
"nested unknown authority field rejected",
"transport cannot approve or consume invoice",
"legacy payment route remains unmounted",
"durable receipt recovered after preview lifetime with current authority",
"expired unapplied preview cannot write",
"lock timeout returns recoverable503 without duplicate",
"after lock release same operation recovers correct invoice",
"security and lock continuation added no invoices or audit commands",
"source configuration remains disabled with no principals"
]
},
"context-result.json": {
"sha256": "a8260e789c2020fcca9c9bd159e6f73c221fd9dc320fd81ccf2c4b65e377ab57",
"checks": [
"authenticated exact order exposes current revision and lines",
"context response is uncached and excludes unrelated invoice list",
"context read requires bearer",
"context read refuses foreign tenant order",
"context read rejects query authority",
"context read rejects a request body",
"context read revalidates view grant",
"context route also remains disabled",
"POST durable replay unchanged after adding read-only context route",
"context checks add no business effects"
]
},
"authority-result.json": {
"sha256": "789964b5f41a4bc143caad7d69e445890125f0ceb0db49c17092fbd68495b124",
"checks": [
"current native operator lock permits authorised recovery",
"revoked native finance function prevents receipt recovery",
"native finance fixture restored by transaction rollback",
"maintenance-only native operator cannot recover invoice receipt",
"normal recovery resumes without another business command",
"operator guard checks add no invoice or audit commands"
]
}
},
"transport": "Laravel HTTP kernel, actual PostgreSQL and independent PHP workers; no TCP server",
"routes": [
"POST /api/v1/integration/sgc/invoices",
"GET /api/v1/integration/sgc/invoices/orders/{order}"
],
"result": {
"new_pending_invoices": 4,
"concurrent_statuses": [
200,
201
],
"lock_statuses": [
503,
200
],
"invoice_audit_atomicity_proved": true,
"workflow": "original pending invoice writer",
"auto_financial_validation": false
},
"isolation": {
"existing_regression_book": "da77bb730751",
"source_fixture": "SQL fixture only; not executed request/award/receipt/stock workflows",
"protected_8085_hashes": [
"6168b382599448d71b39691ba4c347db0c8ab8a8d8dc7388283b212239ac9290",
"58e032c3a30234433adf66cc75478bd729ba0f62592637cf737e2ee23e01773b"
],
"protected_8085_code_unchanged": true,
"prior_receipts_and_movements_sha256": "8fc992e83559200f691b253fd72e22986a972eb58f77b50bdf32d4d18d5f5dd4",
"prior_consumed_minor": 10000,
"external_payments": 0,
"six_protected_records_changed": false,
"cache_cleared": false,
"new_database": false,
"new_role": false,
"new_server": false,
"new_demo": false,
"new_real_grants": false
},
"disabled_configuration": {
"enabled": false,
"principals": []
},
"publication": false,
"checkpoint": false,
"business_authority_unchanged": [
{
"file": "app/Modules/Purchasing/InvoiceController.php",
"sha256": "85eb46ca7e65c60bed190e592a134eb48db5762c0a90b8cd4c9d6fbd81198ba4"
},
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"sha256": "9b426476b2805094fb317cc753385ef43882fb4964883e880eac287eed89d9e0"
},
{
"file": "packages/payables/src/Payables.php",
"sha256": "ed853f3eb48ebcf91f51a8fe9ed8e49b0e1bc30cce4852cc9394d51cff28c74d"
}
],
"sources": [
{
"file": "bootstrap/app.php",
"sha256": "42aacf13b19658e80b93c8b2f640133a349e9302f295b5e4c57702e352013382"
},
{
"file": "routes/sgc.php",
"sha256": "1ca49298535c1edfe1afd494b56274ee1b25842079f4da7557755db471c73348"
},
{
"file": "config/sgc_invoice.php",
"sha256": "bd5615a9eadd5d98e831db10ce60713d792f9b324282fdd87d52367ad2bf62a4"
},
{
"file": "app/Shared/Context/ModuleNavigation.php",
"sha256": "88a86523568643b4f285647ab341c435819715e9b7eb963bf8a44b3a4167f6dc"
},
{
"file": "app/Http/Middleware/AuthenticateSgcInvoice.php",
"sha256": "f99e2e26a8b09c31e1b84618a10ec6e7016a9b02a7f9049b64c5a157cc1d9888"
},
{
"file": "app/Http/Requests/Sgc/StoreInvoiceRequest.php",
"sha256": "e2a859fe54c412cba9cd70353c98582774034996c382e1da4916abef46497d47"
},
{
"file": "app/Http/Controllers/Api/V1/SgcInvoiceIngressController.php",
"sha256": "d590601efa6c46d9a34f77c655767758c88326e4d64f0da1b66f3174216ad782"
},
{
"file": "app/Modules/Purchasing/SgcInvoiceIngress.php",
"sha256": "4acde7b84193b509f09d0cac5c7993b298384651443c0ce58ee9effcefc4d6bf"
},
{
"file": "scripts/sgc-invoice-proof-bootstrap.php",
"sha256": "0988f2e9f6c2b59e057de893fafe8996070e313354d82056ad4494223f0efea7"
},
{
"file": "scripts/sgc-invoice-proof.php",
"sha256": "725f985e8429a7456b87d44066e8339b3204255f07dc83bde2806b75158bcf85"
},
{
"file": "scripts/sgc-invoice-security-proof.php",
"sha256": "71095d6c20fbbe0e5874741a915de6c45c37cae4149c38c027559c090f91b146"
},
{
"file": "scripts/sgc-invoice-context-proof.php",
"sha256": "44d290770f6e3bd2127b0be96c2e663aef9b67d0d68a4e29d994a76c5f1247ec"
},
{
"file": "scripts/sgc-invoice-authority-proof.php",
"sha256": "d5b41a4594b79e0b61a40654d831a00e2e4dc9542df94672ac755aa2565b2087"
},
{
"file": "scripts/sgc-invoice-check.mjs",
"sha256": "7ecc6bc75d228285e3a5917b9d8db78d36ac7b3cbdaa3c9d1a42e305cf080119"
},
{
"file": "scripts/summarize-sgc-invoice.php",
"sha256": "52f3aa34fce4d7463aa614280500ad4ef4453d43f93d78a86567a0ae2ed4a91a"
},
{
"file": "tests/payloads/invoice_test.json",
"sha256": "1a584f2540f48be5b0e57df67796aff07fb77511f3d347a606a02a95b43a34a6"
}
],
"report": "docs/SGC_INVOICE_ENDPOINT.md",
"limitations": [
"QA adapter only; no real activation/deployment.",
"Kernel requests are not network/TLS/visual or sustained-load tests.",
"Initial72 checks reused; last6 exercise the strengthened native-operator recovery guard without repeating writes.",
"Synthetic bearer tokens, encrypted previews and private logs are excluded from this proof.",
"Source preparation adds SQL fixtures to the existing regression book; previous proofs and rows are preserved."
]
}
@@ -0,0 +1,225 @@
{
"date": "2026-11-10",
"passed": true,
"scope": "SGC durable invoice source workspace for SGF intake; no operational activation",
"sqlite": {
"unique_cases": 19,
"assertions": 138,
"cases": {
"test_full_durable_cycle_and_audited_decision": 15,
"test_lost_response_reuses_same_key_cut_and_durable_intent": 7,
"test_failure_after_remote_commit_keeps_durable_sending_for_recovery": 7,
"test_revision_preserves_before_after_and_invalidates_preview": 8,
"test_no_edit_after_any_confirmation_started": 3,
"test_local_registration_is_blocked_even_when_feature_is_disabled": 3,
"test_existing_local_invoice_cannot_be_sent": 3,
"test_duplicate_source_cannot_get_second_intent": 3,
"test_stale_version_and_wrong_approval_do_not_send": 5,
"test_operator_context_and_mapping_changes_require_new_conference": 5,
"test_http_screen_csrf_and_audited_history_are_private": 16,
"test_foreign_tenant_and_warehouse_actor_cannot_read_or_write": 6,
"test_pagination_history_and_output_escaping": 10,
"test_events_and_drafts_cannot_be_deleted_or_rewritten": 5,
"test_disabled_transport_keeps_draft_and_disabled_workspace_refuses": 6,
"test_changed_remote_context_refuses_decision_before_recording_it": 8,
"test_revoked_operator_cannot_confirm_and_live_lease_prevents_duplicate_send": 5,
"test_actual_screen_forms_complete_registration_and_keep_exact_sgf_handoff": 18,
"test_missing_schema_is_refused_without_activating_or_migrating": 5
},
"junit": [
{
"private_file": "source-sqlite-junit.xml",
"sha256": "ac2adb90fda1ad7837033a58ea441b038f86c9eaff0f7c2b4c1645a999a77f0d"
},
{
"private_file": "source-screen-junit.xml",
"sha256": "3a31a747dab297e58c67e4c9f964eb3286f0e9ee5f1907fd6332064d9c73e6b8"
},
{
"private_file": "source-readiness-junit.xml",
"sha256": "34115e3e5d18a6c526705ad17db38d9ee92a9ff5a85711303b9d0e50757eebad"
}
],
"database": ":memory:",
"migration_scope": "only minimal synthetic fixtures and the new migration"
},
"postgresql": {
"checks": [
"two source persistence tables installed only in existing regression book",
"actual SGC service persists real SGF kernel preview",
"remote commit with lost response is durably uncertain at source",
"source recovers one actual pending invoice from receiver",
"first end-to-end intent creates exactly one receiver invoice",
"native SGC writer refuses claimed invoice before any local duplicate",
"concurrent source decisions yield one send and stale/in-flight refusal",
"second end-to-end intent creates only one receiver invoice",
"source has one durable decision and receipt for concurrent intent",
"PostgreSQL refuses rewriting source event history",
"all original source business rows and sequences preserved",
"receiver budget stock and payments unchanged by pending-document intake",
"8085 all host/native rows and sequences unchanged",
"exactly two individually audited decisions for two sources"
],
"result_sha256": "17c702478dd6bb3cf81367a370a39f36f1b290ace02902f5a2b72b7680bf638a",
"source_book": "b4093c6f6707",
"receiver_book": "da77bb730751",
"new_receiver_pending_invoices": 2,
"source_concurrent_statuses": [
200,
409
],
"remote_commit_response_loss_recovered": true,
"new_schema_only_in_regression": true,
"original_source_rows_and_sequences_preserved": true
},
"ui": {
"route": "/facturas/envio-sgf",
"blade_http_forms_tested": true,
"history_and_list_page_size": 25,
"typescript_no_emit_exit": 0,
"private_tsx_sha256": "f8b1869842dc10832fc9d9a90678a4e620c98dd6a97b40bb0dea7b6021508e23",
"typescript_diagnostics_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"rendered_inline_scripts_syntax_checked": 3,
"visual_browser_review": false,
"full_product_build": false
},
"preparation": {
"id": "4a6df60a8e9f8ae95c1d",
"manifest_sha256": "bb09254e16a7598fb797af1bbb69d7e4b2992e5580a248747c30c7a44ffecf04",
"endpoint_files": 8,
"client_source_files": 15,
"installed": false,
"activated": false,
"sql_privileges_approved": false
},
"preservation": {
"8085_all_host_native_rows_and_sequences_sha256": [
"6168b382599448d71b39691ba4c347db0c8ab8a8d8dc7388283b212239ac9290",
"58e032c3a30234433adf66cc75478bd729ba0f62592637cf737e2ee23e01773b"
],
"8085_code_unchanged": true,
"six_records_changed": false,
"cache_cleared": false,
"pilot_schema_changed": false,
"new_operational_credentials": false,
"new_business_rights": false,
"new_database": false,
"new_role": false,
"new_demo": false,
"new_http_server": false,
"publication": false,
"checkpoint": false
},
"sources": [
{
"file": "C:\\laragon\\www\\sgf-tempo/packages/sgc-invoice-client/src/InvoiceClient.php",
"sha256": "64572c1630f4ed05086241ed519abf02b6e16b508af5b71f2f099df1ed5a72d8"
},
{
"file": "C:/laragon/www/compras/app/Services/SgfInvoiceGateway.php",
"sha256": "8fb4eb64f63562ca83be96584beb42de70b4f47a951900c92d14a8ab7e7b8039"
},
{
"file": "C:/laragon/www/compras/config/sgf_invoice.php",
"sha256": "8f90cd662cea2537b578a514a5c14a951db750360799fb12c50a65c7ef444d1d"
},
{
"file": "C:/laragon/www/compras/app/Services/SgfInvoiceDispatches.php",
"sha256": "206fc70f4f99689cace59b3f17ca35e78683ed29bfe0f3cecd59adb6c611cf7d"
},
{
"file": "C:/laragon/www/compras/app/Http/Controllers/SgfInvoiceDispatchController.php",
"sha256": "224bbebe0df3cd82fbab55a02408534704c170d54b536ffc0e3cd8f9ccd99942"
},
{
"file": "C:/laragon/www/compras/database/migrations/2026_11_10_000001_create_sgf_invoice_dispatches.php",
"sha256": "91702237b3fde1026dd63b6a26dd571fa0e331235fc216dd927d340c5ecb1888"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/layout.blade.php",
"sha256": "f4da950b56cff30c57961485f83876ea4fdafa389360a3294d0f35bf025c9cec"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/document-form.blade.php",
"sha256": "8333219385743cc1826ef7ba29ee68380c08fd44e96c612f4021606d95df4360"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/index.blade.php",
"sha256": "19ce2d589f208e585f906fa3633d6881286c64a3477d997e03269c41c066ac05"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/evidence.blade.php",
"sha256": "e65a8830126061626532dc47f3536d726fd1388cca373dfc3dea5295575fa166"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/show.blade.php",
"sha256": "a5f5b4859872f18875dfbc08bbc63d9df3cf675d0d89ece7224fdb868a52b6cb"
},
{
"file": "C:/laragon/www/compras/app/Services/InvoiceWorkflow.php",
"sha256": "4f056f195fb7a091ec4e80dead714241514e34c7998695607c6803959fd0561c"
},
{
"file": "C:/laragon/www/compras/app/Http/Controllers/InvoiceController.php",
"sha256": "37d9e1037dca3bd142bbbae30f40aaa6d68c5cf3f08b3b22a6a2a3824e12cc7c"
},
{
"file": "C:/laragon/www/compras/routes/web.php",
"sha256": "d842702959639234e849bc78fb029af0d8018889f6632ee178997ba79b5bea56"
},
{
"file": "C:/laragon/www/compras/resources/js/pages/invoices/index.tsx",
"sha256": "fe9382794b440108be9d04a0a53cac1f95c58fe4abc5f673bd98d9525445e045"
},
{
"file": "scripts/sgc-dispatch-receiver.php",
"sha256": "8919a3cb43743aacca2b797a1dd49710de809432a563f24f8037d32a3f39b872"
},
{
"file": "scripts/sgc-dispatch-pg-bootstrap.php",
"sha256": "28265cad1a5b64875d03738c45d31a42d8aa7247c14a7e60511a68283cedc9ba"
},
{
"file": "scripts/sgc-dispatch-pg-proof.php",
"sha256": "24ae626cc7e001f087d5379540ac9874261588723b5aa209802c611e349ab5c1"
},
{
"file": "scripts/summarize-sgc-dispatch.php",
"sha256": "4a6b19761e5e073142b878a56997bc6a2ac21a062c5adfa2d6b25b7ac10a4c1d"
},
{
"file": "scripts/prepare-sgc-8085.mjs",
"sha256": "57e0136bc5e4dd26c84719a6972acf5a5a936e2cc9b9debcc4bb131309eadc3b"
},
{
"file": "C:/laragon/www/compras/tests/Integration/SgfInvoiceDispatchesTest.php",
"sha256": "0635ea1edac965da339159b9bd7c1cae9e8e304767a25ad590334205e1c186cd"
}
],
"reused_proofs": [
{
"file": "docs/proofs/sgc-invoice-endpoint-20261110.json",
"sha256": "5dcdb843b18c1d33e9b1bc8351d7d0addeb780a63ae9fb374821bd414faa7c75",
"repeated": false
},
{
"file": "docs/proofs/sgc-8085-integration-preparation-20261110.json",
"sha256": "c9db703f25731610ab58f19a87917eb5a112b507159bba587dfdc8e0e8e76216",
"repeated": false
},
{
"file": "docs/proofs/purchasing-completion-final-20261104-r2.json",
"sha256": "3b63f8653e8dbb089dfdd8f389e271c022a070d5a67a9f9d4585ce84438070cc",
"repeated": false
}
],
"report": "docs/SGC_INVOICE_WORKSPACE_DELIVERY.md",
"limits": [
"Two real application kernels in independent PHP processes, intercepted CLI bridge; no TCP8085 or pilot activation.",
"The initial receiver harness inherited SGC cache metadata; isolated environment corrected and same draft/key resumed without replaying an accepted confirmation.",
"19 unique selected cases, not20 executions or a sum with old endpoint/client suites.",
"Final schema-readiness guard covered by a directed SQLite check; successful integrated business commits were not repeated.",
"No full product bundle build, visual review, sustained load, disaster recovery or deployment capacity claim.",
"Exact source migration/SQL privileges, code installation, approved mappings/principal/secret and activation still require their authorised rollout."
]
}
@@ -0,0 +1,234 @@
{
"date": "2026-11-10",
"passed": true,
"scope": "SGC durable invoice source workspace for SGF intake; no operational activation",
"sqlite": {
"unique_cases": 20,
"assertions": 142,
"cases": {
"test_full_durable_cycle_and_audited_decision": 15,
"test_lost_response_reuses_same_key_cut_and_durable_intent": 7,
"test_failure_after_remote_commit_keeps_durable_sending_for_recovery": 7,
"test_revision_preserves_before_after_and_invalidates_preview": 8,
"test_no_edit_after_any_confirmation_started": 3,
"test_local_registration_is_blocked_even_when_feature_is_disabled": 3,
"test_existing_local_invoice_cannot_be_sent": 3,
"test_duplicate_source_cannot_get_second_intent": 3,
"test_stale_version_and_wrong_approval_do_not_send": 5,
"test_operator_context_and_mapping_changes_require_new_conference": 5,
"test_http_screen_csrf_and_audited_history_are_private": 16,
"test_foreign_tenant_and_warehouse_actor_cannot_read_or_write": 6,
"test_pagination_history_and_output_escaping": 10,
"test_events_and_drafts_cannot_be_deleted_or_rewritten": 5,
"test_disabled_transport_keeps_draft_and_disabled_workspace_refuses": 6,
"test_changed_remote_context_refuses_decision_before_recording_it": 8,
"test_revoked_operator_cannot_confirm_and_live_lease_prevents_duplicate_send": 5,
"test_actual_screen_forms_complete_registration_and_keep_exact_sgf_handoff": 18,
"test_missing_schema_is_refused_without_activating_or_migrating": 5,
"test_audit_freezes_preview_actor_and_context_fingerprint": 4
},
"junit": [
{
"private_file": "source-sqlite-junit.xml",
"sha256": "ac2adb90fda1ad7837033a58ea441b038f86c9eaff0f7c2b4c1645a999a77f0d"
},
{
"private_file": "source-screen-junit.xml",
"sha256": "3a31a747dab297e58c67e4c9f964eb3286f0e9ee5f1907fd6332064d9c73e6b8"
},
{
"private_file": "source-readiness-junit.xml",
"sha256": "34115e3e5d18a6c526705ad17db38d9ee92a9ff5a85711303b9d0e50757eebad"
},
{
"private_file": "source-context-audit-junit.xml",
"sha256": "3b5e352a1cb43e576e714e5753862b961cd3ceb3659fbb63b6df48c04e5dc81f"
}
],
"database": ":memory:",
"migration_scope": "only minimal synthetic fixtures and the new migration"
},
"postgresql": {
"checks": [
"two source persistence tables installed only in existing regression book",
"actual SGC service persists real SGF kernel preview",
"remote commit with lost response is durably uncertain at source",
"source recovers one actual pending invoice from receiver",
"first end-to-end intent creates exactly one receiver invoice",
"native SGC writer refuses claimed invoice before any local duplicate",
"concurrent source decisions yield one send and stale/in-flight refusal",
"second end-to-end intent creates only one receiver invoice",
"source has one durable decision and receipt for concurrent intent",
"PostgreSQL refuses rewriting source event history",
"all original source business rows and sequences preserved",
"receiver budget stock and payments unchanged by pending-document intake",
"8085 all host/native rows and sequences unchanged",
"exactly two individually audited decisions for two sources"
],
"result_sha256": "17c702478dd6bb3cf81367a370a39f36f1b290ace02902f5a2b72b7680bf638a",
"source_book": "b4093c6f6707",
"receiver_book": "da77bb730751",
"new_receiver_pending_invoices": 2,
"source_concurrent_statuses": [
200,
409
],
"remote_commit_response_loss_recovered": true,
"new_schema_only_in_regression": true,
"original_source_rows_and_sequences_preserved": true
},
"ui": {
"route": "/facturas/envio-sgf",
"blade_http_forms_tested": true,
"history_and_list_page_size": 25,
"typescript_no_emit_exit": 0,
"private_tsx_sha256": "f8b1869842dc10832fc9d9a90678a4e620c98dd6a97b40bb0dea7b6021508e23",
"typescript_diagnostics_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"rendered_inline_scripts_syntax_checked": 3,
"visual_browser_review": false,
"full_product_build": false
},
"preparation": {
"id": "3bb99e866f52965dbb7d",
"manifest_sha256": "b4abf43bcaa78a674b2b79b17143d8711eae63eba231330feae962c66cd004fe",
"endpoint_files": 8,
"client_source_files": 15,
"installed": false,
"activated": false,
"sql_privileges_approved": false
},
"preservation": {
"8085_all_host_native_rows_and_sequences_sha256": [
"6168b382599448d71b39691ba4c347db0c8ab8a8d8dc7388283b212239ac9290",
"58e032c3a30234433adf66cc75478bd729ba0f62592637cf737e2ee23e01773b"
],
"8085_code_unchanged": true,
"six_records_changed": false,
"cache_cleared": false,
"pilot_schema_changed": false,
"new_operational_credentials": false,
"new_business_rights": false,
"new_database": false,
"new_role": false,
"new_demo": false,
"new_http_server": false,
"publication": false,
"checkpoint": false
},
"sources": [
{
"file": "C:\\laragon\\www\\sgf-tempo/packages/sgc-invoice-client/src/InvoiceClient.php",
"sha256": "64572c1630f4ed05086241ed519abf02b6e16b508af5b71f2f099df1ed5a72d8"
},
{
"file": "C:/laragon/www/compras/app/Services/SgfInvoiceGateway.php",
"sha256": "8fb4eb64f63562ca83be96584beb42de70b4f47a951900c92d14a8ab7e7b8039"
},
{
"file": "C:/laragon/www/compras/config/sgf_invoice.php",
"sha256": "8f90cd662cea2537b578a514a5c14a951db750360799fb12c50a65c7ef444d1d"
},
{
"file": "C:/laragon/www/compras/app/Services/SgfInvoiceDispatches.php",
"sha256": "643c77976f9a71e0e61402dcb246eb762a26bf1f8013f17528c1fb0e8d669186"
},
{
"file": "C:/laragon/www/compras/app/Http/Controllers/SgfInvoiceDispatchController.php",
"sha256": "224bbebe0df3cd82fbab55a02408534704c170d54b536ffc0e3cd8f9ccd99942"
},
{
"file": "C:/laragon/www/compras/database/migrations/2026_11_10_000001_create_sgf_invoice_dispatches.php",
"sha256": "91702237b3fde1026dd63b6a26dd571fa0e331235fc216dd927d340c5ecb1888"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/layout.blade.php",
"sha256": "f4da950b56cff30c57961485f83876ea4fdafa389360a3294d0f35bf025c9cec"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/document-form.blade.php",
"sha256": "8333219385743cc1826ef7ba29ee68380c08fd44e96c612f4021606d95df4360"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/index.blade.php",
"sha256": "19ce2d589f208e585f906fa3633d6881286c64a3477d997e03269c41c066ac05"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/evidence.blade.php",
"sha256": "e65a8830126061626532dc47f3536d726fd1388cca373dfc3dea5295575fa166"
},
{
"file": "C:/laragon/www/compras/resources/views/sgf-invoices/show.blade.php",
"sha256": "a5f5b4859872f18875dfbc08bbc63d9df3cf675d0d89ece7224fdb868a52b6cb"
},
{
"file": "C:/laragon/www/compras/app/Services/InvoiceWorkflow.php",
"sha256": "4f056f195fb7a091ec4e80dead714241514e34c7998695607c6803959fd0561c"
},
{
"file": "C:/laragon/www/compras/app/Http/Controllers/InvoiceController.php",
"sha256": "37d9e1037dca3bd142bbbae30f40aaa6d68c5cf3f08b3b22a6a2a3824e12cc7c"
},
{
"file": "C:/laragon/www/compras/routes/web.php",
"sha256": "d842702959639234e849bc78fb029af0d8018889f6632ee178997ba79b5bea56"
},
{
"file": "C:/laragon/www/compras/resources/js/pages/invoices/index.tsx",
"sha256": "fe9382794b440108be9d04a0a53cac1f95c58fe4abc5f673bd98d9525445e045"
},
{
"file": "scripts/sgc-dispatch-receiver.php",
"sha256": "8919a3cb43743aacca2b797a1dd49710de809432a563f24f8037d32a3f39b872"
},
{
"file": "scripts/sgc-dispatch-pg-bootstrap.php",
"sha256": "28265cad1a5b64875d03738c45d31a42d8aa7247c14a7e60511a68283cedc9ba"
},
{
"file": "scripts/sgc-dispatch-pg-proof.php",
"sha256": "24ae626cc7e001f087d5379540ac9874261588723b5aa209802c611e349ab5c1"
},
{
"file": "scripts/summarize-sgc-dispatch.php",
"sha256": "a77dac8b28574f3ed5c9f9a372bc44d921081d6c9656fd322a385c40b2da061c"
},
{
"file": "scripts/prepare-sgc-8085.mjs",
"sha256": "57e0136bc5e4dd26c84719a6972acf5a5a936e2cc9b9debcc4bb131309eadc3b"
},
{
"file": "C:/laragon/www/compras/tests/Integration/SgfInvoiceDispatchesTest.php",
"sha256": "e78368849e4f4cf5bd3bcb9cd6dc52215cffecba3dd5aba76de2a7838b9cb9bd"
}
],
"reused_proofs": [
{
"file": "docs/proofs/sgc-invoice-endpoint-20261110.json",
"sha256": "5dcdb843b18c1d33e9b1bc8351d7d0addeb780a63ae9fb374821bd414faa7c75",
"repeated": false
},
{
"file": "docs/proofs/sgc-8085-integration-preparation-20261110.json",
"sha256": "c9db703f25731610ab58f19a87917eb5a112b507159bba587dfdc8e0e8e76216",
"repeated": false
},
{
"file": "docs/proofs/purchasing-completion-final-20261104-r2.json",
"sha256": "3b63f8653e8dbb089dfdd8f389e271c022a070d5a67a9f9d4585ce84438070cc",
"repeated": false
}
],
"report": "docs/SGC_INVOICE_WORKSPACE_DELIVERY.md",
"limits": [
"Two real application kernels in independent PHP processes, intercepted CLI bridge; no TCP8085 or pilot activation.",
"The initial receiver harness inherited SGC cache metadata; isolated environment corrected and same draft/key resumed without replaying an accepted confirmation.",
"20 unique selected cases; earlier19-case summary preserved, duplicate executions not added.",
"Final schema-readiness and frozen actor/context audit metadata covered by directed SQLite checks; integrated commits not repeated.",
"No full product bundle build, visual review, sustained load, disaster recovery or deployment capacity claim.",
"Exact source migration/SQL privileges, code installation, approved mappings/principal/secret and activation still require their authorised rollout."
],
"initial_proof_preserved": {
"file": "docs/proofs/sgc-invoice-workspace-20261110.json",
"sha256": "d1d8c20867604171dbd8f3926916c4df43c4571717c673d94d5aeaa66860c7dd"
}
}
+75
View File
@@ -0,0 +1,75 @@
{
"date": "2026-11-10",
"database": "sgf_tempo_dev",
"port": 55432,
"migrations": [
{
"file": "database/migrations/2026_11_09_000001_create_sgc_integration_tables.php",
"batch": 18
},
{
"file": "database/migrations/2026_11_09_000002_create_sgc_analytics_tables.php",
"batch": 19
}
],
"calendar": {
"start": "2026-01-01",
"end": "2035-12-31",
"rows": 3652,
"first_inserted": 3652,
"repeated_inserted": 0,
"official_holidays_validated": false
},
"unit_tests": {
"tests": 4,
"assertions": 17,
"passed": true,
"database_connections": 0
},
"preservation": {
"preexisting_tables": 86,
"all_rows_identical": true,
"snapshot_sha256": "700dbf44140801dd93b194cd8e8c74e7822a5aef1494036a2ccd8f851c64face",
"private_backup_sha256": "3592c2b865a9671f2df51622a4c9cd2f402e888b2b823278eac64be959ac64fe",
"data_cache_cleared": false,
"existing_six_records_changed": false,
"new_explicit_grants": false,
"new_demo": false
},
"cache_commands": [
"config:clear",
"route:clear"
],
"endpoint": {
"http_status": 404,
"diagnostic_empty_json": true,
"positive_invoice_test_completed": false,
"payload_file_present": false,
"routes_registered": false,
"activated": false
},
"sources": [
{
"file": "app/Console/Commands/PopulateDimTempo.php",
"sha256": "9d03d0cbbc6b4d60605061b3726f02159b409b42f26853ce1b73b374a27ec581"
},
{
"file": "app/Services/Sgc/CalendarDimension.php",
"sha256": "51884e37b7adac68e85d9aa5596414787b3c3090ca09a37cce845046d6880db9"
},
{
"file": "database/migrations/2026_11_09_000001_create_sgc_integration_tables.php",
"sha256": "228ceea51d000a5823b8952e7ff90a3a83c1cca266bf24e220ae80427679df05"
},
{
"file": "database/migrations/2026_11_09_000002_create_sgc_analytics_tables.php",
"sha256": "1ea905e3fd3db41d0fdbee85f4ec0db1170af9e01656460e90b00eeae0e1d25f"
},
{
"file": "tests/Unit/CalendarDimensionTest.php",
"sha256": "a78cf6ea3057f317b215aa47ba1372b76a69156f57753b81f419bc7af95548aa"
}
],
"report": "docs/SGC_PREPARATION_20261110.md",
"deployment_validated": false
}
@@ -0,0 +1,63 @@
{
"passed": true,
"date": "2026-11-10",
"installation": "cc50a276c10c",
"port": 8085,
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-205824-49693644\\accounting-report-boundaries.json",
"sha256": "1005f1566f316bc68243934d98881bae7ecd9f29b98b4cd5db57d3f1099512b1",
"checks": 5,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\accounting-reports-http-20261110.json",
"sha256": "4c319e135af06efec59a7c2ee91e9bef922c9612d8c4d7c7212267c945e4a851",
"checks": 19,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\accounting-reports-ui-20261110.json",
"sha256": "4638512a8951522b9da1315a6353b383b49218cb7b9a39c3dbb9d47a9e509ecd",
"checks": 14,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-205938-4a3c2c51\\accounting-reports-installation.json",
"sha256": "4a637461e01d6a6854f7c948552d45572179d66afb39d0925c36160a2ba570dc",
"checks": 0,
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Accounting/ComposedLedgerController.php",
"sha256": "b96749981b0d4daa7861eab62c5de60c96c5ffa9c72183f88bb89e2d4f7bdf2b"
},
{
"file": "resources/js/AccountingMenuWorkspace.jsx",
"sha256": "f07dbbf60dfc3c26e528b0845becc22f851e8b774e368c44f33285775e124ea2"
},
{
"file": "resources/js/ComposedAccountingWorkspace.jsx",
"sha256": "9288df122be42e436bb4aeffc3e84cc1687ba82ab4cab07754d27d507d0012ac"
},
{
"file": "resources/js/LedgerReportsWorkspace.jsx",
"sha256": "312157b80599e0f4407520ec968460af9c31913f79365ef6efa9a243c98ba419"
},
{
"file": "resources/js/ledger-report-view.js",
"sha256": "54a1eb09ab4b451b4aa34d8b0c1ebc3d8cea91da4f242ea25a0c4b3bb1db79b4"
},
{
"file": "resources/js/app.jsx",
"sha256": "93f6b46ecd17d3e80f31b63c3d6f9ac0c02e015876e9a4b114fabb6875310a23"
}
],
"business_commands": 0,
"new_grants": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false
}
@@ -0,0 +1,138 @@
{
"passed": true,
"installation": "cc50a276c10c",
"port": 8085,
"date": "2026-11-10",
"scope": "SGF-BANK-RECONCILIATION-QA-v1",
"checks": {
"regression": 37,
"boundaries": 11,
"http": 28,
"dom_http": 15,
"report_http": 3
},
"concurrency": {
"during_lock": 503,
"after_release": 409,
"duplicate_reviews": 0
},
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-192046-f2578deb\\bank-result.json",
"sha256": "fbb32ea79f056648fb3abec481fefb9ae6d9e6f04c65fbab376af65bda0d1a04",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\bank-concurrency\\result.json",
"sha256": "01ee8e63528ded2ae51bf93836cb236b772fca9bd52be2920bfa1ed290310747",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-192150-09f32ff0\\bank-boundaries.json",
"sha256": "2c056b940aa20025ef69231ee61f02a5967bfe3c4b0032884bd3c9dc01044b56",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\bank-http-20261110.json",
"sha256": "3c98024535d925ad32fec7c7cdba246367102f0b0d1e91249f50993ee77464b9",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\bank-dom-http-20261110.json",
"sha256": "63a0fd91ce123c8a2bf50963bc950d31f709281c2ecb2b267e74eaa58285278e",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\bank-report-http-20261110.json",
"sha256": "267b05f198d51c6bcbddff4b0e4fab72e99d3abc30974bc400b04e57de592e74",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-192840-498e9270\\bank-preservation.json",
"sha256": "d48fd73347c3499275269657a6c4cfef986eeb441f763a50e48225a60c03adcd",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-192015-f8b4be42\\bank-setup.json",
"sha256": "b7a90195403019cdc84c49cd0e61b5f3eb872ae0a92f5e2d58e8f260ac419e30",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-192538-3373509f\\bank-setup.json",
"sha256": "5c845e3f20ef77748addb3a2b09dcbd27a40413285143bb33f1e92836fe06418",
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Finance/BankReconciliation.php",
"sha256": "5421141bcc6e15bda142687661774238c7203c85d0ef30696fd4d56dd5b9e328"
},
{
"file": "app/Modules/Finance/BankLedgerSource.php",
"sha256": "f33779fa736aea7027d4cf449ba85c5982bfb565c75bbb2a477d7a2666820338"
},
{
"file": "app/Modules/Finance/Http/BankReconciliationController.php",
"sha256": "896d710db108364263a1404d2aafdc52eff4d3b6efcbe3dbdbcca1978befffe4"
},
{
"file": "database/sql/bank_reconciliation.sql",
"sha256": "3c05a20fd46b3292017a2ab475be3418344de5a03271c4bf53d832bd97a40535"
},
{
"file": "resources/views/finance/bank.blade.php",
"sha256": "6277db6224b71da394c8507c1d721fba6046a7d9ba9a5b564973018a7eac5fb3"
},
{
"file": "resources/data/bank-statement-qa.csv",
"sha256": "bd2b29a50f952c27c4df37ef1c2cca0cdc7f241fbfcf186c82aa49ce9834ffcb"
},
{
"file": "public/sgf-bank.mjs",
"sha256": "959214ad94bb5c29ffdaf1c8fd3e59bf8718837d4c1fe9bea52d3b04c261a80b"
},
{
"file": "app/Shared/Context/ModuleNavigation.php",
"sha256": "37f201571f8faf1819fa02876697604b32115754c488b71caef8e14c92275438"
},
{
"file": "app/Modules/Identity/Services/IdentityWorkflow.php",
"sha256": "25e0b9c00e604e9406e2c145f8e21e06a57820ff8faa73f735c7421f52569560"
},
{
"file": "resources/js/App.jsx",
"sha256": "ce55c8b035c256358e2d7b3f9018ff0dbf7a7bc4df2300e587a456793baf43af"
},
{
"file": "resources/js/WorkspaceNavigation.jsx",
"sha256": "4f118ed4ed9ea40931084ea41bf2fffb0454c0904aeac83bcb4c92dd0f2cebed"
},
{
"file": "routes/web.php",
"sha256": "bb0606a61a4d771a604a0fc9d93b24d6f93b59a55becc3eca1fcc4da35b6c573"
}
],
"source_distinction": {
"regression": "simulated provider injected only in CLI harness",
"8085_http": "actual two native QA ledger lines",
"production_reader_fallback": false
},
"statements_retained": 1,
"statement_rows_retained": 2,
"events_retained": 7,
"journals_preserved": 27,
"new_journals": 0,
"prior_iva_versions_preserved": 4,
"prior_rule_events_preserved": 4,
"prior_calculations_preserved": 2,
"grants_per_existing_qa_book": 8,
"new_demo": false,
"sgc_dependency": false,
"real_bank_operations": false,
"account_classification_changed": false,
"cache_cleared": false,
"visual_review": false,
"deployment_validated": false,
"acceptance": false
}
@@ -0,0 +1,41 @@
{
"contract_sha256": "2d809fe09bb83bb0da37d37b0528895fb050cef0376435e95bc45119dfa7d091",
"new_demo": false,
"business_commands": 0,
"cache_cleared": false,
"passed": true,
"proofs": [
{
"kind": "register_regression",
"sha256": "e4990e8cb95a91effeaa1a839ada0f8be73636d08af4559f705b9730de4a80a3",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-174502-e0b30bb6/billing-register-result.json"
},
{
"kind": "register_http",
"sha256": "89e8ac8e05c1af1c73e65a1f46628492edb898562d1d87afe72194472eaae1db",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/billing-register-http-20261110.json"
},
{
"kind": "cash_rights_readonly",
"sha256": "21dc9aaf95c2e93e14f02543cad94ef783cd118b78be4c487cf4beebe6a504f9",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-174122-55d06675/cash-rights-readonly.json"
}
],
"date": "2026-11-10",
"new_schema": 0,
"deployment_capacity_validated": false,
"cash_approval_pending": "docs/integration/sgf-cash-access-proposal.json",
"cash_implemented": false,
"new_rights": 0,
"browser_visual_review": false,
"source_hashes": {
"app/Modules/Services/BillingRegister.php": "115e7832b63e5c29be716140629845137d951da7790421832e1ab4058fb468cc",
"resources/js/BillingRegisterWorkspace.jsx": "9ab8d036c9e6d20c588427f5a8c44677810e9713722baea908b8f6b76c8b79f9",
"routes/web.php": "18898252f2ffe8e9be20076d57bc3e3514df7d31eebc10ee64a697d7ff7bc696",
"resources/js/BillingMenuWorkspace.jsx": "7265e433bc2bf4b15674fc3a44892dfb288b4c2a2fe1db761f4ebd3c988da65b",
"app/Modules/Services/ServiceDocuments.php": "816a85be48b05043f41f9c7d5f842a3fa139b21aaedf9c944d811f74be6f6208",
"app/Modules/Services/Http/ServiceDocumentsController.php": "f8fa96e837b586468ad6a63d83dd942bb59a474ffd1bf905942d7712cdaff2e7"
},
"published": false,
"installation": "cc50a276c10c"
}
+70
View File
@@ -0,0 +1,70 @@
{
"cash_closed_minor": 95000,
"public_grants": 0,
"installation": "cc50a276c10c",
"source_hashes": {
"app/Modules/Finance/CashWorkspace.php": "bb65060461cea3a844cf523733644cdd630f35ba02c82aeed961821ec5970800",
"packages/general-ledger/src/PayableJournal.php": "100feec93b22d0f1b33f659445e8ef1bea73a39b0c1fb5e4d93d70fce5d97b01",
"app/Modules/Accounting/ComposedLedger.php": "2e4dfa133831c78514e1010d373db905b892c315c455ba53b997edd514cac035",
"packages/general-ledger/src/LedgerSales.php": "e339bd430e9632ba0db590a34f87742d7e7fa65e030e336a5b8340a6ca9e6c18",
"app/Modules/Accounting/CashLedgerSource.php": "3a46162f0a62363dd4015f0047a5bff95e8aebd8dd3007fc705daaf58c10684b",
"app/Modules/Finance/Http/CashController.php": "982c161f3ef7314a9671f848f0da2aefb27841e40003ef47102d0d956c08cd78",
"public/sgf-cash.mjs": "24d8b9c20939dc9695aa18514ee9a94765ad486b0aab8fb4f567e7a3923d290f"
},
"cash_right_names": 4,
"cash_grants_per_qa_book": 8,
"cache_cleared": false,
"journal_total": 27,
"new_profiles": 0,
"source_facts": 38,
"deployment_capacity_validated": false,
"passed": true,
"proofs": [
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-175251-07723b42/cash-result.json",
"sha256": "4a491e7b992a1e0a1239f255a08e8760dc292a40f6ac5f7e322445c92cb7ea03",
"kind": "cash_regression"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/cash-concurrency/result.json",
"sha256": "18940a1a72dc1516ced3baf3225a24a24d555ed5517a36515b1bf2a01e47a07e",
"kind": "cash_concurrency"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-175845-a7f3eb7b/cash-read-boundaries.json",
"sha256": "68b45f74dab3d11d03d2b74713105cfcab2dc7f01c3007eea12838bce20747f1",
"kind": "cash_read_boundaries"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/cash-http-20261110.json",
"sha256": "412f1f0463e15cc3bb3a4f8d6ae9af9655ed309f033e646e435e44d99368d64f",
"kind": "cash_http"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/cash-dom-http-20261110.json",
"sha256": "c2008bdb29929e5a0a4db1fe8c51eda8886fbd7b248c54127d3665e23daa810d",
"kind": "cash_dom_http"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-180324-fe0a46fd/period-cash-result.json",
"sha256": "148761ae3b369f6eaea88ce1ca71ea94c933ce7dabaed9d421b920a3ab418376",
"kind": "cash_period"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-180329-e03178dc/cash-preservation.json",
"sha256": "427f59a867549b2badd8d76eb5c8d562223a7ab9ee97712515e14a4c5aa4c39c",
"kind": "cash_preservation"
}
],
"previous_journals_compared_unchanged": 25,
"published": false,
"cash_audit_events": 9,
"real_money": false,
"date": "2026-11-10",
"entry": "http://127.0.0.1:8085/finance/cash",
"new_demo": false,
"browser_visual_review": false,
"sgc_required": false,
"qa_period_open": true,
"pending_facts": 0
}
@@ -0,0 +1,380 @@
{
"date": "2026-11-10",
"contract_sha256": "147ae1653b028c0a09f296b9c87799de25ee9bad0fcf35a35840bfb6df6bd447",
"installation": "cc50a276c10c",
"port": 8085,
"sgc_dependency": false,
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceWorkflow.php",
"present": true,
"sha256": "6f5c8af14412427134f1c40bda9215de68b3a66d46ed2287b59895f68b929179"
},
{
"file": "app/Modules/Services/ServiceInvoicing.php",
"present": true,
"sha256": "b5ac9898f2089fad7799b9e62e5ce5db6df7fd64643e8e7e3b52c6a0e2d142a8"
},
{
"file": "resources/js/ServicesWorkspace.jsx",
"present": true,
"sha256": "c170b195ccd78aa74f283a91b0b4f4cd93aea4677e3aaefe0b50af46f7e31669"
},
{
"file": "resources/js/ServiceInvoiceWorkspace.jsx",
"present": true,
"sha256": "347869a371084ae91bd7d651334f67f16369495263f28b8b8348bc442f7d6534"
}
],
"existing_evidence": [
{
"file": "docs/proofs/invoice-test-results.json",
"present": true,
"sha256": "fd04a58727ffddf1c62ac184d7834b81228dce2abb5b0c1e397505df6a45237c",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Compor estruturas e guardas sintéticas na instalação única",
"Conservar o documento e identidade entre Comercial e Financeiro",
"Provar o percurso por interface na mesma empresa/unidade de apresentação"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "a8f3aac4b65ceea15ac7a8e8e34510d689b09fab8c2f689c466eb90d5e8632dc"
},
{
"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"
}
],
"existing_evidence": [
{
"file": "docs/proofs/purchasing-completion-final-20261104-r2.json",
"present": true,
"sha256": "3b63f8653e8dbb089dfdd8f389e271c022a070d5a67a9f9d4585ce84438070cc",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Reutilizar o percurso aceite sem o reexecutar por rotina",
"Ligar a continuação financeira e contabilística da mesma origem",
"Conservar a composição local sem serviço SGC obrigatório"
],
"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"
],
"sources": [
{
"file": "app/Modules/Inventory/StockReadController.php",
"present": true,
"sha256": "fd02da1a69f76bf1412f86f43095a0a476de49fbb7d2676a51fe3b29ec66e298"
},
{
"file": "app/Modules/Inventory/CompositionStockRead.php",
"present": true,
"sha256": "01c558457df290879bdf6c7f8de8cd9efccad81b940731f0aaf2489cf02bfcf7"
},
{
"file": "app/Modules/Inventory/StockPeriodReport.php",
"present": true,
"sha256": "d491541c6c60bc0c661dc442b8db8ce2e757f1d63dfc4982a3631f820cfb7a06"
},
{
"file": "app/Modules/Workshop/WorkshopStock.php",
"present": true,
"sha256": "6460a4235fe7b0b4602b0aeb63a47f1a97e367e93baba6aa774be5fa0dac4e6e"
},
{
"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"
}
],
"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
}
],
"missing_host_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Instalar a interface de saída/transferência já implementada após decisão sobre os dois direitos propostos e mapeamentos; flag continua desligada",
"Concluir trânsito/recepção e divergências onde o percurso ainda é só definido",
"Conservar reservas, unidades e ausência de saldo negativo",
"Concluir interfaces de contagens/ajustamentos/devoluções e selecção de equipamento, preservando workflows próprios"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Workshop/WorkshopStock.php",
"present": true,
"sha256": "6460a4235fe7b0b4602b0aeb63a47f1a97e367e93baba6aa774be5fa0dac4e6e"
},
{
"file": "resources/js/WorkshopWorkspace.jsx",
"present": true,
"sha256": "acc01d934dd11f783df82b40a6ece0905a67b0d26ff0bdfc3b18c11a027d66bb"
},
{
"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": "99ea0b2c0941db0a42ff1f3833225430a73efb6933b3f88a8be4481f902ac571"
}
],
"existing_evidence": [
{
"file": "docs/proofs/workshop-stock-closure-20261102.json",
"present": true,
"sha256": "261d5502f6905d53ef8046e0e900c9bee159c8c9d7e1bae4fddd8ec698313bf7",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Compor na mesma instalação sem perder as aprovações existentes",
"Completar o percurso oficina → stock → custo → Comercial/Contabilidade",
"Conservar a distinção entre apontamento e movimento físico"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceReceivables.php",
"present": true,
"sha256": "725bc8773a78cfd05dd0a729d885a97c0eef43854ca7ab4210b4d5e80d5d54ec"
},
{
"file": "app/Modules/Purchasing/SupplierPayables.php",
"present": true,
"sha256": "c17d44391cbd96941aa2dd2eac2cb167508faf6453c6a1e86333846df1ba18b9"
},
{
"file": "resources/js/ServiceReceivablesWorkspace.jsx",
"present": true,
"sha256": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
}
],
"existing_evidence": [
{
"file": "docs/proofs/supplier-settlements.json",
"present": true,
"sha256": "b1bce9218f99ea2d8c780022ad385e169c7acc5778ac6950236eef0630f77ad0",
"not_reexecuted": true
}
],
"missing_host_tables": [
"pa_obligations",
"pa_access",
"ps_payments"
],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Unificar as origens autorizadas sem copiar dívida ou saldos",
"Compor a tesouraria sintética e os relatórios na mesma empresa/unidade",
"Conservar vencimento desconhecido e histórico imutável"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Accounting/GeneralLedger.php",
"present": true,
"sha256": "a87d2ea373bc61bb139aa29f2a354b9813bbb2d6229a389f8d37fd8e9890edec"
},
{
"file": "app/Modules/Accounting/GeneralLedgerController.php",
"present": true,
"sha256": "8c83538a5df4625bb3a15c81e3bf618d12187eca77da5f6e73dd1b4b781c64ce"
},
{
"file": "packages/general-ledger/src/LedgerSchema.php",
"present": true,
"sha256": "1fb2490fe8d4d206d2f8157803307cdd4e2f733150d0fec4993a7e229fce58cb"
}
],
"existing_evidence": [
{
"file": "docs/proofs/purchasing-completion-matrix-final-20261104.json",
"present": true,
"sha256": "94cb37698f294c38df9b94a5535ba4b9ac63907f94dab1e7f951a3bb27623083",
"not_reexecuted": true
}
],
"missing_host_tables": [
"gl_accounts",
"gl_periods",
"gl_journals",
"gl_lines"
],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Compor diário e relatórios reais do núcleo na instalação única",
"Ligar Compras/Comercial/custos sem gerar lançamentos automáticos",
"Substituir os catálogos de relatórios por consultas disponíveis e verificadas"
]
}
],
"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
}
@@ -0,0 +1,128 @@
{
"passed": true,
"installation": "cc50a276c10c",
"port": 8085,
"date": "2026-11-10",
"scope": "SGF-FINANCIAL-INDICATORS-QA-v1",
"checks": {
"regression": 41,
"boundaries": 12,
"http": 29,
"dom_http": 16
},
"concurrency": {
"during_lock": 503,
"after_release": 409,
"duplicate_reviews": 0
},
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-193838-60b5bbb2\\analysis-result.json",
"sha256": "1de78fbd0cbed88a17606000c718ee2b9b283f3a128ed384cf8b7961c8230b41",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\analysis-concurrency\\result.json",
"sha256": "28726d58f71957875738a93739d17fd8271295161ad9d983229084c13f12f517",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-193954-bd861757\\analysis-boundaries.json",
"sha256": "7c7cb82a2d1d702cad3c4e3c381515eb5b06f6658adb928c7ad3fd3134a3d875",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\analysis-http-20261110.json",
"sha256": "ffe1600fd0d43987531041dd6a6b7abd3a71f652e5c10aa3115942661116891f",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\analysis-dom-http-20261110.json",
"sha256": "564917db91aff0327e46d3367643afe1551dbf432dffb4daa9c5c06493956bfb",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-194532-f7d97924\\analysis-preservation.json",
"sha256": "9a7c439832d0de3af45bac1ed6e53bc048fe2e50b7a0f242a18721b246cdb83a",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-193836-0b408b46\\analysis-setup.json",
"sha256": "5f758ddf82a21117f531bbf7bdba686e817eb1d588723c9bc03d64395445ecc2",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-194340-de1f0d4f\\analysis-setup.json",
"sha256": "fda2b837bdfc8d8026632afaed1476542747e6c07f53f8ce5e8505e6eae9762c",
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Finance/FinancialIndicators.php",
"sha256": "9785a801c5fb13b34770bdd05c828f5e924058eb872a7b33bc1db139a3024d10"
},
{
"file": "app/Modules/Finance/FinancialIndicatorSource.php",
"sha256": "72039264cbb25ae2eaa5eaa4af488aabf7061a4a298c09490b8957b4ade55731"
},
{
"file": "app/Modules/Finance/Http/FinancialIndicatorsController.php",
"sha256": "5245064e40b884e432afa2fd26d45fddccebf6963ef3366f585b93ee78f12cca"
},
{
"file": "database/sql/financial_indicators.sql",
"sha256": "733cd4aa90911b1e6f5de4562eb21720d5abcc829fd8d7ba91b18a1ddfd8cfbc"
},
{
"file": "resources/views/finance/indicators.blade.php",
"sha256": "32e02d53eb00a01eb463b26cd346a387f6edae5fe70e235276047e8d529beec5"
},
{
"file": "public/sgf-indicators.mjs",
"sha256": "62442edc14da534e0166cc65074389e74cc67246cd5922994628644fd900cbb9"
},
{
"file": "app/Shared/Context/ModuleNavigation.php",
"sha256": "3cfbb05e70405cf0e5086e952b0760d3fae2d068eea0802b27f8a8c8f0258753"
},
{
"file": "app/Modules/Identity/Services/IdentityWorkflow.php",
"sha256": "a5b4bb3a8ba910072121c539bdf547fe89a0b6024764237e0141d222b4032000"
},
{
"file": "resources/js/App.jsx",
"sha256": "2caac918a6e5c91608b2649a1ad8b1b3e7f47bf8c54e8eac0de7908fe2c20270"
},
{
"file": "resources/js/WorkspaceNavigation.jsx",
"sha256": "1e16e4f2b9e44aece2f77c3ea4bb20147d29aa99cea4cdd10c06fe6469773f0f"
},
{
"file": "routes/web.php",
"sha256": "d28dd8d20ea00401b1d86003dc0b05e24eb156bb0896064467ec177a6e938717"
}
],
"source_distinction": {
"regression": "simulated provider injected only in CLI harness",
"8085_http": "actual composed cash and ledger sources",
"production_reader_fallback": false
},
"criteria_events_retained": 4,
"results_retained": 2,
"journals_preserved": 27,
"new_journals": 0,
"prior_iva_versions_preserved": 4,
"prior_rule_events_preserved": 4,
"prior_calculations_preserved": 2,
"prior_bank_events_preserved": 7,
"grants_per_existing_qa_book": 7,
"new_demo": false,
"sgc_dependency": false,
"real_company_criteria": false,
"payment_recommendation": false,
"cache_cleared": false,
"visual_review": false,
"deployment_validated": false,
"acceptance": false
}
@@ -0,0 +1,81 @@
{
"passed": true,
"installation": "cc50a276c10c",
"date": "2026-11-10",
"port": 8085,
"checks": {
"regression": 17,
"http": 10,
"render": 7,
"context_lifecycle": 3,
"entry_http": 3
},
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-182835-4be44cc1\\fiscal-coverage-result.json",
"sha256": "2396a4ae9931e5c0cd4da6489966bed0db4145d22ba03abaa891321eaaa7631d",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\fiscal-coverage-http-20261110.json",
"sha256": "40133eee3d43307aaad3ebbf5ce455b9c214f099c81f51fe3f21db4c06587931",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\fiscal-coverage-ui-20261110.json",
"sha256": "03c9c888fd3d50ba16db3ffd32bd99cac8ab7eb75c8d695e4bd8e2ef74859953",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\fiscal-context-ui-20261110.json",
"sha256": "c3a6f368e68acbc213e73c0e4a94fe323187ce9fa3be0a274c2e5ae0525c86fb",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\fiscal-entry-http-20261110.json",
"sha256": "55962f9e6779447ce5f2ac7bc0af3187bb7a6a61e216edfff99a5c02f4cae383",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-183004-13ce4bbf\\fiscal-coverage-preservation.json",
"sha256": "ffdc500507689ebfb2a6f7ef1d12d54168bfe0be084ee3ec434c1587f1623af3",
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Services/FiscalCoverage.php",
"sha256": "239c23697dcfb306fddfb1bc9b92340cfcd5f5033916bdb11f611bf23bad0eac"
},
{
"file": "app/Modules/Services/ServiceFiscal.php",
"sha256": "754d30fbe2f3c2c0e576d445a96449f54f9be93f2ce10858bbd31a228569d942"
},
{
"file": "app/Shared/Installation/PresentationEntry.php",
"sha256": "8eac6134b50fb1c69f2a3c585d5669f005876b19fef1a69bd343b096f46d321f"
},
{
"file": "resources/js/FiscalCoverage.jsx",
"sha256": "31d2c451dc94a617796a692934833e0f0a25dba186fa5ac6bbb825f8c917f61b"
},
{
"file": "resources/js/ServiceFiscalWorkspace.jsx",
"sha256": "55dd0f6e8eee3a767f6c1c6df6cb22994d0fcb30ccd6af681afc140a84b67955"
},
{
"file": "resources/js/App.jsx",
"sha256": "9504145b4881066ac4e3e4054222c27b6f004466a4eed23052a991ba4674849c"
}
],
"journals_preserved": 27,
"new_rights": 0,
"new_schema": 0,
"new_demo": false,
"cache_cleared": false,
"visual_review": false,
"fiscal_engines_completed": false,
"legal_activation": false,
"deployment_validated": false,
"acceptance": false
}
@@ -0,0 +1,58 @@
{
"version": "SGF-FISCAL-OBLIGATIONS-QA-v1",
"passed": true,
"target": "existing8085",
"functional_contract_checks": 118,
"preservation_acl_checks": 61,
"new_right_names": 3,
"qa_grants_per_book": 7,
"total_qa_grants": 14,
"administrative_commands_8085": 4,
"new_financial_effects": 0,
"map_recreated_8085": false,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false,
"evidence": {
"regression": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-223845-a69d8003/fiscal-obligations-result.json",
"boundaries": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-224117-d4f04edc/fiscal-obligations-boundaries.json",
"ui": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/fiscal-obligations-ui-20261110.json",
"http": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/fiscal-obligations-http-20261110.json",
"entry": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/fiscal-obligations-entry-http-20261110.json",
"concurrency": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/fo-concurrency-1794343303801/result.json",
"source_preparation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-223835-5a7feadd/fiscal-obligations-source.json",
"regression_setup": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-223658-e86fe229/fiscal-obligations-setup.json",
"selected_setup": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-224409-7a20bedf/fiscal-obligations-setup.json",
"installation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-224431-d7f8536d/fiscal-obligations-installation.json",
"preservation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-224624-16075a70/fiscal-obligations-preservation.json"
},
"evidence_sha256": {
"regression": "ca964925cba373b62e77f776d21acecbdd7868f66e7b50e5770fa142cfece6a7",
"boundaries": "cbc0cb8ca3c6ac977c1bca23c430823bcdf4f84efcf273c2e6f41bb9fc071637",
"ui": "d46b52080dcf9bd6ad9cf18cbb0a5509c3177011bed690c97e0a0551bb4ec94d",
"http": "6d10dd721f27fa31a685ae34b200fd13ef6804c457963f531e3e93927735fc44",
"entry": "2c6ce36ef463958dd6deb9b433acf0fca7a422406af38d1405c0fe70cd67e837",
"concurrency": "8350033bf93aa03c8db9611dd5d6352949ba0640b0c4322e973aba209a971eb1",
"source_preparation": "2b604fbf1993ca3a5fc2efa27076a0804b198dc1c95a85833931f42f5e7bc252",
"regression_setup": "b50a48a76ea010ca9a5fa3b6a59d66eebc735b28d9282cdefb4d41ea596b19e2",
"selected_setup": "a0551eeea96192d7767928148b1a4e46dbc8a6905c9ed490cbf33eeb51b3fbfc",
"installation": "d7e6ac094bdd408dc055e67d636be9f4a59a4fdc72a9d1f55ab31f3265d82940",
"preservation": "2ca506fd1f47fcd501ce3a7de5e45c8daf72c25da5b6dc25ff8b7b854cd6cfe8"
},
"sources": [
"app/Modules/Services/FiscalObligations.php",
"app/Modules/Services/Http/FiscalObligationsController.php",
"resources/js/FiscalObligationsWorkspace.jsx",
"resources/js/fiscal-obligations-view.js",
"database/sql/fiscal_obligations.sql",
"config/fiscal_obligations.php"
],
"source_sha256": {
"app/Modules/Services/FiscalObligations.php": "bcf24717cf5828fed440b8e86f29a5ed4d325d392000240b224d155954170d1d",
"app/Modules/Services/Http/FiscalObligationsController.php": "95b03b505e588333206766b862d0f0cff006b1af1a3dc0466370ac6a7518e097",
"resources/js/FiscalObligationsWorkspace.jsx": "cf50c8eebbd9aafc985229740cc724fc8c66d176454875f0e4f346797d531fc9",
"resources/js/fiscal-obligations-view.js": "d3c1aafddac987de0a8e432746533da8832c140474f9d9d49055020f7c9e67dd",
"database/sql/fiscal_obligations.sql": "c68988342ca1ed5817485355844c2f502f5c2ca12954461c1555d5c5f2abf7fe",
"config/fiscal_obligations.php": "39fc036c111c443ee2bc8fac28d94dde055083b2abfb955d5aa9299b90b26cdb"
}
}
+137
View File
@@ -0,0 +1,137 @@
{
"passed": true,
"installation": "cc50a276c10c",
"port": 8085,
"date": "2026-11-10",
"scope": "SGF-FISCAL-RULES-COMMON-QA-v1",
"checks": {
"regression": 39,
"parity": 8,
"boundaries": 14,
"http": 24,
"dom_http": 14,
"input": 3
},
"concurrency": {
"during_lock": 503,
"after_release": 409,
"duplicate_reviews": 0
},
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-190138-e1c57bb4\\fiscal-rules-result.json",
"sha256": "4963a0f49425abbc56e25acc4e7cdd669e4315b30b6a8c76cbc37dc08b533a7a",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-190224-293fa949\\fiscal-expression-parity.json",
"sha256": "1f460cf37e91c2d8cb8a9f682c703cfa323510e6a205733ff18e28f7a4300b00",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-190357-58ef4f30\\fiscal-rules-boundaries.json",
"sha256": "e35560a6e6cdd93543dd860dc99f58384f730495868792f4a993f989322095c2",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\fiscal-rules-concurrency\\result.json",
"sha256": "399742d55c4690e8548efdd54c68007f71f24a03e99b9c0b951abb00844f5640",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\fiscal-rules-http-20261110.json",
"sha256": "20566cf071a545feaf1d18e1a3410855b8c104c1b13372efb47afdb69995b338",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\fiscal-rules-dom-http-20261110.json",
"sha256": "c22899a91898c2d5f6c5cb3c3d36ee336b8a7e68723293c88a72b612c3112fb0",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-191041-6e45b82d\\fiscal-rules-input.json",
"sha256": "5071ec0d3dc2a632f7acb567867631c2aacf5e303a0a430bf74c4fd1f287ea8f",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-191018-6b74a111\\fiscal-rules-preservation.json",
"sha256": "f970a71f22d130c61d3c81863c03b746401991d2aab8ed0a3009a96501a2b602",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-190133-7a1e5e14\\fiscal-rules-setup.json",
"sha256": "5f758ddf82a21117f531bbf7bdba686e817eb1d588723c9bc03d64395445ecc2",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-190702-f19a4794\\fiscal-rules-setup.json",
"sha256": "fda2b837bdfc8d8026632afaed1476542747e6c07f53f8ce5e8505e6eae9762c",
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Services/FiscalRules.php",
"sha256": "e7ead66818df2ba644b3b22d35707637ae05dcfcfbe28e57c0a3ed61b05180db"
},
{
"file": "app/Modules/Services/FiscalRuleExpression.php",
"sha256": "108d8401c9c2bc85b3e5f663322c3d36c267afd8529b370e7e16c1d565a3daef"
},
{
"file": "app/Modules/Services/Http/FiscalRulesController.php",
"sha256": "ad648825ec55b3bdb8eca038a01c5bd685b8b62b23f79bfd7771282506e1f66a"
},
{
"file": "database/sql/fiscal_rules.sql",
"sha256": "facb9ce8f7304d0c3df83cddaa548158cf72ff12c4d21c3ab0ccc002ae6fd8b4"
},
{
"file": "public/sgf-fiscal-rules.mjs",
"sha256": "a14a6d71d206b64445990a197e30387acb5882f1331ac13c2f283d7de0cb2477"
},
{
"file": "resources/views/fiscal/rules.blade.php",
"sha256": "ffdf1049c52fd7ea5a3000dd42e8c567354d430e108dc95023eab1fd5ecccf84"
},
{
"file": "resources/data/fiscal-rule-qa.json",
"sha256": "a9273524d65cd002b0a109959e3f77e4cf41125f8d2e71769ceb5dbecdb20dec"
},
{
"file": "app/Shared/Context/ModuleNavigation.php",
"sha256": "11b7b2cfc3eadbb7c077bc505e0c017987838d7a8fb3e2385c227a5d0a4b337d"
},
{
"file": "app/Modules/Identity/Services/IdentityWorkflow.php",
"sha256": "b567ae24e4209b42350010527e4bf2fb5b80732179116d959ac75800c6e55284"
},
{
"file": "resources/js/App.jsx",
"sha256": "c75f8421f81eba4674092a0c79d30b0bfd47c07c3fd0d8ec231123a0a0f141eb"
},
{
"file": "resources/js/WorkspaceNavigation.jsx",
"sha256": "5c7dbf048d48b0e73c6f8f226d03ec35f5f3bcaa506f07fa38ed587cdf94f3e2"
},
{
"file": "routes/web.php",
"sha256": "77047a48bd8284ff516cd0a9e05d0636daae59c586e89c2a3f104493e31fd625"
}
],
"rule_events_retained": 4,
"calculations_retained": 2,
"prior_iva_versions_preserved": 4,
"journals_preserved": 27,
"new_journals": 0,
"grants_per_existing_qa_book": 7,
"new_demo": false,
"sgc_dependency": false,
"portal_runtime_dependency": false,
"automatic_knowledge_import": false,
"legal_activation": false,
"cache_cleared": false,
"visual_review": false,
"deployment_validated": false,
"acceptance": false
}
@@ -0,0 +1,78 @@
{
"passed": true,
"date": "2026-11-11",
"installation": "cc50a276c10c",
"port": 8085,
"module": "human_resources",
"autonomous": true,
"new_profiles_both_existing_books": 6,
"new_grants_both_existing_books": 22,
"individual_commands_8085": 6,
"directed_checks": 132,
"preservation_checks": 71,
"concurrency_observed": true,
"new_journals": 0,
"new_payments": 0,
"new_debt": false,
"browser_visual_review": false,
"deployment_validated": false,
"cache_cleared": false,
"new_demo": false,
"evidence": [
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-081138-a4e9dcaa/remunerations-result.json",
"sha256": "9ac93a64316a4c7d8168e2977ddb2f4364ff9c49f6c80b9b6f070600e6cd2e4f",
"checks": 40
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-081400-da22b428/hr-boundaries.json",
"sha256": "38aae9abbe5fd0f82bea2e7f397ffc4ffc13eac0c3accf6ec877ec26e0c84a38",
"checks": 23
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/hr-concurrency-1794377543991/result.json",
"sha256": "c7993282e31433f9336433fac3fdda4d3e08fe25b30c92764577e8a6756b0a64",
"checks": 0
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/hr-prepared-ui-20261111.json",
"sha256": "48480a08f3e06d1851897c206b9eb64209c7f826ad63d5c2647b23d178fe7dff",
"checks": 16
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/hr-http-20261111.json",
"sha256": "c109f83646ae5d17d4e6da687cadfd0cb58ec29ec816000af846f1fc0b09bc8b",
"checks": 43
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-081436-73034977/hr-installation.json",
"sha256": "3d7bd8501dd412250f726041bf26ebb76bcc33d049e082444e909bf4a28886f2",
"checks": 0
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-081711-a4de93ee/hr-preservation.json",
"sha256": "a93ec450e1edd72efba43f26b35b59d5aee9828c4aabd1ee43dfa80440a0a8ad",
"checks": 71
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-081103-75214c68/hr-profiles-setup.json",
"sha256": "f2e6c90d80c710bdd0b9422894111676391dc0c8db9e217132095022754b410f",
"checks": 0
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-081104-76740a68/hr-profiles-setup.json",
"sha256": "a1ed94fe30594cb925685ee10e260c13e0e7f4e2c00343d7fac1bf3b6fa88a4a",
"checks": 0
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-081937-32c95f30/hr-finalization.json",
"sha256": "4f50520b195ad36fa6ff3423c3ae0453eed41c3f099cce768152f47e1f6af178",
"checks": 0
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/hr-final-entry-20261111.json",
"sha256": "c86d294368c9032a37c9aad269c884d3d153fe15a0124e129375781be19290fb",
"checks": 10
}
]
}
@@ -0,0 +1,28 @@
{
"prepared": true,
"functional_delivery_complete": false,
"approved_new_access": false,
"new_grants": 0,
"new_profiles": 0,
"installed_8085": false,
"business_writes": 0,
"cache_cleared": false,
"visual_review": false,
"evidence": [
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-083950-2b7f6505/hr-personnel-access-readonly.json",
"sha256": "b4bc3d273a5dcf9e13bad81105f0e3334aebc3f9f8a3c19cd790079d566d452d",
"checks": 0
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-083951-b86bcdeb/hr-personnel-access-readonly.json",
"sha256": "b02dc9e3f2c35ec83b9c61d71a58f3aee49da5834b44a6b3cecec8a21fccda77",
"checks": 0
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-083927-46fc6776/hr-personnel-time-core.json",
"sha256": "d11bd4745a72ecf293cb455143b491d201e0e47ce107da8c0bc31f00a8e5c850",
"checks": 22
}
]
}
@@ -0,0 +1,53 @@
{
"preparation_checks_passed": true,
"functional_delivery_complete": false,
"installed_8085": false,
"new_hr_access_authorized": false,
"new_hr_grants": 0,
"new_hr_profiles": 0,
"cache_cleared": false,
"visual_review": false,
"deployment_validated": false,
"evidence": [
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/hr-prepared-ui-20261111.json",
"sha256": "48480a08f3e06d1851897c206b9eb64209c7f826ad63d5c2647b23d178fe7dff",
"checks": 16
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-075918-07b14258/hr-preauthorization.json",
"sha256": "b3fcac09d3289815eb865b00e42d1b187a948d020c18d14b683abeca65b16660",
"checks": 11
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-080054-f17dbd76/hr-preauthorization.json",
"sha256": "b3fcac09d3289815eb865b00e42d1b187a948d020c18d14b683abeca65b16660",
"checks": 11
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-080055-00cf324f/hr-preparation-preservation.json",
"sha256": "7d1720fff55621043ff926aef42859eb2ea180faa40ed705b0a1af75bc807343",
"checks": 65
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-075531-6cd6db05/remunerations-finance-retracted.json",
"sha256": "6cead3dc86f89f972d4930598db2353e8d2951e385d479088864573cb4193e8b",
"checks": 0
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-075530-6881ed14/remunerations-finance-retracted.json",
"sha256": "16ba21a5255d368f9e86e9e9e5328017817a5f83028fb944d850a90296960d41",
"checks": 0
}
],
"earlier_pre_separation_proof": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-075420-9718f6f1/remunerations-result.json",
"checks": 40,
"only_pre_separation_core_evidence": true,
"not_hr_integration_acceptance": true
},
"build_manifest": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/single-hr-prepared-final-build-20261111/manifest.json",
"sha256": "096391f91f918deaeb7ed92dc3ba1745f75d2e9b884aed97b53629f8a69340fb"
}
}
@@ -0,0 +1,116 @@
{
"passed": true,
"installation": "cc50a276c10c",
"port": 8085,
"scope": "SGF-IVA-ASSESSMENT-FORM-QA-v1",
"checks": {
"regression": 38,
"boundaries": 10,
"http": 23,
"dom_http": 14
},
"concurrency": {
"during_lock": 503,
"after_release": 409,
"duplicate_reviews": 0
},
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-183923-8c78d580\\iva-result.json",
"sha256": "7dc37c693d60f120a985042cea8e68d7ee2d48b4363abc71cb95a482c639a6d1",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\iva-concurrency-validated\\result.json",
"sha256": "5ea7d314ad730ae6bf6f292f5ce39fe0b13c55aca9848c7861231db36b4b0029",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-184043-8652e74e\\iva-boundaries.json",
"sha256": "236450fbd1c68c099ad41311257d675a3abc8218fd27faeb085b4ae7876a2760",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\iva-http-20261110.json",
"sha256": "a11bcdee2a2d9c730e5b1e010dc254bb69360af55372bcb9ea664de21f3480b3",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\iva-dom-http-20261110.json",
"sha256": "7cb4d77fea98a99b6c6840a5821f52620548dac422abd1d891b78e3696719d47",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-184725-50388df1\\iva-preservation.json",
"sha256": "05eb1dfd476ce0071372f8b591c4f95f48967bc449b9333a909e0e4f9bd5133c",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-183618-ef69629b\\iva-setup.json",
"sha256": "acad5d93fb12b8f5dc1c8dd1e2a275228b23fba004e9d086f58b595f344283a2",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-184414-05608767\\iva-setup.json",
"sha256": "a0f35dbfaf569b13bf7e4037e3af6ff5502e70ed08d6fd5a09832ce8e11d0e2b",
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Services/FiscalAssessment.php",
"sha256": "c2dbe192e6bba75f6fc4057bbb51c85bcf024a674cfeb7950ba239e700213128"
},
{
"file": "app/Modules/Services/Http/FiscalAssessmentController.php",
"sha256": "425278110af20393e71de446f9b0ce41408352216249e5055de4165b075631e4"
},
{
"file": "database/sql/fiscal_assessment.sql",
"sha256": "a64a912822c54da9fa6efbcd24f430d8466f19dca82ef747fbd3847b8a68925e"
},
{
"file": "public/sgf-iva.mjs",
"sha256": "1d8c2a07f606799257c090ab2ddb52c309553a15009d6fb457dbbf4770c51ee6"
},
{
"file": "resources/views/fiscal/workspace.blade.php",
"sha256": "bb86dd60e1d9b3aeab97d991fe54005bd0412beccdfa6119552493eb8b16df50"
},
{
"file": "app/Shared/Context/ModuleNavigation.php",
"sha256": "7791ae9114d2cfd9b4c6603188b561fbadfe8d754f2f362d7cb6ae2408306617"
},
{
"file": "app/Modules/Identity/Services/IdentityWorkflow.php",
"sha256": "72a84a3924d1a78e0bbbaaf3f7f0f7f0e1e640227a1c1842eac74e3ec4c06a74"
},
{
"file": "resources/js/App.jsx",
"sha256": "bf8dd43bbad1f96c0043b34307f2fb6959e16bf8ec6ebcccb9858462102736c0"
},
{
"file": "resources/js/WorkspaceNavigation.jsx",
"sha256": "6c84b50f37561fd79ce3404ba7d4e25f88d233cd84645151a6fbe23ec67f9be3"
},
{
"file": "routes/web.php",
"sha256": "bed2954af1ea0bc1537e892f04e455b3baa5f87c43670bb46688a85e8813b9c1"
}
],
"retained_fiscal_versions": 4,
"journals_preserved": 27,
"new_journals": 0,
"deductible_vat": null,
"tax_payable": null,
"company_assessment_complete": false,
"grants_per_existing_qa_book": 14,
"new_demo": false,
"sgc_dependency": false,
"cache_cleared": false,
"official_form": false,
"official_submission": false,
"visual_review": false,
"deployment_validated": false,
"acceptance": false
}
@@ -0,0 +1,97 @@
{
"passed": true,
"scope": "SGF-MULTI-LINE-INCLUDED-QA-v1",
"date": "2026-11-10",
"installation": "cc50a276c10c",
"port": 8085,
"checks": {
"regression": 34,
"recovery": 3,
"http": 29,
"dom_http": 16
},
"concurrency": {
"passed": true,
"during_lock": {
"status": 503,
"retry_after": "5",
"elapsed_seconds": 5.17136287689209
},
"after_release": 200,
"replayed": true,
"one_calculation": true,
"regression_only": true
},
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-195444-c0e2a14a\\document-math-result.json",
"sha256": "3b7749421c9fa836ab595cabc9dcd6e929a1ca07a4b3c9e454c977c7797b7d9f",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\document-math-concurrency\\result.json",
"sha256": "73331577472b9a937f93de098b30ef42f65e9257a0d6f2a7068fef2605a4e4c2",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-195644-d598bace\\document-math-recovery.json",
"sha256": "b86594a87d5e105b69de5efd0285dfbd30bc96331e05fe2fcad23bdfbff3a408",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\document-math-http-20261110.json",
"sha256": "6370193e2a9725fe7f7b1f9fbd56214b0d8d8641e1e54cb9714196ffe29af663",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\document-math-dom-http-20261110.json",
"sha256": "fab41b6d48b675bcc70d72e2d6f88e70dab20df7b3ed70dede166aece0b07ba6",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-200237-fe3b87c6\\document-math-preservation.json",
"sha256": "4e8ecf54b315285a14196e00e7a5c3507ab171909ef51a06e35337dbd1b1d481",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-200126-3e24e881\\document-math-installation.json",
"sha256": "676a20b372db477487104b230f367a9a04caa704ad9182f8f13156ad6034f8ba",
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Services/FiscalDocumentMath.php",
"sha256": "6e67b7b1363d24b38ca0dd40c4349dba82a4b746965f0af8aa7d65bb4f8f731d"
},
{
"file": "app/Modules/Services/FiscalRules.php",
"sha256": "520edda0a013d41a80e3e3b56a1b39597a4f1b6407d78118f8855277ffeb3548"
},
{
"file": "app/Modules/Services/Http/FiscalRulesController.php",
"sha256": "cc7e05e18c4bbc98a70a19eabdd653bbb44a717214f8d8ee19cd2ffeb1c032c9"
},
{
"file": "public/sgf-fiscal-rules.mjs",
"sha256": "5c865e018c5b7d3b3f1232b80e81da379c729ea816a9e08a73225e76a678502c"
},
{
"file": "resources/views/fiscal/rules.blade.php",
"sha256": "39ca795a4469399896644add622a62a54f216ca67b822337c3cd7ec61c1e9698"
},
{
"file": "routes/web.php",
"sha256": "ce7c248b0f110f73e2f9c1bea0b6d5f2a9fa9f24ab8cc3f99707b21692ac14af"
},
{
"file": "config/fiscal_rules_qa.php",
"sha256": "bf0ed125e277994adb79c14c516ff779a0593eb501b7d02cd81dccae71398bca"
}
],
"new_grants": 0,
"new_financial_effects": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false
}
@@ -0,0 +1,126 @@
{
"entry": "http://127.0.0.1:8085/sgf",
"installation": "cc50a276c10c",
"proofs": [
{
"sha256": "1dbffaa4fd6f8ce6bf3e1c372e45084fba34c4292451834e4b4dac3f57deeaee",
"kind": "quotes_http",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/commercial-quotes-http-20261110.json"
},
{
"sha256": "81d8cc826e5f535db204f624a9c8fd5eb4b1d8076bc283a23955df55ad97cb8d",
"kind": "schedule_http",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/workshop-schedule-http-20261110.json"
},
{
"sha256": "040f9fed00b4b9ceba179504b14d0b87a1393716fc09503b6afd71ec636a27da",
"kind": "equipment_http",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/workshop-equipment-http-20261110.json"
},
{
"sha256": "4df0501a71fc4c415dcb861153610fac9edf639e1b042852181e9c1519ea216b",
"kind": "stock_http",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/stock-completion-http-20261110.json"
},
{
"sha256": "1c332b62e6bbd44b29abc989b5cedbfb1d7d09d04bf234462aa70ff1e2ff30d8",
"kind": "stock_dom_http",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/stock-completion-dom-http-20261110.json"
},
{
"sha256": "ce1feb474c79e4e1368d0273d9c3bb88736ed9bbdeff65c7927a8ec93dff92c5",
"kind": "stock_regression",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-162212-7fc0c484/stock-completion-result.json"
},
{
"sha256": "d7dce26e185f40e74a33455db4448b10bec025ccc94fbc8355806fc044201181",
"kind": "stock_concurrency",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/stock-completion-concurrency/result.json"
},
{
"sha256": "a9eb79fc029d3da5f824bd77b17b891239a7ef4cf1a6a260271c2e2bbf40d435",
"kind": "documents_candidate_regression",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-163526-13905e7f/service-documents-result.json"
},
{
"sha256": "9d2e9902930a97eda22f87861751c80d4c75e9580964f6f0850bc6101adfb48d",
"kind": "preservation",
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-162658-c0b15a30/next-block-preservation.json"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-171528-10e1c5f0/service-documents-result.json",
"kind": "documents_regression",
"sha256": "2c09d27a9bc9b9c9c68b8b6b19a5e3553a615138ef6aeee2ade7ab253bfbabac"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/documents-concurrency/result.json",
"kind": "documents_concurrency",
"sha256": "383f2aaa78c7db59563f25701e03ea99b0359d0c35c9c290b51369864c4275b6"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-172728-ac2008fe/document-cancellation-result.json",
"kind": "cancellation_regression",
"sha256": "6a5645e4c310aa1be1fefea9240a16da0e3bac2d99e67ca3d0e0c1ebc56d8ee3"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/service-documents-http-20261110.json",
"kind": "documents_http",
"sha256": "a93046d86b2bc1ad87b407c0cc15750accede96ba7c68a0e46cff86c34f615f6"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/service-documents-dom-http-20261110.json",
"kind": "documents_dom_http",
"sha256": "7abccf812e1c75ca8b96dc0a19a345023f581de30406221207b92413c567b443"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-172510-6e7769dd/period-documents-result.json",
"kind": "period_documents",
"sha256": "59826b9f3bb406cc6a5af37eeab2b5ddcd9ed7e4ecaad7f6436034c670e70471"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-172904-86c06a96/service-documents-status.json",
"kind": "final_documents_status",
"sha256": "68bd3f699e813b31800d82a4bbae894d0631493a60826bfffc51054513a07ec4"
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-172905-2acea48f/next-block-preservation.json",
"kind": "final_preservation",
"sha256": "f98371e600bbbb9c79d696b72fe1b51755362727a0338f92370e892eb7dddebf"
}
],
"published": false,
"sgc_required": false,
"previous_journals_compared_unchanged": 18,
"cache_cleared": false,
"new_demo": false,
"deployment_capacity_validated": false,
"browser_visual_review": false,
"date": "2026-11-10",
"documents_candidate_not_installed": false,
"authorization_pending": null,
"completed_increments": [
"workshop_schedule",
"workshop_equipment",
"commercial_workshop_quotes",
"stock_policies_supplier_return",
"receipt_credit_invoice_receipt",
"technical_cancellations_and_linked_reversals"
],
"journal_count_at_stock_completion": 20,
"application_complete": false,
"current_journal_count": 25,
"current_selected_balances": {
"invoice_receipt": "0.00",
"credit_invoice": "500.00"
},
"approved_next_block_functionally_delivered": true,
"contract_sha256": "4983cacdb45d001090b569e1780384a9f31fba1528b90f7e2355bb3e57ff34f2",
"source_hashes": {
"app/Modules/Services/ServiceReceivables.php": "79e1669b2423c521c0c56ab6fb07e085daef88eff8a41748c424e4a827f1e453",
"app/Modules/Services/DocumentPeriod.php": "100c6cf038b925126ddc8fb50adde2f6d938b4d68df6d0ab193f16ea28836ae2",
"public/sgf-service-documents.mjs": "1d7345d1e504250fab9679170f56774a1decae0f0ba9ab9aac0e8efdec7df044",
"app/Modules/Services/ServiceDocuments.php": "ab5e2c5fbbb790fc9c2fb3e6e30cb25c017b95314e4aa59df6d9c361cc9acc96",
"app/Modules/Services/ServiceInvoicing.php": "4138afb7e001b546a65552d71223cd642154945b8021e1ff45ef60a34076e3c5",
"app/Modules/Accounting/SalesLedgerSource.php": "cc5300bcce567d7d6aed9f967b48daf87bff3a106c34bdc0d03dcd10b8f89241"
}
}
@@ -0,0 +1,122 @@
{
"passed": true,
"installation": "cc50a276c10c",
"date": "2026-11-10",
"port": 8085,
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\overview-http-20261110.json",
"sha256": "b42c0d35339ed02ad3d6cdd8660a2a0bb89a280b6bda2ff10e4a5ed7175efc56",
"passed": true,
"checks": 50
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\overview-ui-20261110.json",
"sha256": "f497bf08589115ef3bb056b1069fbdb50b7c63e9e5d24c790aacc4840bdb401b",
"passed": true,
"checks": 28
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\overview-entry-http-20261110.json",
"sha256": "e25213942e5cce421c9ed31d2661c6357f1d76aa71e2b4b42004d308c3d6c77b",
"passed": true,
"checks": 11
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\overview-final-http-20261110.json",
"sha256": "f357cd47e8683e5d968ef7113633e0b2fab798dc77e2f6e6ec009aa2bfc9d0c9",
"passed": true,
"checks": 3
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-204551-708cb2cb\\workshop-orders-result.json",
"sha256": "9f20deadcd196ba437599850e92cfd980ea64444355443f75cc2ccd811b73cb0",
"passed": true,
"checks": 29
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\workshop-orders-http-20261110.json",
"sha256": "0100d1cea07ff2c43356471fbab3d3f96e40bb0392b3fc80c7b78b43b9f3837a",
"passed": true,
"checks": 11
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\workshop-orders-ui-20261110.json",
"sha256": "5cb13f70f6ea0caa96a367efff08a9832845d0909268fa3fafd53215e8ad96fb",
"passed": true,
"checks": 12
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\workshop-read-lock-1794336449856\\result.json",
"sha256": "5554e73cbce64de9115a02313d98723b42cec931ffd8731cd155ade34c809adc",
"passed": true,
"checks": 0
},
{
"path": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-205202-210c8f94/overview-installation.json",
"sha256": "3ebb2dd6537c3393f7c43657d03e544881f8606ec928cd2bf98827e98544552a",
"passed": true,
"checks": 0
}
],
"sources": [
{
"file": "resources/js/WorkspaceHome.jsx",
"sha256": "32bf2871a52ad5a5632aec4c2eb74207f49a8765d351ebfa5c14b475d54ebd4f"
},
{
"file": "resources/js/workspace-overview.js",
"sha256": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"file": "resources/js/ModuleNavigation.jsx",
"sha256": "e68a8353d2de8e137a102ccd3c768245ecb81fbee0ece0589eb84e40122ae7b3"
},
{
"file": "resources/js/app.jsx",
"sha256": "2c4b7a4ffd8ab3117194126f48f0351c67723aeae5508273ac8070828c485f47"
},
{
"file": "resources/js/WorkshopOrderList.jsx",
"sha256": "8b652d8a30bcd9ea477a9af88583fccaa5897aff28fdc65014fa9393bfc16f8a"
},
{
"file": "resources/js/WorkshopMenuWorkspace.jsx",
"sha256": "f636fdbf0425bc845506ff59b487e0212fc3e08eef2220daceed79143213279a"
},
{
"file": "app/Modules/Workshop/WorkshopOrderRead.php",
"sha256": "b433c85d76609d2696c2818b34ba5c63059d673bad37c638e12d99f6ae0aac68"
},
{
"file": "app/Modules/Workshop/Http/WorkshopOrderReadController.php",
"sha256": "f4dd027d01c0730603f3b312c2eb263740f6ebe1c969c762ed99d19520fab584"
},
{
"file": "app/Shared/Installation/PresentationEntry.php",
"sha256": "7974815682b8fad6448619633d35bb29c82596cb19156d7914ade588ff678b9a"
},
{
"file": "resources/views/sgf-presentation-entry.blade.php",
"sha256": "df557b3d42df882b7998a23ae8944a757dd7d70b718c6391777f2ba77571b395"
},
{
"file": "resources/css/tempo-theme.css",
"sha256": "ac2ecd3a012cd2fa5b9fc527a3e264936871a55ef259388afe1f5af6f352786c"
},
{
"file": "routes/web.php",
"sha256": "f99427a98c56875710d0aa667b658d4b33ec18a3b10cdf4d7eb6bf9336565d29"
},
{
"file": "resources/js/context-transition.js",
"sha256": "9b21d005c7ea6529cbd84b289962e4ca6a7ed310fcdd0465e5c4ecb4479f51fa"
}
],
"business_commands_8085": 0,
"new_grants": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false,
"full_product_complete": false
}
@@ -0,0 +1,27 @@
{
"version": "SGF-PAYABLE-AGING-QA-v1",
"passed": true,
"target": "existing8085",
"regression_checks": 26,
"ui_checks": 12,
"http_checks": 14,
"original_tables_identical": 51,
"business_commands": 0,
"new_rights": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false,
"evidence": {
"regression": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-225625-14e36b63/payable-aging-result.json",
"ui": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/payable-aging-ui-20261110.json",
"http": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/payable-aging-http-20261110.json",
"installation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-225714-3c10e767/payable-aging-installation.json",
"preservation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-225759-f5487777/payable-aging-preservation.json"
},
"sources": [
"app/Modules/Purchasing/PayableAge.php",
"app/Modules/Purchasing/PayablePositionReadController.php",
"resources/js/PayablePositionsWorkspace.jsx",
"resources/js/payable-position-view.js"
]
}
+49
View File
@@ -0,0 +1,49 @@
{
"version": "SGF-PAYABLE-DUE-QA-v1",
"passed": true,
"target": "existing8085",
"functional_checks": 113,
"preservation_acl_checks": 58,
"new_business_rights": 2,
"grants_per_book": 2,
"total_qa_grants": 4,
"confirmed_administrative_commands_8085": 2,
"new_financial_effects": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false,
"evidence": {
"regression": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-222519-ca328516/payable-due-result.json",
"identity": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-222138-ff65b1c8/payable-due-identity.json",
"pagination": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-222241-1ccd5eab/payable-due-pagination.json",
"page_integration": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-222407-f448c6e1/payable-due-list.json",
"concurrency": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/due-concurrency-1794341858739/result.json",
"http": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/payable-due-http-20261110.json",
"final_http": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/payable-due-final-http-20261110.json",
"ui": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/payable-due-ui-20261110.json",
"preservation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-222251-7c151972/payable-due-preservation.json",
"installation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-222425-0e9c9bf3/payable-due-installation.json",
"regression_setup": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-221458-cb0acadb/payable-due-setup.json",
"selected_setup": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-221825-b5939799/payable-due-setup.json"
},
"sources": [
"app/Modules/Purchasing/PayableDueController.php",
"app/Modules/Purchasing/PayablePositionReadController.php",
"resources/js/PayableDueWorkspace.jsx",
"resources/js/PayablePositionsWorkspace.jsx",
"resources/js/payable-position-view.js",
"database/sql/payable_due.sql",
"config/payable_due.php"
],
"harnesses": [
"scripts/sgf-payable-due-proof.php",
"scripts/sgf-payable-due-identity-proof.php",
"scripts/sgf-payable-due-pagination-proof.php",
"scripts/sgf-payable-due-list-proof.php",
"scripts/sgf-payable-due-http.mjs",
"scripts/sgf-payable-due-final-http.mjs",
"scripts/sgf-payable-due-ui.mjs",
"scripts/sgf-payable-due-concurrency.mjs",
"scripts/sgf-payable-due-preservation.php"
]
}
@@ -0,0 +1,29 @@
{
"version": "SGF-PAYABLE-POSITIONS-QA-v1",
"passed": true,
"target": "existing8085",
"regression_checks": 23,
"ui_checks": 15,
"http_checks": 19,
"business_commands_8085": 0,
"new_rights": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false,
"evidence": {
"regression": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-220530-07616d21\\payable-positions-result.json",
"ui": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\payable-positions-ui-20261110.json",
"http": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\payable-positions-http-20261110.json",
"installation": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-220903-1bf94d1f\\payable-positions-installation.json",
"preservation": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-220955-ad348ffc\\payable-positions-preservation.json"
},
"sources": [
"app/Modules/Purchasing/PayablePositionReadController.php",
"app/Modules/Purchasing/ComposedFinanceController.php",
"resources/js/PayablePositionsWorkspace.jsx",
"resources/js/payable-position-view.js",
"scripts/sgf-payable-positions-proof.php",
"scripts/sgf-payable-positions-ui.mjs",
"scripts/sgf-payable-positions-http.mjs"
]
}
@@ -0,0 +1,75 @@
{
"passed": true,
"installation": "cc50a276c10c",
"port": 8085,
"date": "2026-11-10",
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-211215-0a0ad6c1\\receivable-positions-result.json",
"sha256": "7f9e305a16e06578bc0541a6f217ba64c97655070a4cece918820344da215eb9",
"checks": 30,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\receivable-positions-ui-20261110.json",
"sha256": "607eae89da99d8c8367ce1a38c86f329e6a0f041bafd336aa1d0faa966d79062",
"checks": 16,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\receivable-positions-http-20261110.json",
"sha256": "90dbbcdba1e510be8cb3895aac63b6ba8e1d8abed4b9c979c16d0e8b26dde8e6",
"checks": 15,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-211623-52cb8499\\receivable-positions-installation.json",
"sha256": "53d03cd993ed302cea4817c16bfe0182c330fe85ce2aafeea974fc32a9e4fcd3",
"checks": 0,
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Services/ReceivablePositionRead.php",
"sha256": "6aaf0211c4427643c84152edc6a7937dbf48387e2844d3bbe31328d1f6789f2d"
},
{
"file": "app/Modules/Services/Http/ReceivablePositionReadController.php",
"sha256": "9e8be7c2cd328aebb31cbe0be4eeaaa6abc02d5bff0895aeb90c24ab8d134541"
},
{
"file": "app/Modules/Services/FiscalCoverage.php",
"sha256": "55f8b947bd63cffdc63f268a88ac441fda62e144d1a2013eaa954d57970fa716"
},
{
"file": "resources/js/ReceivablePositionsWorkspace.jsx",
"sha256": "5bd8ee952aeee87d733ab434cfe50b675d84c0341ade4f354c93e4acfdbe57e9"
},
{
"file": "resources/js/receivable-position-view.js",
"sha256": "08f8cb6d17b79b89ee8cebe4723458c1a4979d8fb824afa0b585ae51076e6f21"
},
{
"file": "resources/js/ServiceReceivablesWorkspace.jsx",
"sha256": "6e654a03cb47e52dedd52ce6b2abf89a61d22860e4ffae92fd393027a54cc445"
},
{
"file": "resources/js/WorkspaceNavigation.jsx",
"sha256": "e8b6177a1fa7dfa906f78b9c06d32f0493ff46c4c4b569623ce06f4f0f42d4df"
},
{
"file": "resources/js/app.jsx",
"sha256": "59bd224c883dedce891264d29919422fb347e0b7039efcd9176787137f6bec97"
},
{
"file": "routes/web.php",
"sha256": "65ad031fc3d2ecbb6722e446aa62af4c33fb50558e8aa681491af44796c4e118"
}
],
"business_commands_8085": 0,
"new_grants": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false
}
@@ -0,0 +1,109 @@
{
"date": "2026-11-10",
"passed": true,
"meaning": "directed synthetic integration evidence; not complete product acceptance",
"installation": "cc50a276c10c",
"port": 8085,
"entry": "http://127.0.0.1:8085/sgf",
"checks": 92,
"proofs": {
"profiles": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-133942-55f43aff/profiles-check.json",
"sha256": "ceb16e29f6498a57aff4b2c50584823e771ab960302a31de07ede0a33ab5d726",
"checks": 23
},
"reads": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-read-http-20261110.json",
"sha256": "b7014d494c54db9b309a8aa711f18fac3f766bc14f20accab0d3035cc7f12106",
"checks": 15
},
"http_boundaries": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-boundaries-http-20261110.json",
"sha256": "cd9684589c6fbbc15fa862aae23ef25ef282024d34be8cebe60edde9954bb13d",
"checks": 10
},
"client_recovery": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-finance-ledger-client-20261110.json",
"sha256": "8dd66173b519c4b52079c95cc8282b7756e4d523d79d1766a4646c9ceee774c8",
"checks": 12
},
"rate_controller": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-132247-169255fa/stock-rate-controller-result.json",
"sha256": "84d4737bbe25060adfff2ef25a5420948b163977334a1c8aa8b109717191929d",
"checks": 9
},
"direct_correction": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-132829-d446e90c/direct-ledger-result.json",
"sha256": "b1d25f4a6b4629be03e11977081792aa4ce10ae535b4eaa96e1fb31888589b93",
"checks": 7
},
"industrial_correction": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-132833-ef2bb812/industrial-ledger-result.json",
"sha256": "c88e44f9fab298e7fa65439431f1c62225276a62ebfd6df03c5e0952be0bb5a2",
"checks": 6
},
"material_isolation": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-133334-5449e218/material-isolation-result.json",
"sha256": "344b53d0cd7c6400a33fc0f1329388b35df275570af3358653df1359f5234b2b",
"checks": 5
},
"finance_lock": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-134018-356f8135/finance-lock-result.json",
"sha256": "32948d7153bb70b67cd38ff86a64ed327e6ab0fa3e551462a6de61a40669fc01",
"checks": 5
}
},
"effects": {
"financial": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-financial-http-progress.json",
"sha256": "db5a84d812d96a321693b6654488a81cb34b2d359a7354248195f3727ff8f857",
"completed_operations": 33
},
"corrections": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-corrections-http-progress.json",
"sha256": "0e1718eed4eef96e1076ceb4d740908bf977f4af8ee2bbd03c5e526b499b22ac",
"completed_operations": 14
}
},
"sources": {
"app/Modules/Accounting/ComposedLedger.php": "74d92e0c9dcbb940f66afc5a0f5fa29025cfa7b6691043b87fba82b428cf9901",
"app/Modules/Accounting/ComposedLedgerController.php": "4e259e52d86e05e028c8042082cf7aa05aafdf2c0a722fa019fa9aa19b515f78",
"app/Modules/Accounting/ComposedMaterialIsolation.php": "539000b2bee9ee84e12197175fcdf334ce65dd4ca6048aab128fa3d56a6b5372",
"app/Modules/Accounting/SourceBook.php": "273b6d0d52e350f045f2d2b9515da49b0522a96596699294dbab09fc75d3f78a",
"app/Modules/Purchasing/ComposedFinance.php": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16",
"app/Modules/Purchasing/ComposedFinanceController.php": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5",
"app/Modules/Purchasing/ReceiptRuntime.php": "d368d03239b457eacb61d67c28274d8ed30cf382e7a5586f8a18a7b0ab79ce18",
"app/Shared/Installation/PresentationEntry.php": "4b72f35a25ce76a7a54887ecb7f491985bc4c7b356bde34e5d377f9a5133c101",
"packages/general-ledger/src/PayableJournal.php": "184115b4e937ca163b8d8a02264104aa794bd3f6380934e5757438346d0e989e",
"packages/general-ledger/src/LedgerCycle.php": "904111b4e093e0613eb779d46fa394d6f1654906ffef7ca5ef2311ec6d5ce33a",
"packages/general-ledger/src/StockValuation.php": "f4be85e183eb33860a5a7b99f012e6e4490dc04f80deb22d452fb5048ae913fb",
"public/sgf-finance-payables.mjs": "68b772884512e353e1186fb82b9f732d7f785de3a01458198e49fe359ec5f666",
"public/sgf-composed-ledger.mjs": "13f5c2d514c09573f0844da71e766aca9b03a489b40c554235c54da17b4fb1c5"
},
"journals": 13,
"supplier_principal_minor": 10000,
"supplier_balance_minor": 10000,
"receivable_balance_minor": 40000,
"sgc_required": false,
"new_demo": false,
"new_database": false,
"new_database_roles": false,
"cache_cleared": false,
"protected_records_changed": false,
"published": false,
"client_presentable": false,
"visual_review": false,
"deployment_capacity_validated": false,
"remaining": [
"workshop-stock physical integration and unused return",
"selected stock receipt2/issue1/return0.5 valuation100/50/25 in8085",
"remaining commercial workshop origin and legacy accounting continuations",
"accounting origin pagination beyond25",
"complete QA period conference and close",
"visual review and full startup/recovery acceptance"
],
"historical_proofs_reused": [
"docs/proofs/purchasing-completion-final-20261104-r2.json",
"docs/proofs/sgf-six-module-composition-20261110.json"
]
}
@@ -0,0 +1,28 @@
{
"passed": true,
"installation": "cc50a276c10c",
"metadata_fixture_rows": 127,
"foreign_fixture_rows": 1,
"fixture_changes_rolled_back": true,
"sql_pages": 8,
"queries_per_cost_family_page": 2,
"assertions": 275,
"http_reads": 2,
"proofs": [
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-134326-c6a75dd3/candidate-pages-result.json",
"sha256": "692484881927980c0c95f49257cdbcbebbe7fd351484a1557227c988b2232d7f"
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-candidate-pages-http-20261110.json",
"sha256": "c7595182b8f7fecf5d64a5eaee2e8ccb047bb7ce4559b630329aeb4163565183"
}
],
"sources": {
"app/Modules/Accounting/ComposedLedgerCandidates.php": "46d4d1922344353927a311ce9c523cd82d319ad74d55b18d984c11e65a0d7378",
"app/Modules/Accounting/ComposedLedgerController.php": "1ffa609367f45f85add52f8deb423bed18921a3e600fb7252dcf093dbaaa909e",
"resources/views/accounting/composed-ledger.blade.php": "a659fc6d59ab8a9ece06dff85fbe180292f348c03e8fb552f592b1493306d902"
},
"visual_review": false,
"deployment_capacity_validated": false
}
@@ -0,0 +1,249 @@
{
"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"
]
}
@@ -0,0 +1,374 @@
{
"date": "2026-11-10",
"contract_sha256": "f3e954be7917008dea88ad9fc9f539ba641f0d7a89083ad730746b5a504a1bc6",
"installation": "cc50a276c10c",
"port": 8085,
"sgc_dependency": false,
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceWorkflow.php",
"present": true,
"sha256": "6f5c8af14412427134f1c40bda9215de68b3a66d46ed2287b59895f68b929179"
},
{
"file": "app/Modules/Services/ServiceInvoicing.php",
"present": true,
"sha256": "b5ac9898f2089fad7799b9e62e5ce5db6df7fd64643e8e7e3b52c6a0e2d142a8"
},
{
"file": "resources/js/ServicesWorkspace.jsx",
"present": true,
"sha256": "c170b195ccd78aa74f283a91b0b4f4cd93aea4677e3aaefe0b50af46f7e31669"
},
{
"file": "resources/js/ServiceInvoiceWorkspace.jsx",
"present": true,
"sha256": "347869a371084ae91bd7d651334f67f16369495263f28b8b8348bc442f7d6534"
}
],
"existing_evidence": [
{
"file": "docs/proofs/invoice-test-results.json",
"present": true,
"sha256": "fd04a58727ffddf1c62ac184d7834b81228dce2abb5b0c1e397505df6a45237c",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"missing_native_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Conferência visual do percurso emitido na mesma8085; prova HTTP e documento1000 existentes"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "d368d03239b457eacb61d67c28274d8ed30cf382e7a5586f8a18a7b0ab79ce18"
},
{
"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"
}
],
"existing_evidence": [
{
"file": "docs/proofs/purchasing-completion-final-20261104-r2.json",
"present": true,
"sha256": "3b63f8653e8dbb089dfdd8f389e271c022a070d5a67a9f9d4585ce84438070cc",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"missing_native_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Reutilizar C01–C10 aceite; continuação financeira e contabilística100/20/reversão agora provada na8085",
"Conferência visual e recuperação do arranque geral"
],
"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"
],
"sources": [
{
"file": "app/Modules/Inventory/StockReadController.php",
"present": true,
"sha256": "fd02da1a69f76bf1412f86f43095a0a476de49fbb7d2676a51fe3b29ec66e298"
},
{
"file": "app/Modules/Inventory/CompositionStockRead.php",
"present": true,
"sha256": "01c558457df290879bdf6c7f8de8cd9efccad81b940731f0aaf2489cf02bfcf7"
},
{
"file": "app/Modules/Inventory/StockPeriodReport.php",
"present": true,
"sha256": "d491541c6c60bc0c661dc442b8db8ce2e757f1d63dfc4982a3631f820cfb7a06"
},
{
"file": "app/Modules/Workshop/WorkshopStock.php",
"present": true,
"sha256": "6460a4235fe7b0b4602b0aeb63a47f1a97e367e93baba6aa774be5fa0dac4e6e"
},
{
"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"
}
],
"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
}
],
"missing_host_tables": [],
"missing_native_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Concluir devolução e ligação material de Oficinas ao mesmo livro físico",
"Concluir cenário físico2/-1/+0,5 e respectiva valorização na8085",
"Transferência em trânsito/recepção distinta e contagem por lotes conservam seus recortes",
"Saídas, transferência imediata, contagem sem lotes e ajuste já disponíveis pelos writers originais"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Workshop/WorkshopStock.php",
"present": true,
"sha256": "6460a4235fe7b0b4602b0aeb63a47f1a97e367e93baba6aa774be5fa0dac4e6e"
},
{
"file": "resources/js/WorkshopWorkspace.jsx",
"present": true,
"sha256": "acc01d934dd11f783df82b40a6ece0905a67b0d26ff0bdfc3b18c11a027d66bb"
},
{
"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": "99ea0b2c0941db0a42ff1f3833225430a73efb6933b3f88a8be4481f902ac571"
}
],
"existing_evidence": [
{
"file": "docs/proofs/workshop-stock-closure-20261102.json",
"present": true,
"sha256": "261d5502f6905d53ef8046e0e900c9bee159c8c9d7e1bae4fddd8ec698313bf7",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"missing_native_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Compor na mesma instalação sem perder as aprovações existentes",
"Completar o percurso oficina → stock → custo → Comercial/Contabilidade",
"Conservar a distinção entre apontamento e movimento físico"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceReceivables.php",
"present": true,
"sha256": "725bc8773a78cfd05dd0a729d885a97c0eef43854ca7ab4210b4d5e80d5d54ec"
},
{
"file": "app/Modules/Purchasing/SupplierPayables.php",
"present": true,
"sha256": "c17d44391cbd96941aa2dd2eac2cb167508faf6453c6a1e86333846df1ba18b9"
},
{
"file": "resources/js/ServiceReceivablesWorkspace.jsx",
"present": true,
"sha256": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
}
],
"existing_evidence": [
{
"file": "docs/proofs/supplier-settlements.json",
"present": true,
"sha256": "b1bce9218f99ea2d8c780022ad385e169c7acc5778ac6950236eef0630f77ad0",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"missing_native_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Unificar as origens autorizadas sem copiar dívida ou saldos",
"Compor a tesouraria sintética e os relatórios na mesma empresa/unidade",
"Conservar vencimento desconhecido e histórico imutável"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Accounting/GeneralLedger.php",
"present": true,
"sha256": "a87d2ea373bc61bb139aa29f2a354b9813bbb2d6229a389f8d37fd8e9890edec"
},
{
"file": "app/Modules/Accounting/GeneralLedgerController.php",
"present": true,
"sha256": "fb107c11bd1a7c1009c7c0535907ee266cf9bc9840df3915bbc24afba2b460ad"
},
{
"file": "packages/general-ledger/src/LedgerSchema.php",
"present": true,
"sha256": "d9c203286b3a04121c265dffe412d2e86726ec4bb9222a2ed654d0296d86b5d8"
}
],
"existing_evidence": [
{
"file": "docs/proofs/purchasing-completion-matrix-final-20261104.json",
"present": true,
"sha256": "94cb37698f294c38df9b94a5535ba4b9ac63907f94dab1e7f951a3bb27623083",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"missing_native_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Compor diário e relatórios reais do núcleo na instalação única",
"Ligar Compras/Comercial/custos sem gerar lançamentos automáticos",
"Substituir os catálogos de relatórios por consultas disponíveis e verificadas"
]
}
],
"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
}
@@ -0,0 +1,450 @@
{
"date": "2026-11-10",
"contract_sha256": "ffe0460ccfc95793931f7030c7f6e14cd83b3fd853629e0ba511253f365f34df",
"installation": "cc50a276c10c",
"port": 8085,
"sgc_dependency": false,
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceWorkflow.php",
"present": true,
"sha256": "6f5c8af14412427134f1c40bda9215de68b3a66d46ed2287b59895f68b929179"
},
{
"file": "app/Modules/Services/ServiceInvoicing.php",
"present": true,
"sha256": "b5ac9898f2089fad7799b9e62e5ce5db6df7fd64643e8e7e3b52c6a0e2d142a8"
},
{
"file": "resources/js/ServicesWorkspace.jsx",
"present": true,
"sha256": "c170b195ccd78aa74f283a91b0b4f4cd93aea4677e3aaefe0b50af46f7e31669"
},
{
"file": "resources/js/ServiceInvoiceWorkspace.jsx",
"present": true,
"sha256": "347869a371084ae91bd7d651334f67f16369495263f28b8b8348bc442f7d6534"
}
],
"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": "b9cdb1cee781cf12fdeed7a29d2ddbcfb824685523393533fea9c95ec6875d98",
"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": "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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "583bae215b2b2e51715591558a4d975fa0aed99da937d45a158c1888749a9a62"
},
{
"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"
}
],
"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": "b9cdb1cee781cf12fdeed7a29d2ddbcfb824685523393533fea9c95ec6875d98",
"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"
],
"sources": [
{
"file": "app/Modules/Inventory/StockReadController.php",
"present": true,
"sha256": "fd02da1a69f76bf1412f86f43095a0a476de49fbb7d2676a51fe3b29ec66e298"
},
{
"file": "app/Modules/Inventory/CompositionStockRead.php",
"present": true,
"sha256": "01c558457df290879bdf6c7f8de8cd9efccad81b940731f0aaf2489cf02bfcf7"
},
{
"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": "3cd677891d81f1694fea7dce1afe8d3eb5c088e217eb4ea3cf0a522b47761a4c"
}
],
"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": "b9cdb1cee781cf12fdeed7a29d2ddbcfb824685523393533fea9c95ec6875d98",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"missing_native_tables": [],
"integrated_release_verified": false,
"client_presentable": false,
"remaining": [
"Revisão visual do novo Stock confirmada pelo utilizador; aceitação do conjunto separada"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Workshop/WorkshopStock.php",
"present": true,
"sha256": "c32024ab178a3db29881902199df4e313be34dd770fc14d55a537656bf6f8fa6"
},
{
"file": "resources/js/WorkshopWorkspace.jsx",
"present": true,
"sha256": "acc01d934dd11f783df82b40a6ece0905a67b0d26ff0bdfc3b18c11a027d66bb"
},
{
"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": "32d35097a200b045ed416a165b661b7ceb15da90d8f2c345c54ee6503e4b970f"
}
],
"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": "b9cdb1cee781cf12fdeed7a29d2ddbcfb824685523393533fea9c95ec6875d98",
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceReceivables.php",
"present": true,
"sha256": "725bc8773a78cfd05dd0a729d885a97c0eef43854ca7ab4210b4d5e80d5d54ec"
},
{
"file": "app/Modules/Purchasing/SupplierPayables.php",
"present": true,
"sha256": "c17d44391cbd96941aa2dd2eac2cb167508faf6453c6a1e86333846df1ba18b9"
},
{
"file": "resources/js/ServiceReceivablesWorkspace.jsx",
"present": true,
"sha256": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
}
],
"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": "b9cdb1cee781cf12fdeed7a29d2ddbcfb824685523393533fea9c95ec6875d98",
"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": "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"
],
"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": "74d92e0c9dcbb940f66afc5a0f5fa29025cfa7b6691043b87fba82b428cf9901"
},
{
"file": "app/Modules/Accounting/ComposedLedgerController.php",
"present": true,
"sha256": "136844950032de0f66cce26adc9a75a7092ffac52025c236fc22c94b23e9b1ce"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"present": true,
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
}
],
"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": "b9cdb1cee781cf12fdeed7a29d2ddbcfb824685523393533fea9c95ec6875d98",
"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"
]
}
],
"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
}
@@ -0,0 +1,254 @@
{
"date": "2026-11-10",
"passed": true,
"meaning": "functional QA review; not presumed owner acceptance or deployment validation",
"installation": "cc50a276c10c",
"entry": "http://127.0.0.1:8085/sgf",
"port": 8085,
"contract_sha256": "ffe0460ccfc95793931f7030c7f6e14cd83b3fd853629e0ba511253f365f34df",
"sgc_required": false,
"new_demo": false,
"required_module_flows_executed_in_same_installation": [
"commercial",
"purchasing",
"stock",
"workshop",
"finance",
"accounting"
],
"journals": 18,
"previous_journals_preserved": 16,
"qa_accounts": 15,
"stock_value_minor": 14500,
"period_facts": 18,
"period_pending": 0,
"period_open_after_rolled_back_closure": true,
"proofs": {
"guided_menu_http": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/guided-menu-http-20261110.json",
"sha256": "5d0322be5673532de2c03b9fa618dd40fafc54cb4444ccd6f7cd939e48427c7d",
"checks": 47,
"reused_from_existing_valid_evidence": false
},
"module_dropdown_render": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/module-dropdown-render-20261110.json",
"sha256": "b3749c5b3953206bca8384fc8202699de3dabb6f49f33a35fa061e2ba61c7a4b",
"checks": 11,
"reused_from_existing_valid_evidence": false
},
"workshop_physical_bridge": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-135641-89b4b77c/workshop-stock-bridge-result.json",
"sha256": "de3d96b771f48f318de500c742b7d39e02e48c7bffa3c768ce01dfa2b6bbebe7",
"checks": 18,
"reused_from_existing_valid_evidence": true
},
"workshop_client": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-workshop-stock-client-20261110.json",
"sha256": "4778a0e243fde9995c2bec644528bbea9aa7603381c927d4b4e7ce654a8dffa9",
"checks": 9,
"reused_from_existing_valid_evidence": true
},
"workshop_commercial": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-140916-70f2bd82/workshop-commercial-result.json",
"sha256": "07f982c1b4580559f4f0431c7e3785ad22d9e16ba30ca5d956a459ff5ca433cd",
"checks": 8,
"reused_from_existing_valid_evidence": true
},
"accounting_continuity": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/accounting-continuity-http-20261110.json",
"sha256": "e224775d36ee510a5d80004403c4b4fca8aa9e46f66eff9dec780c97766007c0",
"checks": 13,
"reused_from_existing_valid_evidence": true
},
"stock_protocol": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-145853-1ecda5fa/stock-final-result.json",
"sha256": "0c681c3c546722099c02eae2a9a8c36b8312bf362fd83c3a8bbde071809b895d",
"checks": 27,
"reused_from_existing_valid_evidence": false
},
"stock_concurrency": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/stock-final-concurrency-20261110/result.json",
"sha256": "c71ab7f215d2f4a80b3836f1a5d2908ea2468efdf8292092a39cb39dacbeb97c",
"checks": null,
"reused_from_existing_valid_evidence": false
},
"stock_transit_accounting": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-150714-9d33082b/stock-transit-ledger-result.json",
"sha256": "616be2bf7a514cdfaac199c1d801d5cf978a4c2f73428aeb79846e4476876bea",
"checks": 6,
"reused_from_existing_valid_evidence": false
},
"stock_recovery": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-151847-1fa3a3c5/stock-final-recovery-result.json",
"sha256": "742cbf8034ec4310cdfceb771416f81ec462eb502c4be39c885cd71c15078451",
"checks": 6,
"reused_from_existing_valid_evidence": false
},
"stock_preservation": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-151019-b03f905f/stock-final-preservation-result.json",
"sha256": "558cb41eab17850c892fce1330cb88d3ea1c1828a5081c2dd1b3fd83987dd094",
"checks": 12,
"reused_from_existing_valid_evidence": false
},
"stock_http": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-stock-final-http-progress.json",
"sha256": "0ef1d0284fbad9d4a31a87ca61eae0d57588d0f3e2c599186397ab0df9124d7d",
"checks": 0,
"reused_from_existing_valid_evidence": false
},
"stock_http_boundaries": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/stock-final-boundaries-http-20261110.json",
"sha256": "d150c48117d6f7d0b3f0fd29b5519593c01f3cf7727830fd809822c367d9fc61",
"checks": 20,
"reused_from_existing_valid_evidence": false
},
"stock_dom_http": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/stock-final-dom-http-20261110.json",
"sha256": "189d8905cc6c56719bf622478506d5bcc501ae6dee76853454313b80e02bb6b3",
"checks": 10,
"reused_from_existing_valid_evidence": false
},
"current_period": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-150544-39a961e8/period-composition-result.json",
"sha256": "f227522113d6c6c1f9ddb9ac21a02ce441df2f5fd3621428da0ec3b9008886dd",
"checks": 7,
"reused_from_existing_valid_evidence": false
},
"previous_server_restart": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-restart-proof-20261110.json",
"sha256": "803180fb780bcf1e42cfbe4c45854f74371e77a893b6e5e376093c3747385ce1",
"checks": null,
"reused_from_existing_valid_evidence": true
},
"workshop_physical_http": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-stock-http-progress.json",
"sha256": "05e06a127dddf340a5e11e97aa439635e2063bccad96c5d40871ea45554b35e0",
"checks": null,
"reused_from_existing_valid_evidence": true
},
"workshop_commercial_http": {
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-workshop-commercial-http-progress.json",
"sha256": "60467cd70b616d245bda1284380b6133c3dc8b47a858a1b85cb7c47d62a879b8",
"checks": null,
"reused_from_existing_valid_evidence": true
}
},
"sources": [
{
"file": "app/Shared/Installation/PresentationEntry.php",
"sha256": "f9ec01572624f850a40849e2e6eb54f78039ca41510eae663de4a20caae3ba41"
},
{
"file": "resources/views/sgf-presentation-entry.blade.php",
"sha256": "2f10d423e0846a2d82e487bb558cc66a69fa03c93b64ab04702ddf6ec5b5d715"
},
{
"file": "resources/js/app.jsx",
"sha256": "0eccf25f328d1554e7defa14e55a9484ca11581cf3b6bafea24395237e40229e"
},
{
"file": "resources/js/presentation-landing.js",
"sha256": "25651321f67fe32829cd14dbe4541f6a83b925ee1b8ae05bcc842c29c7e744ad"
},
{
"file": "public/sgf-entry-menu.mjs",
"sha256": "e96dc783f45220dd56ba699ab40b638ad3390d59caa307199b0146328f18c6f8"
},
{
"file": "resources/css/tempo-theme.css",
"sha256": "29640dbc88d29a7bcd2383243a169728ccc52d4a9f7faf08e6ee7187f4011459"
},
{
"file": "app/Modules/Inventory/StockFinalController.php",
"sha256": "9d9a242fd8e143fe076ece0454d0789eabf543e37b332db4806d905fad13cdda"
},
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"sha256": "583bae215b2b2e51715591558a4d975fa0aed99da937d45a158c1888749a9a62"
},
{
"file": "app/Modules/Identity/Services/IdentityWorkflow.php",
"sha256": "6f78d35815aee5eaa09529dbc523afdc0d4ffe7e546624e04658c1562ae1de98"
},
{
"file": "app/Shared/Context/ModuleNavigation.php",
"sha256": "f60738e2f1ef1a87594b4a7994f2e5163fab345ccc0a320bb784c6eacb0a63b9"
},
{
"file": "app/Modules/Accounting/ComposedLedgerCandidates.php",
"sha256": "8e70302495c23a9dbbd2b38f73c361a890813767e07a8de90ac112735545f62e"
},
{
"file": "packages/general-ledger/src/StockValuation.php",
"sha256": "8d5c30e6410e0d08cca2cdfb23b6a0e7c984fd32811429d236845584a2e0ea60"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
},
{
"file": "packages/general-ledger/src/PayableJournal.php",
"sha256": "d15a34802c88eb562582cc0d98f203327855b1bcb861f6ce7b01c052431d2f09"
},
{
"file": "packages/general-ledger/src/LedgerCycle.php",
"sha256": "fa50770af8ec96e9ba2ffc3fbedfd34013a64bb99022d85bf5f0bef86bbc7767"
},
{
"file": "public/sgf-stock-final.mjs",
"sha256": "3cd677891d81f1694fea7dce1afe8d3eb5c088e217eb4ea3cf0a522b47761a4c"
},
{
"file": "resources/views/stock-final-workspace.blade.php",
"sha256": "93764471a215735a65e5c07121989b1e2f6499f631a11b9f1177bb0fe8def232"
},
{
"file": "resources/js/StockMenuWorkspace.jsx",
"sha256": "e4044ee10d5da2120f95fc62e88581b9df176317c10f02e91be51cee11240b21"
},
{
"file": "resources/js/ModuleNavigation.jsx",
"sha256": "659e5cafc99ff9fcd4f8bc7f500da963f0cb9a4ebad2cf962649e468495cd3cd"
},
{
"file": "resources/js/WorkshopMenuWorkspace.jsx",
"sha256": "397c749110e46953f7fde839cc2b0772b922716f2179461eddb11383909aed7d"
}
],
"client_recovery_execution": {
"script": "scripts/sgf-stock-final-client-check.mjs",
"source_sha256": "a304f4cc4bb78a7e116eae82b6cd5eafc036d32e036357081c761a85ce4b9ae5",
"observed_passed_checks": 9,
"evidence": "structured passed:true result observed during this delivery; no visual claim"
},
"stock_visual_review": {
"confirmed_by": "utilizador",
"response": "Abre e está legível",
"automated_browser_review": false,
"scope": "new Stock transit/lots/history screen only"
},
"other_visual_review": "pending; user confirmed access restored, not complete visual acceptance",
"navigation": "six horizontal module dropdowns with scoped functions; explicit context selection; no new rights",
"owner_acceptance_presumed": false,
"client_presentable": false,
"deployment_capacity_validated": false,
"operational_limits": [
"Sustained load not validated",
"Cold start of shared PostgreSQL/operating system not executed",
"Attachments retention/quotas and general orphan reconciliation not validated",
"Accounts/documents/payments remain synthetic",
"Optional catalogue features outside fixed mandatory matrix remain explicitly unavailable"
],
"preservation": {
"existing_client_and_draft_records_compared_unchanged": true,
"protected_six_associations_unchanged": true,
"other_protected_databases_connected": false,
"original_purchasing_binding_unchanged": true,
"frozen_purchasing_bundle_changed": false,
"cache_cleared": false,
"public_rights_changed": false,
"new_postgresql_roles": false,
"publication": false,
"checkpoint": false
}
}
@@ -0,0 +1,378 @@
{
"date": "2026-11-10",
"contract_sha256": "3803463f430091444001de6eace1d7e6b4fbf6b96e16a650ae2d2f3ef30ea1cc",
"installation": "cc50a276c10c",
"port": 8085,
"sgc_dependency": false,
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceWorkflow.php",
"present": true,
"sha256": "6f5c8af14412427134f1c40bda9215de68b3a66d46ed2287b59895f68b929179"
},
{
"file": "app/Modules/Services/ServiceInvoicing.php",
"present": true,
"sha256": "b5ac9898f2089fad7799b9e62e5ce5db6df7fd64643e8e7e3b52c6a0e2d142a8"
},
{
"file": "resources/js/ServicesWorkspace.jsx",
"present": true,
"sha256": "c170b195ccd78aa74f283a91b0b4f4cd93aea4677e3aaefe0b50af46f7e31669"
},
{
"file": "resources/js/ServiceInvoiceWorkspace.jsx",
"present": true,
"sha256": "347869a371084ae91bd7d651334f67f16369495263f28b8b8348bc442f7d6534"
}
],
"existing_evidence": [
{
"file": "docs/proofs/invoice-tests.json",
"present": false,
"sha256": null,
"not_reexecuted": true
}
],
"missing_host_tables": [
"b_internal_confirmations",
"doc_records",
"document_preview_models",
"service_calculation_profiles",
"sf_proposals",
"si_invoices"
],
"installation_complete": false,
"client_presentable": false,
"remaining": [
"Compor estruturas e guardas sintéticas na instalação única",
"Conservar o documento e identidade entre Comercial e Financeiro",
"Provar o percurso por interface na mesma empresa/unidade de apresentação"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "9b426476b2805094fb317cc753385ef43882fb4964883e880eac287eed89d9e0"
},
{
"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"
}
],
"existing_evidence": [
{
"file": "docs/proofs/purchasing-completion-final-20261104-r2.json",
"present": true,
"sha256": "3b63f8653e8dbb089dfdd8f389e271c022a070d5a67a9f9d4585ce84438070cc",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"installation_complete": false,
"client_presentable": false,
"remaining": [
"Reutilizar o percurso aceite sem o reexecutar por rotina",
"Ligar a continuação financeira e contabilística da mesma origem",
"Conservar a composição local sem serviço SGC obrigatório"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Inventory/StockReadController.php",
"present": true,
"sha256": "fd02da1a69f76bf1412f86f43095a0a476de49fbb7d2676a51fe3b29ec66e298"
},
{
"file": "app/Modules/Inventory/CompositionStockRead.php",
"present": true,
"sha256": "01c558457df290879bdf6c7f8de8cd9efccad81b940731f0aaf2489cf02bfcf7"
},
{
"file": "app/Modules/Inventory/StockPeriodReport.php",
"present": true,
"sha256": "d491541c6c60bc0c661dc442b8db8ce2e757f1d63dfc4982a3631f820cfb7a06"
},
{
"file": "app/Modules/Workshop/WorkshopStock.php",
"present": true,
"sha256": "6460a4235fe7b0b4602b0aeb63a47f1a97e367e93baba6aa774be5fa0dac4e6e"
}
],
"existing_evidence": [
{
"file": "docs/proofs/stock-period-report-20261103.json",
"present": true,
"sha256": "0ab25af6ffbff7d8ecb651df833771b082bf92d52f97eca4278fcac3fd5ea53b",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"installation_complete": false,
"client_presentable": false,
"remaining": [
"Disponibilizar os comandos de stock na interface SGF pelo writer comum",
"Concluir trânsito/recepção e divergências onde o percurso ainda é só definido",
"Conservar reservas, unidades e ausência de saldo negativo",
"Substituir as páginas informativas pelas operações efectivamente disponíveis"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Workshop/WorkshopStock.php",
"present": true,
"sha256": "6460a4235fe7b0b4602b0aeb63a47f1a97e367e93baba6aa774be5fa0dac4e6e"
},
{
"file": "resources/js/WorkshopWorkspace.jsx",
"present": true,
"sha256": "acc01d934dd11f783df82b40a6ece0905a67b0d26ff0bdfc3b18c11a027d66bb"
},
{
"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": "99ea0b2c0941db0a42ff1f3833225430a73efb6933b3f88a8be4481f902ac571"
}
],
"existing_evidence": [
{
"file": "docs/proofs/workshop-stock-closure-20261102.json",
"present": true,
"sha256": "261d5502f6905d53ef8046e0e900c9bee159c8c9d7e1bae4fddd8ec698313bf7",
"not_reexecuted": true
}
],
"missing_host_tables": [
"ws_orders",
"ws_entries",
"dc_calculations",
"ic_records",
"wb_drafts"
],
"installation_complete": false,
"client_presentable": false,
"remaining": [
"Compor na mesma instalação sem perder as aprovações existentes",
"Completar o percurso oficina → stock → custo → Comercial/Contabilidade",
"Conservar a distinção entre apontamento e movimento físico"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceReceivables.php",
"present": true,
"sha256": "725bc8773a78cfd05dd0a729d885a97c0eef43854ca7ab4210b4d5e80d5d54ec"
},
{
"file": "app/Modules/Purchasing/SupplierPayables.php",
"present": true,
"sha256": "c17d44391cbd96941aa2dd2eac2cb167508faf6453c6a1e86333846df1ba18b9"
},
{
"file": "resources/js/ServiceReceivablesWorkspace.jsx",
"present": true,
"sha256": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
}
],
"existing_evidence": [
{
"file": "docs/proofs/supplier-settlements.json",
"present": true,
"sha256": "b1bce9218f99ea2d8c780022ad385e169c7acc5778ac6950236eef0630f77ad0",
"not_reexecuted": true
}
],
"missing_host_tables": [
"sr_records",
"sr_effects",
"pa_obligations",
"pa_access",
"ps_payments"
],
"installation_complete": false,
"client_presentable": false,
"remaining": [
"Unificar as origens autorizadas sem copiar dívida ou saldos",
"Compor a tesouraria sintética e os relatórios na mesma empresa/unidade",
"Conservar vencimento desconhecido e histórico imutável"
]
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Accounting/GeneralLedger.php",
"present": true,
"sha256": "a87d2ea373bc61bb139aa29f2a354b9813bbb2d6229a389f8d37fd8e9890edec"
},
{
"file": "app/Modules/Accounting/GeneralLedgerController.php",
"present": true,
"sha256": "8c83538a5df4625bb3a15c81e3bf618d12187eca77da5f6e73dd1b4b781c64ce"
},
{
"file": "packages/general-ledger/src/LedgerSchema.php",
"present": true,
"sha256": "1fb2490fe8d4d206d2f8157803307cdd4e2f733150d0fec4993a7e229fce58cb"
}
],
"existing_evidence": [
{
"file": "docs/proofs/purchasing-completion-matrix-final-20261104.json",
"present": true,
"sha256": "94cb37698f294c38df9b94a5535ba4b9ac63907f94dab1e7f951a3bb27623083",
"not_reexecuted": true
}
],
"missing_host_tables": [
"ca_proposals",
"ca_resolutions",
"gl_accounts",
"gl_periods",
"gl_entries",
"gl_lines"
],
"installation_complete": false,
"client_presentable": false,
"remaining": [
"Compor diário e relatórios reais do núcleo na instalação única",
"Ligar Compras/Comercial/custos sem gerar lançamentos automáticos",
"Substituir os catálogos de relatórios por consultas disponíveis e verificadas"
]
}
],
"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,
"valid": false,
"superseded_by": "docs/proofs/sgf-solution-closure-baseline-final-20261110.json",
"correction": "Provisional footprint used incorrect workshop/ledger table names and invoice proof reference; use only the source-validated final baseline."
}
@@ -0,0 +1,376 @@
{
"date": "2026-11-10",
"contract_sha256": "12a783dd869de795e4cc67e2ce62d538d12f0707492d5b9e66dc18be5d074f52",
"installation": "cc50a276c10c",
"port": 8085,
"sgc_dependency": false,
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceWorkflow.php",
"present": true,
"sha256": "6f5c8af14412427134f1c40bda9215de68b3a66d46ed2287b59895f68b929179"
},
{
"file": "app/Modules/Services/ServiceInvoicing.php",
"present": true,
"sha256": "b5ac9898f2089fad7799b9e62e5ce5db6df7fd64643e8e7e3b52c6a0e2d142a8"
},
{
"file": "resources/js/ServicesWorkspace.jsx",
"present": true,
"sha256": "c170b195ccd78aa74f283a91b0b4f4cd93aea4677e3aaefe0b50af46f7e31669"
},
{
"file": "resources/js/ServiceInvoiceWorkspace.jsx",
"present": true,
"sha256": "347869a371084ae91bd7d651334f67f16369495263f28b8b8348bc442f7d6534"
}
],
"existing_evidence": [
{
"file": "docs/proofs/invoice-test-results.json",
"present": true,
"sha256": "fd04a58727ffddf1c62ac184d7834b81228dce2abb5b0c1e397505df6a45237c",
"not_reexecuted": true
}
],
"missing_host_tables": [
"b_internal_confirmations",
"doc_records",
"document_preview_models",
"service_calculation_profiles",
"sf_proposals",
"si_invoices"
],
"client_presentable": false,
"remaining": [
"Compor estruturas e guardas sintéticas na instalação única",
"Conservar o documento e identidade entre Comercial e Financeiro",
"Provar o percurso por interface na mesma empresa/unidade de apresentação"
],
"integrated_release_verified": false
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "9b426476b2805094fb317cc753385ef43882fb4964883e880eac287eed89d9e0"
},
{
"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"
}
],
"existing_evidence": [
{
"file": "docs/proofs/purchasing-completion-final-20261104-r2.json",
"present": true,
"sha256": "3b63f8653e8dbb089dfdd8f389e271c022a070d5a67a9f9d4585ce84438070cc",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"client_presentable": false,
"remaining": [
"Reutilizar o percurso aceite sem o reexecutar por rotina",
"Ligar a continuação financeira e contabilística da mesma origem",
"Conservar a composição local sem serviço SGC obrigatório"
],
"integrated_release_verified": false,
"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"
],
"sources": [
{
"file": "app/Modules/Inventory/StockReadController.php",
"present": true,
"sha256": "fd02da1a69f76bf1412f86f43095a0a476de49fbb7d2676a51fe3b29ec66e298"
},
{
"file": "app/Modules/Inventory/CompositionStockRead.php",
"present": true,
"sha256": "01c558457df290879bdf6c7f8de8cd9efccad81b940731f0aaf2489cf02bfcf7"
},
{
"file": "app/Modules/Inventory/StockPeriodReport.php",
"present": true,
"sha256": "d491541c6c60bc0c661dc442b8db8ce2e757f1d63dfc4982a3631f820cfb7a06"
},
{
"file": "app/Modules/Workshop/WorkshopStock.php",
"present": true,
"sha256": "6460a4235fe7b0b4602b0aeb63a47f1a97e367e93baba6aa774be5fa0dac4e6e"
}
],
"existing_evidence": [
{
"file": "docs/proofs/stock-period-report-20261103.json",
"present": true,
"sha256": "0ab25af6ffbff7d8ecb651df833771b082bf92d52f97eca4278fcac3fd5ea53b",
"not_reexecuted": true
}
],
"missing_host_tables": [],
"client_presentable": false,
"remaining": [
"Disponibilizar os comandos de stock na interface SGF pelo writer comum",
"Concluir trânsito/recepção e divergências onde o percurso ainda é só definido",
"Conservar reservas, unidades e ausência de saldo negativo",
"Substituir as páginas informativas pelas operações efectivamente disponíveis"
],
"integrated_release_verified": false
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Workshop/WorkshopStock.php",
"present": true,
"sha256": "6460a4235fe7b0b4602b0aeb63a47f1a97e367e93baba6aa774be5fa0dac4e6e"
},
{
"file": "resources/js/WorkshopWorkspace.jsx",
"present": true,
"sha256": "acc01d934dd11f783df82b40a6ece0905a67b0d26ff0bdfc3b18c11a027d66bb"
},
{
"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": "99ea0b2c0941db0a42ff1f3833225430a73efb6933b3f88a8be4481f902ac571"
}
],
"existing_evidence": [
{
"file": "docs/proofs/workshop-stock-closure-20261102.json",
"present": true,
"sha256": "261d5502f6905d53ef8046e0e900c9bee159c8c9d7e1bae4fddd8ec698313bf7",
"not_reexecuted": true
}
],
"missing_host_tables": [
"wo_orders",
"wo_entries",
"dc_calculations",
"ic_results",
"wb_proposals"
],
"client_presentable": false,
"remaining": [
"Compor na mesma instalação sem perder as aprovações existentes",
"Completar o percurso oficina → stock → custo → Comercial/Contabilidade",
"Conservar a distinção entre apontamento e movimento físico"
],
"integrated_release_verified": false
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Services/ServiceReceivables.php",
"present": true,
"sha256": "725bc8773a78cfd05dd0a729d885a97c0eef43854ca7ab4210b4d5e80d5d54ec"
},
{
"file": "app/Modules/Purchasing/SupplierPayables.php",
"present": true,
"sha256": "c17d44391cbd96941aa2dd2eac2cb167508faf6453c6a1e86333846df1ba18b9"
},
{
"file": "resources/js/ServiceReceivablesWorkspace.jsx",
"present": true,
"sha256": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
}
],
"existing_evidence": [
{
"file": "docs/proofs/supplier-settlements.json",
"present": true,
"sha256": "b1bce9218f99ea2d8c780022ad385e169c7acc5778ac6950236eef0630f77ad0",
"not_reexecuted": true
}
],
"missing_host_tables": [
"sr_records",
"sr_effects",
"pa_obligations",
"pa_access",
"ps_payments"
],
"client_presentable": false,
"remaining": [
"Unificar as origens autorizadas sem copiar dívida ou saldos",
"Compor a tesouraria sintética e os relatórios na mesma empresa/unidade",
"Conservar vencimento desconhecido e histórico imutável"
],
"integrated_release_verified": false
},
{
"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"
],
"sources": [
{
"file": "app/Modules/Accounting/GeneralLedger.php",
"present": true,
"sha256": "a87d2ea373bc61bb139aa29f2a354b9813bbb2d6229a389f8d37fd8e9890edec"
},
{
"file": "app/Modules/Accounting/GeneralLedgerController.php",
"present": true,
"sha256": "8c83538a5df4625bb3a15c81e3bf618d12187eca77da5f6e73dd1b4b781c64ce"
},
{
"file": "packages/general-ledger/src/LedgerSchema.php",
"present": true,
"sha256": "1fb2490fe8d4d206d2f8157803307cdd4e2f733150d0fec4993a7e229fce58cb"
}
],
"existing_evidence": [
{
"file": "docs/proofs/purchasing-completion-matrix-final-20261104.json",
"present": true,
"sha256": "94cb37698f294c38df9b94a5535ba4b9ac63907f94dab1e7f951a3bb27623083",
"not_reexecuted": true
}
],
"missing_host_tables": [
"ca_proposals",
"ca_resolutions",
"gl_accounts",
"gl_periods",
"gl_journals",
"gl_lines"
],
"client_presentable": false,
"remaining": [
"Compor diário e relatórios reais do núcleo na instalação única",
"Ligar Compras/Comercial/custos sem gerar lançamentos automáticos",
"Substituir os catálogos de relatórios por consultas disponíveis e verificadas"
],
"integrated_release_verified": false
}
],
"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
}
@@ -0,0 +1,690 @@
{
"date": "2026-11-10",
"contract_sha256": "367671e1869591249c2d704472279401d3ce03fe9ca8dc93e575d7c426e4508b",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Rácios e tendências conciliados com critérios aprovados"
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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"
}
],
"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
}
],
"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"
],
"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": "136844950032de0f66cce26adc9a75a7092ffac52025c236fc22c94b23e9b1ce"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"present": true,
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
},
{
"file": "app/Modules/Services/FiscalCoverage.php",
"present": true,
"sha256": "24108c35d52ba68797af655a2f6e824401a51865820f81ba7afa256b29db652b"
},
{
"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": "e7ead66818df2ba644b3b22d35707637ae05dcfcfbe28e57c0a3ed61b05180db"
},
{
"file": "app/Modules/Services/FiscalRuleExpression.php",
"present": true,
"sha256": "108d8401c9c2bc85b3e5f663322c3d36c267afd8529b370e7e16c1d565a3daef"
},
{
"file": "app/Modules/Services/Http/FiscalRulesController.php",
"present": true,
"sha256": "ad648825ec55b3bdb8eca038a01c5bd685b8b62b23f79bfd7771282506e1f66a"
},
{
"file": "public/sgf-fiscal-rules.mjs",
"present": true,
"sha256": "a14a6d71d206b64445990a197e30387acb5882f1331ac13c2f283d7de0cb2477"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,717 @@
{
"date": "2026-11-10",
"contract_sha256": "5338247db9343fb90593acd038882b013ace2c2a9d55d435f74752569ebf04a2",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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"
],
"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"
}
],
"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
}
],
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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"
}
],
"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
}
],
"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"
],
"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": "136844950032de0f66cce26adc9a75a7092ffac52025c236fc22c94b23e9b1ce"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"present": true,
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
},
{
"file": "app/Modules/Services/FiscalCoverage.php",
"present": true,
"sha256": "24108c35d52ba68797af655a2f6e824401a51865820f81ba7afa256b29db652b"
},
{
"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": "e7ead66818df2ba644b3b22d35707637ae05dcfcfbe28e57c0a3ed61b05180db"
},
{
"file": "app/Modules/Services/FiscalRuleExpression.php",
"present": true,
"sha256": "108d8401c9c2bc85b3e5f663322c3d36c267afd8529b370e7e16c1d565a3daef"
},
{
"file": "app/Modules/Services/Http/FiscalRulesController.php",
"present": true,
"sha256": "ad648825ec55b3bdb8eca038a01c5bd685b8b62b23f79bfd7771282506e1f66a"
},
{
"file": "public/sgf-fiscal-rules.mjs",
"present": true,
"sha256": "a14a6d71d206b64445990a197e30387acb5882f1331ac13c2f283d7de0cb2477"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,729 @@
{
"date": "2026-11-10",
"contract_sha256": "4e94b00e19ffaf15daefe0786839a5493ea44c4c1f0888818eb7b79b1c8ac2a2",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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"
],
"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"
}
],
"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
}
],
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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"
}
],
"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
}
],
"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"
],
"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": "136844950032de0f66cce26adc9a75a7092ffac52025c236fc22c94b23e9b1ce"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"present": true,
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
},
{
"file": "app/Modules/Services/FiscalCoverage.php",
"present": true,
"sha256": "24108c35d52ba68797af655a2f6e824401a51865820f81ba7afa256b29db652b"
},
{
"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"
}
],
"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": "817090269660361d940c17d1b2d9428697e744717d29f85b0a44206d883f82a3",
"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"
]
}
],
"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
}
@@ -0,0 +1,847 @@
{
"date": "2026-11-10",
"contract_sha256": "55017d586955291a1e70d891a3e40fdfd357761d8f70cc79e81a640c4fae9a4a",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "05fbc5c21ad8dcbb6947f28436d8a7ea27033baea27abed2d43c00ad7d632c71",
"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": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "05fbc5c21ad8dcbb6947f28436d8a7ea27033baea27abed2d43c00ad7d632c71",
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "05fbc5c21ad8dcbb6947f28436d8a7ea27033baea27abed2d43c00ad7d632c71",
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"file": "app/Modules/Workshop/WorkshopOrderRead.php",
"present": true,
"sha256": "b433c85d76609d2696c2818b34ba5c63059d673bad37c638e12d99f6ae0aac68"
},
{
"file": "app/Modules/Workshop/Http/WorkshopOrderReadController.php",
"present": true,
"sha256": "f4dd027d01c0730603f3b312c2eb263740f6ebe1c969c762ed99d19520fab584"
},
{
"file": "resources/js/WorkshopOrderList.jsx",
"present": true,
"sha256": "a66cfd110602f42155fa234452365270df7e0de65ef884e231e9e2fac45dc1f8"
}
],
"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": "05fbc5c21ad8dcbb6947f28436d8a7ea27033baea27abed2d43c00ad7d632c71",
"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"
],
"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": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "05fbc5c21ad8dcbb6947f28436d8a7ea27033baea27abed2d43c00ad7d632c71",
"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"
],
"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": "136844950032de0f66cce26adc9a75a7092ffac52025c236fc22c94b23e9b1ce"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"present": true,
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
},
{
"file": "app/Modules/Services/FiscalCoverage.php",
"present": true,
"sha256": "24108c35d52ba68797af655a2f6e824401a51865820f81ba7afa256b29db652b"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "05fbc5c21ad8dcbb6947f28436d8a7ea27033baea27abed2d43c00ad7d632c71",
"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"
]
}
],
"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
}
@@ -0,0 +1,869 @@
{
"date": "2026-11-10",
"contract_sha256": "3d918757d649f3f6e2468d3dc37b25614d81259bc11a8878e1eef8b56ee35a5d",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"file": "app/Modules/Workshop/WorkshopOrderRead.php",
"present": true,
"sha256": "b433c85d76609d2696c2818b34ba5c63059d673bad37c638e12d99f6ae0aac68"
},
{
"file": "app/Modules/Workshop/Http/WorkshopOrderReadController.php",
"present": true,
"sha256": "f4dd027d01c0730603f3b312c2eb263740f6ebe1c969c762ed99d19520fab584"
},
{
"file": "resources/js/WorkshopOrderList.jsx",
"present": true,
"sha256": "8b652d8a30bcd9ea477a9af88583fccaa5897aff28fdc65014fa9393bfc16f8a"
}
],
"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
}
],
"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"
],
"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": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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
}
],
"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"
],
"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": "24108c35d52ba68797af655a2f6e824401a51865820f81ba7afa256b29db652b"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,896 @@
{
"date": "2026-11-10",
"contract_sha256": "d76f60559a54e326ce5d5a3008546025c41fb64c8f0b6be588e86ec9379526e6",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"file": "app/Modules/Workshop/WorkshopOrderRead.php",
"present": true,
"sha256": "b433c85d76609d2696c2818b34ba5c63059d673bad37c638e12d99f6ae0aac68"
},
{
"file": "app/Modules/Workshop/Http/WorkshopOrderReadController.php",
"present": true,
"sha256": "f4dd027d01c0730603f3b312c2eb263740f6ebe1c969c762ed99d19520fab584"
},
{
"file": "resources/js/WorkshopOrderList.jsx",
"present": true,
"sha256": "8b652d8a30bcd9ea477a9af88583fccaa5897aff28fdc65014fa9393bfc16f8a"
}
],
"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
}
],
"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"
],
"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": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,928 @@
{
"date": "2026-11-10",
"contract_sha256": "75f0b966b49447fd3ab22b35115cb42068ed7026bf8c4e5160c71cf75aac5510",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"file": "app/Modules/Workshop/WorkshopOrderRead.php",
"present": true,
"sha256": "b433c85d76609d2696c2818b34ba5c63059d673bad37c638e12d99f6ae0aac68"
},
{
"file": "app/Modules/Workshop/Http/WorkshopOrderReadController.php",
"present": true,
"sha256": "f4dd027d01c0730603f3b312c2eb263740f6ebe1c969c762ed99d19520fab584"
},
{
"file": "resources/js/WorkshopOrderList.jsx",
"present": true,
"sha256": "8b652d8a30bcd9ea477a9af88583fccaa5897aff28fdc65014fa9393bfc16f8a"
}
],
"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
}
],
"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"
],
"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": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,955 @@
{
"date": "2026-11-10",
"contract_sha256": "d330c95f5d3d926a7a797f58717bda092b3bbe5d1993b90d601a70a1bb1fbb7e",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"file": "app/Modules/Workshop/WorkshopOrderRead.php",
"present": true,
"sha256": "b433c85d76609d2696c2818b34ba5c63059d673bad37c638e12d99f6ae0aac68"
},
{
"file": "app/Modules/Workshop/Http/WorkshopOrderReadController.php",
"present": true,
"sha256": "f4dd027d01c0730603f3b312c2eb263740f6ebe1c969c762ed99d19520fab584"
},
{
"file": "resources/js/WorkshopOrderList.jsx",
"present": true,
"sha256": "8b652d8a30bcd9ea477a9af88583fccaa5897aff28fdc65014fa9393bfc16f8a"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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": "c90ccc8d8c4b82b79cc09c3c7285e08920aaa88e9df035c9405e243fc0532b7c"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "14f8e440d8bd383913129586338521313952f2f14136a34871253dec0fa6b4b4"
},
{
"file": "resources/js/PayablePositionsWorkspace.jsx",
"present": true,
"sha256": "39fdb94987d2af398442249161be0dabd173031b23989d3a4fc725b794e3650a"
},
{
"file": "resources/js/payable-position-view.js",
"present": true,
"sha256": "e29e75cc7cea60db64bf8162122037b5fef9a2f7cd2fb28992e08c7d770db666"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,982 @@
{
"date": "2026-11-10",
"contract_sha256": "8d9a7deef828a41ce33a3e570c89e5cb4ec55eaf97d7988566d54cc01c4dd1be",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"file": "app/Modules/Workshop/WorkshopOrderRead.php",
"present": true,
"sha256": "b433c85d76609d2696c2818b34ba5c63059d673bad37c638e12d99f6ae0aac68"
},
{
"file": "app/Modules/Workshop/Http/WorkshopOrderReadController.php",
"present": true,
"sha256": "f4dd027d01c0730603f3b312c2eb263740f6ebe1c969c762ed99d19520fab584"
},
{
"file": "resources/js/WorkshopOrderList.jsx",
"present": true,
"sha256": "8b652d8a30bcd9ea477a9af88583fccaa5897aff28fdc65014fa9393bfc16f8a"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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": "5c18f289edb8e95299ac1f4d1a632e91876f7fb8e963dc6be562414705c15d4b"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "14f8e440d8bd383913129586338521313952f2f14136a34871253dec0fa6b4b4"
},
{
"file": "resources/js/PayablePositionsWorkspace.jsx",
"present": true,
"sha256": "3c7c68d45ecead585c187a2e6c3b6fb5a43dd1476d87b48d7d546da7ce47c03e"
},
{
"file": "resources/js/payable-position-view.js",
"present": true,
"sha256": "0f887420a6f2f08db251a7777d9ab7e49c6d2bc6f4405dc4b96d9df1d4c38f3a"
},
{
"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"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,994 @@
{
"date": "2026-11-10",
"contract_sha256": "8551bbb59e7a6d1de7ed0aef0697ae517c2c08624859f09aa6be99cc504b5b47",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
}
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"file": "app/Modules/Workshop/WorkshopOrderRead.php",
"present": true,
"sha256": "bdfb494b93933ff0397f685c9632f9e00f6746405dfeefe9a8a58fa75722f798"
},
{
"file": "app/Modules/Workshop/Http/WorkshopOrderReadController.php",
"present": true,
"sha256": "f4dd027d01c0730603f3b312c2eb263740f6ebe1c969c762ed99d19520fab584"
},
{
"file": "resources/js/WorkshopOrderList.jsx",
"present": true,
"sha256": "25dd8f625ddc77984ef697496de6487c1c8fc3684256ac1890066308faeb0e1a"
},
{
"file": "resources/js/workshop-report-view.js",
"present": true,
"sha256": "c255887925e9dc6e9d021008e857aa673dc01c8a8fd3651ecbe298d3bdec0f36"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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": "5c18f289edb8e95299ac1f4d1a632e91876f7fb8e963dc6be562414705c15d4b"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "14f8e440d8bd383913129586338521313952f2f14136a34871253dec0fa6b4b4"
},
{
"file": "resources/js/PayablePositionsWorkspace.jsx",
"present": true,
"sha256": "3c7c68d45ecead585c187a2e6c3b6fb5a43dd1476d87b48d7d546da7ce47c03e"
},
{
"file": "resources/js/payable-position-view.js",
"present": true,
"sha256": "0f887420a6f2f08db251a7777d9ab7e49c6d2bc6f4405dc4b96d9df1d4c38f3a"
},
{
"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"
}
],
"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
}
],
"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"
],
"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": "192e29600321e00abd6290f96a15fa529268b4ee312e7501436ef40f2a25502d"
},
{
"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"
}
],
"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
}
],
"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"
]
}
],
"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
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,542 @@
{
"date": "2026-11-10",
"contract_sha256": "04d29d2239fc2e0a60b4f330c51b6d7d872a31076bbe70c67c316ecadad898e5",
"installation": "cc50a276c10c",
"port": 8085,
"sgc_dependency": false,
"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"
],
"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"
}
],
"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
}
],
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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": "4985076af1c9a78a7ebaa7fa59f57ec9fea68b8b9f47c2c8db446729c2cd160e",
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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"
}
],
"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
}
],
"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": "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"
],
"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": "136844950032de0f66cce26adc9a75a7092ffac52025c236fc22c94b23e9b1ce"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"present": true,
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,613 @@
{
"date": "2026-11-10",
"contract_sha256": "85917791b0247724c0b4ccc654b59f2fad9c0c40fd12c71a4f6d0f4f7f2a9b2c",
"installation": "cc50a276c10c",
"port": 8085,
"sgc_dependency": false,
"full_product_complete": false,
"product_backlog": [
{
"id": "fiscal_books",
"status": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IVA: livros de apuramento/dedução/regularizações e cobertura além do caso delimitado"
},
{
"id": "irps_inss",
"status": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"id": "bank_reconciliation",
"status": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Reconciliação bancária operacional"
},
{
"id": "financial_analysis",
"status": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Rácios e tendências conciliados com critérios aprovados"
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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"
}
],
"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
}
],
"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": "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"
],
"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": "136844950032de0f66cce26adc9a75a7092ffac52025c236fc22c94b23e9b1ce"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"present": true,
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
},
{
"file": "app/Modules/Services/FiscalCoverage.php",
"present": true,
"sha256": "239c23697dcfb306fddfb1bc9b92340cfcd5f5033916bdb11f611bf23bad0eac"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,635 @@
{
"date": "2026-11-10",
"contract_sha256": "a55bcfd4b9e17c4f7ebd77a41b8d2016c8e5d4d2497d38bd9571a8e6d986aad8",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"id": "bank_reconciliation",
"status": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Reconciliação bancária operacional"
},
{
"id": "financial_analysis",
"status": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Rácios e tendências conciliados com critérios aprovados"
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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"
}
],
"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
}
],
"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": "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"
],
"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": "136844950032de0f66cce26adc9a75a7092ffac52025c236fc22c94b23e9b1ce"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"present": true,
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
},
{
"file": "app/Modules/Services/FiscalCoverage.php",
"present": true,
"sha256": "24108c35d52ba68797af655a2f6e824401a51865820f81ba7afa256b29db652b"
},
{
"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"
}
],
"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
}
],
"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"
]
}
],
"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
}
@@ -0,0 +1,662 @@
{
"date": "2026-11-10",
"contract_sha256": "96bbc4af18835db9533c0b3babc23dd81aa1e22dfc2654dc629725fc6fd099d3",
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "IRPS, remunerações e INSS operacionais"
},
{
"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": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Calendário legal e outras obrigações por fonte/vigência"
},
{
"id": "bank_reconciliation",
"status": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Reconciliação bancária operacional"
},
{
"id": "financial_analysis",
"status": "pending",
"implemented": false,
"basis": "docs/SERVICE_INVOICE_CALCULATION_SPEC.md sections10/11",
"description": "Rácios e tendências conciliados com critérios aprovados"
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"present": true,
"sha256": "8770340b1a5c6ec39b3ccb306b38e9c699d68db33d53237423cf631e512b6439"
},
{
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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"
}
],
"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
}
],
"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"
],
"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": "f5207e5f16a4477034185d0cdeb79adc8e462cbf04d5e3fd7e633b8a5433b0ba"
},
{
"file": "app/Modules/Purchasing/ComposedFinance.php",
"present": true,
"sha256": "ad7e837c7608ab85c59eb169bcdd986b08c5802a0f218926e1abd7568e8a4b16"
},
{
"file": "app/Modules/Purchasing/ComposedFinanceController.php",
"present": true,
"sha256": "b417a6dc7d05f7b5ea1c8c043dcf647cb4ba5e09855d0030affa232728fce5b5"
},
{
"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"
}
],
"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
}
],
"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": "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"
],
"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": "136844950032de0f66cce26adc9a75a7092ffac52025c236fc22c94b23e9b1ce"
},
{
"file": "packages/general-ledger/src/StockTransitEvidence.php",
"present": true,
"sha256": "eb8eee3bb293e77689eb6470ac8aa12049b2ff8cfb8694d3e15eb17e097d2da6"
},
{
"file": "app/Modules/Services/FiscalCoverage.php",
"present": true,
"sha256": "24108c35d52ba68797af655a2f6e824401a51865820f81ba7afa256b29db652b"
},
{
"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": "e7ead66818df2ba644b3b22d35707637ae05dcfcfbe28e57c0a3ed61b05180db"
},
{
"file": "app/Modules/Services/FiscalRuleExpression.php",
"present": true,
"sha256": "108d8401c9c2bc85b3e5f663322c3d36c267afd8529b370e7e16c1d565a3daef"
},
{
"file": "app/Modules/Services/Http/FiscalRulesController.php",
"present": true,
"sha256": "ad648825ec55b3bdb8eca038a01c5bd685b8b62b23f79bfd7771282506e1f66a"
},
{
"file": "public/sgf-fiscal-rules.mjs",
"present": true,
"sha256": "a14a6d71d206b64445990a197e30387acb5882f1331ac13c2f283d7de0cb2477"
}
],
"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
}
],
"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"
]
}
],
"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
}
+75
View File
@@ -0,0 +1,75 @@
{
"version": "SGF-INTERNAL-STATEMENTS-QA-v1",
"passed": true,
"target": "existing8085",
"core_checks": 152,
"compatibility_download_checks": 5,
"existing_fiscal_ui_checks_reused": 22,
"preservation_acl_checks": 65,
"new_right_names": 2,
"qa_grants_per_book": 2,
"total_qa_grants": 4,
"administrative_commands_8085": 4,
"mapping_versions": 2,
"result_versions": 2,
"frozen_results": 1,
"frozen_lines": 19,
"unclassified_accounts": 9,
"new_accounts": 0,
"new_journals": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false,
"evidence": {
"regression": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-055742-599ba3f2/statements-result.json",
"boundaries": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-060256-39e5bc78/statements-boundaries.json",
"snapshot_failure": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-060706-6e84beb9/statements-snapshot-failure.json",
"concurrency": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/statements-concurrency-1794369694260/result.json",
"ui": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/statements-ui-20261111.json",
"http": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/statements-http-20261111.json",
"download": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/statements-download-proof-20261111.json",
"final_http": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/statements-final-http-20261111.json",
"fiscal_map_download": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/fiscal-map-download-proof-20261111.json",
"fiscal_compatibility_ui": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/fiscal-obligations-download-ui-20261111.json",
"regression_setup": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-055508-e724dbbc/statements-setup.json",
"selected_setup": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-060417-cb04ea5b/statements-setup.json",
"installation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-073116-5f71ef3d/statements-installation.json",
"preservation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-072958-f49bf78c/statements-preservation.json"
},
"evidence_sha256": {
"regression": "e1365012a16612317b4418a24fcb0beae9951c59055fe89108d405b61965174c",
"boundaries": "76d8801a1214251589c2b98167669d4b506af03c4ee9fa1908409b4a714866c3",
"snapshot_failure": "d0631024c01969a76fdcb6d9f15f47ce4150b1fdd97d714a4323f3d506ff8f3b",
"concurrency": "95398de71d0e41787afec9c1ea826dc59b78ca136d97302322245139bcf4fc5e",
"ui": "230886a2eb740659c26930ade078cc835ddd101c96ac474b8f587475382b7800",
"http": "89ec8432aa0d8e5b5169409beece92f608e19652442cd2a24b54440988c2e6dd",
"download": "74a83c10c9d69aa3f3bc2b9ac88f14b272fef4f3c8edcee5be75c5e791d36ee8",
"final_http": "8c9d41dad651d7e0e6cac19f62b6cd93bdaa03b8c44aeef0aa56abb93805b748",
"fiscal_map_download": "3989c5d1962546371ba91a63e2523e75aa1845dda10f6dde28864f3e0d71ad25",
"fiscal_compatibility_ui": "d46b52080dcf9bd6ad9cf18cbb0a5509c3177011bed690c97e0a0551bb4ec94d",
"regression_setup": "5fb1c4a4388bb786bd08478d10aca7a54362e427ee1b0b738a6ed33f8b1e1e3f",
"selected_setup": "1853a8ab4bcaa0011826f7b45962ee662abcb4e123799dd4853570b8afc2d74c",
"installation": "4d5bebc25e66b20675c45ed38d02b832a4267a8f144a5a95d3d75bdbe9842d62",
"preservation": "d7d77fc88c2c9525d87be5912c96018f0c51bd4b2772a9e2a0300ba2d606d0a6"
},
"sources": [
"app/Modules/Accounting/InternalStatementsController.php",
"app/Modules/Accounting/InternalStatementTotals.php",
"resources/js/InternalStatementsWorkspace.jsx",
"resources/js/internal-statements-view.js",
"resources/js/statement-download.js",
"resources/js/FiscalObligationsWorkspace.jsx",
"database/sql/internal_statements.sql",
"config/internal_statements.php"
],
"source_sha256": {
"app/Modules/Accounting/InternalStatementsController.php": "b05990c7fdb195957808b63a77599eaaabed5c5eb435dd8e7dd13d662c22fd8d",
"app/Modules/Accounting/InternalStatementTotals.php": "f13f6f356100e49786869196c54343fd629f6a1d38fa81665eb768dae4731601",
"resources/js/InternalStatementsWorkspace.jsx": "2fadac08cd6162dd06d056bfc4fb00479e9a5d930fdde10c1a4b57507982e76e",
"resources/js/internal-statements-view.js": "f1f7b44f2dc1679e537d77522e0fc5ee84da23068ef3157677bc20a8409d3464",
"resources/js/statement-download.js": "56e81a93af939e7b04f76347912af1093110afe48dd69549287561149b3999a0",
"resources/js/FiscalObligationsWorkspace.jsx": "77e6741581305739000e6ac4923f350464338d93346a860bf840ff08d7740b90",
"database/sql/internal_statements.sql": "2beccb0bb7d91f48e5a5e386c1e010fb7d95cbfa90aa35a68e28dc63ae6a6f6b",
"config/internal_statements.php": "39fc036c111c443ee2bc8fac28d94dde055083b2abfb955d5aa9299b90b26cdb"
}
}
@@ -0,0 +1,173 @@
{
"passed": true,
"date": "2026-11-10",
"installation": "cc50a276c10c",
"port": 8085,
"checks": {
"regression": 34,
"boundaries": 11,
"http": 22,
"dom_http": 15,
"navigation": 3,
"served_checksums": 2,
"asset_routing": 17,
"asset_http": 13
},
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-213243-02cebb42\\stock-catalogue-result.json",
"sha256": "3d04772edfba1dd4565451c60541c6d0a37f2db0db2754bbcc31a181ba4a8104",
"checks": 34,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-213644-443f1ddd\\stock-catalogue-boundaries.json",
"sha256": "c7aadf52b0d264e0a75331d91f0a3ad05ebfac4ee62fa7dd7e38747896265d14",
"checks": 11,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\catalogue-concurrency-1794339220350\\result.json",
"sha256": "0b55a713be701fd5c565aa89991c03cfc0f937799ad8e13c6b365d0c067b33a3",
"checks": 0,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-213118-57514c10\\stock-catalogue-setup.json",
"sha256": "48be6ee19c9ef408f4f7fc22c9e333867ac54987ccc70ff8eb7ddecb8fd91b29",
"checks": 0,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-213745-50744fa0\\stock-catalogue-setup.json",
"sha256": "dc3c5c8ce1e396c232650be5c44c48b29e951778de8094046fdf15bcfd64a7d7",
"checks": 0,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-213753-3e397d45\\stock-catalogue-setup.json",
"sha256": "d288a0b518c033722ba3fbad3d17d2c7b4295eee02bc50a83bb0a9d76b067400",
"checks": 0,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\stock-catalogue-http-20261110.json",
"sha256": "cd0773771f62eb81f6538a6ed262fb363a9c5382ce87466a7f028eeb469799c8",
"checks": 22,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\stock-catalogue-dom-http-20261110.json",
"sha256": "995c1677f39e70d7e57901c2316e7d01d127fe24aa289bdc40e40f7f0e710674",
"checks": 15,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\stock-catalogue-navigation-20261110.json",
"sha256": "5d5b25688636729966f2c6f85ea10050d3062084454eecd1137b69e677cc450e",
"checks": 3,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\stock-catalogue-assets-20261110.json",
"sha256": "7b207e1f005f375fec1582f99f75b2c8fbd8361909ee8711ff699ef7f2531552",
"checks": 2,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-214445-dc4f79de\\stock-catalogue-preservation.json",
"sha256": "ae7fd34c1cd205f60deeef360be02129850396381b7bb30be0eeacf5e0772149",
"checks": 0,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-214607-6709696b\\stock-catalogue-installation.json",
"sha256": "a4ccf97112501e1ccaf59d4c7700341ff1777bec08f310ced1192afcd7d82a9e",
"checks": 0,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\asset-routing-boundaries-20261110.json",
"sha256": "fd770a55b827cd37c64908b2e0e16b76b86d78cfcd3f0ea10f73a7356e40314e",
"checks": 17,
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\assets-http-20261110.json",
"sha256": "7bc8c39c196d3bfe6f90a50f473041ffcb1036b8339de8c2fe5277dfe5933b06",
"checks": 13,
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Inventory/StockCatalogueController.php",
"sha256": "ab0a6bc52e635d5bcdee9163b68b1ec6fc14b717de7b887fcc832336961fa128"
},
{
"file": "app/Modules/Purchasing/ReceiptRuntime.php",
"sha256": "b08af1f8772cbfafa1f85e37c832f2c6916ccabcfbd4a8bb98c5ef7690c3f07f"
},
{
"file": "app/Shared/Context/ModuleNavigation.php",
"sha256": "830e2b8423058a85e1319bc9c92da35efe57c9e19d4cc1be99b6154df7301dac"
},
{
"file": "app/Modules/Identity/Services/IdentityWorkflow.php",
"sha256": "fe6105fb8e0cb01082f6d3525bbf45a319d9a0da2506df1af644eaf9f5cf4f75"
},
{
"file": "resources/js/app.jsx",
"sha256": "05b94fc91a5b3e190f37488a66a230f984487eeb8f8842a1d6c8c00ba450a620"
},
{
"file": "resources/js/WorkspaceNavigation.jsx",
"sha256": "fe9e2cd5d9bea500bde816e53f99dd62df68da58b8983c4a3dbc6268f35b46cf"
},
{
"file": "resources/js/StockMenuWorkspace.jsx",
"sha256": "ab1f88de113d61854ae09e07e7aac98aa6ac43ab135f975bc20e7941a27d2fdd"
},
{
"file": "resources/views/stock-catalogue-workspace.blade.php",
"sha256": "4381f81a9aea04fe851f8c7af17cafb98f6bef7cbf52ac2630b0b9912a3dca57"
},
{
"file": "public/sgf-stock-catalogue.mjs",
"sha256": "10eedcf1881ad3f1cb71813f0547eae7246795273457cc33b1a2a6761a0a2d6e"
},
{
"file": "config/stock_catalogue.php",
"sha256": "811f844cecf76bff62da943042a272301cb8a7f7a586c4f2648ef5b8e5e31dae"
},
{
"file": "database/sql/stock_catalogue.sql",
"sha256": "c9c99cec20e6ca60cf0ee56210eac9a2365a2ef9b482698929a70295d2893809"
},
{
"file": "routes/web.php",
"sha256": "a5a726160f212ccc5dbfb70d513bdabd447e340e8515e2658142c25ce784bef9"
},
{
"file": "scripts/receipt-composition-http.php",
"sha256": "f62d8a8ea68026e630510ccfb9ae14a1e67ecd55eca9f0384db59d0c5549279f"
},
{
"file": "scripts/sgf-selected-assets.php",
"sha256": "fdb89f69981eb04a194016732edca808d5d2482b20455f791203736c48016b57"
},
{
"file": "scripts/sgf-stock-catalogue-setup.php",
"sha256": "dce7f161c76aef4718815b6991b6c3e8f4464a8f28a39466ec8f398791dab3c5"
}
],
"new_host_grants_per_book": 2,
"total_new_host_grants": 4,
"new_public_grants": 0,
"new_items_8085": 1,
"new_stock_movements": 0,
"new_journals": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false
}
@@ -0,0 +1,72 @@
{
"passed": true,
"date": "2026-11-10",
"installation": "cc50a276c10c",
"port": 8085,
"regression_checks": 23,
"http_checks": 15,
"client_checks": 7,
"projection_selects_per_page": {
"25": 5,
"100": 5
},
"evidence": [
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-b4093c6f6707\\single-integration\\20261110-181533-d853d6ad\\stock-inactive-result.json",
"sha256": "1bb193bb9bd78b714e931b63ec31ae72d1cf8646b69beb2657ef38ff17fb117b",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\stock-inactive-http-20261110.json",
"sha256": "60dab98b897cabd8ae507a1d24291572bbeee36d135cdcd626439ad6d7d320f5",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\stock-inactive-ui-20261110.json",
"sha256": "f08b95965eaa3aa7b45fb2fbd83020de9a8c04f26435740c348d8493e42f659c",
"passed": true
},
{
"path": "C:\\laragon\\data\\sgf-tempo\\run\\modular-regression-2576427d1939\\private\\receipt-composition-cc50a276c10c\\single-integration\\20261110-181716-7f1ec0a6\\stock-inactive-preservation.json",
"sha256": "48bf58349b1afb1d33b1bcec9608dd73368f9095a0e11fe79846909e8297e196",
"passed": true
}
],
"sources": [
{
"file": "app/Modules/Inventory/StockInactiveReport.php",
"sha256": "7db06225fb7bb40c9a4140383caef6dd96c430e3a3e1be8ef7fed2253f2681e2"
},
{
"file": "app/Modules/Inventory/CompositionStockRead.php",
"sha256": "81bdb5fb374a60974bbad421c461cd12079951fb426361200692a838e413b49e"
},
{
"file": "resources/js/StockInactiveReportWorkspace.jsx",
"sha256": "5d4f7222bf325550cebddbd00198515da55f15f52b4c99ecaef19f45820a165e"
},
{
"file": "resources/js/StockMenuWorkspace.jsx",
"sha256": "192f4f1a7a9e8920ceb38fa035e8871d22d4b6ba10b7a2644c55637c64d12b74"
},
{
"file": "config/receipt_qa.php",
"sha256": "eedca2c93e90906e2989f59757ada449a2d727baab73b812f6b2e8b9a8b84717"
},
{
"file": "app/Modules/Identity/Services/IdentityWorkflow.php",
"sha256": "c5e95b3df82b1e817cab9eda48a2379c8e309e29c4154668fa90d6ae5265c124"
}
],
"selected_business_commands": 0,
"journals_preserved": 27,
"new_rights": 0,
"new_demo": false,
"cache_cleared": false,
"visual_review": false,
"load_validated": false,
"deployment_validated": false,
"accepted": false,
"delivery_report": "docs/SGF_STOCK_INACTIVITY_DELIVERY.md",
"consolidated_report": "docs/SGF_CURRENT_DELIVERY_20261110.md"
}
@@ -0,0 +1,97 @@
{
"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"
}
}
@@ -0,0 +1,39 @@
{
"passed": true,
"date": "2026-11-11",
"installation": "cc50a276c10c",
"port": 8085,
"evidence": [
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261111-074106-867d5916/equipment-orders-result.json",
"sha256": "5f63b4ee44257f4feb7279ce3d778355c905ade43a636bae3dcd3bed89d07007",
"checks": 23
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/equipment-orders-ui-20261111.json",
"sha256": "19dcab02124658e470ed1d7b95554b44a1967a3744393989f8e172c67cab735b",
"checks": 12
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/equipment-orders-http-20261111.json",
"sha256": "cec1295f6ab34628ec83acaa6271c41c0ced11cf7fa8b45036debafaea4a3232",
"checks": 17
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-074653-1680702c/equipment-orders-installation.json",
"sha256": "e5637a6ccc9abf3ac9fff798fa4780be55aef932f9d5eb2089c34215719d165a",
"checks": 56
},
{
"file": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261111-074750-492f6c0a/equipment-orders-preservation.json",
"sha256": "86d9e09fd477d09ad416b327e3b8e3d942c488d7d710815b17590e2e901a4812",
"checks": 56
}
],
"directed_checks": 52,
"business_commands_8085": 0,
"new_grants": 0,
"cache_cleared": false,
"visual_review": false,
"deployment_validated": false
}
@@ -0,0 +1,27 @@
{
"version": "SGF-WORKSHOP-OPENING-PERIOD-QA-v1",
"passed": true,
"target": "existing8085",
"regression_checks": 21,
"ui_checks": 13,
"http_checks": 15,
"original_tables_identical": 48,
"business_commands": 0,
"new_rights": 0,
"new_demo": false,
"browser_visual_review": false,
"deployment_validated": false,
"evidence": {
"regression": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-b4093c6f6707/single-integration/20261110-222954-a3239460/workshop-period-result.json",
"ui": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/workshop-period-ui-20261110.json",
"http": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/workshop-period-http-20261110.json",
"installation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-223035-3a46a21d/workshop-period-installation.json",
"preservation": "C:/laragon/data/sgf-tempo/run/modular-regression-2576427d1939/private/receipt-composition-cc50a276c10c/single-integration/20261110-223116-7608f084/workshop-period-preservation.json"
},
"sources": [
"app/Modules/Workshop/WorkshopOrderRead.php",
"resources/js/WorkshopOrderList.jsx",
"resources/js/WorkshopMenuWorkspace.jsx",
"resources/js/workshop-report-view.js"
]
}