FDS/OS 1.0
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
# Physical acceptance records
|
||||
|
||||
Physical tests are deferred until the Pi and its attached hardware are available.
|
||||
Follow [the complete procedure](../../docs/stress-testing.md), including bay
|
||||
calibration, repeatable device populations, explicit SAFE handling and separate
|
||||
external timing measurements.
|
||||
|
||||
Copy `session-template.json` into a new results directory outside this source
|
||||
folder. Replace nulls with observed values, retain raw captures and hashes, and
|
||||
leave unperformed cases marked `not_run`. Record failures before attempting a
|
||||
fix. Do not fill this record from VM results.
|
||||
|
||||
For example, on the build workstation:
|
||||
|
||||
```sh
|
||||
mkdir -p out/hardware-session
|
||||
cp tests/hardware/session-template.json out/hardware-session/session.json
|
||||
```
|
||||
|
||||
On FDS, copy `tools/capture-hardware` to DATA and run it explicitly through Bash.
|
||||
Use a fresh output directory each time; the usage guide explains volatile
|
||||
captures when DATA itself is under test. Copy the resulting files into the
|
||||
session directory after the test, preserving `status.tsv` and `SHA256SUMS`.
|
||||
|
||||
No file in this directory is evidence of a completed physical test until an
|
||||
actual run is recorded. The template's null values mean unknown, never zero.
|
||||
@@ -0,0 +1,211 @@
|
||||
{
|
||||
"format": 1,
|
||||
"status": "not_run",
|
||||
"started_utc": null,
|
||||
"operator": null,
|
||||
"software": {
|
||||
"fds_version": null,
|
||||
"source_sha256": null,
|
||||
"system_sha256": null,
|
||||
"boot_sha256": null,
|
||||
"kernel_version": null
|
||||
},
|
||||
"hardware": {
|
||||
"pi_revision": null,
|
||||
"eeprom_version": null,
|
||||
"nvme_model": null,
|
||||
"power_source": null,
|
||||
"battery_state": null,
|
||||
"hub_models": [],
|
||||
"display_model": "Dasung Paperlike 13K"
|
||||
},
|
||||
"bay_map": [
|
||||
{
|
||||
"bay": 1,
|
||||
"physical_label": "BAY 01",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 2,
|
||||
"physical_label": "BAY 02",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 3,
|
||||
"physical_label": "BAY 03",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 4,
|
||||
"physical_label": "BAY 04",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 5,
|
||||
"physical_label": "BAY 05",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 6,
|
||||
"physical_label": "BAY 06",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 7,
|
||||
"physical_label": "BAY 07",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 8,
|
||||
"physical_label": "BAY 08",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 9,
|
||||
"physical_label": "BAY 09",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 10,
|
||||
"physical_label": "BAY 10",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 11,
|
||||
"physical_label": "BAY 11",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
},
|
||||
{
|
||||
"bay": 12,
|
||||
"physical_label": "BAY 12",
|
||||
"stable_usb2_path": null,
|
||||
"stable_usb3_path": null,
|
||||
"cartridge_class": null,
|
||||
"cartridge_serial": null
|
||||
}
|
||||
],
|
||||
"cases": [
|
||||
{
|
||||
"name": "cold_empty",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
},
|
||||
{
|
||||
"name": "cold_twelve",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
},
|
||||
{
|
||||
"name": "hot_insert",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
},
|
||||
{
|
||||
"name": "safe_remove",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
},
|
||||
{
|
||||
"name": "rotated_bays",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
},
|
||||
{
|
||||
"name": "simultaneous_io",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
},
|
||||
{
|
||||
"name": "reboot_under_load",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
},
|
||||
{
|
||||
"name": "poweroff_under_load",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
},
|
||||
{
|
||||
"name": "power_and_usb",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
},
|
||||
{
|
||||
"name": "dasung_recovery",
|
||||
"status": "not_run",
|
||||
"captures": [],
|
||||
"samples": [],
|
||||
"errors": [],
|
||||
"notes": null
|
||||
}
|
||||
],
|
||||
"timing": {
|
||||
"external_instrument": null,
|
||||
"resolution": null,
|
||||
"clock_alignment": null,
|
||||
"physical_poweroff_observed": null
|
||||
},
|
||||
"payloads": [],
|
||||
"unresolved_failures": [],
|
||||
"deferred_cases": []
|
||||
}
|
||||
Reference in New Issue
Block a user