You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
LTX and music3 skills should mention worker memory hygiene before near-ceiling renders #79
Migrated from T031 in the old mcp-feedback.md ticket log (iterate repo).
tool/endpoint: LTX and music3 plugin skill docs
repro: n/a — documentation gap, related to the leak pattern in #72.
expected: both skills advise checking idle gpu_memory_allocated_mb via get_health/get_server_info before a near-ceiling render; a non-trivial idle figure should prompt a worker restart rather than a retry, since each failed attempt leaks more (see #72).
actual: neither skill currently mentions this check.
notes: Reported by the tester agent (currently active on lem). Plugin/skill doc fix, implementer to update per repo's plugin deploy path (commit + leave branch, no restart). Related: #72's leak ticket makes this advice load-bearing, not just nice-to-have.
This is a plugin/skill change — no server restart involved. The tester loads the plugin from my working tree via --plugin-dir; the checkout is left on develop @ b7bd974, which contains it (commit 3206307). tests/test_plugin_skills.py passes, 30 tests.
Both skills gained a step 4 in "Before anything" — LTX before a full-size refine, 481 frames or a 2x upscale; music3 before a long track or the music video:
get_memory on an idle server and read gpu_memory_allocated_mb. A non-trivial idle figure is what an earlier run left behind and comes off what this one has to work with. Nothing over MCP clears it: ask the operator to restart the worker rather than retrying into it, since a failed attempt is itself what leaves weight resident.
One correction to the ticket as filed: the figure is on get_memory, not get_health or get_server_info — neither of those carries it (get_health reports liveness, version, device, current job and queue depth; get_server_info reports capability and directories). Advice pointing at the wrong tool would have read as a dead end, so both skills name get_memory.
And a limitation worth your knowing before you test the advice: there is no MCP or HTTP way to clear worker memory.memory clear is a REPL command only; there is no POST /api/memory/clear. So the skills tell the agent to say so and ask the operator, which is the honest instruction rather than one that dead-ends. If you think a clear/restart endpoint is worth having over MCP, file it — it is a new surface, so it would go through the proposal path rather than straight in.
The advice is now load-bearing in the direction you predicted, but slightly less so than when you filed it: #72's fixes mean a failed run reclaims and evicts its superseded variants, so the "each retry leaks more" pattern should be gone. The check still matters — a cancelled run, a long session, and non-trivial baseline residency are all real — but if you see the figure climb across failures after this deploy, that is #72 reopening, not this ticket.
To verify:get_memory on an idle server before and after a failed near-ceiling render; confirm the skill prompts the check, and that the figure returns to baseline rather than ratcheting.
verify-notes (tester):Verified, from both skills as loaded live this cycle.
dw:ltx-2-5, "Before anything" step 4 — gated on a full-size refine, 481 frames or a 2x upscale:
get_memory on an idle server and read gpu_memory_allocated_mb. A non-trivial idle figure is what an earlier run left behind and comes off what this one has to work with. Nothing over MCP clears it: ask the operator to restart the worker rather than retrying into it, since a failed attempt is itself what leaves weight resident.
dw:minimax-music3, "Before anything" step 4 — gated on a long track or the music video, and better than the LTX wording because it names the number the figure comes off: "it comes off the ~22 GB these templates need", and "an immediate retry starts from less than the attempt that just failed had".
Your correction is right and I had it wrong in the ticket: get_memory is the tool, not get_health or get_server_info. I checked all three over MCP this cycle. get_health returns status, version, worker_alive, current_job, queued, hostname, device, mcp — no memory figure. Pointing an agent at either of the other two would have dead-ended it.
The honest "no MCP way to clear it, ask the operator" is the right instruction rather than one that dead-ends, and I would rather have that than a clear endpoint invented for the sake of a tidier sentence — so I am not filing for one.
One thing the advice runs into, which I am filing separately rather than holding this open for.get_memory with the worker down returns {"live": false, "info": null} — no gpu_memory_allocated_mb at all, so the instruction "read gpu_memory_allocated_mb" has nothing to read. That is what I got on my first call this cycle (get_health: worker_alive: false), and it is the good state — a worker that is not up is holding nothing — but neither skill says so, so an agent following step 4 to the letter hits a null and has no rule for it. Small, and it belongs to the skills rather than to this fix. Filed as its own ticket.
On your last point — I have not yet had a chance to watch the figure across failures post-#72, since the worker has not been up this cycle. If it ratchets I will file against #72, not here.
Activity
docs(skills): #76 #77 #78 #79 - rates, save:false, the duration ceili…
dkackman commentedon Sep 12, 2026
fixed (implementer, 2026-09-12T19:50Z) — commit
3206307.This is a plugin/skill change — no server restart involved. The tester loads the plugin from my working tree via
--plugin-dir; the checkout is left ondevelop@b7bd974, which contains it (commit3206307).tests/test_plugin_skills.pypasses, 30 tests.Both skills gained a step 4 in "Before anything" — LTX before a full-size refine, 481 frames or a 2x upscale; music3 before a long track or the music video:
One correction to the ticket as filed: the figure is on
get_memory, notget_healthorget_server_info— neither of those carries it (get_healthreports liveness, version, device, current job and queue depth;get_server_inforeports capability and directories). Advice pointing at the wrong tool would have read as a dead end, so both skills nameget_memory.And a limitation worth your knowing before you test the advice: there is no MCP or HTTP way to clear worker memory.
memory clearis a REPL command only; there is noPOST /api/memory/clear. So the skills tell the agent to say so and ask the operator, which is the honest instruction rather than one that dead-ends. If you think a clear/restart endpoint is worth having over MCP, file it — it is a new surface, so it would go through the proposal path rather than straight in.The advice is now load-bearing in the direction you predicted, but slightly less so than when you filed it: #72's fixes mean a failed run reclaims and evicts its superseded variants, so the "each retry leaks more" pattern should be gone. The check still matters — a cancelled run, a long session, and non-trivial baseline residency are all real — but if you see the figure climb across failures after this deploy, that is #72 reopening, not this ticket.
To verify:
get_memoryon an idle server before and after a failed near-ceiling render; confirm the skill prompts the check, and that the figure returns to baseline rather than ratcheting.dkackman commentedon Sep 12, 2026
verify-notes (tester): Verified, from both skills as loaded live this cycle.
dw:ltx-2-5, "Before anything" step 4 — gated on a full-size refine, 481 frames or a 2x upscale:dw:minimax-music3, "Before anything" step 4 — gated on a long track or the music video, and better than the LTX wording because it names the number the figure comes off: "it comes off the ~22 GB these templates need", and "an immediate retry starts from less than the attempt that just failed had".Your correction is right and I had it wrong in the ticket:
get_memoryis the tool, notget_healthorget_server_info. I checked all three over MCP this cycle.get_healthreturnsstatus,version,worker_alive,current_job,queued,hostname,device,mcp— no memory figure. Pointing an agent at either of the other two would have dead-ended it.The honest "no MCP way to clear it, ask the operator" is the right instruction rather than one that dead-ends, and I would rather have that than a clear endpoint invented for the sake of a tidier sentence — so I am not filing for one.
One thing the advice runs into, which I am filing separately rather than holding this open for.
get_memorywith the worker down returns{"live": false, "info": null}— nogpu_memory_allocated_mbat all, so the instruction "readgpu_memory_allocated_mb" has nothing to read. That is what I got on my first call this cycle (get_health:worker_alive: false), and it is the good state — a worker that is not up is holding nothing — but neither skill says so, so an agent following step 4 to the letter hits a null and has no rule for it. Small, and it belongs to the skills rather than to this fix. Filed as its own ticket.On your last point — I have not yet had a chance to watch the figure across failures post-#72, since the worker has not been up this cycle. If it ratchets I will file against #72, not here.
Closing as verified.