---
title: "2026-09-18 NanoVirDx Histo v2 adapter contract"
description: "Inspected NanoVirDx and Histo v2 boundaries to identify the smallest domain-representation adapter and its artifact mismatch."
image: "https://docs.virdx.dev/img/virdx-social-card.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.virdx.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# 2026-09-18 NanoVirDx Histo v2 adapter contract

## Work Done

- Inspected `packages/nanovirdx` dataclasses, inference base, Histo preprocessing adapter, and DiffSim consumer without editing the monorepo.
- Inspected Histo v2's public `domain_representation` API, typed settings, scan input, output-store names, and Hydra config packaging.
- Identified the thin adapter boundary: compose settings, load models once, translate each `WSIBatch` entry into `ScanInput`, call `process_scan`, and translate the five persisted Zarr outputs into `DomainRepresentationBatch`.
- Reported that the current batch omits the required nuclei segmentation path and that `from_vxdata` likewise omits the required vxData `nuclei_segmentation` reference.
- Reported that Histo's repository-root Hydra config is not included by its current wheel packaging, so NanoVirDx needs an explicit config/settings input unless Histo ships package data or NanoVirDx intentionally owns a copy.

## Lessons Learned: Pitfalls

- The installed Histo environment under the older inference checkout did not contain the current v2 pipeline. The active Histo source checkout was required to inspect the actual API.
- A broad file listing under NanoVirDx included its `.pixi` environment and produced large irrelevant output. Restrict future inspection to `src/`, `tests/`, and project metadata.
- The Histo workstream index documents operational history but not the v2 adapter boundary or its five-output artifact contract.

## Lessons Learned: Improvements

- Document Histo v2's stable integration boundary and fixed five-artifact output names in the Histo workstream SOPs.
- Document whether Hydra defaults are a supported installed-package resource. This would prevent downstream adapters from assuming a source checkout.
- Keep NanoVirDx's domain batch schema synchronized with the vxData `HistoDomainRep` required fields, especially `nuclei_segmentation`.

Source: https://docs.virdx.dev/knowledge/inbox/2026-09-18-histo-nanovirdx-domainrep-adapter-contract/index.mdx
