codetether-agent 4.7.0-a-002.4

A2A-native AI coding agent for the CodeTether ecosystem
Documentation
use crate::session::Session;

pub(crate) fn gate(answer: &str, session: &Session) -> String {
    let mode = super::gate_mode::current();
    if mode == super::gate_mode::GateMode::Off {
        return answer.to_string();
    }
    let ledger = super::ledger::build(session);
    super::ledger_persist::save(&ledger);
    super::writeback_persist::save(session, &ledger);
    if ledger.items.is_empty() {
        return answer.to_string();
    }
    let missing = super::ledger::unclassified_count(&ledger, answer);
    if missing == 0 {
        return answer.to_string();
    }
    super::final_note::render(mode, answer, &session.id, missing)
}