Files
SGF/docs/proofs/receipt-documents-composition-20261103.json
2026-11-04 09:37:20 +02:00

270 lines
12 KiB
JSON

{
"date": "2026-11-03T16:55:11.029Z",
"increment": "SGF-RECEIPT-DOCUMENTS-QA-v1",
"passed": true,
"functional_code": true,
"checks": 58,
"tests": {
"documents": {
"file": "private/receipt-composition-1968d008dac9/receipt-documents-result.json",
"sha256": "085879363fff52b88a9a91dfedc3f758dd1967d32191d3e2859d366489b50e99",
"checks": 28,
"result": {
"passed": true,
"checks": [
"fresh native receipt document book begins empty",
"receipt detail exposes attachment revision and existing warehouse capability",
"private metadata has server pagination15",
"request-only roles cannot inspect receipt attachment metadata",
"preview uses original service and explicit safe metadata and impact",
"preview rolls back document and audit and removes only staged file",
"native content extension and type validation preserved",
"independent sessions prepare same native operation key",
"confirmation rejects substituted bytes",
"confirmation rechecks existing host permission",
"outer provenance failure rolls back native document and compensates proven uncommitted file",
"concurrent confirmations finish once with201 and replay200 after lock release",
"lost-response replay creates no additional root decision",
"preview of same type and hash reuses original without deleting permanent file",
"new explicit intent reuses original native document and filename without another file",
"native key rejects another content before confirmation",
"metadata never exposes private path or native tenant",
"native download checks original hash and streams private sandboxed bytes",
"authorised download trace linked to original requisition",
"tampered stored evidence blocks both download and replay",
"document cannot cross receipt parent",
"16 documents span distinct15 and1 pages",
"permanent files match native documents and preview files are absent",
"receipt evidence appears in authorised requisition dossier timeline",
"other module cannot reuse document capability",
"unmapped unit cannot read private attachments",
"attachment book retains one complete receipt and its original1000milli movement",
"attachment decisions introduce no invoice debt payment or accounting effect"
],
"transport_documents": 1,
"native_volume_documents": 15,
"documents": 16,
"permanent_files": 16,
"staged_files": 0,
"concurrency_statuses": [
200,
201
],
"new_right_names": [],
"visual_review": false,
"deployment_capacity_validated": false
}
},
"additional": {
"file": "private/receipt-composition-1968d008dac9/receipt-documents-extra.json",
"sha256": "708f4c11c201b6265292ec99e29a7d7c6ec4ca47abe7c7adc08cb1e7f6afdb10",
"checks": 6,
"result": {
"passed": true,
"checks": [
"confirmation compares current immutable receipt revision again",
"expired conference requires a new individual preview",
"changed source binding cannot confirm earlier conference",
"changed session context generation requires renewed conference",
"shared storage helper preserves supplier native preview with default disk",
"supplier preview keeps both document namespaces and prior receipt evidence intact"
],
"new_right_names": []
}
},
"guards": {
"file": "private/receipt-composition-8c363c2b4ac1/receipt-documents-guards.json",
"sha256": "a84f8ab5e6d268bb037fc5422772817ccc54d05d5ec4b07a3f6a548003394f20",
"checks": 4,
"result": {
"passed": true,
"checks": [
"disabled document metadata refuses before SQL",
"disabled upload refuses before validation storage and SQL",
"production refuses synthetic document adapter before SQL",
"document route belongs to purchasing and guard probes issue zero SQL"
],
"database_queries": 0
}
},
"demo": {
"file": "private/receipt-composition-8c363c2b4ac1/receipt-documents-demo.json",
"sha256": "ec90367b867af77d5202dfd09d36eaae2f5a23a1a6ec8a7ab97cb32a6c937699",
"checks": 8,
"result": {
"passed": true,
"checks": [
"new integrated demo starts without main requests receipts or documents",
"receipt screen respects actor permission",
"receipt screen respects validator permission",
"empty demo invents no receipt attachment owner",
"receipt screen respects requester permission",
"served receipt evidence source matches receipt-workspace.mjs",
"served receipt evidence source matches supplier-documents.mjs",
"demonstration metadata probes preserve supplier receipt document and audit book"
],
"before": "20343ea6bd89e2d899bc299fa7f9479e9f17051a3bcbf0edee619252a771c94e",
"after": "20343ea6bd89e2d899bc299fa7f9479e9f17051a3bcbf0edee619252a771c94e",
"visual_review": false
}
},
"assets": {
"file": "private/receipt-composition-8c363c2b4ac1/receipt-documents-assets.json",
"sha256": "fac39bfeea24042f5f55c959fca4c970139b814724f7e6fd68aa78316642989f",
"checks": 3,
"result": {
"passed": true,
"checks": [
"private frontend build succeeds",
"served built assets match private build",
"supplier document module is served through private static whitelist"
],
"assets": [
"assets/app-rwyn9RPO.js",
"assets/app-BLSNCrO7.css"
],
"visual_review": false
}
},
"ui": {
"file": "private/receipt-composition-8c363c2b4ac1/receipt-documents-ui.json",
"sha256": "8f72a40a473a96e8b53b83dc44d12b3782f11238b9cb87b293d7f08b39cd53b5",
"checks": 9,
"result": {
"passed": true,
"checks": [
"shared component preserves original supplier type choices",
"receipt uses native types and an explicit initially empty choice",
"mounting lists evidence without preparing or confirming an upload",
"explicit receipt preview uses owner endpoint context and original revision",
"receipt impact explains preserved quantities and stock",
"only explicit confirmation sends the preview and reloads receipt history",
"editing invalidates the existing conference",
"late preview cannot restore confirmation after an input edit",
"read-only view lists documents without creating an upload form"
],
"dom_simulation": true,
"visual_review": false
}
}
},
"sources": [
{
"file": "app/Modules/Purchasing/ReceiptDocumentsController.php",
"sha256": "ae238ccec6628949dac4d18cc3514849303dda432ec371f7507e84498108e03c"
},
{
"file": "app/Modules/Purchasing/SupplierDocumentFiles.php",
"sha256": "cc140b5c56781fbcb8f582972b6030e8602fd1fe4ad02d435ae6676f177819db"
},
{
"file": "app/Modules/Purchasing/ReceiptController.php",
"sha256": "51a0fa060fcce212646cf22332df352d90a5994cb7785eedc789585e02569616"
},
{
"file": "app/Modules/Purchasing/DossierController.php",
"sha256": "e74e20953fa86bb1a0a273b8cf4bd272767167d7665b8b8529cb47bc99d21281"
},
{
"file": "config/receipt_qa.php",
"sha256": "5bce3d7d983579da47e2ae84d66eae10111f69fb49e0d3d2703ab047ac84d2bd"
},
{
"file": "routes/web.php",
"sha256": "f7d16d6e0525f286e4ff4d1d577569163908b4780c503d97534929125e17f96b"
},
{
"file": "public/receipt-workspace.mjs",
"sha256": "a128926d876ae10eb2a17ec2410ba99282d782f03bb9642cbdcad93d548ce002"
},
{
"file": "public/supplier-documents.mjs",
"sha256": "accfc25b8c20a975032e30a01443a2286de0212ed34cd9d9c321ef5c87aa0b36"
}
],
"pinned_native_manifests": {
"bundle": "7709a3d447d54c17d2fb4be4f9a0f70455c4a38c34e4bb8c643f6b5169071556",
"economic": "8b2d3aa61054e0edc54fcd818467eb2bacb5e1178f903b12ab44119e0f2e8d2e",
"internal": "2343af71f72259dd705f4cc3a3b163c90edf331a5b6ebe173531aeb341649e1b"
},
"authority": {
"original_service": "ReceiptDocuments::add",
"original_download_controller": true,
"private_qa_storage": true,
"source_company_unit_checked": true,
"existing_rights": [
"purchasing_receipts.view",
"purchasing_receipts.confirm"
],
"new_right_names": [],
"canonical_document_reused_by_receipt_type_hash": true,
"quantity_or_quality_decision_changed": false
},
"regression": {
"transport_documents": 1,
"native_volume_documents": 15,
"documents_and_files": 16,
"staged_files": 0,
"concurrency_statuses": [
200,
201
],
"receipt_quantity_milli": 1000,
"physical_movements": 1,
"source_workflow_setup_only": true,
"successful_prefix_reused": true,
"dossier_test_corrected_for_profile_and_history_page": true,
"other_module_test_expected403_for_warehouse": true
},
"demo": {
"port": 8077,
"entry": "http://127.0.0.1:8077/qa/enter/actor?open=1",
"warehouse": "http://127.0.0.1:8077/qa/enter/validator?open=1",
"initial_documents": 0,
"initial_receipts": 0,
"initial_main_requests": 0,
"prepared_suppliers": 3
},
"prior_proofs_preserved": [
{
"file": "docs/proofs/supplier-documents-composition-20261103.json",
"sha256": "d5709128ee45b7ee1397695b06502b9386dccd13779203c13abbd54281552068"
},
{
"file": "docs/proofs/receipt-workspace-completion-20261103.json",
"sha256": "59bb66df5d5e12f898045669a0ad24664c3d09f2d3ab6cf70f4f13d6a34c6548"
},
{
"file": "docs/proofs/purchasing-dossier-composition-20261103.json",
"sha256": "15686bc54488be2aa342c899f82a683ee43674621a8c4678b5ba6c34d08e6a62"
},
{
"file": "docs/proofs/module-association-consolidation-summary-20261102.json",
"sha256": "8f693f39763ee21a22ebd3929d95ba1480f339eca18742fa53055c69eb5219ef"
}
],
"preservation": {
"installed_purchasing_sha256": "81899e531e9eec449717e694d8bdc106a9e220a828f5491ce918c1d2dc612787",
"target_database_connected": false,
"protected_six_records_changed": false,
"blocked_cache_cleared": false,
"previous_demo_data_written": false,
"public_rights_changed": false,
"publication": false,
"checkpoint": false
},
"limitations": [
"Positive binary fixture is PNG; PDF/JPEG rules remain native, without a new full-format reader regression.",
"A document is evidence, not authentication, fiscal certification or a decision accepting quantities/quality.",
"Deduplication is within one receipt and document type by SHA; it is not global deduplication. Separate explicit intents may each have an audit event for the same canonical document.",
"Ordinary rollback compensation is tested. An uncertain commit retains evidence; crash-orphan reconciliation, retention, quotas and sustained storage load are pending.",
"Fifteen original-service uploads are volume fixture preparation, not15 HTTP transport confirmations.",
"The final physical assertion after resumed read checks verifies one receipt and one1000milli movement; no all-table before/after fingerprint is claimed for the full command run.",
"DOM simulation checks component logic, not browser rendering, accessibility or visual acceptance.",
"Native schema provisioning is current while runtime is pinned. General installation and least-privilege deployment are not validated.",
"Visual review, sustained load and deployment capacity remain pending."
],
"visual_review_pending": true,
"deployment_capacity_validated": false
}