update docs
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
# Dasung integration validation
|
||||
|
||||
Development reference and historical context. For current operating instructions, use the [user manual](../README.md). Acceptance applies only to the source and artifacts identified in each record.
|
||||
|
||||
|
||||
[Documentation index](README.md) · [Integration and usage](dasung.md)
|
||||
|
||||
Validated on 2026-09-20 on the x86_64 Arch development host. This records the FDS
|
||||
port of the existing local `dasungd`; it is separate from the historical live
|
||||
monitor validation in [the imported source](../../rust/dasungd/VALIDATION.md).
|
||||
|
||||
This is the original integration record. The subsequent rootfs build, emulated
|
||||
ARM execution, and integration rerun are recorded in [M1 validation](m1-validation.md).
|
||||
|
||||
## Commands completed successfully
|
||||
|
||||
```sh
|
||||
make bootstrap
|
||||
make smoke-test
|
||||
make check
|
||||
make dasung
|
||||
make dasung-test
|
||||
```
|
||||
|
||||
Bootstrap now fetches the locked workspace dependencies. A fresh empty Cargo
|
||||
cache had exposed that resolving the new workspace member also affects an offline
|
||||
build of the dependency-free smoketest; the bootstrap fetch addresses that setup
|
||||
requirement. The original dependency versions were retained; the workspace lock
|
||||
adds the smoketest member to the imported controller lock.
|
||||
|
||||
## Checks performed
|
||||
|
||||
- Static AArch64 ELF validation of both the built daemon and the executable
|
||||
extracted from its `aarch64` XBPS package. No dynamic interpreter, shared-library
|
||||
requirements, or glibc symbol requirements were present.
|
||||
- Six imported unit tests: framing/reassembly, malformed streams, parameter and
|
||||
IPC validation, saved-setting reload, and exact EDID identity/checksum/clock.
|
||||
- Pseudo-terminal monitor tests: late attachment, keepalive, fragmented replies,
|
||||
invalid settings, saved-setting replay, unplug/replug, duplicate-instance
|
||||
exclusion, reply watchdog recovery, restart, and forgetting settings.
|
||||
- Native s6 execution of the packaged service graph in an isolated container with
|
||||
a read-only root and no exposed physical USB or display devices. Startup,
|
||||
logging, socket permissions, restart, and clean stop passed with no monitor.
|
||||
This used the x86_64 test build of the same source, not ARM emulation.
|
||||
- Package contents, exact config/profile, mandatory base package selection,
|
||||
base boot-bundle membership, and compilation of packaged service sources.
|
||||
- The original M0 ELF/source/overlay protections and Rust formatting checks.
|
||||
|
||||
## Artifact identities
|
||||
|
||||
```text
|
||||
7a3daf7e7beadde7d4b0991a08af04952495e1ec155bd4a2e3605fb903dcc782 out/dasungd
|
||||
9c33dc3808549016f388f409658abc3ba37ff0b8d05973dcf1d5f9f8dbd89e94 out/packages/fds-dasungd-0.1.0_1.aarch64.xbps
|
||||
```
|
||||
|
||||
Package dependencies are coreutils, execline, s6, s6-rc, and eudev. The static
|
||||
executable does not add a shared musl, libusb, or libudev runtime dependency.
|
||||
The packet keepalive/pacing and confirmed 304210 kHz EDID are retained.
|
||||
|
||||
Local generated evidence: [build log](../../out/logs/dasung-build-final.log),
|
||||
[test log](../../out/logs/dasung-test-final.log), and
|
||||
[artifact manifest](../../out/manifests/dasung-artifacts.sha256). These outputs are
|
||||
ignored by Git and must be regenerated in a fresh checkout.
|
||||
|
||||
## Not verified
|
||||
|
||||
There is no complete rootfs, native PID 1 deployment, Pi kernel/initramfs, or
|
||||
bootable image yet. ARM runtime execution, Pi video/cabling, physical image quality,
|
||||
early-boot display handoff, and corrected cold-power recovery were not tested.
|
||||
The workstation's live display service and configuration were not changed.
|
||||
Saved overrides use volatile `/run` until persistent machine storage is integrated.
|
||||
The service test is not a boot or shutdown benchmark.
|
||||
Reference in New Issue
Block a user