Metadata-Version: 2.4
Name: optohub
Version: 0.1.4
Summary: Meta-package and manager for the OptoHub ecosystem
Author-email: Anton Sharapov <sharapov.anton@gmail.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/SharapovAnton/OptoHub
Project-URL: Source, https://github.com/SharapovAnton/OptoHub
Project-URL: Issues, https://github.com/SharapovAnton/OptoHub/issues
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Libraries
Classifier: Typing :: Typed
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: packaging
Provides-Extra: runtime
Requires-Dist: allytools>=0.7.0; extra == "runtime"
Requires-Dist: dimetra>=0.1.0; extra == "runtime"
Requires-Dist: h5kit>=0.2.0; extra == "runtime"
Requires-Dist: geopto>=0.2.0; extra == "runtime"
Requires-Dist: isensor>=0.3.0; extra == "runtime"
Requires-Dist: lensguild>=0.6.0; extra == "runtime"
Requires-Dist: imagera>=0.4.1; extra == "runtime"
Requires-Dist: gosti>=0.5.0; extra == "runtime"
Requires-Dist: zempy>=0.6.1; extra == "runtime"
Requires-Dist: zemod>=0.1.0; extra == "runtime"
Requires-Dist: scanner3d>=0.6.1; extra == "runtime"
Requires-Dist: scanner3d_validation>=0.2.2; extra == "runtime"
Provides-Extra: test
Requires-Dist: pytest; extra == "test"
Provides-Extra: release
Requires-Dist: tox>=4.53.0; extra == "release"
Requires-Dist: publigit; extra == "release"

# OptoHub

OptoHub is a specification-driven repository for ecosystem-level concept, ecosystem-level architecture, ecosystem-level rules, ecosystem member registry, ecosystem validation, and testing policy.

## Repository Roles

- `README.md` is the human-oriented overview file in the repository root.
- `AGENTS.md` is the canonical AI entry point in the repository root.
- `agent_docs/` contains the authoritative AI instruction hierarchy.
- This repository defines ecosystem-level structure and rules for OpticsEcoSys member projects.
- `human_docs/` is reserved for optional human-facing detailed documentation.

## Human Navigation

Human readers should start with this file for a high-level overview and use `human_docs/` for any additional human-facing detail (including migration and consistency reports under `human_docs/reports/` when present).

For the canonical AI-oriented interpretation of the repository structure and instruction hierarchy, see `AGENTS.md`.

## Local ecosystem orchestration (developers)

Sibling repositories are expected next to the OptoHub checkout (same parent directory). Override the inferred workspace root with **`OPTOHUB_WORKSPACE_ROOT`** if your layout differs.

- **`python -m optohub.ecosystem.install_all`** — editable `pip install -e` for each registered sibling only (no tests). Writes **`human_docs/reports/runtime/optohub_install_report.json`** (gitignored).
- **`python -m optohub.ecosystem.run_all_tests`** — runs **`pytest`** in each sibling only (no installs). Writes **`human_docs/reports/runtime/optohub_test_report.json`** (gitignored).

**tox:** `optohub-fast` runs tests only; `optohub-full` recreates the env, runs install, then tests once.
