Skip to content

Fable Harness v1.0.2

Latest

Choose a tag to compare

@Miguok Miguok released this 20 Jul 15:46

Patch release.

Fixed

  • verify_gate: force UTF-8 stdout so the block JSON — whose reason string opens with "⛔" — survives Windows consoles that default to a legacy codepage (e.g. cp950). Without it print() raised UnicodeEncodeError, the fail-open handler swallowed it, and the Stop gate silently never blocked. Landed in #2.
  • verify_gate: the fail-open handler no longer swallows failures silently — before returning it appends one sanitized post-mortem line (exception class + bounded message, never the raw payload) to a gitignored .gate_fail, in a nested try so the telemetry can't break fail-open, and bounded to keep the earliest incident lines. A silently-dying gate is now observable — that exact failure mode is what hid the cp950 bug for days. Adds test T12 (fail-then-pass verified).

Added

  • Maintainer guide (MAINTAINING.md, + 繁體中文 translation): the PR merge SOP for keeping the contributor list clean.

Changed

  • Docs: the README "How it works" section (all five languages) now documents the token efficiency that falls out of the architecture — tiered model routing plus context-isolated, parallel sub-agents.

Thanks to @lepus071 for the cp950 fix in #2, and @Atistw for the .gate_fail idea in #3 (both first-time contributors).