From f0496b3d676b76c4989e5f6a45b71ad498f1cae5 Mon Sep 17 00:00:00 2001 From: Tejas Shasane Date: Tue, 29 Sep 2026 17:38:15 +0530 Subject: [PATCH] Archify --- .../candidate.json | 395 + .../pxil-runtime.browser-check.json | 721 + .../pxil-runtime.delivery.json | 17 + .../pxil-runtime.finalize-summary.json | 47 + .../pxil-runtime.finalize.json | 1016 ++ .../pxil-runtime.html | 13817 +++++++++++++++ .../candidate.json | 461 + .../pxil-setup-runtime.browser-check.json | 721 + .../pxil-setup-runtime.delivery.json | 17 + .../pxil-setup-runtime.finalize-summary.json | 85 + .../pxil-setup-runtime.finalize.json | 1041 ++ .../pxil-setup-runtime.html | 13871 ++++++++++++++++ .../candidate.json | 430 + .../pxil-session-token.browser-check.json | 1345 ++ .../pxil-session-token.delivery.json | 17 + .../pxil-session-token.finalize-summary.json | 89 + .../pxil-session-token.finalize.json | 1657 ++ .../pxil-session-token.html | 13845 +++++++++++++++ 18 files changed, 49592 insertions(+) create mode 100644 .archify/architecture-pxil-runtime-20260929-151855/candidate.json create mode 100644 .archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.browser-check.json create mode 100644 .archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.delivery.json create mode 100644 .archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.finalize-summary.json create mode 100644 .archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.finalize.json create mode 100644 .archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.html create mode 100644 .archify/architecture-pxil-setup-runtime-20260929-155341/candidate.json create mode 100644 .archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.browser-check.json create mode 100644 .archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.delivery.json create mode 100644 .archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.finalize-summary.json create mode 100644 .archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.finalize.json create mode 100644 .archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.html create mode 100644 .archify/workflow-pxil-session-token-20260929-160100/candidate.json create mode 100644 .archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.browser-check.json create mode 100644 .archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.delivery.json create mode 100644 .archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.finalize-summary.json create mode 100644 .archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.finalize.json create mode 100644 .archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.html diff --git a/.archify/architecture-pxil-runtime-20260929-151855/candidate.json b/.archify/architecture-pxil-runtime-20260929-151855/candidate.json new file mode 100644 index 0000000..bcdd3cf --- /dev/null +++ b/.archify/architecture-pxil-runtime-20260929-151855/candidate.json @@ -0,0 +1,395 @@ +{ + "schema_version": 1, + "diagram_type": "architecture", + "meta": { + "title": "PXIL Automation Runtime", + "output": ".archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.html", + "quality_profile": "showcase", + "locale": "en", + "repository": { + "url": "https://git.tejasshasane.xyz/tejasshasane/pxil-selenium-automation.git", + "revision": "5ab89ce0059525b31558a1fa82251a2a6f610dd7", + "link_mode": "local-only" + } + }, + "components": [ + { + "id": "runner", + "type": "backend", + "label": "pytest runner", + "sublabel": "Selection + fixture lifecycle", + "pos": [ + 60, + 300 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/conftest.py", + "line": 37, + "end_line": 62 + }, + { + "path": "pytest.ini", + "line": 1, + "end_line": 14 + } + ] + }, + { + "id": "flows", + "type": "backend", + "label": "Automation flows", + "sublabel": "Setup / bidding / matching", + "pos": [ + 360, + 300 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/regression/exchange/idas/bidding/test_idas_exchange_bidding_flow.py", + "line": 54, + "end_line": 90 + }, + { + "path": "tests/regression/exchange/idas/matching/test_idas_exchange_matching_flow.py", + "line": 76, + "end_line": 156 + }, + { + "path": "tests/setup/test_combined_setup.py", + "line": 13, + "end_line": 37 + } + ] + }, + { + "id": "browser", + "type": "frontend", + "label": "Chrome + WebDriver", + "sublabel": "Selenium browser dependency", + "pos": [ + 680, + 300 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/browser.py", + "line": 1, + "end_line": 14 + }, + { + "path": "tests/regression/auth.py", + "line": 46, + "end_line": 86 + } + ], + "tag": "Manual CAPTCHA for Pratyay" + }, + { + "id": "pratyay", + "type": "external", + "label": "Pratyay portal", + "sublabel": "Exchange / member UI", + "pos": [ + 970, + 300 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/regression/exchange/idas/bidding/test_idas_exchange_bidding_flow.py", + "line": 68, + "end_line": 90 + }, + { + "path": "tests/regression/exchange/idas/matching/test_idas_exchange_matching_flow.py", + "line": 47, + "end_line": 59 + } + ] + }, + { + "id": "config", + "type": "database", + "label": "Configuration", + "sublabel": "JSON + role credentials", + "pos": [ + 360, + 100 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/config_reader.py", + "line": 6, + "end_line": 32 + }, + { + "path": "tests/regression/config_reader.py", + "line": 5, + "end_line": 29 + }, + { + "path": "tests/regression/config_reader.py", + "line": 121, + "end_line": 150 + } + ] + }, + { + "id": "inputs", + "type": "database", + "label": "Bid input files", + "sublabel": "Excel / JSON / upload folders", + "pos": [ + 360, + 560 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/regression/exchange/idas/bidding/input_manifest.py", + "line": 4, + "end_line": 28 + }, + { + "path": "tests/regression/exchange/idas/bidding/json_reader.py", + "line": 5, + "end_line": 35 + }, + { + "path": "tests/regression/exchange/idas/bidding/test_idas_exchange_bidding_flow.py", + "line": 217, + "end_line": 249 + } + ] + }, + { + "id": "reporting", + "type": "backend", + "label": "Evidence reporting", + "sublabel": "Step capture + pytest hooks", + "pos": [ + 60, + 560 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/step_actions.py", + "line": 10, + "end_line": 40 + }, + { + "path": "tests/conftest.py", + "line": 104, + "end_line": 175 + } + ] + }, + { + "id": "artifacts", + "type": "database", + "label": "Run artifacts", + "sublabel": "HTML / screenshots / logs", + "pos": [ + 60, + 770 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/conftest.py", + "line": 37, + "end_line": 48 + }, + { + "path": "tests/conftest.py", + "line": 70, + "end_line": 97 + }, + { + "path": "tests/step_actions.py", + "line": 21, + "end_line": 35 + } + ] + }, + { + "id": "mco", + "type": "external", + "label": "MCO portal", + "sublabel": "Independent login-only test", + "pos": [ + 970, + 560 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/regression/exchange/idas/matching/test_idas_mco_login.py", + "line": 13, + "end_line": 36 + } + ], + "tag": "Only when enabled" + } + ], + "boundaries": [ + { + "kind": "region", + "label": "LOCAL AUTOMATION HOST | trusted code, inputs and credentials", + "wraps": [ + "runner", + "flows", + "browser", + "config", + "inputs", + "reporting", + "artifacts" + ], + "pad": 28 + }, + { + "kind": "security-group", + "label": "Browser process boundary", + "wraps": [ + "browser" + ], + "pad": 18 + }, + { + "kind": "region", + "label": "REMOTE PORTALS | separate authentication", + "wraps": [ + "pratyay", + "mco" + ], + "pad": 28 + } + ], + "connections": [ + { + "id": "selected-tests", + "from": "runner", + "to": "flows", + "label": "run tests", + "variant": "emphasis" + }, + { + "id": "ui-actions", + "from": "flows", + "to": "browser", + "label": "UI commands", + "variant": "emphasis" + }, + { + "id": "portal-session", + "from": "browser", + "to": "pratyay", + "label": "login + UI", + "variant": "emphasis" + }, + { + "id": "read-settings", + "from": "flows", + "to": "config", + "label": "read settings" + }, + { + "id": "read-bids", + "from": "flows", + "to": "inputs", + "label": "read bids" + }, + { + "id": "report-hooks", + "from": "runner", + "to": "reporting", + "label": "test hooks" + }, + { + "id": "write-evidence", + "from": "reporting", + "to": "artifacts", + "label": "write evidence" + }, + { + "id": "optional-mco", + "from": "browser", + "to": "mco", + "label": "if enabled: login", + "variant": "dashed" + } + ], + "cards": [ + { + "dot": "cyan", + "title": "Primary path", + "items": [ + "pytest runs selected tests; flow code controls Selenium and Chrome, which interacts with the remote Pratyay UI.", + "Pratyay login fills credentials and pauses for manual CAPTCHA entry before submission (tests/regression/auth.py:46-122).", + "Arrows describe control and I/O; results return to pytest. No direct backend API or database integration is asserted." + ] + }, + { + "dot": "violet", + "title": "Flow selection and capabilities", + "items": [ + "Root config.json selects setup products and session/token actions; config/runtime.json selects regression environment, role, product and flow.", + "Bidding supports Excel/JSON grids, files and folders. Optional parallel folder workers create their own browsers (bidding flow:551-587).", + "Matching requires the exchange role; rejected or unsupported bid-transfer status stops matching (matching flow:28-44, 123-135)." + ] + }, + { + "dot": "rose", + "title": "Trust and external dependencies", + "items": [ + "Boundaries show host/process and remote ownership, not verified network isolation or firewall policy.", + "Credentials come from local JSON and are entered into remote login forms. Values and endpoint addresses are omitted.", + "Chrome/WebDriver is an external runtime dependency. Pratyay and MCO server internals and transport guarantees are outside the observed source.", + "MCO is an independent, enabled-only dashboard login test; no Pratyay-to-MCO backend connection is inferred." + ] + }, + { + "dot": "emerald", + "title": "Evidence and scope", + "items": [ + "StepActions requests browser screenshots; pytest hooks attach evidence and configure pytest-html. Reports live under reports/.", + "Matching configures browser downloads separately; setup can save session backups. These details are kept off the main path.", + "Snapshot: clean repository at 5ab89ce0059525b31558a1fa82251a2a6f610dd7. Sources use local-only links.", + "Registered reports/order-book/trade-book markers are placeholders, not implemented runtime services (RUN_COMMANDS.md)." + ] + } + ] +} diff --git a/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.browser-check.json b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.browser-check.json new file mode 100644 index 0000000..d880fef --- /dev/null +++ b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.browser-check.json @@ -0,0 +1,721 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "browser-check", + "evidenceKind": "automated-browser", + "status": "pass", + "visualReview": "not-requested", + "provenance": "current", + "deliveryReceiptId": "95e7d275-4f11-44f8-af68-086f2d8272bd", + "artifact": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "sha256": "3db6aa51a98c38d8aebafa9dd0682f3ea5c0ffd1d554c2ac6f000c94b73a193a", + "bytes": 767845 + }, + "state": { + "detail": "read", + "motion": "still" + }, + "chrome": { + "status": "available", + "executable": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" + }, + "diagnostics": [], + "containment": { + "status": "pass", + "policy": "fit-or-reader-declared-readable-vertical-scroll", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 920, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 777, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1058, + "diagramWidth": 1028, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 780, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.697068403908795, + "minimumProjectedNonEdgeTextPx": 7.534201954397394, + "minimumProjectedEdgeTextPx": 6.697068403908795, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1163, + "diagramWidth": 1133, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.381107491856677, + "minimumProjectedNonEdgeTextPx": 8.303745928338762, + "minimumProjectedEdgeTextPx": 7.381107491856677, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1476, + "diagramWidth": 1426, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "themeStates": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1600, + "height": 1000, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1920, + "height": 1080, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1440, + "height": 900, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + } + ] + }, + "readability": { + "status": "pass", + "minimumProjectedNodeTextPx": 6, + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 920, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 777, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1058, + "diagramWidth": 1028, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 780, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.697068403908795, + "minimumProjectedNonEdgeTextPx": 7.534201954397394, + "minimumProjectedEdgeTextPx": 6.697068403908795, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1163, + "diagramWidth": 1133, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.381107491856677, + "minimumProjectedNonEdgeTextPx": 8.303745928338762, + "minimumProjectedEdgeTextPx": 7.381107491856677, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1476, + "diagramWidth": 1426, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "viewerChrome": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 920, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 777, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1058, + "diagramWidth": 1028, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 780, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.697068403908795, + "minimumProjectedNonEdgeTextPx": 7.534201954397394, + "minimumProjectedEdgeTextPx": 6.697068403908795, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1163, + "diagramWidth": 1133, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.381107491856677, + "minimumProjectedNonEdgeTextPx": 8.303745928338762, + "minimumProjectedEdgeTextPx": 7.381107491856677, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1476, + "diagramWidth": 1426, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "captures": { + "status": "not-requested", + "screenshots": [], + "contactSheet": null + }, + "sidecars": { + "receipt": "pxil-runtime.browser-check.json", + "files": [] + } +} diff --git a/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.delivery.json b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.delivery.json new file mode 100644 index 0000000..852f269 --- /dev/null +++ b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.delivery.json @@ -0,0 +1,17 @@ +{ + "schemaVersion": 1, + "receiptId": "95e7d275-4f11-44f8-af68-086f2d8272bd", + "status": "current", + "command": "deliver", + "type": "architecture", + "input": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\candidate.json", + "output": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "specification": { + "sha256": "5255f87576eeb3afd6713d933790d481cf9e8034f24453367adc240aa958ccbc", + "bytes": 20698 + }, + "artifact": { + "sha256": "3db6aa51a98c38d8aebafa9dd0682f3ea5c0ffd1d554c2ac6f000c94b73a193a", + "bytes": 767845 + } +} diff --git a/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.finalize-summary.json b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.finalize-summary.json new file mode 100644 index 0000000..fa9c4f0 --- /dev/null +++ b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.finalize-summary.json @@ -0,0 +1,47 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "finalize", + "status": "pass", + "type": "architecture", + "quality": "showcase", + "specification": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\candidate.json", + "sha256": "5255f87576eeb3afd6713d933790d481cf9e8034f24453367adc240aa958ccbc", + "bytes": 20698 + }, + "artifact": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "sha256": "3db6aa51a98c38d8aebafa9dd0682f3ea5c0ffd1d554c2ac6f000c94b73a193a", + "bytes": 767845 + }, + "gates": { + "validate": "pass", + "deliver": "pass", + "check": "pass", + "browser-check": "pass" + }, + "diagnostics": [], + "diagnosticSummary": { + "total": 0, + "shown": 0, + "truncated": false + }, + "evidence": { + "receipt": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.finalize.json", + "summaryReceipt": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.finalize-summary.json", + "browserCheckReceipt": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.browser-check.json" + }, + "update": { + "status": "current", + "installedVersion": "3.0.1", + "availableVersion": "3.0.1", + "releaseNotes": null, + "checkedAt": "2026-09-29T09:50:05.829Z", + "source": "cache", + "noticeRequired": false, + "noticeText": null + }, + "visualReview": "not-requested", + "durationMs": 10625 +} diff --git a/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.finalize.json b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.finalize.json new file mode 100644 index 0000000..195cd4e --- /dev/null +++ b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.finalize.json @@ -0,0 +1,1016 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "finalize", + "status": "pass", + "type": "architecture", + "quality": "showcase", + "startedAt": "2026-09-29T09:51:33.584Z", + "specification": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\candidate.json", + "sha256": "5255f87576eeb3afd6713d933790d481cf9e8034f24453367adc240aa958ccbc", + "bytes": 20698 + }, + "artifact": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "sha256": "3db6aa51a98c38d8aebafa9dd0682f3ea5c0ffd1d554c2ac6f000c94b73a193a", + "bytes": 767845 + }, + "stages": { + "validate": { + "status": "pass", + "exitCode": 0, + "durationMs": null, + "execution": "embedded-in-deliver", + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "deliver", + "architecture", + "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\candidate.json", + "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "--quality", + "showcase", + "--repo-root", + "D:\\Selenium Test", + "--json" + ], + "receipt": { + "schemaVersion": 1, + "ok": true, + "command": "validate", + "specification": { + "sha256": "5255f87576eeb3afd6713d933790d481cf9e8034f24453367adc240aa958ccbc", + "bytes": 20698 + }, + "validation": { + "checksPassed": 9, + "checkCount": 9, + "compositionProfile": "showcase", + "compositionStatus": "pass", + "errors": 0, + "warnings": 0 + } + } + }, + "deliver": { + "status": "pass", + "exitCode": 0, + "durationMs": 3561, + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "deliver", + "architecture", + "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\candidate.json", + "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "--quality", + "showcase", + "--repo-root", + "D:\\Selenium Test", + "--json" + ], + "receipt": { + "schemaVersion": 1, + "receiptId": "95e7d275-4f11-44f8-af68-086f2d8272bd", + "ok": true, + "command": "deliver", + "type": "architecture", + "input": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\candidate.json", + "output": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "specification": { + "sha256": "5255f87576eeb3afd6713d933790d481cf9e8034f24453367adc240aa958ccbc", + "bytes": 20698 + }, + "artifact": { + "sha256": "3db6aa51a98c38d8aebafa9dd0682f3ea5c0ffd1d554c2ac6f000c94b73a193a", + "bytes": 767845 + }, + "validation": { + "checksPassed": 9, + "checkCount": 9, + "compositionProfile": "showcase", + "compositionStatus": "pass", + "errors": 0, + "warnings": 0 + }, + "evidence": { + "verified": true, + "repository": "https://git.tejasshasane.xyz/tejasshasane/pxil-selenium-automation.git", + "revision": "5ab89ce0059525b31558a1fa82251a2a6f610dd7", + "references": 21, + "linkMode": "local-only" + }, + "update": { + "status": "unavailable", + "installedVersion": null, + "availableVersion": null, + "releaseNotes": null, + "checkedAt": null, + "source": null, + "noticeRequired": false, + "noticeText": null, + "reason": "disabled" + } + } + }, + "check": { + "status": "pass", + "exitCode": 0, + "durationMs": 473, + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "check", + "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "--require-provenance" + ], + "receipt": { + "ok": true, + "file": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "artifact": { + "sha256": "3db6aa51a98c38d8aebafa9dd0682f3ea5c0ffd1d554c2ac6f000c94b73a193a", + "bytes": 767845 + }, + "checks": [ + { + "name": "single_svg", + "ok": true, + "details": [ + "found 1 block(s)" + ] + }, + { + "name": "finite_svg", + "ok": true, + "details": [] + }, + { + "name": "orthogonal_arrows", + "ok": true, + "details": [] + }, + { + "name": "label_route_clearance", + "ok": true, + "details": [] + }, + { + "name": "relationship_crossings", + "ok": true, + "details": [] + }, + { + "name": "relationship_corridors", + "ok": true, + "details": [] + }, + { + "name": "container_border_runs", + "ok": true, + "details": [] + }, + { + "name": "route_rhythm", + "ok": true, + "details": [] + }, + { + "name": "legend_clearance", + "ok": true, + "details": [] + } + ], + "composition": { + "schemaVersion": 1, + "profile": "showcase", + "status": "pass", + "summary": { + "errors": 0, + "warnings": 0 + }, + "metrics": { + "properCrossings": 0, + "resolvedCrossovers": 0, + "ambiguousCorridors": 0, + "arrowheadCollisions": 0, + "containerBorderRuns": 0, + "labelRouteClearanceIssues": 0, + "labelCanvasOverflowIssues": 0, + "minLabelRouteClearance": 21.1, + "desktopReadabilityIssues": 0, + "viewportHeightIssues": 0, + "minProjectedNodeTextPx": 6.058631921824104, + "maxBends": 2, + "routesOverSuggestedBends": 0, + "maxStretch": 1, + "routesOverSuggestedStretch": 0, + "minSegmentPx": 50, + "minInteriorSegmentPx": 253, + "shortSegmentCount": 0, + "shortEndpointSegmentCount": 0, + "shortInteriorSegmentCount": 0, + "microSegmentCount": 0 + }, + "suggestedLimits": { + "bendsPerRelationship": 2, + "stretch": 1.35, + "segmentPx": 16, + "microSegmentPx": 8 + }, + "routeReview": { + "crossings": [], + "detours": [] + }, + "leadingSpace": { + "measured": true, + "emptyTopPx": 72, + "emptyTopRatio": 0.077, + "occupiedTop": 72, + "viewBoxTop": 0, + "canvasHeight": 932, + "typicalNodeHeight": 74, + "reviewSuggested": false + }, + "desktopReadability": { + "budgetBasis": "legacy-930", + "readerContract": "declared-wide-v1", + "availableDiagramWidth": 930, + "actualBudgetPx": 930, + "limit": "legacy", + "requestedTargetPx": 7.5, + "requestedTargetMet": false, + "hardFloorPx": 6, + "hardFloorMet": true, + "minimumOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumSourceTextPx": 8, + "minimumProjectedTextPx": 6.058631921824104, + "semanticTextCount": 29 + }, + "issues": [] + }, + "provenance": "current", + "deliveryReceiptId": "95e7d275-4f11-44f8-af68-086f2d8272bd" + } + }, + "browser-check": { + "status": "pass", + "exitCode": 0, + "durationMs": 4788, + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "browser-check", + "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "--json", + "--require-provenance" + ], + "execution": "in-process", + "receipt": { + "schemaVersion": 1, + "ok": true, + "command": "browser-check", + "evidenceKind": "automated-browser", + "status": "pass", + "visualReview": "not-requested", + "provenance": "current", + "deliveryReceiptId": "95e7d275-4f11-44f8-af68-086f2d8272bd", + "artifact": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.html", + "sha256": "3db6aa51a98c38d8aebafa9dd0682f3ea5c0ffd1d554c2ac6f000c94b73a193a", + "bytes": 767845 + }, + "state": { + "detail": "read", + "motion": "still" + }, + "chrome": { + "status": "available", + "executable": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" + }, + "diagnostics": [], + "containment": { + "status": "pass", + "policy": "fit-or-reader-declared-readable-vertical-scroll", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 920, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 777, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1058, + "diagramWidth": 1028, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 780, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.697068403908795, + "minimumProjectedNonEdgeTextPx": 7.534201954397394, + "minimumProjectedEdgeTextPx": 6.697068403908795, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1163, + "diagramWidth": 1133, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.381107491856677, + "minimumProjectedNonEdgeTextPx": 8.303745928338762, + "minimumProjectedEdgeTextPx": 7.381107491856677, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1476, + "diagramWidth": 1426, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "themeStates": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1600, + "height": 1000, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1920, + "height": 1080, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1440, + "height": 900, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + } + ] + }, + "readability": { + "status": "pass", + "minimumProjectedNodeTextPx": 6, + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 920, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 777, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1058, + "diagramWidth": 1028, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 780, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.697068403908795, + "minimumProjectedNonEdgeTextPx": 7.534201954397394, + "minimumProjectedEdgeTextPx": 6.697068403908795, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1163, + "diagramWidth": 1133, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.381107491856677, + "minimumProjectedNonEdgeTextPx": 8.303745928338762, + "minimumProjectedEdgeTextPx": 7.381107491856677, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1476, + "diagramWidth": 1426, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "viewerChrome": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 920, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 777, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1058, + "diagramWidth": 1028, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 780, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.697068403908795, + "minimumProjectedNonEdgeTextPx": 7.534201954397394, + "minimumProjectedEdgeTextPx": 6.697068403908795, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1163, + "diagramWidth": 1133, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.381107491856677, + "minimumProjectedNonEdgeTextPx": 8.303745928338762, + "minimumProjectedEdgeTextPx": 7.381107491856677, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1476, + "diagramWidth": 1426, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 932 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "captures": { + "status": "not-requested", + "screenshots": [], + "contactSheet": null + }, + "sidecars": { + "receipt": "pxil-runtime.browser-check.json", + "files": [] + } + } + } + }, + "diagnostics": [], + "evidence": { + "receipt": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.finalize.json", + "summaryReceipt": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.finalize-summary.json", + "browserCheckReceipt": "D:\\Selenium Test\\.archify\\architecture-pxil-runtime-20260929-151855\\pxil-runtime.browser-check.json" + }, + "visualReview": "not-requested", + "finishedAt": "2026-09-29T09:51:44.209Z", + "durationMs": 10625, + "update": { + "status": "current", + "installedVersion": "3.0.1", + "availableVersion": "3.0.1", + "releaseNotes": null, + "checkedAt": "2026-09-29T09:50:05.829Z", + "source": "cache", + "noticeRequired": false, + "noticeText": null + } +} diff --git a/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.html b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.html new file mode 100644 index 0000000..7f2dab8 --- /dev/null +++ b/.archify/architecture-pxil-runtime-20260929-151855/pxil-runtime.html @@ -0,0 +1,13817 @@ + + + + + + + + PXIL Automation Runtime Diagram + + + + + + + + +
+ +
+
+
+

PXIL Automation Runtime

+
+
+ + + + +
+ + PXIL Automation Runtime + An architecture diagram generated by Archify. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pytest runner · Selection + fixture lifecycle · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + pytest runner + Selection + fixture lifecycle + + + + Automation flows · Setup / bidding / matching · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + Automation flows + Setup / bidding / matching + + + + Chrome + WebDriver · Selenium browser dependency · LOCAL AUTOMATION HOST | trusted code, inputs and credentials › Browser process boundary · Manual CAPTCHA for Pratyay + + + + Chrome + WebDriver + Selenium browser dependency + Manual CAPTCHA for Pratyay + + + + Pratyay portal · Exchange / member UI · REMOTE PORTALS | separate authentication + + + + Pratyay portal + Exchange / member UI + + + + Configuration · JSON + role credentials · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + Configuration + JSON + role credentials + + + + Bid input files · Excel / JSON / upload folders · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + Bid input files + Excel / JSON / upload folders + + + + Evidence reporting · Step capture + pytest hooks · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + Evidence reporting + Step capture + pytest hooks + + + + Run artifacts · HTML / screenshots / logs · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + Run artifacts + HTML / screenshots / logs + + + + MCO portal · Independent login-only test · REMOTE PORTALS | separate authentication · Only when enabled + + + + MCO portal + Independent login-only test + Only when enabled + + + + + + run tests + + + + UI commands + + + + login + UI + + + + read settings + + + + read bids + + + + test hooks + + + + write evidence + + + + if enabled: login + + + + + + LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + + Browser process boundary + + + + + REMOTE PORTALS | separate authentication + + + + + Legend + + + Frontend + + + + Backend + + + + Database + + + + External + + + +

+ + + + + + + + + +
+ + + +
+ + + + diff --git a/.archify/architecture-pxil-setup-runtime-20260929-155341/candidate.json b/.archify/architecture-pxil-setup-runtime-20260929-155341/candidate.json new file mode 100644 index 0000000..3ee67c5 --- /dev/null +++ b/.archify/architecture-pxil-setup-runtime-20260929-155341/candidate.json @@ -0,0 +1,461 @@ +{ + "schema_version": 1, + "diagram_type": "architecture", + "meta": { + "title": "PXIL Runtime: Sessions, Tokens and Regression", + "output": ".archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.html", + "quality_profile": "showcase", + "locale": "en", + "repository": { + "url": "https://git.tejasshasane.xyz/tejasshasane/pxil-selenium-automation.git", + "revision": "5ab89ce0059525b31558a1fa82251a2a6f610dd7", + "link_mode": "local-only" + } + }, + "components": [ + { + "id": "runner", + "type": "backend", + "label": "pytest runner", + "sublabel": "Selection + fixture lifecycle", + "pos": [ + 60, + 300 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/conftest.py", + "line": 37, + "end_line": 62 + }, + { + "path": "pytest.ini", + "line": 1, + "end_line": 14 + } + ] + }, + { + "id": "flows", + "type": "backend", + "label": "Automation flows", + "sublabel": "Setup / bidding / matching", + "pos": [ + 360, + 300 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/regression/exchange/idas/bidding/test_idas_exchange_bidding_flow.py", + "line": 54, + "end_line": 90 + }, + { + "path": "tests/regression/exchange/idas/matching/test_idas_exchange_matching_flow.py", + "line": 76, + "end_line": 156 + }, + { + "path": "tests/setup/test_combined_setup.py", + "line": 13, + "end_line": 37 + } + ] + }, + { + "id": "browser", + "type": "frontend", + "label": "Chrome + WebDriver", + "sublabel": "Selenium browser dependency", + "pos": [ + 680, + 300 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/browser.py", + "line": 1, + "end_line": 14 + }, + { + "path": "tests/regression/auth.py", + "line": 46, + "end_line": 86 + } + ], + "tag": "Manual CAPTCHA for Pratyay" + }, + { + "id": "pratyay", + "type": "external", + "label": "Pratyay portal", + "sublabel": "Exchange / member UI", + "pos": [ + 970, + 300 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/regression/exchange/idas/bidding/test_idas_exchange_bidding_flow.py", + "line": 68, + "end_line": 90 + }, + { + "path": "tests/regression/exchange/idas/matching/test_idas_exchange_matching_flow.py", + "line": 47, + "end_line": 59 + } + ] + }, + { + "id": "config", + "type": "database", + "label": "Config + bid inputs", + "sublabel": "JSON / Excel / upload folders", + "pos": [ + 360, + 100 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/config_reader.py", + "line": 6, + "end_line": 32 + }, + { + "path": "tests/regression/config_reader.py", + "line": 5, + "end_line": 29 + }, + { + "path": "tests/regression/exchange/idas/bidding/test_idas_exchange_bidding_flow.py", + "line": 217, + "end_line": 249 + } + ] + }, + { + "id": "reporting", + "type": "backend", + "label": "Evidence reporting", + "sublabel": "Step capture + pytest hooks", + "pos": [ + 60, + 560 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/step_actions.py", + "line": 10, + "end_line": 40 + }, + { + "path": "tests/conftest.py", + "line": 104, + "end_line": 175 + } + ] + }, + { + "id": "artifacts", + "type": "database", + "label": "Run artifacts", + "sublabel": "HTML / screenshots / logs", + "pos": [ + 60, + 770 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/conftest.py", + "line": 37, + "end_line": 48 + }, + { + "path": "tests/conftest.py", + "line": 70, + "end_line": 97 + }, + { + "path": "tests/step_actions.py", + "line": 21, + "end_line": 35 + } + ] + }, + { + "id": "mco", + "type": "external", + "label": "MCO portal", + "sublabel": "Independent login-only test", + "pos": [ + 970, + 560 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/regression/exchange/idas/matching/test_idas_mco_login.py", + "line": 13, + "end_line": 36 + } + ], + "tag": "Only when enabled" + }, + { + "id": "sessions", + "type": "backend", + "label": "Trading session setup", + "sublabel": "ME instance + times + Save", + "tag": "When run_session = true", + "pos": [ + 360, + 560 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/setup/sessions/test_session.py", + "line": 24, + "end_line": 64 + }, + { + "path": "tests/setup/test_combined_setup.py", + "line": 21, + "end_line": 37 + } + ] + }, + { + "id": "tokens", + "type": "backend", + "label": "Trading token setup", + "sublabel": "Per product code + Save", + "tag": "When run_token = true", + "pos": [ + 360, + 800 + ], + "size": [ + 190, + 74 + ], + "sources": [ + { + "path": "tests/setup/tokens/test_trading_token.py", + "line": 150, + "end_line": 180 + }, + { + "path": "tests/setup/tokens/test_trading_token.py", + "line": 212, + "end_line": 326 + }, + { + "path": "tests/setup/tokens/test_trading_token.py", + "line": 328, + "end_line": 342 + } + ] + } + ], + "boundaries": [ + { + "kind": "region", + "label": "LOCAL AUTOMATION HOST | trusted code, inputs and credentials", + "wraps": [ + "runner", + "flows", + "browser", + "config", + "reporting", + "artifacts", + "sessions", + "tokens" + ], + "pad": 28 + }, + { + "kind": "security-group", + "label": "Browser process boundary", + "wraps": [ + "browser" + ], + "pad": 18 + }, + { + "kind": "region", + "label": "REMOTE PORTALS | separate authentication", + "wraps": [ + "pratyay", + "mco" + ], + "pad": 28 + } + ], + "connections": [ + { + "id": "selected-tests", + "from": "runner", + "to": "flows", + "label": "run tests", + "variant": "emphasis" + }, + { + "id": "ui-actions", + "from": "flows", + "to": "browser", + "label": "UI commands", + "variant": "emphasis" + }, + { + "id": "portal-session", + "from": "browser", + "to": "pratyay", + "label": "login + UI", + "variant": "emphasis" + }, + { + "id": "read-settings", + "from": "flows", + "to": "config", + "label": "read files" + }, + { + "id": "report-hooks", + "from": "runner", + "to": "reporting", + "label": "test hooks" + }, + { + "id": "write-evidence", + "from": "reporting", + "to": "artifacts", + "label": "write evidence" + }, + { + "id": "optional-mco", + "from": "browser", + "to": "mco", + "label": "if enabled: login", + "variant": "dashed" + }, + { + "id": "session-enabled", + "from": "flows", + "to": "sessions", + "label": "run_session", + "variant": "default" + }, + { + "id": "combined-order", + "from": "sessions", + "to": "tokens", + "label": "both enabled: next", + "variant": "dashed" + }, + { + "id": "token-only", + "from": "flows", + "to": "tokens", + "label": "token only", + "variant": "default", + "fromSide": "bottom", + "toSide": "right" + } + ], + "cards": [ + { + "dot": "amber", + "title": "Session and token execution", + "items": [ + "After setup login and manual CAPTCHA: session-only runs create_session; token-only runs run_token_setup; combined runs create_session then run_token_setup for each product code.", + "Both setup modules use the shared Selenium driver and StepActions through Automation flows. The dashed session-to-token arrow denotes controller ordering, not a direct module call (tests/setup/test_combined_setup.py:21-37).", + "Session creation opens Trading Session, selects the ME instance, fills start/end times, then clicks Save (tests/setup/sessions/test_session.py:24-40).", + "These are trading sessions and trading tokens, distinct from browser authentication/session backups." + ] + }, + { + "dot": "orange", + "title": "Product-specific token behavior", + "items": [ + "IDAS/default branch: create token, set delivery dates and expiry, Save, edit ORDER_NOR / ORDER_EXCH / TRADE times, then Save and Activate (tests/setup/tokens/test_trading_token.py:150-180, 264-325).", + "RTM branch fills delivery and session times and saves the token; activation is not called (lines 212-225, 254-261).", + "UPC branch fills configured order/trade times, saves, then resets the generator (lines 228-258).", + "config.json selects enabled products and run_session/run_token flags. Disabled products and both-false products are omitted; UPC variants have additional routing rules (tests/config_reader.py:36-83)." + ] + }, + { + "dot": "cyan", + "title": "Primary path", + "items": [ + "pytest runs selected tests; flow code controls Selenium and Chrome, which interacts with the remote Pratyay UI.", + "Pratyay login fills credentials and pauses for manual CAPTCHA entry before submission (tests/regression/auth.py:46-122).", + "Arrows describe control and I/O; results return to pytest. No direct backend API or database integration is asserted." + ] + }, + { + "dot": "violet", + "title": "Flow selection and capabilities", + "items": [ + "Root config.json selects setup products and session/token actions; config/runtime.json selects regression environment, role, product and flow.", + "Bidding supports Excel/JSON grids, files and folders. Optional parallel folder workers create their own browsers (bidding flow:551-587).", + "Matching requires the exchange role; rejected or unsupported bid-transfer status stops matching (matching flow:28-44, 123-135)." + ] + }, + { + "dot": "rose", + "title": "Trust and external dependencies", + "items": [ + "Boundaries show host/process and remote ownership, not verified network isolation or firewall policy.", + "Credentials come from local JSON and are entered into remote login forms. Values and endpoint addresses are omitted.", + "Chrome/WebDriver is an external runtime dependency. Pratyay and MCO server internals and transport guarantees are outside the observed source.", + "MCO is an independent, enabled-only dashboard login test; no Pratyay-to-MCO backend connection is inferred." + ] + }, + { + "dot": "emerald", + "title": "Evidence and scope", + "items": [ + "StepActions requests browser screenshots; pytest hooks attach evidence and configure pytest-html. Reports live under reports/.", + "Matching configures browser downloads separately; setup can save session backups. These details are kept off the main path.", + "Source snapshot: 5ab89ce0059525b31558a1fa82251a2a6f610dd7; tracked code unchanged. Only generated .archify/ artifacts are untracked. Sources use local-only links.", + "Registered reports/order-book/trade-book markers are placeholders, not implemented runtime services (RUN_COMMANDS.md)." + ] + } + ] +} \ No newline at end of file diff --git a/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.browser-check.json b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.browser-check.json new file mode 100644 index 0000000..4415d37 --- /dev/null +++ b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.browser-check.json @@ -0,0 +1,721 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "browser-check", + "evidenceKind": "automated-browser", + "status": "pass", + "visualReview": "not-requested", + "provenance": "current", + "deliveryReceiptId": "4a5fda98-da80-480c-a108-3987d32a0fb2", + "artifact": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "sha256": "7f1a2d9fcc2ed49fc6a2c2c9c541bd0620ab0ca1cf04b5e388dae27d01e5b3ec", + "bytes": 773779 + }, + "state": { + "detail": "read", + "motion": "still" + }, + "chrome": { + "status": "available", + "executable": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" + }, + "diagnostics": [], + "containment": { + "status": "pass", + "policy": "fit-or-reader-declared-readable-vertical-scroll", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 945, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1011, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1128, + "diagramWidth": 1098, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.153094462540716, + "minimumProjectedNonEdgeTextPx": 8.047231270358306, + "minimumProjectedEdgeTextPx": 7.153094462540716, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1431, + "diagramWidth": 1381, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "themeStates": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1600, + "height": 1000, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1920, + "height": 1080, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1440, + "height": 900, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + } + ] + }, + "readability": { + "status": "pass", + "minimumProjectedNodeTextPx": 6, + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 945, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1011, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1128, + "diagramWidth": 1098, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.153094462540716, + "minimumProjectedNonEdgeTextPx": 8.047231270358306, + "minimumProjectedEdgeTextPx": 7.153094462540716, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1431, + "diagramWidth": 1381, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "viewerChrome": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 945, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1011, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1128, + "diagramWidth": 1098, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.153094462540716, + "minimumProjectedNonEdgeTextPx": 8.047231270358306, + "minimumProjectedEdgeTextPx": 7.153094462540716, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1431, + "diagramWidth": 1381, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "captures": { + "status": "not-requested", + "screenshots": [], + "contactSheet": null + }, + "sidecars": { + "receipt": "pxil-setup-runtime.browser-check.json", + "files": [] + } +} diff --git a/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.delivery.json b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.delivery.json new file mode 100644 index 0000000..a54dabc --- /dev/null +++ b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.delivery.json @@ -0,0 +1,17 @@ +{ + "schemaVersion": 1, + "receiptId": "4a5fda98-da80-480c-a108-3987d32a0fb2", + "status": "current", + "command": "deliver", + "type": "architecture", + "input": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\candidate.json", + "output": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "specification": { + "sha256": "1419cbca3fed61e28342a8b9767aa43fa85a7b18ff380e93ebedccfa96f9549b", + "bytes": 25091 + }, + "artifact": { + "sha256": "7f1a2d9fcc2ed49fc6a2c2c9c541bd0620ab0ca1cf04b5e388dae27d01e5b3ec", + "bytes": 773779 + } +} diff --git a/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.finalize-summary.json b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.finalize-summary.json new file mode 100644 index 0000000..561c3a1 --- /dev/null +++ b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.finalize-summary.json @@ -0,0 +1,85 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "finalize", + "status": "pass", + "type": "architecture", + "quality": "showcase", + "specification": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\candidate.json", + "sha256": "1419cbca3fed61e28342a8b9767aa43fa85a7b18ff380e93ebedccfa96f9549b", + "bytes": 25091 + }, + "artifact": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "sha256": "7f1a2d9fcc2ed49fc6a2c2c9c541bd0620ab0ca1cf04b5e388dae27d01e5b3ec", + "bytes": 773779 + }, + "gates": { + "validate": "pass", + "deliver": "pass", + "check": "pass", + "browser-check": "pass" + }, + "diagnostics": [], + "diagnosticSummary": { + "total": 0, + "shown": 0, + "truncated": false + }, + "evidence": { + "receipt": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.finalize.json", + "summaryReceipt": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.finalize-summary.json", + "browserCheckReceipt": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.browser-check.json" + }, + "update": { + "status": "current", + "installedVersion": "3.0.1", + "availableVersion": "3.0.1", + "releaseNotes": null, + "checkedAt": "2026-09-29T09:50:05.829Z", + "source": "cache", + "noticeRequired": false, + "noticeText": null + }, + "visualReview": "not-requested", + "durationMs": 10108, + "visualReviewRecommendation": { + "action": "inspect-route-readability", + "signals": { + "routesOverSuggestedBends": 1 + }, + "reason": "Automated gates passed, but crossings or detours still need perceptual review before claiming visual quality.", + "affectedRoutes": { + "crossings": [], + "detours": [ + { + "relationship": { + "id": "token-only", + "from": "flows", + "to": "tokens", + "label": "token only", + "collectionIndex": 9, + "artifactIndex": 10 + }, + "bends": 3, + "stretch": 1.087, + "directCorridorBlockers": [ + { + "id": "sessions", + "label": "Trading session setup", + "box": [ + 360, + 560, + 190, + 74 + ] + } + ] + } + ], + "truncated": false + }, + "repair": "Trace these relationships at the desktop viewport. For Architecture, use references/architecture-layout-repair.md: reflow a blocked main path or tangled connected scene, and repair an isolated defect locally only when the surrounding composition is accepted. Preserve all semantic content and user-fixed geometry. Rerun finalize once after the edit." + } +} diff --git a/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.finalize.json b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.finalize.json new file mode 100644 index 0000000..fae638c --- /dev/null +++ b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.finalize.json @@ -0,0 +1,1041 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "finalize", + "status": "pass", + "type": "architecture", + "quality": "showcase", + "startedAt": "2026-09-29T10:31:36.813Z", + "specification": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\candidate.json", + "sha256": "1419cbca3fed61e28342a8b9767aa43fa85a7b18ff380e93ebedccfa96f9549b", + "bytes": 25091 + }, + "artifact": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "sha256": "7f1a2d9fcc2ed49fc6a2c2c9c541bd0620ab0ca1cf04b5e388dae27d01e5b3ec", + "bytes": 773779 + }, + "stages": { + "validate": { + "status": "pass", + "exitCode": 0, + "durationMs": null, + "execution": "embedded-in-deliver", + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "deliver", + "architecture", + "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\candidate.json", + "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "--quality", + "showcase", + "--repo-root", + "D:\\Selenium Test", + "--json" + ], + "receipt": { + "schemaVersion": 1, + "ok": true, + "command": "validate", + "specification": { + "sha256": "1419cbca3fed61e28342a8b9767aa43fa85a7b18ff380e93ebedccfa96f9549b", + "bytes": 25091 + }, + "validation": { + "checksPassed": 9, + "checkCount": 9, + "compositionProfile": "showcase", + "compositionStatus": "pass", + "errors": 0, + "warnings": 0 + } + } + }, + "deliver": { + "status": "pass", + "exitCode": 0, + "durationMs": 3430, + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "deliver", + "architecture", + "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\candidate.json", + "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "--quality", + "showcase", + "--repo-root", + "D:\\Selenium Test", + "--json" + ], + "receipt": { + "schemaVersion": 1, + "receiptId": "4a5fda98-da80-480c-a108-3987d32a0fb2", + "ok": true, + "command": "deliver", + "type": "architecture", + "input": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\candidate.json", + "output": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "specification": { + "sha256": "1419cbca3fed61e28342a8b9767aa43fa85a7b18ff380e93ebedccfa96f9549b", + "bytes": 25091 + }, + "artifact": { + "sha256": "7f1a2d9fcc2ed49fc6a2c2c9c541bd0620ab0ca1cf04b5e388dae27d01e5b3ec", + "bytes": 773779 + }, + "validation": { + "checksPassed": 9, + "checkCount": 9, + "compositionProfile": "showcase", + "compositionStatus": "pass", + "errors": 0, + "warnings": 0 + }, + "evidence": { + "verified": true, + "repository": "https://git.tejasshasane.xyz/tejasshasane/pxil-selenium-automation.git", + "revision": "5ab89ce0059525b31558a1fa82251a2a6f610dd7", + "references": 23, + "linkMode": "local-only" + }, + "update": { + "status": "unavailable", + "installedVersion": null, + "availableVersion": null, + "releaseNotes": null, + "checkedAt": null, + "source": null, + "noticeRequired": false, + "noticeText": null, + "reason": "disabled" + } + } + }, + "check": { + "status": "pass", + "exitCode": 0, + "durationMs": 493, + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "check", + "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "--require-provenance" + ], + "receipt": { + "ok": true, + "file": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "artifact": { + "sha256": "7f1a2d9fcc2ed49fc6a2c2c9c541bd0620ab0ca1cf04b5e388dae27d01e5b3ec", + "bytes": 773779 + }, + "checks": [ + { + "name": "single_svg", + "ok": true, + "details": [ + "found 1 block(s)" + ] + }, + { + "name": "finite_svg", + "ok": true, + "details": [] + }, + { + "name": "orthogonal_arrows", + "ok": true, + "details": [] + }, + { + "name": "label_route_clearance", + "ok": true, + "details": [] + }, + { + "name": "relationship_crossings", + "ok": true, + "details": [] + }, + { + "name": "relationship_corridors", + "ok": true, + "details": [] + }, + { + "name": "container_border_runs", + "ok": true, + "details": [] + }, + { + "name": "route_rhythm", + "ok": true, + "details": [] + }, + { + "name": "legend_clearance", + "ok": true, + "details": [] + } + ], + "composition": { + "schemaVersion": 1, + "profile": "showcase", + "status": "pass", + "summary": { + "errors": 0, + "warnings": 0 + }, + "metrics": { + "properCrossings": 0, + "resolvedCrossovers": 0, + "ambiguousCorridors": 0, + "arrowheadCollisions": 0, + "containerBorderRuns": 0, + "labelRouteClearanceIssues": 0, + "labelCanvasOverflowIssues": 0, + "minLabelRouteClearance": 21.1, + "desktopReadabilityIssues": 0, + "viewportHeightIssues": 0, + "minProjectedNodeTextPx": 6.058631921824104, + "maxBends": 3, + "routesOverSuggestedBends": 1, + "maxStretch": 1.087, + "routesOverSuggestedStretch": 0, + "minSegmentPx": 24, + "minInteriorSegmentPx": 112, + "shortSegmentCount": 0, + "shortEndpointSegmentCount": 0, + "shortInteriorSegmentCount": 0, + "microSegmentCount": 0 + }, + "suggestedLimits": { + "bendsPerRelationship": 2, + "stretch": 1.35, + "segmentPx": 16, + "microSegmentPx": 8 + }, + "routeReview": { + "crossings": [], + "detours": [ + { + "relationship": { + "id": "token-only", + "from": "flows", + "to": "tokens", + "label": "token only", + "collectionIndex": 9, + "artifactIndex": 10 + }, + "bends": 3, + "stretch": 1.087, + "directCorridorBlockers": [ + { + "id": "sessions", + "label": "Trading session setup", + "box": [ + 360, + 560, + 190, + 74 + ] + } + ] + } + ] + }, + "leadingSpace": { + "measured": true, + "emptyTopPx": 72, + "emptyTopRatio": 0.075, + "occupiedTop": 72, + "viewBoxTop": 0, + "canvasHeight": 962, + "typicalNodeHeight": 74, + "reviewSuggested": false + }, + "desktopReadability": { + "budgetBasis": "legacy-930", + "readerContract": "declared-wide-v1", + "availableDiagramWidth": 930, + "actualBudgetPx": 930, + "limit": "legacy", + "requestedTargetPx": 7.5, + "requestedTargetMet": false, + "hardFloorPx": 6, + "hardFloorMet": true, + "minimumOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumSourceTextPx": 8, + "minimumProjectedTextPx": 6.058631921824104, + "semanticTextCount": 33 + }, + "issues": [] + }, + "provenance": "current", + "deliveryReceiptId": "4a5fda98-da80-480c-a108-3987d32a0fb2" + } + }, + "browser-check": { + "status": "pass", + "exitCode": 0, + "durationMs": 4093, + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "browser-check", + "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "--json", + "--require-provenance" + ], + "execution": "in-process", + "receipt": { + "schemaVersion": 1, + "ok": true, + "command": "browser-check", + "evidenceKind": "automated-browser", + "status": "pass", + "visualReview": "not-requested", + "provenance": "current", + "deliveryReceiptId": "4a5fda98-da80-480c-a108-3987d32a0fb2", + "artifact": { + "path": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.html", + "sha256": "7f1a2d9fcc2ed49fc6a2c2c9c541bd0620ab0ca1cf04b5e388dae27d01e5b3ec", + "bytes": 773779 + }, + "state": { + "detail": "read", + "motion": "still" + }, + "chrome": { + "status": "available", + "executable": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" + }, + "diagnostics": [], + "containment": { + "status": "pass", + "policy": "fit-or-reader-declared-readable-vertical-scroll", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 945, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1011, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1128, + "diagramWidth": 1098, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.153094462540716, + "minimumProjectedNonEdgeTextPx": 8.047231270358306, + "minimumProjectedEdgeTextPx": 7.153094462540716, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1431, + "diagramWidth": 1381, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "themeStates": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1600, + "height": 1000, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1920, + "height": 1080, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1440, + "height": 900, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + } + ] + }, + "readability": { + "status": "pass", + "minimumProjectedNodeTextPx": 6, + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 945, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1011, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1128, + "diagramWidth": 1098, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.153094462540716, + "minimumProjectedNonEdgeTextPx": 8.047231270358306, + "minimumProjectedEdgeTextPx": 7.153094462540716, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1431, + "diagramWidth": 1381, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "viewerChrome": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 945, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 52, + "diagramChromePx": 78, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1011, + "overflowX": false, + "overflowY": true, + "verticalScrollAccepted": true, + "overflowDisposition": "readable-vertical-scroll", + "readerLayout": "adaptive", + "readerOverflow": "authored", + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1054, + "diagramWidth": 1024, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 802, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 6.671009771986971, + "minimumProjectedNonEdgeTextPx": 7.504885993485343, + "minimumProjectedEdgeTextPx": 6.671009771986971, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1128, + "diagramWidth": 1098, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 60, + "diagramChromePx": 84, + "svgPx": 860, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 7.153094462540716, + "minimumProjectedNonEdgeTextPx": 8.047231270358306, + "minimumProjectedEdgeTextPx": 7.153094462540716, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": "intrinsic-height", + "ok": true, + "readerWidth": 1431, + "diagramWidth": 1381, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 68, + "diagramChromePx": 94, + "svgPx": 1082, + "cardsPx": 0, + "viewBoxHeight": 962 + }, + "viewBoxWidth": 1228, + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 9, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "run tests", + "minimumProjectedNodeTextDetail": "edge", + "minimumProjectedNodeTextOwner": { + "kind": "edge", + "id": "selected-tests", + "from": "runner", + "to": "flows" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "captures": { + "status": "not-requested", + "screenshots": [], + "contactSheet": null + }, + "sidecars": { + "receipt": "pxil-setup-runtime.browser-check.json", + "files": [] + } + } + } + }, + "diagnostics": [], + "evidence": { + "receipt": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.finalize.json", + "summaryReceipt": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.finalize-summary.json", + "browserCheckReceipt": "D:\\Selenium Test\\.archify\\architecture-pxil-setup-runtime-20260929-155341\\pxil-setup-runtime.browser-check.json" + }, + "visualReview": "not-requested", + "finishedAt": "2026-09-29T10:31:46.922Z", + "durationMs": 10108, + "update": { + "status": "current", + "installedVersion": "3.0.1", + "availableVersion": "3.0.1", + "releaseNotes": null, + "checkedAt": "2026-09-29T09:50:05.829Z", + "source": "cache", + "noticeRequired": false, + "noticeText": null + } +} diff --git a/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.html b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.html new file mode 100644 index 0000000..2522221 --- /dev/null +++ b/.archify/architecture-pxil-setup-runtime-20260929-155341/pxil-setup-runtime.html @@ -0,0 +1,13871 @@ + + + + + + + + PXIL Runtime: Sessions, Tokens and Regression Diagram + + + + + + + + +
+ +
+
+
+

PXIL Runtime: Sessions, Tokens and Regression

+
+
+ + + + +
+ + PXIL Runtime: Sessions, Tokens and Regression + An architecture diagram generated by Archify. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pytest runner · Selection + fixture lifecycle · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + pytest runner + Selection + fixture lifecycle + + + + Automation flows · Setup / bidding / matching · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + Automation flows + Setup / bidding / matching + + + + Chrome + WebDriver · Selenium browser dependency · LOCAL AUTOMATION HOST | trusted code, inputs and credentials › Browser process boundary · Manual CAPTCHA for Pratyay + + + + Chrome + WebDriver + Selenium browser dependency + Manual CAPTCHA for Pratyay + + + + Pratyay portal · Exchange / member UI · REMOTE PORTALS | separate authentication + + + + Pratyay portal + Exchange / member UI + + + + Config + bid inputs · JSON / Excel / upload folders · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + Config + bid inputs + JSON / Excel / upload folders + + + + Evidence reporting · Step capture + pytest hooks · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + Evidence reporting + Step capture + pytest hooks + + + + Run artifacts · HTML / screenshots / logs · LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + Run artifacts + HTML / screenshots / logs + + + + MCO portal · Independent login-only test · REMOTE PORTALS | separate authentication · Only when enabled + + + + MCO portal + Independent login-only test + Only when enabled + + + + Trading session setup · ME instance + times + Save · LOCAL AUTOMATION HOST | trusted code, inputs and credentials · When run_session = true + + + + Trading session setup + ME instance + times + Save + When run_session = true + + + + Trading token setup · Per product code + Save · LOCAL AUTOMATION HOST | trusted code, inputs and credentials · When run_token = true + + + + Trading token setup + Per product code + Save + When run_token = true + + + + + + run tests + + + + UI commands + + + + login + UI + + + + read files + + + + test hooks + + + + write evidence + + + + if enabled: login + + + + run_session + + + + both enabled: next + + + + token only + + + + + + LOCAL AUTOMATION HOST | trusted code, inputs and credentials + + + + + Browser process boundary + + + + + REMOTE PORTALS | separate authentication + + + + + Legend + + + Frontend + + + + Backend + + + + Database + + + + External + + + +

+ + + + + + + + + +
+ + + +
+ + + + diff --git a/.archify/workflow-pxil-session-token-20260929-160100/candidate.json b/.archify/workflow-pxil-session-token-20260929-160100/candidate.json new file mode 100644 index 0000000..a0153d8 --- /dev/null +++ b/.archify/workflow-pxil-session-token-20260929-160100/candidate.json @@ -0,0 +1,430 @@ +{ + "schema_version": 2, + "diagram_type": "workflow", + "meta": { + "title": "PXIL Session + Trading Token Setup", + "subtitle": "Configuration-driven pytest/Selenium workflow", + "output": ".archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.html", + "quality_profile": "showcase", + "animation": "none", + "repository": { + "url": "https://git.tejasshasane.xyz/tejasshasane/pxil-selenium-automation.git", + "revision": "5ab89ce0059525b31558a1fa82251a2a6f610dd7", + "link_mode": "local-only" + } + }, + "lanes": [ + { + "id": "config", + "label": "Configuration \u0026 selection" + }, + { + "id": "pytest", + "label": "Pytest orchestration" + }, + { + "id": "browser", + "label": "Browser automation" + }, + { + "id": "portal", + "label": "Pratyay portal" + } + ], + "phases": [ + { + "id": "resolve", + "label": "Resolve run", + "fromCol": 0, + "toCol": 1 + }, + { + "id": "login", + "label": "Authenticate", + "fromCol": 2, + "toCol": 2, + "variant": "security" + }, + { + "id": "setup", + "label": "Create session + tokens", + "fromCol": 3, + "toCol": 4, + "variant": "emphasis" + }, + { + "id": "evidence", + "label": "Capture evidence", + "fromCol": 5, + "toCol": 5, + "variant": "dashed" + } + ], + "groups": [ + { + "id": "config_group", + "label": "Product and mode resolution", + "lane": "config", + "fromCol": 0, + "toCol": 1, + "variant": "dashed" + }, + { + "id": "auth_group", + "label": "One browser login", + "lane": "browser", + "fromCol": 2, + "toCol": 2, + "variant": "security" + }, + { + "id": "session_group", + "label": "Session creation gate", + "lane": "portal", + "fromCol": 3, + "toCol": 3, + "variant": "emphasis" + }, + { + "id": "token_group", + "label": "Token creation loop", + "lane": "portal", + "fromCol": 4, + "toCol": 5, + "variant": "emphasis" + }, + { + "id": "evidence_group", + "label": "Step artifacts", + "lane": "config", + "fromCol": 5, + "toCol": 5, + "variant": "dashed" + } + ], + "mainPath": [ + "pytest_start", + "load_config", + "parametrize", + "driver_login", + "token_dispatch", + "token_save", + "save_report" + ], + "nodes": [ + { + "id": "pytest_start", + "lane": "pytest", + "col": 0, + "type": "backend", + "label": "Pytest setup test", + "sublabel": "test_combined_setup.py", + "width": 150, + "sources": [ + { + "path": "tests/setup/test_combined_setup.py", + "line": 11, + "end_line": 14 + } + ] + }, + { + "id": "load_config", + "lane": "config", + "col": 1, + "type": "database", + "label": "Load config.json", + "sublabel": "products + setup flags", + "width": 150, + "sources": [ + { + "path": "tests/config_reader.py", + "line": 6, + "end_line": 33 + } + ] + }, + { + "id": "parametrize", + "lane": "config", + "col": 2, + "type": "backend", + "label": "get_setup_configs", + "sublabel": "combined / session / token", + "tag": "skip disabled", + "width": 150, + "sources": [ + { + "path": "tests/config_reader.py", + "line": 36, + "end_line": 83 + } + ] + }, + { + "id": "driver_login", + "lane": "browser", + "col": 2, + "type": "security", + "label": "Open + login", + "sublabel": "Chrome, credentials, CAPTCHA", + "tag": "manual CAPTCHA", + "width": 150, + "sources": [ + { + "path": "tests/setup/test_combined_setup.py", + "line": 21, + "end_line": 29 + }, + { + "path": "tests/helpers.py", + "line": 60, + "end_line": 91 + } + ] + }, + { + "id": "session_gate", + "lane": "pytest", + "col": 3, + "type": "security", + "label": "run_session?", + "sublabel": "product flag gate", + "width": 150, + "sources": [ + { + "path": "tests/setup/test_combined_setup.py", + "line": 31, + "end_line": 32 + } + ] + }, + { + "id": "session_create", + "lane": "portal", + "col": 3, + "type": "backend", + "label": "create_session", + "sublabel": "ME instance + dates -\u003e Save", + "width": 150, + "sources": [ + { + "path": "tests/setup/sessions/test_session.py", + "line": 24, + "end_line": 40 + } + ] + }, + { + "id": "token_loop", + "lane": "pytest", + "col": 4, + "type": "backend", + "label": "Product-code loop", + "sublabel": "one token per configured code", + "width": 150, + "sources": [ + { + "path": "tests/setup/test_combined_setup.py", + "line": 34, + "end_line": 37 + }, + { + "path": "tests/setup/tokens/test_trading_token.py", + "line": 74, + "end_line": 83 + } + ] + }, + { + "id": "token_dispatch", + "lane": "portal", + "col": 4, + "type": "backend", + "label": "run_token_setup", + "sublabel": "IDAS / RTM / UPC branch", + "width": 150, + "sources": [ + { + "path": "tests/setup/tokens/test_trading_token.py", + "line": 254, + "end_line": 262 + } + ] + }, + { + "id": "token_save", + "lane": "portal", + "col": 5, + "type": "backend", + "label": "Create + save token", + "sublabel": "dates, expiry, time sessions", + "width": 150, + "sources": [ + { + "path": "tests/setup/tokens/test_trading_token.py", + "line": 264, + "end_line": 325 + } + ] + }, + { + "id": "save_report", + "lane": "config", + "col": 5, + "type": "database", + "label": "Evidence + teardown", + "sublabel": "screenshots, backup, logout", + "width": 150, + "sources": [ + { + "path": "tests/step_actions.py", + "line": 21, + "end_line": 40 + }, + { + "path": "tests/helpers.py", + "line": 135, + "end_line": 159 + }, + { + "path": "tests/setup/tokens/test_trading_token.py", + "line": 330, + "end_line": 342 + } + ] + }, + { + "id": "session_skip", + "lane": "config", + "col": 3, + "type": "messagebus", + "label": "Skip session", + "sublabel": "run_session = false", + "width": 150, + "sources": [ + { + "path": "tests/setup/test_combined_setup.py", + "line": 31, + "end_line": 32 + } + ] + }, + { + "id": "pratyay_ui", + "lane": "portal", + "col": 2, + "type": "external", + "label": "Pratyay UI", + "sublabel": "Trading maintenance pages", + "width": 150, + "sources": [ + { + "path": "tests/setup/sessions/test_session.py", + "line": 28, + "end_line": 40 + }, + { + "path": "tests/setup/tokens/test_trading_token.py", + "line": 274, + "end_line": 325 + } + ] + } + ], + "edges": [ + { + "id": "start-config", + "from": "pytest_start", + "to": "load_config", + "label": "collect + resolve", + "variant": "emphasis" + }, + { + "id": "config-param", + "from": "load_config", + "to": "parametrize", + "label": "product settings" + }, + { + "id": "param-login", + "from": "parametrize", + "to": "driver_login", + "label": "selected config", + "variant": "emphasis" + }, + { + "id": "login-portal", + "from": "driver_login", + "to": "pratyay_ui", + "label": "authenticate", + "variant": "security" + }, + { + "id": "skip-token-loop", + "from": "session_skip", + "to": "token_loop", + "label": "token-only / combined decision", + "variant": "dashed" + }, + { + "id": "dispatch-save", + "from": "token_dispatch", + "to": "token_save", + "label": "IDAS default", + "variant": "emphasis" + }, + { + "id": "save-evidence", + "from": "token_save", + "to": "save_report", + "label": "step captures", + "variant": "dashed" + }, + { + "id": "login-dispatch", + "from": "driver_login", + "to": "token_dispatch", + "label": "run token flow", + "variant": "emphasis" + } + ], + "cards": [ + { + "dot": "cyan", + "title": "How configuration is called", + "items": [ + "pytest parametrization calls get_setup_configs(\"combined\") when test_session_and_token_setup is collected.", + "get_product_config merges product overrides into setup.run_session/run_token and resolves token settings; disabled products are filtered out.", + "Each selected config carries url, login, product.me_instance, token settings and product_name into the test." + ] + }, + { + "dot": "amber", + "title": "Combined run semantics", + "items": [ + "The test opens the portal and logs in once per browser fixture. It saves a browser cookie/session backup after login.", + "When run_session is true, create_session selects the configured ME instance and saves the calculated start/end window.", + "The same driver then loops product codes and calls run_token_setup for each one." + ] + }, + { + "dot": "violet", + "title": "Token branches", + "items": [ + "IDAS/default creates the token, fills delivery/expiry values, then edits ORDER_NOR, ORDER_EXCH and TRADE time sessions before Save and Activate.", + "RTM selects market/product/generation mode, fills delivery and session times, then saves; activation is not part of this branch.", + "UPC fills configured order/trade times, saves, then resets the generator." + ] + }, + { + "dot": "rose", + "title": "Authentication and evidence", + "items": [ + "login() sends credentials, waits for manual CAPTCHA completion, submits, waits for the dashboard marker and closes transient notices.", + "StepActions captures screenshots after interactions. conftest.py attaches them to pytest-html and creates report folders.", + "The diagram shows trading sessions/tokens; login session backups are browser cookies, not the trading-session records created in the portal." + ] + } + ] +} \ No newline at end of file diff --git a/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.browser-check.json b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.browser-check.json new file mode 100644 index 0000000..e14aefd --- /dev/null +++ b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.browser-check.json @@ -0,0 +1,1345 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "browser-check", + "evidenceKind": "automated-browser", + "status": "pass", + "visualReview": "not-requested", + "provenance": "current", + "deliveryReceiptId": "194f6ca1-621e-45b4-ab5d-d915aa4711fd", + "artifact": { + "path": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "sha256": "d0c3abadeefa664a3d46893e7dc43042339bf42471f76967fe467600f0388882", + "bytes": 771409 + }, + "state": { + "detail": "read", + "motion": "still" + }, + "chrome": { + "status": "available", + "executable": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" + }, + "diagnostics": [], + "containment": { + "status": "pass", + "policy": "fit-or-reader-declared-readable-vertical-scroll", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1252, + "diagramWidth": 1222, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 78, + "diagramChromePx": 78, + "svgPx": 720, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 123, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 44, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-0", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 37, + "spaceBelowNodesPx": 4 + }, + { + "frameId": "lane-1", + "heightPx": 114, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + }, + { + "frameId": "lane-3", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1309, + "diagramWidth": 1279, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 754, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 129, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 46, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 38, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 120, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + }, + { + "frameId": "lane-3", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1445, + "diagramWidth": 1415, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 834, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 142, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 51, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 42, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 132, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + }, + { + "frameId": "lane-3", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1842, + "diagramWidth": 1792, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 94, + "diagramChromePx": 94, + "svgPx": 1057, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 180, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 65, + "spaceBelowNodesPx": 8 + }, + { + "frameId": "lane-0", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 54, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-1", + "heightPx": 168, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + }, + { + "frameId": "lane-3", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "themeStates": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1600, + "height": 1000, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1920, + "height": 1080, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1440, + "height": 900, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + } + ] + }, + "readability": { + "status": "pass", + "minimumProjectedNodeTextPx": 6, + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1252, + "diagramWidth": 1222, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 78, + "diagramChromePx": 78, + "svgPx": 720, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 123, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 44, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-0", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 37, + "spaceBelowNodesPx": 4 + }, + { + "frameId": "lane-1", + "heightPx": 114, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + }, + { + "frameId": "lane-3", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1309, + "diagramWidth": 1279, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 754, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 129, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 46, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 38, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 120, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + }, + { + "frameId": "lane-3", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1445, + "diagramWidth": 1415, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 834, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 142, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 51, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 42, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 132, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + }, + { + "frameId": "lane-3", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1842, + "diagramWidth": 1792, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 94, + "diagramChromePx": 94, + "svgPx": 1057, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 180, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 65, + "spaceBelowNodesPx": 8 + }, + { + "frameId": "lane-0", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 54, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-1", + "heightPx": 168, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + }, + { + "frameId": "lane-3", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "viewerChrome": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1252, + "diagramWidth": 1222, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 78, + "diagramChromePx": 78, + "svgPx": 720, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 123, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 44, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-0", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 37, + "spaceBelowNodesPx": 4 + }, + { + "frameId": "lane-1", + "heightPx": 114, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + }, + { + "frameId": "lane-3", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1309, + "diagramWidth": 1279, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 754, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 129, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 46, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 38, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 120, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + }, + { + "frameId": "lane-3", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1445, + "diagramWidth": 1415, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 834, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 142, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 51, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 42, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 132, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + }, + { + "frameId": "lane-3", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1842, + "diagramWidth": 1792, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 94, + "diagramChromePx": 94, + "svgPx": 1057, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 180, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 65, + "spaceBelowNodesPx": 8 + }, + { + "frameId": "lane-0", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 54, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-1", + "heightPx": 168, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + }, + { + "frameId": "lane-3", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "captures": { + "status": "not-requested", + "screenshots": [], + "contactSheet": null + }, + "sidecars": { + "receipt": "pxil-session-token.browser-check.json", + "files": [] + } +} diff --git a/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.delivery.json b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.delivery.json new file mode 100644 index 0000000..752c29b --- /dev/null +++ b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.delivery.json @@ -0,0 +1,17 @@ +{ + "schemaVersion": 1, + "receiptId": "194f6ca1-621e-45b4-ab5d-d915aa4711fd", + "status": "current", + "command": "deliver", + "type": "workflow", + "input": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\candidate.json", + "output": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "specification": { + "sha256": "c349c44844d853c1dc013cd9f1e9380b0f1548224ef389a1960b97af956310b1", + "bytes": 19583 + }, + "artifact": { + "sha256": "d0c3abadeefa664a3d46893e7dc43042339bf42471f76967fe467600f0388882", + "bytes": 771409 + } +} diff --git a/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.finalize-summary.json b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.finalize-summary.json new file mode 100644 index 0000000..890fa32 --- /dev/null +++ b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.finalize-summary.json @@ -0,0 +1,89 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "finalize", + "status": "pass", + "type": "workflow", + "quality": "showcase", + "specification": { + "path": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\candidate.json", + "sha256": "c349c44844d853c1dc013cd9f1e9380b0f1548224ef389a1960b97af956310b1", + "bytes": 19583 + }, + "artifact": { + "path": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "sha256": "d0c3abadeefa664a3d46893e7dc43042339bf42471f76967fe467600f0388882", + "bytes": 771409 + }, + "gates": { + "validate": "pass", + "deliver": "pass", + "check": "pass", + "browser-check": "pass" + }, + "diagnostics": [], + "diagnosticSummary": { + "total": 0, + "shown": 0, + "truncated": false + }, + "evidence": { + "receipt": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.finalize.json", + "summaryReceipt": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.finalize-summary.json", + "browserCheckReceipt": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.browser-check.json" + }, + "update": { + "status": "current", + "installedVersion": "3.0.1", + "availableVersion": "3.0.1", + "releaseNotes": null, + "checkedAt": "2026-09-29T09:50:05.829Z", + "source": "cache", + "noticeRequired": false, + "noticeText": null + }, + "visualReview": "not-requested", + "durationMs": 12243, + "visualReviewRecommendation": { + "action": "inspect-route-readability", + "signals": { + "routesOverSuggestedBends": 2 + }, + "reason": "Automated gates passed, but crossings or detours still need perceptual review before claiming visual quality.", + "affectedRoutes": { + "crossings": [], + "detours": [ + { + "relationship": { + "id": "login-dispatch", + "from": "driver_login", + "to": "token_dispatch", + "label": "run token flow", + "collectionIndex": 2, + "artifactIndex": 3 + }, + "bends": 3, + "stretch": 1.164 + }, + { + "relationship": { + "id": "param-login", + "from": "parametrize", + "to": "driver_login", + "label": "selected config", + "collectionIndex": 4, + "artifactIndex": 5 + }, + "bends": 3, + "stretch": 1.109 + } + ], + "truncated": false + }, + "hints": [ + "driver_login → token_dispatch needs 3 bends: move node driver_login or token_dispatch so they share a row or column with matching centers, or sit diagonally with a clear corner.", + "parametrize → driver_login needs 3 bends: move node parametrize or driver_login so they share a row or column with matching centers, or sit diagonally with a clear corner." + ], + "repair": "Trace these relationships at the desktop viewport. For Architecture, use references/architecture-layout-repair.md: reflow a blocked main path or tangled connected scene, and repair an isolated defect locally only when the surrounding composition is accepted. Preserve all semantic content and user-fixed geometry. Rerun finalize once after the edit." + } +} diff --git a/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.finalize.json b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.finalize.json new file mode 100644 index 0000000..f95e2f1 --- /dev/null +++ b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.finalize.json @@ -0,0 +1,1657 @@ +{ + "schemaVersion": 1, + "ok": true, + "command": "finalize", + "status": "pass", + "type": "workflow", + "quality": "showcase", + "startedAt": "2026-09-29T11:58:10.569Z", + "specification": { + "path": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\candidate.json", + "sha256": "c349c44844d853c1dc013cd9f1e9380b0f1548224ef389a1960b97af956310b1", + "bytes": 19583 + }, + "artifact": { + "path": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "sha256": "d0c3abadeefa664a3d46893e7dc43042339bf42471f76967fe467600f0388882", + "bytes": 771409 + }, + "stages": { + "validate": { + "status": "pass", + "exitCode": 0, + "durationMs": null, + "execution": "embedded-in-deliver", + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "deliver", + "workflow", + "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\candidate.json", + "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "--quality", + "showcase", + "--repo-root", + "D:\\Selenium Test", + "--json" + ], + "receipt": { + "schemaVersion": 1, + "ok": true, + "command": "validate", + "specification": { + "sha256": "c349c44844d853c1dc013cd9f1e9380b0f1548224ef389a1960b97af956310b1", + "bytes": 19583 + }, + "validation": { + "checksPassed": 9, + "checkCount": 9, + "compositionProfile": "showcase", + "compositionStatus": "pass", + "errors": 0, + "warnings": 0 + } + } + }, + "deliver": { + "status": "pass", + "exitCode": 0, + "durationMs": 3897, + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "deliver", + "workflow", + "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\candidate.json", + "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "--quality", + "showcase", + "--repo-root", + "D:\\Selenium Test", + "--json" + ], + "receipt": { + "schemaVersion": 1, + "receiptId": "194f6ca1-621e-45b4-ab5d-d915aa4711fd", + "ok": true, + "command": "deliver", + "type": "workflow", + "input": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\candidate.json", + "output": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "specification": { + "sha256": "c349c44844d853c1dc013cd9f1e9380b0f1548224ef389a1960b97af956310b1", + "bytes": 19583 + }, + "artifact": { + "sha256": "d0c3abadeefa664a3d46893e7dc43042339bf42471f76967fe467600f0388882", + "bytes": 771409 + }, + "validation": { + "checksPassed": 9, + "checkCount": 9, + "compositionProfile": "showcase", + "compositionStatus": "pass", + "errors": 0, + "warnings": 0 + }, + "evidence": { + "verified": true, + "repository": "https://git.tejasshasane.xyz/tejasshasane/pxil-selenium-automation.git", + "revision": "5ab89ce0059525b31558a1fa82251a2a6f610dd7", + "references": 17, + "linkMode": "local-only" + }, + "update": { + "status": "unavailable", + "installedVersion": null, + "availableVersion": null, + "releaseNotes": null, + "checkedAt": null, + "source": null, + "noticeRequired": false, + "noticeText": null, + "reason": "disabled" + } + } + }, + "check": { + "status": "pass", + "exitCode": 0, + "durationMs": 623, + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "check", + "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "--require-provenance" + ], + "receipt": { + "ok": true, + "file": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "artifact": { + "sha256": "d0c3abadeefa664a3d46893e7dc43042339bf42471f76967fe467600f0388882", + "bytes": 771409 + }, + "checks": [ + { + "name": "single_svg", + "ok": true, + "details": [ + "found 1 block(s)" + ] + }, + { + "name": "finite_svg", + "ok": true, + "details": [] + }, + { + "name": "orthogonal_arrows", + "ok": true, + "details": [] + }, + { + "name": "label_route_clearance", + "ok": true, + "details": [] + }, + { + "name": "relationship_crossings", + "ok": true, + "details": [] + }, + { + "name": "relationship_corridors", + "ok": true, + "details": [] + }, + { + "name": "container_border_runs", + "ok": true, + "details": [] + }, + { + "name": "route_rhythm", + "ok": true, + "details": [] + }, + { + "name": "legend_clearance", + "ok": true, + "details": [] + } + ], + "composition": { + "schemaVersion": 1, + "profile": "showcase", + "status": "pass", + "summary": { + "errors": 0, + "warnings": 0 + }, + "metrics": { + "properCrossings": 0, + "resolvedCrossovers": 0, + "ambiguousCorridors": 0, + "arrowheadCollisions": 0, + "containerBorderRuns": 0, + "labelRouteClearanceIssues": 0, + "labelCanvasOverflowIssues": 0, + "minLabelRouteClearance": 57.2, + "desktopReadabilityIssues": 0, + "viewportHeightIssues": 0, + "minProjectedNodeTextPx": 6.566637246248897, + "maxBends": 3, + "routesOverSuggestedBends": 2, + "maxStretch": 1.228, + "routesOverSuggestedStretch": 0, + "minSegmentPx": 16, + "minInteriorSegmentPx": 91, + "shortSegmentCount": 0, + "shortEndpointSegmentCount": 0, + "shortInteriorSegmentCount": 0, + "microSegmentCount": 0 + }, + "suggestedLimits": { + "bendsPerRelationship": 2, + "stretch": 1.35, + "segmentPx": 16, + "microSegmentPx": 8 + }, + "routeReview": { + "crossings": [], + "detours": [ + { + "relationship": { + "id": "login-dispatch", + "from": "driver_login", + "to": "token_dispatch", + "label": "run token flow", + "collectionIndex": 2, + "artifactIndex": 3 + }, + "bends": 3, + "stretch": 1.164 + }, + { + "relationship": { + "id": "param-login", + "from": "parametrize", + "to": "driver_login", + "label": "selected config", + "collectionIndex": 4, + "artifactIndex": 5 + }, + "bends": 3, + "stretch": 1.109 + } + ] + }, + "leadingSpace": { + "measured": false, + "reviewSuggested": false + }, + "desktopReadability": { + "budgetBasis": "legacy-930", + "readerContract": "declared-wide-v1", + "availableDiagramWidth": 930, + "actualBudgetPx": 930, + "limit": "legacy", + "requestedTargetPx": null, + "requestedTargetMet": null, + "hardFloorPx": 6, + "hardFloorMet": true, + "minimumOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumSourceTextPx": 8, + "minimumProjectedTextPx": 6.566637246248897, + "semanticTextCount": 32 + }, + "issues": [] + }, + "provenance": "current", + "deliveryReceiptId": "194f6ca1-621e-45b4-ab5d-d915aa4711fd" + } + }, + "browser-check": { + "status": "pass", + "exitCode": 0, + "durationMs": 5534, + "command": [ + "C:\\Program Files\\nodejs\\node.exe", + "C:\\Users\\Tejas Shasane\\.agents\\skills\\archify\\bin\\archify.mjs", + "browser-check", + "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "--json", + "--require-provenance" + ], + "execution": "in-process", + "receipt": { + "schemaVersion": 1, + "ok": true, + "command": "browser-check", + "evidenceKind": "automated-browser", + "status": "pass", + "visualReview": "not-requested", + "provenance": "current", + "deliveryReceiptId": "194f6ca1-621e-45b4-ab5d-d915aa4711fd", + "artifact": { + "path": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.html", + "sha256": "d0c3abadeefa664a3d46893e7dc43042339bf42471f76967fe467600f0388882", + "bytes": 771409 + }, + "state": { + "detail": "read", + "motion": "still" + }, + "chrome": { + "status": "available", + "executable": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" + }, + "diagnostics": [], + "containment": { + "status": "pass", + "policy": "fit-or-reader-declared-readable-vertical-scroll", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1252, + "diagramWidth": 1222, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 78, + "diagramChromePx": 78, + "svgPx": 720, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 123, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 44, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-0", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 37, + "spaceBelowNodesPx": 4 + }, + { + "frameId": "lane-1", + "heightPx": 114, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + }, + { + "frameId": "lane-3", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1309, + "diagramWidth": 1279, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 754, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 129, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 46, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 38, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 120, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + }, + { + "frameId": "lane-3", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1445, + "diagramWidth": 1415, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 834, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 142, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 51, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 42, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 132, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + }, + { + "frameId": "lane-3", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1842, + "diagramWidth": 1792, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 94, + "diagramChromePx": 94, + "svgPx": 1057, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 180, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 65, + "spaceBelowNodesPx": 8 + }, + { + "frameId": "lane-0", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 54, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-1", + "heightPx": 168, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + }, + { + "frameId": "lane-3", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "themeStates": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1600, + "height": 1000, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1920, + "height": 1080, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "light", + "resolvedTheme": "light", + "ok": true + }, + { + "width": 1440, + "height": 900, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + }, + { + "width": 2048, + "height": 1320, + "requestedTheme": "dark", + "resolvedTheme": "dark", + "ok": true + } + ] + }, + "readability": { + "status": "pass", + "minimumProjectedNodeTextPx": 6, + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1252, + "diagramWidth": 1222, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 78, + "diagramChromePx": 78, + "svgPx": 720, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 123, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 44, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-0", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 37, + "spaceBelowNodesPx": 4 + }, + { + "frameId": "lane-1", + "heightPx": 114, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + }, + { + "frameId": "lane-3", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1309, + "diagramWidth": 1279, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 754, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 129, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 46, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 38, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 120, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + }, + { + "frameId": "lane-3", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1445, + "diagramWidth": 1415, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 834, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 142, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 51, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 42, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 132, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + }, + { + "frameId": "lane-3", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1842, + "diagramWidth": 1792, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 94, + "diagramChromePx": 94, + "svgPx": 1057, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 180, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 65, + "spaceBelowNodesPx": 8 + }, + { + "frameId": "lane-0", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 54, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-1", + "heightPx": 168, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + }, + { + "frameId": "lane-3", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "viewerChrome": { + "status": "pass", + "viewports": [ + { + "width": 1440, + "height": 900, + "theme": "light", + "innerWidth": 1440, + "innerHeight": 900, + "scrollWidth": 1440, + "scrollHeight": 900, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1252, + "diagramWidth": 1222, + "pageComposition": { + "bodyPaddingPx": 12, + "headerPx": 78, + "diagramChromePx": 78, + "svgPx": 720, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 123, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 44, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-0", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 73, + "spaceAboveNodesPx": 37, + "spaceBelowNodesPx": 4 + }, + { + "frameId": "lane-1", + "heightPx": 114, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + }, + { + "frameId": "lane-3", + "heightPx": 114, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 56, + "spaceAboveNodesPx": 45, + "spaceBelowNodesPx": 13 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1600, + "height": 1000, + "theme": "light", + "innerWidth": 1600, + "innerHeight": 1000, + "scrollWidth": 1600, + "scrollHeight": 1000, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1309, + "diagramWidth": 1279, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 754, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 129, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 46, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 77, + "spaceAboveNodesPx": 38, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 120, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + }, + { + "frameId": "lane-3", + "heightPx": 120, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 59, + "spaceAboveNodesPx": 47, + "spaceBelowNodesPx": 14 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 1920, + "height": 1080, + "theme": "light", + "innerWidth": 1920, + "innerHeight": 1080, + "scrollWidth": 1920, + "scrollHeight": 1080, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1445, + "diagramWidth": 1415, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 86, + "diagramChromePx": 84, + "svgPx": 834, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 142, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 51, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-0", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 85, + "spaceAboveNodesPx": 42, + "spaceBelowNodesPx": 5 + }, + { + "frameId": "lane-1", + "heightPx": 132, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + }, + { + "frameId": "lane-3", + "heightPx": 132, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 65, + "spaceAboveNodesPx": 52, + "spaceBelowNodesPx": 15 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 54, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + }, + { + "width": 2048, + "height": 1320, + "theme": "light", + "innerWidth": 2048, + "innerHeight": 1320, + "scrollWidth": 2048, + "scrollHeight": 1320, + "overflowX": false, + "overflowY": false, + "verticalScrollAccepted": false, + "overflowDisposition": "contained", + "readerLayout": "adaptive", + "readerOverflow": null, + "readerFit": null, + "ok": true, + "readerWidth": 1842, + "diagramWidth": 1792, + "pageComposition": { + "bodyPaddingPx": 64, + "headerPx": 94, + "diagramChromePx": 94, + "svgPx": 1057, + "cardsPx": 0, + "viewBoxHeight": 668 + }, + "viewBoxWidth": 1133, + "workflowLanes": [ + { + "frameId": "lane-2", + "heightPx": 180, + "nodeCount": 1, + "nodeIds": [ + "driver_login" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 65, + "spaceBelowNodesPx": 8 + }, + { + "frameId": "lane-0", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "load_config", + "parametrize", + "session_skip", + "save_report" + ], + "nodeSpanPx": 108, + "spaceAboveNodesPx": 54, + "spaceBelowNodesPx": 6 + }, + { + "frameId": "lane-1", + "heightPx": 168, + "nodeCount": 3, + "nodeIds": [ + "pytest_start", + "session_gate", + "token_loop" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + }, + { + "frameId": "lane-3", + "heightPx": 168, + "nodeCount": 4, + "nodeIds": [ + "pratyay_ui", + "session_create", + "token_dispatch", + "token_save" + ], + "nodeSpanPx": 82, + "spaceAboveNodesPx": 66, + "spaceBelowNodesPx": 19 + } + ], + "minimumProjectedNodeTextPx": 8, + "minimumProjectedNonEdgeTextPx": 8, + "minimumProjectedEdgeTextPx": 8, + "minimumProjectedNodeText": "products + setup flags", + "minimumProjectedNodeTextDetail": "context", + "minimumProjectedNodeTextOwner": { + "kind": "node", + "id": "load_config" + }, + "minimumRequiredNodeTextPx": 6, + "readabilityOk": true, + "hasLegend": true, + "hasNavigationDock": true, + "legendDockIntersectionArea": 0, + "dockStageIntersectionArea": 0, + "dockStageGap": 10, + "requiredDockStageGap": 10, + "viewerChromeStageOk": true, + "viewerChromeReserve": 44, + "viewerChromeActive": true, + "viewerChromeOk": true, + "resolvedTheme": "light" + } + ] + }, + "captures": { + "status": "not-requested", + "screenshots": [], + "contactSheet": null + }, + "sidecars": { + "receipt": "pxil-session-token.browser-check.json", + "files": [] + } + } + } + }, + "diagnostics": [], + "evidence": { + "receipt": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.finalize.json", + "summaryReceipt": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.finalize-summary.json", + "browserCheckReceipt": "D:\\Selenium Test\\.archify\\workflow-pxil-session-token-20260929-160100\\pxil-session-token.browser-check.json" + }, + "visualReview": "not-requested", + "finishedAt": "2026-09-29T11:58:22.813Z", + "durationMs": 12243, + "update": { + "status": "current", + "installedVersion": "3.0.1", + "availableVersion": "3.0.1", + "releaseNotes": null, + "checkedAt": "2026-09-29T09:50:05.829Z", + "source": "cache", + "noticeRequired": false, + "noticeText": null + } +} diff --git a/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.html b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.html new file mode 100644 index 0000000..1877418 --- /dev/null +++ b/.archify/workflow-pxil-session-token-20260929-160100/pxil-session-token.html @@ -0,0 +1,13845 @@ + + + + + + + + PXIL Session + Trading Token Setup Diagram + + + + + + + + +
+ +
+
+
+

