Open Hardware Manager 0.8.4
Added
- Repair workflow epic (GAPs 1–8): End-to-end API and CLI surface for field-device repair workflows —
AssetRecordphysical-state domain object,AssetStatuslifecycle field, repair document extraction pipeline, parts harvesting (POST /v1/api/asset/harvest-parts), triage checklist (POST /v1/api/asset/triage-checklist), triage report with per-component action recommendations, salvage matching (fleet query for harvestable components), sourcing resolution (POST /v1/api/asset/resolve-sourcing), repair-doc import with conservative merge semantics (GAP-4), cross-manifest compatibility viacompatible_manifest_ids(GAP-8), and claim/reservation mechanism for harvestable components (GAP-7). make readygate: Single command (make ready) that enforces format, lint, unit tests, service↔API↔CLI parity, docs validation, and live E2E as a pre-merge gate. Individual targets:make parity,make validate-docs,make e2e.
Fixed
- Azure Container Apps redirect scheme: Gunicorn was not configured to trust
X-Forwarded-Protofrom ACA's TLS-terminating ingress, causing all trailing-slash redirects to generatehttp://URLs instead ofhttps://. Addedforwarded_allow_ips = os.getenv("FORWARDED_ALLOW_IPS", "*")togunicorn.conf.py. make ready/ parity gate: Wiredvalidate-docs,parity, ande2etargets into the project Makefile;make parityrunstests/parityto catch service↔route↔CLI drift early.
Docker
docker pull touchthesun/openhardwaremanager:0.8.4Multi-arch: linux/amd64,linux/arm64