<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: 김정환</title>
    <description>The latest articles on DEV Community by 김정환 (@jailies).</description>
    <link>https://dev.to/jailies</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4037781%2Fc5fd89d8-a4af-4084-b58e-e65e5b183aea.png</url>
      <title>DEV Community: 김정환</title>
      <link>https://dev.to/jailies</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jailies"/>
    <language>en</language>
    <item>
      <title>A prompt change is a product change: a small release gate for LLM features</title>
      <dc:creator>김정환</dc:creator>
      <pubDate>Mon, 20 Jul 2026 09:14:49 +0000</pubDate>
      <link>https://dev.to/jailies/a-prompt-change-is-a-product-change-a-small-release-gate-for-llm-features-n7a</link>
      <guid>https://dev.to/jailies/a-prompt-change-is-a-product-change-a-small-release-gate-for-llm-features-n7a</guid>
      <description>&lt;p&gt;Changing a prompt can feel too small to deserve a release process. Swapping a model, changing retrieval chunking, or adding a tool call can feel like an implementation detail. For a customer-facing AI feature, each can change what a user sees, what it costs, how long it takes, and which failures become possible.&lt;/p&gt;

&lt;p&gt;That is why the useful question before a release is not “does the demo look good?” It is: &lt;strong&gt;what user task might regress, how would we notice, and who can decide to hold the release?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You do not need to buy a platform before asking that question. A small, versioned set of examples and explicit thresholds are enough to make the next decision more defensible.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with one release decision
&lt;/h2&gt;

&lt;p&gt;Do not begin with “evaluate the assistant.” Pick the narrow change that is actually going out. For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Can we ship a new retrieval configuration for password-reset and plan-entitlement questions to 10% of traffic?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This gives the team a decision owner, a scope, and a rollback boundary. It also prevents an evaluation set from becoming an unbounded collection of interesting prompts.&lt;/p&gt;

&lt;h2&gt;
  
  
  Include normal tasks and failures you already know about
&lt;/h2&gt;

&lt;p&gt;A useful starter set is small but deliberately mixed. For a support assistant, five categories are enough to expose very different risks:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;A common success case, such as a password reset request.&lt;/li&gt;
&lt;li&gt;A retrieval miss where the correct behavior is to say the answer is unavailable rather than invent a policy.&lt;/li&gt;
&lt;li&gt;An instruction conflict or prompt injection attempt.&lt;/li&gt;
&lt;li&gt;An incomplete customer request that needs clarification without unnecessary personal data.&lt;/li&gt;
&lt;li&gt;A pricing or entitlement claim that needs an approved source or escalation.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The goal is not a benchmark score. It is a case set that makes the normal path and the known ways to fail visible in the same review.&lt;/p&gt;

&lt;h2&gt;
  
  
  Define the behavior, not just a preferred answer
&lt;/h2&gt;

&lt;p&gt;For each example, document an observable expected behavior. “Helpful answer” is not observable. “Explain the reset path in two steps and do not claim to know account status” is.&lt;/p&gt;

&lt;p&gt;This matters when several evaluators disagree about style but can agree that a response fabricated a cancellation policy, disclosed hidden instructions, or omitted a required citation. Those are different failure classes with different owners and different release implications.&lt;/p&gt;

&lt;h2&gt;
  
  
  Separate a poor answer from a release-blocking failure
&lt;/h2&gt;

&lt;p&gt;Not every imperfection should stop a rollout. The team should decide in advance which failures are unacceptable for the change at hand. A fabricated commercial policy may be critical. An answer that needs one extra clarification may be non-critical but still worth tracking.&lt;/p&gt;

&lt;p&gt;This makes an important result possible: a high pass rate can still be a “hold.” If one critical test fails, the release needs an explicit exception decision rather than a favorable average hiding it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Track the operating cost of a correct answer
&lt;/h2&gt;

&lt;p&gt;Quality is necessary but not sufficient. A system that produces mostly correct answers but sends 40% of requests to human review may not be operationally ready. A model change that improves a score but triples p95 latency or makes the unit cost unacceptable is also a product decision.&lt;/p&gt;

&lt;p&gt;For a small gate, track five things together:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;task pass rate;&lt;/li&gt;
&lt;li&gt;critical-failure rate;&lt;/li&gt;
&lt;li&gt;p95 latency;&lt;/li&gt;
&lt;li&gt;mean cost per request; and&lt;/li&gt;
&lt;li&gt;expected human-review volume.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The thresholds should come from the release context, not from a generic benchmark. A low-risk internal draft tool can tolerate a different failure budget from an external support assistant handling entitlement claims.&lt;/p&gt;

&lt;h2&gt;
  
  
  Make the result reproducible
&lt;/h2&gt;

&lt;p&gt;Record the model, prompt, retrieval index, tool versions, configuration, and result file. Without that, a promising evaluation result cannot be compared to the next change and an incident cannot become a regression case.&lt;/p&gt;

&lt;p&gt;You can do this with JSONL files and a small script. The critical habit is versioning the inputs and writing down why the gate approved, held, or allowed an exception.&lt;/p&gt;

&lt;h2&gt;
  
  
  Treat the gate as a decision aid, not a certificate
&lt;/h2&gt;

&lt;p&gt;No test set proves that an AI system is safe or compliant. It cannot replace security review, legal review, monitoring, or human judgment. What it can do is turn a release discussion from taste and memory into evidence a team can inspect.&lt;/p&gt;

&lt;p&gt;I published a free &lt;a href="https://jailies.github.io/launchgate/ai-feature-release-readiness-scorecard.pdf" rel="noopener noreferrer"&gt;10-question readiness scorecard&lt;/a&gt; and a &lt;a href="https://jailies.github.io/launchgate/launchgate-free-5-case-sample.zip" rel="noopener noreferrer"&gt;synthetic five-case evaluation sample&lt;/a&gt; for teams that want to start small. The full &lt;a href="https://jailies.github.io/launchgate/" rel="noopener noreferrer"&gt;LaunchGate page&lt;/a&gt; explains the workflow; live checkout will be added after seller verification is complete.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
