{"id":5303,"date":"2026-08-30T14:20:34","date_gmt":"2026-08-30T05:20:34","guid":{"rendered":"https:\/\/donguri3.net\/server-tech\/codex-houshin-shokunin-mode-fix-2\/"},"modified":"2026-08-30T14:20:35","modified_gmt":"2026-08-30T05:20:35","slug":"codex-houshin-shokunin-mode-fix","status":"publish","type":"post","link":"https:\/\/donguri3.net\/en\/server-tech\/ai-local-llm\/codex-houshin-shokunin-mode-fix\/","title":{"rendered":"What to Do When Codex Enters &#8220;Policy Artisan Mode&#8221; and Refuses to Write Code"},"content":{"rendered":"<p>As it becomes increasingly common to delegate code fixes to AI, have you ever experienced a situation where &#8220;the strategy sounds great, but not a single line of code actually changes&#8221;?<br \/>\nI experienced precisely this recently.<\/p>\n<p>To align with updated specifications, a large-scale refactoring affecting the entire codebase was required, so I instructed Codex to make the fixes. However, all that came back were:<\/p>\n<ul>\n<li>Explanations of the strategy<\/li>\n<li>Enumerations of points to watch out for<\/li>\n<li>Caveats stating &#8220;it is difficult in this environment&#8221;<\/li>\n<\/ul>\n<p>This state persisted, with actual files remaining completely untouched.<\/p>\n<p>In this article, I refer to this state\u2014where the AI explains correction strategies and cautions in detail, but fails to execute actual code changes or run commands\u2014as <strong>&#8220;Policy Artisan Mode&#8221;<\/strong> (Houshin Shokunin Mode). I will break down what was happening and how I handled it in my environment.<\/p>\n<p><em>*Please note that the contents described here are based solely on the results in my own environment, and the same method is not guaranteed to reproduce universally.<\/em><\/p>\n<h2>The Situation Where the Problem Occurred<\/h2>\n<p>When the state I call &#8220;Policy Artisan Mode&#8221; occurred this time, the tasks instructed to Codex were as follows:<\/p>\n<ul>\n<li>Modifications were necessary to match specification documents<\/li>\n<li>The scope of changes was not partial, but affected the entire codebase<\/li>\n<li>Large-scale refactoring, including a review of the existing structure<\/li>\n<li>Assuming that execution of tests would be performed after modifications to verify operation<\/li>\n<\/ul>\n<p>This was not merely adding a function or making a minor tweak;<br \/>\nit was &#8220;work that required not just thinking, but actually getting hands dirty and proceeding through verification.&#8221;<\/p>\n<p>Because doing it manually would take time, I decided to leave this task to Codex.<br \/>\nSince it had worked without issues for routine, small-scale fixes,<br \/>\nI had anticipated that it could handle this scale as well.<\/p>\n<h2>Usual Settings<\/h2>\n<p>For day-to-day development, I used the following settings:<\/p>\n<ul>\n<li>Model: GPT-5.1-codex-mini<\/li>\n<li>Resources: Medium<\/li>\n<\/ul>\n<p>The reason was simple: saving tokens.<\/p>\n<p>Even with this configuration,<\/p>\n<ul>\n<li>Small-scale fixes<\/li>\n<li>Function-level changes<\/li>\n<li>Logic verification and assistance<\/li>\n<\/ul>\n<p>It was fully practical for purposes like these, and I had felt no particular issues.<\/p>\n<h2>The Problem: &#8220;Policy Artisan Mode&#8221;<\/h2>\n<p>However, for fixes like this one, Codex&#8217;s behavior was clearly different.<\/p>\n<ul>\n<li>Explanations of the fixes were extremely polite<\/li>\n<li>The overall strategy was also logical and sound<\/li>\n<li>Yet, it did not execute commands<\/li>\n<li>It did not rewrite a single file<\/li>\n<\/ul>\n<p>This state of &#8220;showing strategy and ideas, but not lifting a finger&#8221; is what this article calls <strong>&#8220;Policy Artisan Mode&#8221;<\/strong>.<\/p>\n<p>The important point is that this was not due to a lack of permissions.<br \/>\nIn the terminal, the settings had been configured from the start to allow modifying actual files.<\/p>\n<h2>Why It Entered Policy Artisan Mode (Speculation)<\/h2>\n<p>This is purely speculation, but organizing the situation leads me to think the following:<\/p>\n<ul>\n<li>The scale of the modification was large<\/li>\n<li>Processing is heavy when including test execution<\/li>\n<li>The model is the lightweight version (mini)<\/li>\n<li>Resources are also restricted to Medium<\/li>\n<\/ul>\n<p>Under these conditions, Codex may have concluded:<\/p>\n<blockquote>\n<p>&#8220;There is a high probability I cannot finish this completely in this environment.&#8221;<br \/>\n&#8220;It is safer to stop at presenting a strategy rather than touching it halfway.&#8221;<\/p>\n<\/blockquote>\n<p>And thus gave up on actual code updates.<\/p>\n<p>Rather than a bug, this behavior felt closer to an overly cautious self-judgment.<\/p>\n<h2>Attempted Solution: Changing Model and Resource Settings<\/h2>\n<p>Therefore, I changed the settings as follows:<\/p>\n<ul>\n<li>Model: GPT-5.2 (GPT-5.2-Codex or similar might be better)<\/li>\n<li>Resources: High<\/li>\n<\/ul>\n<p>Once I did this, the behavior changed completely.<\/p>\n<ul>\n<li>Started making modifications step-by-step<\/li>\n<li>Actually rewrote the files<\/li>\n<li>Executed commands and proceeded to testing<\/li>\n<\/ul>\n<p>The work that had previously stalled began moving forward normally.<\/p>\n<h2>What Can and Cannot Be Said From This Result<\/h2>\n<p>What can be said:<\/p>\n<ul>\n<li>In my environment, changing the model and resource settings appeared to break it out of Policy Artisan Mode.<\/li>\n<\/ul>\n<p>What cannot be said:<\/p>\n<ul>\n<li>Whether this was the sole cause<\/li>\n<li>Whether it will definitely reproduce in other people&#8217;s environments<\/li>\n<\/ul>\n<p>It is simply an observational fact that<br \/>\n&#8220;the behavior changed drastically before and after changing the settings.&#8221;<\/p>\n<h2>Hints When Encountering the Same Situation<\/h2>\n<p>If you encounter a situation where:<\/p>\n<ul>\n<li>Codex stops after just giving a strategy<\/li>\n<li>Code is not updated at all<\/li>\n<li>Permissions and settings appear to have no problems<\/li>\n<\/ul>\n<p>Then trying to:<\/p>\n<ul>\n<li>Bump the model up a tier<\/li>\n<li>Increase the resource settings<\/li>\n<\/ul>\n<p>is a countermeasure worth trying.<\/p>\n<p>Especially when accompanied by large-scale refactoring or heavy testing,<br \/>\nsettings aimed at saving tokens may end up working against you.<\/p>\n<h2>Conclusion: AI Also Has &#8220;Prerequisites for Working&#8221;<\/h2>\n<p>In this case, Codex entered the so-called &#8220;Policy Artisan Mode,&#8221;<br \/>\nwhere it would show a strategy but leave the code unupdated.<\/p>\n<p>In my environment, reviewing the model and resource settings seemed to get it out of that state,<br \/>\nthough I do not know if this is a universal solution.<\/p>\n<p>However, if you encounter a similar situation,<br \/>\nreviewing your settings may provide a helpful clue.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As it becomes increasingly common to delegate code fixes to AI, have you ever experienced a situation where &#038;# [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":2517,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_locale":"en_US","_original_post":"https:\/\/donguri3.net\/?p=2515","footnotes":""},"categories":[1169],"tags":[540],"class_list":["post-5303","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-local-llm","tag-540","en-US"],"_links":{"self":[{"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/posts\/5303","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/comments?post=5303"}],"version-history":[{"count":1,"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/posts\/5303\/revisions"}],"predecessor-version":[{"id":5306,"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/posts\/5303\/revisions\/5306"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/media\/2517"}],"wp:attachment":[{"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/media?parent=5303"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/categories?post=5303"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/donguri3.net\/wp-json\/wp\/v2\/tags?post=5303"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}