Premise: LLM outputs are untrusted. BELGI only accepts outputs that can be verified against a locked spec + cross-file invariants, with a default NO-GO posture on unknowns or missing evidence.
Mental model: lock -> verify -> seal. Gates decide GO / NO-GO and produce replayable, tamper-evident artifacts.
I’d love feedback on:
where this fails in real CI pipelines,
missing invariant classes / bypass vectors,
whether default NO-GO is usable at scale (and how you’d stage it).