Expand description
bifp-core — Bidirectional Instant Feedback Protocol, native primitives.
Real, tested Rust implementing the mechanics described in BIFP v0.1
(docs/bifp-protocol.tex in this repository): a ternary flag tuple, teach-then-handoff
task decomposition, ternary consensus for resolving disagreement, a TAP-inspired
hold-until-resolved primitive, the co-designed badge palette, and — the thing the
hosted ternlang-engram MCP server’s persisted schema doesn’t have — a store where
the trit is a real, native field, not a value folded into a tags array.
Provenance discipline (same one the protocol document itself insists on): every
module here is original code written for BIFP. Nothing in this crate is, extends, or
claims to be part of the separately published ternlang-engram/ternlang-py
packages or the (not present on disk, unverified) “TAP” mentioned in the Ternlang
whitepaper. Where this crate’s behavior was designed to match something observed
(e.g. Trit::consensus), that provenance is stated in the relevant module’s docs.
Re-exports§
pub use badge::derive as derive_badge;pub use badge::Badge;pub use badge::BadgeContext;pub use flag::Flag;pub use flag::Source;pub use plan::plan;pub use plan::Plan;pub use plan::Subtask;pub use store::FlagStore;pub use tap::evaluate as tap_evaluate;pub use tap::resolve as tap_resolve;pub use tap::Signal;pub use trit::decide;pub use trit::Trit;
Modules§
- badge
- The BIFP Badge Palette — 10 symbols, co-designed live with Simeon Kepp on 2026-07-02. Nine states plus one event. Every symbol maps to a concrete, checkable condition; none are a felt emotion assigned by unexplained intuition (the gap identified in the older “Digital Smell and Chromatic Emotion Framework” concept paper this protocol responds to).
- flag
- The BIFP flag tuple — the unit both parties emit to each other.
- plan
- Teach-then-handoff task decomposition — the mechanic behind BIFP’s core complaint: an agent should neither refuse a step outright nor silently complete it invisibly. Confident steps proceed; steps needing human authority or context are surfaced explicitly as things to teach or hand back, not silently skipped.
- store
- Real, native-trit persistence for BIFP flags — a JSONL-backed store where
tritis a first-class signed column, not folded into a tags array. - tap
- A real, honestly-scoped implementation of the behavior the Ternlang whitepaper’s Implementation Status section describes for “TAP” (Ternary Actuator Protocol) in one sentence: an interception layer that suspends uncertain (tend) nodes until a human or upstream agent resolves the signal.
- trit
- The native ternary value BIFP is built on: -1 (reject), 0 (tend/hold), +1 (affirm).