PyPI package v0.2.1 Python >=3.12 Trusted Publishing v0.2.0 evidence preserved

Workcell black box

A replayed workcell incident should become evidence, not another raw log.

Metriplane turns replayed or calibrated workcell state into a physical event ledger, Cell Truth Report, portable evidence bundle, verification result, and generated regression check.

v0.2.1 is the current installable package. The DOI-archived v0.2.0 release remains the frozen research artifact for the SoftwareX evidence and reproduction path.

Archived author-run evidence Captured v0.2.0 values
580 archived author-run tests passed evidence/paper_v2_0/test_output.txt
DOI archived on Zenodo 10.5281/zenodo.20736619
6 physical events atlas_assembly_cell_run.txt
1 incident atlas_assembly_cell_run.txt
35.0s missing-tool delay cell_truth_report.md
pass=true bundle verification bundle_verify.txt
pass=true generated regression check regression_test.json

Current distribution

Metriplane v0.2.1 is available through pip.

The release packages the core Python modules and command-line entry points for normal installation on Python 3.12 or newer. It also adds a verified TestPyPI-to-PyPI publishing path without changing the frozen v0.2.0 evidence package.

python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install "metriplane==0.2.1"

metriplane doctor
metriplane atlas protocol export \
  --out metriplane-protocol

What changed in v0.2.1

Six release-engineering changes make installation and provenance clearer.

PEP 517 package metadata

The release adds an explicit build system, complete PyPI project links, and distribution metadata sourced from the package itself.

Single version source

metriplane.__version__ is the authoritative package version and is checked against both the distribution metadata and the release tag.

ArUco-ready OpenCV dependency

The package now depends on opencv-contrib-python-headless so the ArUco APIs used by Metriplane are present in a clean installation.

Trusted PyPI publishing

GitHub Actions uses OIDC-based Trusted Publishing: the exact built files are staged on TestPyPI, verified, approved, and then promoted to PyPI without a long-lived API token.

Strict wheel smoke test

The release gate validates metadata, dependencies, package/version identity, cv2.aruco, doctor, and Atlas protocol export from a fresh environment outside the source checkout.

Explicit wheel/source boundary

The PyPI wheel contains the core Python packages and CLI entry points. Checked-in datasets, domain packs, the local dashboard, helper scripts, and frozen evidence still require a source checkout.

Evidence workflow

The product surface is the chain of custody.

Within a configured domain pack, Metriplane packages bounded incident context so another reviewer can inspect, replay, verify, and preserve the event as a generated regression check.

  1. 01 replayed workcell state
  2. 02 physical event
  3. 03 incident
  4. 04 evidence bundle
  5. 05 verification
  6. 06 generated regression check

Generated artifacts

The output is designed for review, reproduction, and future checks.

Robotics teams often debug incidents using recorded sensor data, ROS bags, logs, traces, and simulation replays. Metriplane formalizes the next layer: incident context, evidence bundle, verification result, and generated regression check.

Metriplane Atlas Cell Black Box dashboard showing physical events, incidents, observed duration, and event table
Atlas Cell Black Box dashboard generated from the replay.
Metriplane Cell Truth Report showing event timeline and incident summary
Cell Truth Report for the missing-tool incident.

What it offers

A bounded evidence layer for robotics incident review.

01

Turn replayed state into an incident record.

Replay-derived physical events become a dated, inspectable timeline with process deviations and incident IDs.

02

Package the incident as portable evidence.

INC-0001 carries its manifest, checksums, incident JSON, event timeline, report, replay command, and limitations.

03

Keep the lesson as a generated regression check.

The missing-tool incident becomes missing_tool_caused_delay_INC-0001 and the generated regression check passes.

Public demos

Watch the evidence workflow, then inspect the lineage.

The featured demo follows the frozen v0.2.0 SoftwareX artifact path: replayed assembly-cell state becomes an incident, evidence bundle, verification result, and generated regression check. Earlier demos stay visible as project lineage, not as unsupported claims about the current v0.2.1 package.

v0.2.0 research evidence loop Demo 08

Research preprint

An Evidence-Preserving Evaluation Protocol for Camera-First Planar Digital Twins

The public author-preprint record defines six separate measurement classes for mapping, latency, continuity, replay equality, overload, and backend agreement. It also reports the revised 153-observation M1 campaign without presenting software checks as physical accuracy.

Claim to evidence

Public claims are mapped to concrete artifacts.

Archived author-run evidence is available for inspection. Fresh camera-free reproduction writes only to the documented temporary paths.

Claim Evidence How to verify Boundary
v0.2.0 is archived as a public research release GitHub release and Zenodo DOI 10.5281/zenodo.20736619 Open the exact v0.2.0 release and Zenodo record. v0.2.1 is a packaging release; SoftwareX acceptance or peer review is not claimed.
The archived author-run maintainer gate recorded 580 passed Archived author-run evidence/paper_v2_0/test_output.txt reports 580 passed. Inspect the archived file; do not use evidence/paper_v2_0/ as a fresh rerun destination. The public independent macOS gate recorded 575 passed, 3 skipped, 2 failed; the public full suite is not a complete pass.
The camera-free replay is deterministic deterministic_replay.txt reports pass=true, 0.0 cm position difference, and 0 event mismatches. Run with RUNS=/tmp/metriplane-softwarex-runs and the checked-in demo session. Checked-in demo session only; no live-camera claim.
The assembly-cell replay produces one incident atlas_assembly_cell_run.txt reports 6 physical events, 1 process deviation, and 1 incident. Run metriplane atlas run with the assembly_cell domain pack and --out /tmp/metriplane-softwarex-atlas. One deterministic assembly-cell domain pack and replay.
INC-0001 is explainable as a Cell Truth Report cell_truth_report.md records a 35.0 s wait for torque_driver_1. Inspect archived evidence/paper_v2_0/atlas_run/cell_truth_report.md. Derived from replayed planar state, not raw-video judgement.

External review

Feedback is collected as technical review, not social proof.

External feedback is organized by theme and permission status. Named quotes require explicit permission; otherwise feedback is summarized anonymously.

Scope and non-claims

The project is intentionally bounded.

Metriplane is observe-only, local-first, camera-compatible and replay-oriented, planar/tagged-asset scoped, and research-software oriented.

Observe-only Planar/tagged-asset scoped Camera-free replay path No robot or machine controlNo safety certificationNo quality-release approvalNo people recognitionNo marker-free tracking claimNo full 3D reconstruction claimNo arbitrary anomaly-detection claimNo successful-remediation claimNo production-factory validationNo factory-wide deployment readinessNo complete external-validation claimNo SoftwareX acceptance or peer-reviewed publication claim

Next step

Inspect the artifact or send technical feedback.

Metriplane improves fastest when reviewers run the camera-free path, challenge the boundaries, and point out missing evidence.