[GH-ISSUE #33] Report truthful segment, section, and memory metadata #23

Closed
opened 2026-10-15 18:20:04 +00:00 by bsakaguchi · 1 comment
Owner

Originally created by @morluto on GitHub (Jul 12, 2026).
Original GitHub issue: https://github.com/morluto/rea/issues/33

Problem

Segment permissions are currently reported as fixed false values rather than values observed from the binary or analysis provider. Unknown metadata is therefore indistinguishable from a verified negative result.

Agents must never interpret a placeholder as evidence.

Scope

  • Return actual readable, writable, and executable permissions where Hopper exposes them.
  • Represent unavailable values as null, omitted fields, or an explicit unsupported capability.
  • Apply the same rule to section and memory metadata.
  • Include provenance and provider limitations in the result.
  • Add fixtures covering executable, writable, read-only, and unavailable metadata.

Acceptance criteria

  • No permission or memory attribute is fabricated.
  • Contracts distinguish observed false from unknown or unsupported.
  • Tests prove parsing and transport preserve all three states.
  • Real-Hopper verification checks permissions against a known fixture binary.
Originally created by @morluto on GitHub (Jul 12, 2026). Original GitHub issue: https://github.com/morluto/rea/issues/33 ## Problem Segment permissions are currently reported as fixed false values rather than values observed from the binary or analysis provider. Unknown metadata is therefore indistinguishable from a verified negative result. Agents must never interpret a placeholder as evidence. ## Scope - Return actual readable, writable, and executable permissions where Hopper exposes them. - Represent unavailable values as null, omitted fields, or an explicit unsupported capability. - Apply the same rule to section and memory metadata. - Include provenance and provider limitations in the result. - Add fixtures covering executable, writable, read-only, and unavailable metadata. ## Acceptance criteria - No permission or memory attribute is fabricated. - Contracts distinguish observed false from unknown or unsupported. - Tests prove parsing and transport preserve all three states. - Real-Hopper verification checks permissions against a known fixture binary.
bsakaguchi 2026-10-15 18:20:04 +00:00
Author
Owner

@morluto commented on GitHub (Jul 13, 2026):

Resolved by #46. Hopper segment and section permissions now use tri-state true | false | null values with explicit hopper-public-python-api provenance and an unavailable-permissions reason; fabricated fixed false values are rejected by boundary tests. Linux real-Hopper verification passed against /bin/true and /bin/ls and checked every returned memory region.

<!-- gh-comment-id:4963113643 --> @morluto commented on GitHub (Jul 13, 2026): Resolved by #46. Hopper segment and section permissions now use tri-state `true | false | null` values with explicit `hopper-public-python-api` provenance and an unavailable-permissions reason; fabricated fixed false values are rejected by boundary tests. Linux real-Hopper verification passed against `/bin/true` and `/bin/ls` and checked every returned memory region.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#23
No description provided.