fol Integration Guide
This chapter describes the intended producer/consumer contract between LINC
and fol.
Division Of Responsibility
- LINC extracts declarations, metadata, diagnostics, layouts, and native evidence
folconsumes that evidence to generate bindings and apply policy
What fol Should Expect
BindingPackageas the primary declaration and metadata contractBindingPackage.diagnosticsas explicit extraction warnings and partial-fidelity signalsBindingPackage.layoutswhen ABI-sensitive types need compiler-probed evidenceBindingPackage.linkas the normalized native dependency surfaceSymbolInventoryandValidationReportwhen native artifact matching matters
Recommended End-To-End Flow
- run LINC header scanning or source analysis
- inspect
BindingPackage.diagnostics - require layout probes for ABI-sensitive types
- inspect native artifacts and run validation when linkable symbols matter
- pass the resulting structured values to
fol - let
foldecide what to generate, reject, or gate behind policy
Contract Boundaries
schema_versionis the wire-compatibility gatelinc_versionis producer provenanceBindingPackageis the declaration and metadata contractValidationReportis evidence, not an exception channel- diagnostics are part of the data contract, not incidental logs
Minimal Durable Contract
The shortest durable fol contract is:
- a serialized
BindingPackage - optional
SymbolInventoryvalues - optional
ValidationReport - explicit consumer policy over diagnostics, layout evidence, and link evidence