<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
  <title>github.com/guregodevo</title>
  <link>https://aggr.aymericbeaumet.com/sources/github.com/guregodevo/</link>
  <description>Browse aymeric&#39;s, an independent, searchable archive of readable snapshots from followed feeds, preserved in Git with aggr.</description>
  <language>en</language>
  <atom:link href="https://aggr.aymericbeaumet.com/sources/github.com/guregodevo/rss.xml" rel="self" type="application/rss+xml"/>
  <lastBuildDate>Sat, 31 Oct 2026 22:46:12 +0000</lastBuildDate>
  <generator>aggr</generator>
  <item>
    <title>Memdoor: A team of 5 Qwen3.8-27B models beats Fable 5 on LiveCodeBench Hard</title>
    <link>https://aggr.aymericbeaumet.com/items/hnrss-org/2026-10-31-memdoor-a-team-of-5-qwen3-8-27b-models-beats-fable-5-on/</link>
    <guid isPermaLink="false">urn:aggr:item:6aa27ec0f6cf5042b8eea6734f8308efd396610e</guid>
    <atom:link href="https://github.com/guregodevo/memdoor/tree/main/examples/workflows/team-solve" rel="via" type="text/html"/>
    <pubDate>Sat, 31 Oct 2026 22:46:12 +0000</pubDate>
    <dc:creator>guregodevo</dc:creator>
    <description>Five small models solve a programming problem together: a planner, two ideators, a solver and a manager, plus a repair worker. Each starts from a fresh context and talks only through files on disk. A script that runs the samples decides…</description>
    <content:encoded>&lt;p&gt;Five small models solve a programming problem together: a planner, two ideators, a solver and a manager, plus a repair worker. Each starts from a fresh context and talks only through files on disk. A script that runs the samples decides success, not a model. It is the method of &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://github.com/slee-persis/GVS5H&quot;&gt;GVS5H&lt;/a&gt; (Lee, 2026), written as a &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://github.com/guregodevo/memdoor/blob/main/README.md&quot;&gt;Memdoor&lt;/a&gt; workflow: eight YAML files, no code, no model named.&lt;/p&gt;
&lt;h2&gt;The result&lt;/h2&gt;
&lt;p&gt;The authors&#39; harness rebuilt on the same model, Qwen3.8-27B, with their prompts, loop and 128K reply cap. The first ten problems of their LiveCodeBench Hard list, five passes each, graded on every hidden test with their corrected grader:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;pass&lt;/th&gt;
&lt;th&gt;this workflow&lt;/th&gt;
&lt;th&gt;authors&#39; harness&lt;/th&gt;
&lt;th&gt;Fable 5, one call&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;10&lt;/strong&gt; / 10&lt;/td&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;10&lt;/strong&gt; / 10&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;10&lt;/strong&gt; / 10&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;10&lt;/strong&gt; / 10&lt;/td&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;9&lt;/strong&gt; / 10&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;mean&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;9.8&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;9.6&lt;/td&gt;
&lt;td&gt;8.0&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The authors&#39; two columns are the regraded result files in their repository, the numbers in their paper. Our column is &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://github.com/guregodevo/memdoor/blob/main/examples/workflows/team-solve/bench/results/parity-5pass&quot;&gt;&lt;code&gt;bench/results/parity-5pass/&lt;/code&gt;&lt;/a&gt;: all 50 runs, each with every request and reply, the program, the grader&#39;s output and the cost. A run took a median of 40 minutes and $0.39; the 50 cost $35.79.&lt;/p&gt;
&lt;p&gt;What this does and does not show:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ten problems, five passes, not the authors&#39; 100. On a sample this small, 9.8 and 9.6 are the same number. The claim is parity with their harness, not a gain on it.&lt;/li&gt;
&lt;li&gt;The contests date from spring 2025 and the model may have seen them in training. Contamination cannot be ruled out, for any column.&lt;/li&gt;
&lt;li&gt;Fable 5&#39;s column is one call per problem, from the authors&#39; files. It was not run in this harness.&lt;/li&gt;
&lt;li&gt;The loop sees only the public samples; the score is the hidden tests.&lt;/li&gt;
&lt;li&gt;The model ran on OpenRouter, not a local machine.&lt;/li&gt;
&lt;li&gt;The one lost problem: the manager invented a wrong counterexample and the team rewrote a correct program. Twice elsewhere a correct program was overwritten and then recovered. Both gaps are the authors&#39; loop, kept as is.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The parity check (every request byte for byte against their code), the hosts, the changes it took and the first run&#39;s findings are in &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://github.com/guregodevo/memdoor/blob/main/examples/workflows/team-solve/NOTES.md&quot;&gt;NOTES.md&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Run it&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot; data-language=&quot;Shell&quot;&gt;&lt;span class=&quot;syntax-source syntax-shell syntax-bash&quot;&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;curl&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-parameter syntax-option syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-parameter syntax-shell&quot;&gt; -&lt;/span&gt;fsSL&lt;/span&gt; https://memdoor.ai/install.sh&lt;/span&gt; &lt;span class=&quot;syntax-keyword syntax-operator syntax-logical syntax-pipe syntax-shell&quot;&gt;|&lt;/span&gt; &lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;bash&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;memdoor&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; connect openrouter        &lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-comment syntax-begin syntax-shell&quot;&gt;#&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt; or anthropic, openai, gemini, chatgpt&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-comment syntax-begin syntax-shell&quot;&gt;#&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt; or no key: memdoor connect local   (Ollama, llama.cpp, vLLM, LM Studio; Ollama needs a 32K window, not its 4K default)&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;git&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; clone&lt;span class=&quot;syntax-variable syntax-parameter syntax-option syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-parameter syntax-shell&quot;&gt; --&lt;/span&gt;depth&lt;/span&gt; 1 https://github.com/guregodevo/memdoor&lt;/span&gt;

