{
  "schemaVersion": 1,
  "evidenceId": "posnic-development-pos-client-fixture-supplement-2026-08-22",
  "status": "supplementary_source_evidence",
  "testedAt": "2026-08-22T13:05:27.664Z",
  "claimScope": "A clean Posnic development snapshot passed four focused source/DOM checks: fixture-shaped SALE-001 receipt values traversed the shipped HTML extractor and ESC/POS byte renderer for 58 mm and 80 mm layouts, and the shipped pre-completion clear handler emptied an unsaved basket while instrumented network methods recorded no call.",
  "baseline": {
    "evidenceId": "posnic-development-pos-acceptance-fixture-2026-08-22",
    "publicArtifact": "https://posnic.com/assets/posnic-development-pos-acceptance-fixture-2026-08-22.json",
    "apiScenariosReproduced": 8,
    "orderedScenarios": 10,
    "unchangedDecision": "This supplement does not upgrade the 8/10 API-layer result or mark either remaining scenario complete."
  },
  "source": {
    "repository": "Posnic/POS",
    "versionDeclaredByPackage": "1.4.0",
    "releaseStatus": "development snapshot; not represented as a tagged public release",
    "commit": "ac56e4a285ae89292644934a0db0a361489f01e7",
    "cleanCheckout": true,
    "files": [
      {
        "path": "package.json",
        "sha256": "ab88446fe67257afe72515d93bac1e7d67f464eefd50170bfd9a004d1b49aa7f"
      },
      {
        "path": "package-lock.json",
        "sha256": "74ded639dc7e439f6f1b4db4bdf49e69b89eca55885de945f05a55cd17e64bbc"
      },
      {
        "path": "escpos-receipt.js",
        "sha256": "abbab6d83b631f840ce5fd306f5b412d2aff9318315b1b7c923a059c1ce8bac8"
      },
      {
        "path": "frontend/static/script/js/core/receipt-data.js",
        "sha256": "997c1714931ba87b06d0269fbe4042128b63bb42acb8a9b66c0ba562da3c5708"
      },
      {
        "path": "frontend/static/script/js/modules/js/sales.js",
        "sha256": "22838a10c25af04545c3eeed967e4a1804a15bceb9b809e54c825af47d629c30"
      },
      {
        "path": "tests/pos-acceptance-client-evidence.test.js",
        "sha256": "d601d0c095e34693e6ed0f79f099ceefa671a4dc93885f032aa0ffd838bdc167"
      }
    ]
  },
  "execution": {
    "interface": "Node source tests with JSDOM and the shipped JavaScript functions",
    "nodeVersion": "v24.19.0",
    "platform": "win32",
    "architecture": "x64",
    "timingsArePerformanceBenchmark": false
  },
  "observations": {
    "receipt": {
      "scenario": "SALE-001",
      "syntheticCurrency": "XTS",
      "expectedTotalXts": "47.50",
      "parser": "frontend/static/script/js/core/receipt-data.js",
      "renderer": "escpos-receipt.js",
      "inputs": {
        "items": [
          {
            "name": "Counter Sample A",
            "quantity": "2 each",
            "amountXts": "20.00"
          },
          {
            "name": "Counter Sample B",
            "quantity": "2 each",
            "amountXts": "27.50"
          }
        ],
        "subtotalXts": "45.00",
        "syntheticTaxXts": "2.50",
        "totalXts": "47.50",
        "tenderLabel": "Cash"
      },
      "outputs": {
        "58mm": {
          "bytes": 687,
          "sha256": "1999b52388aeba84d0c47d7261b6039fe10cf4e9591194521eff2f1a3acf5e7e"
        },
        "80mm": {
          "bytes": 905,
          "sha256": "0ea009e8a2c02e1bfc3fa59f3838e3020129b7f44287a8cb30870d7b31d79c35"
        }
      },
      "assertions": [
        "hidden template row excluded",
        "item and total arithmetic preserved",
        "every decoded line bounded by the selected roll width",
        "TOTAL ends with 47.50",
        "initialize and cut commands present",
        "cash-drawer command absent when not requested"
      ]
    },
    "preCompletionVoid": {
      "scenario": "VOID-001",
      "handler": "PosnicPro.sales.clear.cartItems",
      "harness": "JSDOM execution of the function extracted from shipped sales.js",
      "observed": {
        "cartLinesAfter": 0,
        "chargesAfter": 0,
        "instrumentedNetworkCalls": 0,
        "cancellationMessage": "Sale cancelled.",
        "silentModeMessageCount": 0
      }
    }
  },
  "checks": {
    "focused": {
      "command": "node --test --test-reporter=tap tests/pos-acceptance-client-evidence.test.js",
      "tests": 4,
      "pass": 4,
      "fail": 0,
      "cancelled": 0,
      "skipped": 0,
      "todo": 0,
      "testNames": [
        "SALE-001 fixture arithmetic survives the shipped receipt HTML extractor",
        "SALE-001 renders bounded, deterministic ESC/POS bytes for both roll widths",
        "VOID-001 client handler clears an unsaved basket without a network posting",
        "VOID-001 client handler can clear silently without changing posting behavior"
      ]
    },
    "fullProductSuite": {
      "command": "node --test --test-reporter=tap \"tests/*.test.js\"",
      "tests": 635,
      "pass": 635,
      "fail": 0,
      "cancelled": 0,
      "skipped": 0,
      "todo": 0
    }
  },
  "privacy": "All names, identifiers, values and receipt text are synthetic; no customer, employee, cardholder or business record was used.",
  "limitations": [
    "This is source/DOM and printer-byte evidence, not a packaged Electron-interface run.",
    "The receipt bytes were not sent to a physical printer, driver, cash drawer or operating-system print queue.",
    "The receipt markup is fixture-shaped synthetic input; it was not captured from a packaged till session.",
    "The pre-completion clear test instruments the client network methods; it does not compare a running application database before and after the click.",
    "No payment provider, authorization, decline, capture, terminal, settlement or external network was exercised.",
    "This supplement must not be described as a complete fixture pass, customer acceptance run, hardware certification, security audit, compliance result or performance benchmark."
  ],
  "reproduction": {
    "collector": "Intranet/tools/seo/capture-pos-client-fixture-evidence.js",
    "command": "node tools/seo/capture-pos-client-fixture-evidence.js --pos-root <clean-product-checkout> --expected-commit ac56e4a285ae89292644934a0db0a361489f01e7 --output <evidence.json>",
    "externalServices": "None"
  }
}
