Skip to content

Restore the pony-ffi-audit skill - #49

Open
SeanTAllen wants to merge 1 commit into
mainfrom
restore-pony-ffi-audit
Open

Restore the pony-ffi-audit skill#49
SeanTAllen wants to merge 1 commit into
mainfrom
restore-pony-ffi-audit

Conversation

@SeanTAllen

Copy link
Copy Markdown
Member

The pony-ffi-audit skill is available again. It's an audit methodology for finding FFI calls where C mutates Pony data through a non-mutable reference capability (val, box, or tag) — the kind of violation the compiler trusts the FFI declaration about and won't catch. The skill walks through finding every FFI call site, determining what the C function actually writes, and checking whether the Pony refcap permits it, with a worked example showing the reporting format.

It was removed earlier because it wasn't ready for use (#27). This restores it, brought up to the repo's current documentation conventions.

Closes #27

Brings back the FFI safety audit skill removed in the past because it
wasn't ready for use (#27). Restored from history and brought up to the
repo's current conventions: prose reflowed to flow rather than hard-wrap,
the addressof escape-hatch description corrected to note it applies to
`var` targets, an up-front scope note added, and the example audit's
summary arithmetic reconciled (the three violation patterns total 42;
runtime event handles are intentional and counted separately).

Deliberately does not reference the unmerged ponyc unsafe-pointer work —
the audit's mutation-capability methodology is orthogonal to that split
and remains correct against released ponyc.

Closes #27
@SeanTAllen SeanTAllen added the changelog - added Automatically add "Added" CHANGELOG entry on merge label Jun 6, 2026
@ponylang-main ponylang-main added the discuss during sync Should be discussed during an upcoming sync label Jun 7, 2026
@SeanTAllen SeanTAllen added do not merge This PR should not be merged at this time and removed discuss during sync Should be discussed during an upcoming sync labels Jun 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog - added Automatically add "Added" CHANGELOG entry on merge do not merge This PR should not be merged at this time

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Restore pony-ffi-audit skill when ready

2 participants