One firmware/API contract, one canonical Web UI, and contextual Rust and Flutter clients. Start with the guide for your task; production acceptance remains in issue #2.
| Task | Guide |
|---|---|
| Identify the board and wire it safely | Hardware, verification |
| Connect, authenticate or recover access | Access, host Wi-Fi, peer identity |
| Configure cells and their states | Cell assignments |
| Use the terminal | Terminal UI and shell |
| Browse or transfer files | User files and protected paths |
| Update boards | Remote maintenance, tooling |
| Update and monitor client applications | Client management |
| Inspect build budgets or live board memory | Resource usage |
| Task | Guide |
|---|---|
| Build only what changed | Root build instructions, toolchain, low-write storage |
| Find the authoritative component | Architecture and gap register |
| Implement an integration | API, living API policy, duplex control |
| Build a host-owned game/presentation | Host presentation, removable Snake example |
| Contribute without losing another owner's work | Contribution rules, GitHub coordination |
| Reuse prior projects | Mandatory donor preflight, file comparison |
| Verify CI packages and release scope | Repository governance, handoff |
Include the board role/hostname, app and firmware versions, selected transport, exact error, and whether the failure survives reconnection. Include the relevant CI run or commit for build failures. Do not paste credentials, private settings or whole device backups into public issues.
| Symptom | Safe first check |
|---|---|
| Missing tool or compiler | Run pakar doctor; use the existing SDK location and locked wrapper. Do not clean caches or reinstall everything. |
| Build-storage guard refuses a build | Inspect tools/storage-hygiene.ps1 read-only output and the storage policy. Release caches and rollback are protected. |
| Cannot find the board | Check the client network/USB selection and host Wi-Fi. A discovered name is not an authenticated/current connection. |
| Firmware update response is lost | Inspect the board's running identity and maintenance job first. Do not blindly repeat an ambiguous upload. |
| Donor report is stale | Read the affected source/target before regenerating evidence; generation is not manual review. |
CI verifies source/build contracts. Installation, live board behavior, optical output, audio and human acceptance are separate gates. Historical receipts are dated evidence, not a permanent claim about today's connected devices.