# Verification Verified 2026-10-19 against Gitea issue #95. ## Build and existing checks - `JAVA_HOME=/usr/local/software/java/jfx-25 ./gradlew build` — passed, including normal Detag generation, compilation, packaging, and existing tests. - Existing suite: 42 tests across six suites, zero failures, errors, or skips. No new automated tests were added. - Repeated build after switching the display amount to the existing `ΩAmountΩ` tag — passed; generated Java remained identical and compilation/tests were up-to-date. - `openspec validate 95-display-perps-sample-positions --strict` — passed. - `git diff --check` — passed. ## Isolated JavaFX inspection A temporary preview outside the repository constructed the actual `PerpsTab` in nested Production/Test tabs in a 600 × 400 JavaFX scene, rendered snapshots, changed expansion/selection, and scrolled the table. The operational Hub and its services were not started. - Inspected expanded, selected, scrolled, collapsed-group, and Test snapshots. Column headings and USD values are readable; the notice wraps without clipping and identifies Phoenix as illustrative. - Eight positions appear under two wallets and four venue groups (14 visible tree rows when expanded). Both venues have multiple Long/Short samples. - Position rows are faint green/red. Selected rows retain native selection styling and readable direction text. - Collapsing wallet A reduces visible rows from 14 to eight; Test remains at 14 rows, confirming independent trees. - Collapsing all venues leaves six group rows with blank direction/size cells and no residual direction colors after row reuse. - Scrolling exposes the remaining positions with correct colors, directions, and sizes. This verifies rendered scenes and programmatic control behavior. Mouse/keyboard operation in the running EMC application was not exercised. ## Scope review Implementation consists of the new package-private EMC `PerpsTab` and one placeholder replacement in `EvelynMissionControlImpl`. Source review confirms no Refresh control, network calls, service changes, sample refresh timeline, public API changes, configuration changes, or dependency changes. Changes remain local and uncommitted for owner review; the OpenSpec change remains active.