PXIL Session + Trading Token Setup

+
+

Configuration-driven pytest/Selenium workflow

+
+ + + + +
+ + PXIL Session + Trading Token Setup + Configuration-driven pytest/Selenium workflow + + + + + + + + + + + + + + + + + + + + + + + + + 01 / Configuration & selection + + + 02 / Pytest orchestration + + + 03 / Browser automation + + + 04 / Pratyay portal + + + + + Resolve run + + + Authenticate + + + Create session + tokens + + + Capture evidence + + + + Product and mode resolution + + Step artifacts + + One browser login + + Session creation gate + + Token creation loop + + + + + + + + + + + + + + Load config.json · products + setup flags · Configuration & selection › Product and mode resolution › Resolve run + + + + Load config.json + products + setup flags + + + + get_setup_configs · combined / session / token · Configuration & selection › Authenticate · skip disabled + + + + get_setup_configs + combined / session / token + skip disabled + + + + Skip session · run_session = false · Configuration & selection › Create session + tokens + + + + Skip session + run_session = false + + + + Evidence + teardown · screenshots, backup, logout · Configuration & selection › Step artifacts › Capture evidence + + + + Evidence + teardown + screenshots, backup, logout + + + + Pytest setup test · test_combined_setup.py · Pytest orchestration › Resolve run + + + + Pytest setup test + test_combined_setup.py + + + + run_session? · product flag gate · Pytest orchestration › Create session + tokens + + + + run_session? + product flag gate + + + + Product-code loop · one token per configured code · Pytest orchestration › Create session + tokens + + + + Product-code loop + one token per configured code + + + + Open + login · Chrome, credentials, CAPTCHA · Browser automation › One browser login › Authenticate · manual CAPTCHA + + + + Open + login + Chrome, credentials, CAPTCHA + manual CAPTCHA + + + + Pratyay UI · Trading maintenance pages · Pratyay portal › Authenticate + + + + Pratyay UI + Trading maintenance pages + + + + create_session · ME instance + dates -> Save · Pratyay portal › Session creation gate › Create session + tokens + + + + create_session + ME instance + dates -> Save + + + + run_token_setup · IDAS / RTM / UPC branch · Pratyay portal › Token creation loop › Create session + tokens + + + + run_token_setup + IDAS / RTM / UPC branch + + + + Create + save token · dates, expiry, time sessions · Pratyay portal › Token creation loop › Capture evidence + + + + Create + save token + dates, expiry, time sessions + + + + + + product settings + + + + IDAS default + + + + run token flow + + + + authenticate + + + + selected config + + + + step captures + + + + token-only / combined decision + + + + collect + resolve + + + + + Legend + + + Agent logic + + + + Policy + + + + Tool action + + + + Context / trace + + + + External system + + + +

+ + + + + + + + + +
+ + + +
+ + + +