HWLAB

HWLAB is the hardware lab runtime and control plane for MVP development.

This repository is intentionally small at L0. It defines the shared protocol contract, schema skeletons, deploy manifest schema, and minimal validation entry points that later service implementations must follow.

MVP Freeze

  • MVP scope is DEV only.
  • DEV browser/frontend endpoint is fixed at http://74.48.78.17:16666/.
  • DEV API/edge/live endpoint is fixed at http://74.48.78.17:16667.
  • Legacy :6666 and :6667 are historical/deprecated only and are not MVP acceptance targets.
  • UniDesk may be used only as an external scheduling, CI, or CD base.
  • HWLAB runtime services must not be replaced by UniDesk backend, provider-gateway, or microservice proxy implementations.

Frozen Service IDs

  • hwlab-cloud-api
  • hwlab-cloud-web
  • hwlab-agent-mgr
  • hwlab-agent-worker
  • hwlab-gateway
  • hwlab-gateway-simu
  • hwlab-box-simu
  • hwlab-patch-panel
  • hwlab-router
  • hwlab-tunnel-client
  • hwlab-edge-proxy
  • hwlab-cli
  • hwlab-agent-skills

Frozen Repository Layout

The MVP branches may add implementation files under these paths:

  • cmd/...
  • internal/...
  • web/hwlab-cloud-web
  • tools/hwlab-cli
  • skills
  • protocol/schemas
  • deploy/deploy.json
  • deploy/k8s/base/dev/prod
  • deploy/master-edge
  • deploy/frp
  • scripts/bootstrap-skills.sh
  • scripts/worker-entrypoint.sh

Contract Index

Validation

Run the lightweight validation suite:

npm run check

Run only the L2 gateway/box simulator runtime smoke:

npm run l2:smoke

L6 Manual Acceptance Entry

The external MVP acceptance surface is DEV-only and report-driven:

npm run l6:smoke
npm run web:check
npm run cli:dry-run
node tools/hwlab-cli/bin/hwlab-cli.mjs test e2e --env dev --mvp

The CLI command defaults to a JSON dry-run plan sourced from reports/dev-gate/dev-mvp-gate-report.json and fixtures/mvp/m5-e2e/dry-run-plan.json. A live DEV attempt requires --live --confirm-dev --confirmed-non-production; with open gate blockers it returns BLOCKED evidence rather than using fixtures or UniDesk runtime as a substitute.

S
Description
UniDesk controlled mirror for pikasTech/HWLAB
Readme 32 MiB
Languages
TypeScript 63.3%
JavaScript 21.9%
Vue 7.4%
Go 3.2%
Python 1.9%
Other 2.2%