{"id":5197,"date":"2026-09-14T01:41:49","date_gmt":"2026-09-14T04:41:49","guid":{"rendered":"https:\/\/tucumandevelopers.com\/index.php\/2026\/09\/14\/when-someone-elses-system-rejects-you-without-a-reason-fixing-a-diagnostic-order-in-advance\/"},"modified":"2026-09-14T01:41:49","modified_gmt":"2026-09-14T04:41:49","slug":"when-someone-elses-system-rejects-you-without-a-reason-fixing-a-diagnostic-order-in-advance","status":"publish","type":"post","link":"https:\/\/tucumandevelopers.com\/index.php\/2026\/09\/14\/when-someone-elses-system-rejects-you-without-a-reason-fixing-a-diagnostic-order-in-advance\/","title":{"rendered":"When Someone Else&#8217;s System Rejects You Without a Reason \u2014 Fixing a Diagnostic Order in Advance"},"content":{"rendered":"<div>\n<div>\n<p>And the way of speaking becomes a rule too.<\/p>\n<blockquote>\n<p><strong>Before verification, don&#8217;t say &#8220;cause.&#8221; Say &#8220;candidate.&#8221;<\/strong><\/p>\n<\/blockquote>\n<p>This one word keeps the record uncontaminated. A candidate can be erased, but a cause gets read as fact by the next person.<\/p>\n<h3> <a name=\"4-design-the-discriminating-test-first\" href=\"#4-design-the-discriminating-test-first\"> <\/a> 4. Design the Discriminating Test First <\/h3>\n<p>If there are multiple candidates, first build <strong>a test that separates the candidates<\/strong>. Picking one without a test is exactly what guessing is.<\/p>\n<div>\n<table>\n<thead>\n<tr>\n<th>Candidate<\/th>\n<th>Discriminating test<\/th>\n<th>Interpreting the result<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Rules not agreed to<\/td>\n<td>Can the data list be queried?<\/td>\n<td>If yes, agreement is done<\/td>\n<\/tr>\n<tr>\n<td>Service configuration problem<\/td>\n<td>Does the metadata show a &#8220;submissions paused&#8221; flag?<\/td>\n<td>If not, the configuration is fine<\/td>\n<\/tr>\n<tr>\n<td>My file format<\/td>\n<td><strong>Send it once in a different format<\/strong><\/td>\n<td>If it passes, the format is the cause<\/td>\n<\/tr>\n<tr>\n<td>Account permissions<\/td>\n<td>Same call with a different account or different key<\/td>\n<td>Only at this point do you ask a person<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>The reason we lost two days is that we <strong>never carried the third test through to the end<\/strong>. We postponed the cheapest test until last.<\/p>\n<h3> <a name=\"5-the-sentences-to-put-in-claudemd\" href=\"#5-the-sentences-to-put-in-claudemd\"> <\/a> 5. The Sentences to Put in CLAUDE.md <\/h3>\n<p>To make the agent follow this order every time, nail it into the rules file. <\/p>\n<div>\n<pre><code> <\/code><\/pre>\n<div>\n<\/p><\/div>\n<\/p><\/div>\n<p>If you have the memory structure built in Chapter 3, incidents like this also get recorded in <code>mistakes.md<\/code>.<br \/> <strong>The sole purpose of the record is to keep the same mistake from happening twice.<\/strong><\/p>\n<h3> <a name=\"6-locking-it-in-with-a-regression-test\" href=\"#6-locking-it-in-with-a-regression-test\"> <\/a> 6. Locking It In with a Regression Test <\/h3>\n<p>Once you&#8217;ve found the cause, don&#8217;t stop there. Leave a test so that <strong>that format can never be produced again<\/strong>. <\/p>\n<div>\n<pre><code><span>def<\/span> <span>test_submission_is_targz_not_zip<\/span><span>():<\/span> <span>path<\/span> <span>=<\/span> <span>build_submission<\/span><span>()<\/span> <span>assert<\/span> <span>path<\/span><span>.<\/span><span>suffix<\/span> <span>==<\/span> <span>\"<\/span><span>.gz<\/span><span>\"<\/span> <span>and<\/span> <span>path<\/span><span>.<\/span><span>name<\/span><span>.<\/span><span>endswith<\/span><span>(<\/span><span>\"<\/span><span>.tar.gz<\/span><span>\"<\/span><span>),<\/span> \\ <span>def<\/span> <span>test_required_files_are_at_archive_root<\/span><span>():<\/span> <span>with<\/span> <span>tarfile<\/span><span>.<\/span><span>open<\/span><span>(<\/span><span>build_submission<\/span><span>())<\/span> <span>as<\/span> <span>tar<\/span><span>:<\/span> <span>names<\/span> <span>=<\/span> <span>tar<\/span><span>.<\/span><span>getnames<\/span><span>()<\/span> <\/code><\/pre>\n<div>\n<\/p><\/div>\n<\/p><\/div>\n<p>The key is writing <strong>why the test exists<\/strong> in the test&#8217;s message. Without the reason, six months later someone (or an AI) deletes it as &#8220;a constraint that looks unnecessary.&#8221;<\/p>\n<h3> <a name=\"7-how-to-phrase-a-request-to-a-human\" href=\"#7-how-to-phrase-a-request-to-a-human\"> <\/a> 7. How to Phrase a Request to a Human <\/h3>\n<p>If you&#8217;ve come all the way to the end and truly need a human hand, say it like this.<\/p>\n<ul>\n<li>\u274c &#8220;You just need to verify your identity&#8221; \u2014 an unverified assertion. If it&#8217;s wrong, it wastes the other person&#8217;s time.<\/li>\n<li>\u2b55 &#8220;Two candidates remain. A takes 30 seconds to check, so please start with A.&#8221;<\/li>\n<\/ul>\n<p><strong>Requests also get an order and a rationale attached.<\/strong> A person is not an unlimited testing tool.<\/p>\n<hr>\n<p><strong>Want the whole system?<\/strong> The book has 10 chapters plus 4 ready-to-use templates (CLAUDE.md starter, memory files, auditor checklist, measurement guide) and a hands-on section for every chapter. It&#8217;s $19 as a PDF: <a href=\"https:\/\/dbsoul.gumroad.com\/l\/autonomous-ai-agents-claude-code\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/dbsoul.gumroad.com\/l\/autonomous-ai-agents-claude-code<\/a><\/p>\n<p>Not sure yet? The first three chapters are free, same PDF format: <a href=\"https:\/\/dbsoul.gumroad.com\/l\/autonomous-ai-agents-claude-code-free-sample\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/dbsoul.gumroad.com\/l\/autonomous-ai-agents-claude-code-free-sample<\/a><\/p>\n<p>Questions about the setup are welcome in the comments \u2014 I&#8217;ll answer with what actually happened, not theory.<\/p>\n<\/p><\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>Fuente: <a href=\"https:\/\/dev.to\/dbsoul\/when-someone-elses-system-rejects-you-without-a-reason-fixing-a-diagnostic-order-in-advance-4n5b\">Art\u00edculo original<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>And the way of speaking becomes a rule too. Before verification, don&#8217;t say &#8220;cause.&#8221; Say &#8220;candidate.&#8221; This one word keeps the record uncontaminated. A candidate can be erased, but a cause gets read as fact by the next person. 4. Design the Discriminating Test First If there are multiple candidates, first build a test that [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":5196,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"webixso_pending_account_ids":""},"categories":[41],"tags":[],"class_list":["post-5197","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devto"],"jetpack_publicize_connections":[],"_links":{"self":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/posts\/5197","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/comments?post=5197"}],"version-history":[{"count":0,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/posts\/5197\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/media\/5196"}],"wp:attachment":[{"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/media?parent=5197"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/categories?post=5197"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tucumandevelopers.com\/index.php\/wp-json\/wp\/v2\/tags?post=5197"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}