• …ction, anti-fabrication guards
    
    - LedgerService: append-only chat:ledger:{conv} events incl. deterministic-path
      form/clarify/proposal/confirm-outcome; history replays from ledger
    - StateService: chat:state:{conv} slots (上轮意图/最近实体/在办单据) written by code,
      fed to intent gate + write-slot extraction and appended to agent user text
    - ProjectedChatMemory replaces MessageWindowChatMemory: full store + char-budget
      projection, old tool results collapsed to one line, current turn kept intact
    - RedisChatMemoryStore.appendTurn patches memory holes on deterministic paths;
      op confirm/cancel outcomes recorded to ledger/state/memory
    - anti-fabrication (tool_choice=required NOT enforced by Ollama 0.32.3, retested):
      query turn zero-tools+digits → one forced retry then flag; write claim without
      proposeWrite → corrective notice
    zichun authored
     
    Browse Code »