diff --git a/.agents/skills/reverse-engineer-anything/references/native-and-artifacts.md b/.agents/skills/reverse-engineer-anything/references/native-and-artifacts.md index bb024c52c3..6006af90b6 100644 --- a/.agents/skills/reverse-engineer-anything/references/native-and-artifacts.md +++ b/.agents/skills/reverse-engineer-anything/references/native-and-artifacts.md @@ -713,6 +713,32 @@ recognized. Segments are not disassembled, and RISC-V or Xtensa segments cannot be opened as raw-binary. See [ESP images](https://github.com/morluto/rea/blob/main/docs/esp-image.md). +## ESP flash images + +A whole-flash dump opens as `esp-flash-image`. `root_format_metadata` holds +`partition_table` (its `method`: `default`, `caller` or a derived +`scan`), `bootloader` and `apps` ESP image facts, the `otadata` records, +`partitions_outside_dump` and `boot_selection`. Every table has a +`boot_selection`: its `basis` names the bootloader's branch (`no-otadata` +without otadata, `none` when the bootloader rejects the table, `unknown` +when a record is missing), and it lists its `assumptions`; +`running_partition` is always `unknown`. Each image names its entry +`path`. With `detail: "summary"` the root kind is `esp-flash-image-summary` +and each image is a compact `summary` (chip, entry point, segment count, +classified load ranges, signature block count, descriptor identity, +integrity); complete detail keeps every segment. Partition rows +(`partitions/