---
title: "2026-09-18 Histo 0.0.127 cell inference API inspection"
description: "Inspected the cell-head and whole-slide domain-representation interfaces needed by NanoVirDx."
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 Histo 0.0.127 cell inference API inspection

## Work Done

- Inspected the exact `histo-v0.0.127` source for cell detection, tissue and Gleason heads, domain-representation model loading, whole-slide processing, and output persistence.
- Confirmed that `process_scans` is the stable whole-slide orchestration boundary. It reuses the watershed pool and host reservations across super-windows and scans.
- Recommended that NanoVirDx keep a path-backed WSI-to-five-Zarr predictor contract and delegate the whole input list to Histo instead of exposing `FeatureGrid` or duplicating super-window logic.
- Found that the current NanoVirDx wrapper calls `process_scan` without reusable watershed or reservation objects, which starts cell post-processing resources per super-window.

## Lessons Learned: Pitfalls

- The installed macOS Pixi environment does not contain Histo because the dependency is Linux-only. The local Histo repository and exact release tag were the reliable source.
- Standalone `cells_zarr` persistence is not the domain-representation v2 persistence path; v2 writes raster instance maps and a cell lookup table through `WsiOutputs`.

## Lessons Learned: Improvements

- Document `process_scans` as the preferred external inference adapter, including its output-directory layout and completed-scan skip behavior.
- Document that `process_scan` callers must supply a shared `CpuWatershed` and host reservation when processing multiple super-windows, or accept substantial repeated startup/allocation overhead.

Source: https://docs.virdx.dev/knowledge/inbox/2026-09-18-histo-histo-0127-cell-inference-api/index.mdx