&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;mkdir&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-parameter syntax-option syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-parameter syntax-shell&quot;&gt; -&lt;/span&gt;p&lt;/span&gt; &lt;span class=&quot;syntax-meta syntax-group syntax-expansion syntax-tilde&quot;&gt;&lt;span class=&quot;syntax-variable syntax-language syntax-tilde syntax-shell&quot;&gt;~&lt;/span&gt;&lt;/span&gt;/.memdoor/workflows&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;cp&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-parameter syntax-option syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-parameter syntax-shell&quot;&gt; -&lt;/span&gt;r&lt;/span&gt; memdoor/examples/workflows/team-solve &lt;span class=&quot;syntax-meta syntax-group syntax-expansion syntax-tilde&quot;&gt;&lt;span class=&quot;syntax-variable syntax-language syntax-tilde syntax-shell&quot;&gt;~&lt;/span&gt;&lt;/span&gt;/.memdoor/workflows/&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;mkdir&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; my-problem&lt;/span&gt; &lt;span class=&quot;syntax-keyword syntax-operator syntax-logical syntax-and syntax-shell&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-support syntax-function syntax-cd syntax-shell&quot;&gt;cd&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; my-problem&lt;/span&gt;
&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;cp&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-parameter syntax-option syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-parameter syntax-shell&quot;&gt; -&lt;/span&gt;r&lt;/span&gt; ../memdoor/examples/workflows/team-solve/sample/&lt;span class=&quot;syntax-keyword syntax-operator syntax-regexp syntax-quantifier syntax-shell&quot;&gt;*&lt;/span&gt; .    &lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-comment syntax-begin syntax-shell&quot;&gt;#&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt; task.md + tests/1.in … 5.out&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-shell&quot;&gt;&lt;span class=&quot;syntax-variable syntax-function syntax-shell&quot;&gt;memdoor&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-meta syntax-function-call syntax-arguments syntax-shell&quot;&gt; workflow run team-solve&lt;span class=&quot;syntax-variable syntax-parameter syntax-option syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-parameter syntax-shell&quot;&gt; --&lt;/span&gt;wait   &lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;&lt;span class=&quot;syntax-punctuation syntax-definition syntax-comment syntax-begin syntax-shell&quot;&gt;#&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt; exit 0 when every sample passes&lt;/span&gt;&lt;span class=&quot;syntax-comment syntax-line syntax-number-sign syntax-shell&quot;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;For your own problem, replace &lt;code&gt;task.md&lt;/code&gt; and put paired &lt;code&gt;tests/N.in&lt;/code&gt; / &lt;code&gt;tests/N.out&lt;/code&gt; beside it. The program is &lt;code&gt;solution.py&lt;/code&gt;, read from stdin, compared to the samples with &lt;code&gt;diff&lt;/code&gt;; it needs Python 3 and bash. &lt;code&gt;/workflow&lt;/code&gt; in &lt;code&gt;memdoor tui&lt;/code&gt; draws the run live.&lt;/p&gt;
&lt;p&gt;The steps name no model: whatever &lt;code&gt;/model&lt;/code&gt; is pinned to answers, a local one included (&lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://memdoor.ai/docs/providers#a-local-runtime-no-key&quot;&gt;how to connect one&lt;/a&gt;). To change a role, change its prompt in &lt;code&gt;steps/&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;How it works&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;&lt;span class=&quot;code-snippet&quot;&gt;plan ──┬── ideate-a ──┬── solve ── test ── review ── repair ── verify
       └── ideate-b ──┘
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;step&lt;/th&gt;
&lt;th&gt;kind&lt;/th&gt;
&lt;th&gt;reads&lt;/th&gt;
&lt;th&gt;writes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;plan&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;agent&lt;/td&gt;
&lt;td&gt;&lt;code&gt;task.md&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;plan.md&lt;/code&gt;, &lt;code&gt;notes.md&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ideate-a&lt;/code&gt;, &lt;code&gt;ideate-b&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;agent, in parallel&lt;/td&gt;
&lt;td&gt;the plan&lt;/td&gt;
&lt;td&gt;a proposal each: the most direct provable algorithm, and one from another family&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;solve&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;agent&lt;/td&gt;
&lt;td&gt;both proposals&lt;/td&gt;
&lt;td&gt;&lt;code&gt;solution.py&lt;/code&gt;, the decision in &lt;code&gt;notes.md&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;test&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;command&lt;/td&gt;
&lt;td&gt;&lt;code&gt;tests/&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;test-output.log&lt;/code&gt; (never fails the run)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;review&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;agent&lt;/td&gt;
&lt;td&gt;the test output&lt;/td&gt;
&lt;td&gt;repair instructions in &lt;code&gt;notes.md&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;repair&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;agent&lt;/td&gt;
&lt;td&gt;the instructions&lt;/td&gt;
&lt;td&gt;a fixed &lt;code&gt;solution.py&lt;/code&gt;, or nothing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;verify&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;command&lt;/td&gt;
&lt;td&gt;&lt;code&gt;tests/&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;the verdict: a nonzero exit fails the run&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Every agent prompt says &amp;quot;fresh context, read the files, do not rely on chat&amp;quot;. The paper credits that ledger discipline for the gain. Each step is one YAML file in &lt;code&gt;steps/&lt;/code&gt;, in the format of &lt;a target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot; href=&quot;https://github.com/guregodevo/mario&quot;&gt;mario&lt;/a&gt;, the engine underneath; &lt;code&gt;requires:&lt;/code&gt; is the DAG.&lt;/p&gt;
</content:encoded>
    <category>news</category>
  </item>
</channel>
</rss>
