Devotd Github
NewAI agents

q00/ouroboros — Parser fix that rejects evidence with malformed final JSON

Fixed the evidence parser in the Agent OS project q00/ouroboros so that it rejects malformed JSON at the end and does not revive older evidence from before it.

Repositoryq00/ouroboros ↗

Fixed the evidence parser in the Agent OS project q00/ouroboros so that it rejects malformed JSON at the end and does not revive older evidence from before it.

GitHub description: Agent OS: the agent gets smarter on its own. We just hold the line: Interview-gated, staged evaluation, budgeted evolution loop. MCP server, 14 runtimes: Claude Code, Codex CLI, Gemini CLI, OpenCode, Copilot, Kiro and more.

stars
★ 6.2K
Forks
628
Language
Python
License
MIT
Latest release
v0.57.1
Read original source ↗View on GitHub ↗

q00/ouroboros is an Agent OS project that manages the process in which agents improve themselves, and it connects to 14 runtimes including Claude Code, Codex CLI, Gemini CLI, OpenCode, Copilot, and Kiro through an MCP server. The commit 722172ef of October 30, 2026 touched evidence_schema.py, the file that extracts verification evidence from execution results. The essence of this change is that when agent output ends with malformed JSON, it rejects that evidence and no longer revives and reuses the older evidence that had passed by before it.

The evidence extracted by this parser becomes the criterion for choosing one of accept, retry, or escalate. It is effectively the real gate of the 'verification gate' referred to in the project description, so if the judgment is loose, the entire evaluation stage can be thrown off. This commit re-organizes the order of judgment at that gate to pin down where the evidence ends.

The new rule takes the last appearing supported code block (whether or not it carries a JSON tag) as its reference, but if a standalone value or a broken evidence container appears even further after that, that one takes precedence. A block starting with a tilde is also recognized as a code block, and example regions such as blocks with other language tags, quotations, and indented code are masked so that examples looking like JSON do not get taken in as evidence. A rule distinguishing strings that look like numbers from radix notations such as 0x was also included.

That said, the scope of the judgment is narrow. Of the 2,108 changed lines, most were additions; file by file, evidence_schema.py grew by 806 lines, while the two test files grew by 1,018 and 237 lines. It grew more in the verification code than in the logic. The commit message states that it passed behavior verification bound to the acceptance criteria and the latest-head CI, but the license of this repository and any public metrics are not in this record. It should be reported as a narrow-scoped parser fix, and drawing any substantial judgment before metrics come out would be premature.