Skip to content

v0.4.0

Choose a tag to compare

@baskduf baskduf released this 15 Jun 11:41
· 7 commits to main since this release

Highlights

FableCodex v0.4.0 adds an evidence-backed findings gate to the existing Fable-style goal workflow. The new flow is meant for review-sensitive work where accepted review issues should not be lost before final completion.

What's New

  • Added codex_findings.py, a local findings ledger stored under .codex-fable5/.
  • Added a single user-facing terminal wrapper: codex-fable5.
  • Added codex-fable5 findings ... commands for adding, listing, resolving, rejecting, blocking, reopening, and gating findings.
  • Added codex-fable5 goals ... as the terminal entrypoint for the existing goal ledger.
  • Kept codex-findings and codex-goals as advanced aliases.

Findings Gate Behavior

  • Findings are evidence-backed review or verification issues, not brainstorming notes.
  • New findings attach to the active goal automatically when a goal is in progress.
  • A finding cannot be resolved without resolution evidence and verification evidence.
  • Final goal checkpoints now fail while open or blocked findings remain.
  • codex-fable5 findings gate exits non-zero when blocking findings remain, so it can be used in manual release or review workflows.

User-Facing Commands

From a checkout:

export PATH="$PWD/plugins/codex-fable5/bin:$PATH"
codex-fable5 status

Track a finding:

codex-fable5 findings add \
  --title "Missing final verification" \
  --evidence "Review found no command output proving the final state."
codex-fable5 findings next
codex-fable5 findings resolve \
  --id F001 \
  --evidence "Added final verification." \
  --verify-evidence "Tests passed and final status was checked."
codex-fable5 findings gate

In Codex chat, users can simply ask:

Use $codex-fable5 to implement this and track findings before final completion.

When To Use It

Use findings tracking for multi-file work, migrations, security-sensitive changes, failed or uncertain verification, or review/sub-agent feedback with concrete evidence.

Do not use it for simple edits or routine factual answers.

Updating

Stable install:

codex plugin marketplace remove fablecodex
codex plugin marketplace add baskduf/FableCodex --ref v0.4.0
codex plugin remove codex-fable5@fablecodex
codex plugin add codex-fable5@fablecodex

Development install tracking main:

codex plugin marketplace upgrade fablecodex
codex plugin remove codex-fable5@fablecodex
codex plugin add codex-fable5@fablecodex

Restart Codex after updating the plugin.

Validation

  • python3 -m unittest discover -s tests -v
  • python3 -m py_compile plugins/codex-fable5/skills/codex-fable5/scripts/codex_findings.py plugins/codex-fable5/skills/codex-fable5/scripts/codex_goals.py plugins/codex-fable5/skills/codex-fable5/scripts/fable_coverage.py plugins/codex-fable5/skills/codex-fable5/scripts/make_litellm_config.py tests/test_scripts.py
  • sh -n plugins/codex-fable5/bin/codex-fable5
  • sh -n plugins/codex-fable5/bin/codex-findings
  • sh -n plugins/codex-fable5/bin/codex-goals
  • python3 plugins/codex-fable5/skills/codex-fable5/scripts/fable_coverage.py