← PIO AgentCONTENT HISTORY

Update to PIO Agent

Snapshot Oct 24, 2026 · 13:55 UTC · version 3.2.0

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save PIO Agent and check future changes in Following.

Up to 10 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Validate firmware behavior on real hardware rather than compilation-only checks. Use when running physical acceptance tests, confirming boot markers, validating sensor output, or checking runtime timing/telemetry.",
  "included_files": [],
  "name": "hardware-in-the-loop-test",
  "skill_md_contents": "---\nname: hardware-in-the-loop-test\ndescription: Validate firmware behavior on real hardware rather than compilation-only checks. Use when running physical acceptance tests, confirming boot markers, validating sensor output, or checking runtime timing/telemetry.\n---\n\n# Hardware-in-the-Loop Test\n\n> **Reading results:** a non-zero exit means look at BOTH streams. An operation\n> that ran but failed (a build with errors) puts `success: false` on **stdout**;\n> one that could not run (bad arguments, policy, a busy port) puts `errorType` on\n> **stderr** with stdout empty. Capture stdout and stderr separately with `--json`. See the\n> `pio-manager` skill for the full contract.\n\n## Purpose\n\nUse this skill to validate firmware behavior on a real device, not just through compilation.\n\n## Safety Rules\n\n- Ask before flashing.\n- Do not assume physical wiring is safe.\n- Do not activate motors, heaters, lasers, relays, pumps, or high-power outputs without explicit user approval.\n- Keep tests bounded by timeout.\n- Save logs and artifacts.\n\n## Workflow\n\n1. Define finite expected markers, rejected patterns, timeout, stability window, and safe physical behavior.\n2. Resolve one project, environment, board, and stable device binding with `pio-agent target-resolve`; stop on ambiguity or replacement.\n3. Validate and build with `pio-agent agent-build-diagnose`.\n4. Ask for an approval scoped to the exact flash workflow and target binding.\n5. Run `pio-agent agent-flash-monitor-verify` after approval.\n6. Check bounded serial markers, timing, or telemetry and retain task/log/artifact references.\n7. Mark build, flash, monitor, and assertions independently as pass, fail, or inconclusive.\n8. Cancel runaway tracked tasks with `pio-agent task-cancel <id>`; confirm cleanup with `pio-agent task-history --project-dir <dir>`, `pio-agent monitor-status`, and `pio-agent lock status`.\n9. Save redacted evidence and summarize the result.\n\nScheduled HIL writes require a pre-existing, exact, expiring `lab_runner` policy. A saved prompt cannot create, approve, or broaden that policy, and default scheduled monitoring must remain read/build/monitor-only.\n\n## Example Test Definition\n\n```yaml\nname: esp32_boot_marker\nboard: esp32dev\nexpected:\n  serial_contains: BOOT_OK\n  timeout_seconds: 15\n```\n"
}

SHA-256 of public snapshot: 662f864a208e12787cfbc8f28f0115ee393037db162a06ce10066bbe27582eb1