{"slug":"dorodango","title":"dorodango","summary":"Polishes working code through successive quality passes in fresh subagents. Use after tests pass when code needs multi-dimension refinement before release.","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-09-11T17:35:07.873437Z","repo":{"url":"https://github.com/athola/claude-night-market","stars":338,"forks":35,"license":"MIT","updatedAt":"2026-09-24T04:34:18Z"},"bodyHtml":"<hr>\n<p>name: dorodango\ndescription: Polishes working code through successive quality passes in fresh subagents. Use after tests pass when code needs multi-dimension refinement before release.\nalwaysApply: false\ncategory: workflow\ntags:</p>\n<ul>\n<li>polishing</li>\n<li>iterative-refinement</li>\n<li>code-quality</li>\n<li>convergence\nprogressive_loading: true\ndependencies:\nhub: []\nmodules:\n<ul>\n<li>modules/pass-definitions.md\ncomplexity: intermediate\nmodel_hint: standard\nestimated_tokens: 400</li>\n</ul>\n</li>\n</ul>\n<hr>\n<h1>Dorodango Polishing Workflow</h1>\n<p>Named after the Japanese art of polishing a ball of\ndirt into a high-gloss sphere. Applied to code: take\nthe initial implementation (the \"mud ball\") and refine\nit through successive quality passes until it shines.</p>\n<h2>When To Use</h2>\n<ul>\n<li>After initial implementation is complete and tests\npass</li>\n<li>Code works but needs refinement across multiple\nquality dimensions</li>\n<li>Preparing code for review or release</li>\n<li>Resuming a previous polishing session</li>\n</ul>\n<h2>When NOT To Use</h2>\n<ul>\n<li>Code does not compile or pass basic tests (fix first)</li>\n<li>Single-dimension improvement needed (use the specific\nskill directly: pensive:code-refinement, etc.)</li>\n<li>Greenfield design phase (use brainstorming instead)</li>\n</ul>\n<h2>Pass Sequence</h2>\n<p>Four quality dimensions, each a self-contained pass:</p>\n<ol>\n<li><strong>Correctness</strong> - run tests, fix failures</li>\n<li><strong>Clarity</strong> - code readability and structure</li>\n<li><strong>Consistency</strong> - naming, patterns, style alignment</li>\n<li><strong>Polish</strong> - documentation, error messages, edges</li>\n</ol>\n<p>See <code>modules/pass-definitions.md</code> for detailed scope\nof each pass type.</p>\n<h2>Convergence Model</h2>\n<ul>\n<li>Each pass targets one dimension</li>\n<li>A pass that finds <code>issues_found: 0</code> marks that\ndimension as <strong>converged</strong></li>\n<li>Convergence is irreversible per run; a converged\ndimension is not re-run</li>\n<li>When all 4 dimensions converge, polishing is complete</li>\n<li>Maximum 10 total passes (hard limit)</li>\n<li>If not converged after 10 passes, surface state to\nhuman with recommendation to split into smaller units</li>\n</ul>\n<h2>State Persistence</h2>\n<p>State tracked in <code>.attune/dorodango-state.json</code>:</p>\n<pre><code>{\n  \"target\": \"plugins/foo\",\n  \"started_at\": \"2026-03-18T12:00:00Z\",\n  \"pass_count\": 3,\n  \"passes\": [\n    {\n      \"type\": \"correctness\",\n      \"issues_found\": 2,\n      \"issues_fixed\": 2\n    },\n    {\n      \"type\": \"clarity\",\n      \"issues_found\": 5,\n      \"issues_fixed\": 5\n    },\n    {\n      \"type\": \"consistency\",\n      \"issues_found\": 0\n    }\n  ],\n  \"converged_dimensions\": [\"consistency\"],\n  \"converged\": false\n}\n</code></pre>\n<p>This file enables resume across sessions. On resume,\nskip converged dimensions and continue from the next\nunconverged dimension.</p>\n<h2>Subagent Isolation</h2>\n<p>Each pass dispatches a self-contained subagent to\nprevent context accumulation. The subagent receives:</p>\n<ul>\n<li>Target directory/files</li>\n<li>Pass type and scope (from pass-definitions module)</li>\n<li>Previous pass results (summary only, not full context)</li>\n</ul>\n<p>Subagent dispatch is optional for targets under 100\nlines of code; in-session review is sufficient for\nsmall files.</p>\n<h2>Workflow</h2>\n<ol>\n<li>Initialize state file (or load existing)</li>\n<li>Determine next unconverged dimension</li>\n<li>Dispatch subagent for that dimension</li>\n<li>Record results in state file</li>\n<li>If dimension converged (0 issues), mark it</li>\n<li>If all dimensions converged or 10 passes reached,\nstop</li>\n<li>Otherwise, proceed to next dimension</li>\n</ol>\n<h2>Cross-References</h2>\n<ul>\n<li><code>pensive:code-refinement</code> - used in clarity pass</li>\n<li><code>conserve:code-quality-principles</code> - KISS/YAGNI/SOLID</li>\n<li><code>imbue:latent-space-engineering</code> - frame pass prompts\nwith emotional framing for better results</li>\n</ul>\n<h2>Exit Criteria</h2>\n<ul>\n<li><input disabled=\"disabled\" type=\"checkbox\"> <code>.attune/dorodango-state.json</code> exists with <code>\"converged\": true</code> and all four dimensions\n(<code>correctness</code>, <code>clarity</code>, <code>consistency</code>, <code>polish</code>) listed under <code>converged_dimensions</code>.</li>\n<li><input disabled=\"disabled\" type=\"checkbox\"> Total <code>pass_count</code> in the state file is &lt;= 10; if 10 passes complete without full\nconvergence, the skill surfaces the unconverged dimensions to the user with a recommendation\nto split the target into smaller units.</li>\n<li><input disabled=\"disabled\" type=\"checkbox\"> The correctness dimension converges only after all tests pass (exit code 0); a\ncorrectness pass that finds failing tests never marks the dimension as converged.</li>\n<li><input disabled=\"disabled\" type=\"checkbox\"> Each pass is dispatched as a separate subagent for targets over 100 lines, confirmed by\nthe state file recording individual pass results rather than a single bulk entry.</li>\n</ul>\n","files":[{"path":"modules/pass-definitions.md","sizeBytes":2404,"isText":true},{"path":"SKILL.md","sizeBytes":4276,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-09-11T17:35:31.377993Z","sha256":"DF624A4FF803E41FB4F56CC95DF27A9AC8177BFF005EC688FC27379AA8B18FBF","sizeBytes":3272},"review":null,"source":{"repositoryUrl":"https://github.com/athola/claude-night-market","path":"plugins/attune/skills/dorodango","license":"MIT","commit":"904583125527ac9ac25c0604db68d3d19b836a8d","subtreeSha":"1E6B3FA052F4A769DD05F23FB574E9F0559C41893270EAE0E466F6AB2E35FC3D","lastSyncedAt":"2026-09-24T06:49:05.311576Z"},"reviewedAt":"2026-09-11T17:36:32.639737Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/athola/claude-night-market/tree/master/plugins/attune/skills/dorodango"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install athola-claude-night-market@llmmart"},{"target":"git","command":"git clone https://github.com/athola/claude-night-market.git"}]}