Files
pikasTech-HWLAB/docs/reference/architecture.md
T
2026-05-22 16:51:48 +00:00

85 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# HWLAB Architecture Reference
HWLAB is the hardware lab runtime and control plane for DEV-first MVP work.
The current P0 direction is fixed by `DC-DCSN-P0-2026-003` and
[pikasTech/HWLAB#78](https://github.com/pikasTech/HWLAB/issues/78): prove the
M3 virtual hardware trusted loop before broadening the product surface.
## MVP Boundary
- Environment: `dev`.
- Public Cloud Web entry: `http://74.48.78.17:16666/`.
- Public API/edge entry: `http://74.48.78.17:16667/`.
- Legacy public `:6666` and `:6667` are historical and must not be used as
current browser or API acceptance targets.
- UniDesk may support scheduling, CI, or CD. It is not a HWLAB runtime
substitute.
- PROD is outside the current MVP execution path.
## Runtime Shape
The frozen service IDs live in [README.md](../../README.md). The runtime path
is:
```text
browser or CLI
-> master edge / frp public ports
-> D601 hwlab-dev router
-> HWLAB cloud/runtime services
-> gateway, simulators, patch panel, agent services
```
For M3 hardware proof, the required runtime participants are:
- two distinct `hwlab-box-simu` identities;
- two distinct `hwlab-gateway-simu` identities;
- one `hwlab-patch-panel` that owns the route decision.
## M3 Trusted Loop
M3 DEV-LIVE requires this specific path:
```text
res_boxsimu_1:DO1 -> hwlab-patch-panel -> res_boxsimu_2:DI1
```
The pass evidence must include operation, trace, audit, and evidence
identifiers tied to the same loop. Direct box loopback, front-end state edits,
UniDesk substitution, fixture output, and local-only smoke output are not M3
DEV-LIVE.
The detailed step order and failure classes are authoritative in
[m3-loop-rollout-runbook.md](m3-loop-rollout-runbook.md).
## Evidence Labels
Use the labels below consistently in docs, reports, CLI output, and Cloud Web:
| Label | Meaning |
| --- | --- |
| `SOURCE` | Repository source, contracts, manifests, fixtures, or checked-in reports. |
| `LOCAL` | Localhost or in-process smoke result. |
| `DRY-RUN` | No-mutation plan or fixture-backed preview. |
| `DEV-LIVE` | Observation from the real DEV route for the exact component or loop claimed. |
| `BLOCKED` | Missing, stale, unsafe, or not-yet-authorized evidence/action. |
Only `DEV-LIVE` can support live runtime claims, and only the full M3 loop can
support M3 PASS. Edge health, Cloud Workbench polish, artifact reports, and
desired-state plans are support signals until joined with the required loop
evidence.
Code Agent chat 证据单独分级:只有真实同源 `/v1/agent/chat`
`completed` 响应可以证明 chat reply readinessprovider credential gap
必须保持 `BLOCKED`。它不能升级为 M3、M4、M5 或硬件闭环验收,判定细则见
[code-agent-chat-readiness.md](code-agent-chat-readiness.md)。
## Stable Sources
- [pikasTech/HWLAB#7](https://github.com/pikasTech/HWLAB/issues/7): current
board and priority status.
- [pikasTech/HWLAB#78](https://github.com/pikasTech/HWLAB/issues/78): M3
decision and prompt/review guardrails.
- [docs/operator-runbook.md](../operator-runbook.md): operator phase gates.
- [docs/dev-acceptance-matrix.md](../dev-acceptance-matrix.md): DEV acceptance
matrix and health contracts.