Understand draft locks, configure required evaluations, publish a prompt version, and inspect the evidence recorded in production history.
Use Release to choose which saved prompt version is in production. Each version must pass the prompt’s required evaluation policies before you can publish it.This guide continues with Support ticket triage from the Quickstart. It uses the completed Support triage v1 evaluation and the Support triage v2 candidate from Results and comparison. Use the synthetic example while learning the release flow.
Understand version states
State
What you can do
Editable draft
Change messages, variables, and defaults in Build, then click Save changes. Saving keeps the same version and does not publish it.
Evaluated version
Starting a dataset evaluation makes the version read-only. You can inspect it, run it again, and use its saved evaluation evidence for release checks. Use New draft to edit a copy.
Production version
The version currently published for this prompt. It is read-only. Publishing another version changes the production selection and adds a history entry.
Selecting a version in Build or Version readiness only changes what you are viewing. Click Publish version after the checks pass to change production.See Save changes or create a new draft for the editing workflow. Previously evaluated versions stay read-only after another version replaces them in production.
Before you publish
An organization owner or admin must create policies, save release settings, and publish versions. Other users with access can inspect readiness and results.You need at least one completed dataset evaluation with a required rule. A run with only advisory rules, or no evaluation rules, cannot establish a release policy. If you have not prepared this evidence, run the eight-ticket evaluation first.
The example’s Contains JSON rule only checks whether JSON can be found in the response. Both v1 and v2 passed all eight cases even though v1 assigned the wrong priority to the password-reset ticket. Use rules that check the behavior you need before relying on release checks for a real deployment. Review the recorded mismatch.
Set the required evaluations
Release settings apply to the whole prompt. You configure them once, then check each version against the saved selection.
1
Create a policy from saved evidence
Open Release, select Support ticket triage, then open Release settings and click New policy.In Source evaluation, select the completed Support triage v1 run. The policy uses the dataset snapshot and evaluation rules saved with that run. Its label comes from the source evaluation’s name.
2
Choose the thresholds
For this example, enter:
Setting
Example value
What it checks
Minimum coverage
100%
Every case has all required scores. A generated output alone does not count as fully scored.
Minimum pass rate
100%
Every fully scored case passes all required rules.
Maximum regressions
0
No case that passed in current production fails in the candidate. This comparison starts after the first release.
Require approved AI judge calibration
Checked
Any required LLM judge must have approved calibration matching the judge settings saved with the evaluation.
This example uses a deterministic rule, so it needs no AI judge calibration. The checked option does not add an AI judge to the evaluation.
3
Save the prompt's requirements
Click Create policy. Confirm the new policy is selected, then click Save release settings.Creating a policy and saving the required selection are separate actions. Until you save, the selection shows Unsaved changes and the other release tabs are disabled.
The policy uses the completed v1 evaluation's dataset and rules, with 100% coverage, 100% pass rate, and zero allowed regressions.
Change requirements or require more than one evaluation
Each policy is a saved version of the requirements. To change thresholds or use a newer dataset or rule snapshot, click New policy, select an appropriate completed evaluation, and create another policy version. Select it and click Save release settings.You can require up to 20 policies, with one selected policy for each dataset-and-rule snapshot pair. Selecting another policy for the same pair replaces the previous selection. Every selected policy must pass before a version can be published.Policy versions, prompt versions, and release-settings revisions have separate numbering. A policy labeled Support triage v1 · v1 can check prompt v2 when its evaluation uses the same saved dataset and rules.If someone changes release settings in another session, click Reload selection and review the current requirements before saving again.
Publish the first version
1
Select the version and its evaluation
Open Version readiness. Set Version to release to v1 and confirm Current production says No version published yet.Under the required policy, set Evaluation for this version to Support triage v1. The selector lists completed runs for this version with the policy’s saved dataset and rules. A matching run may already be selected.
2
Inspect the checks
Confirm scoring coverage and case pass rate are both 100%, with 8 of 8 cases scored and passed.Regressions shows Not required because no production version exists yet. AI judge calibration shows No approval missing for the deterministic-only example; this does not mean an AI judge was calibrated.
3
Publish
When the summary says Ready to publish, click Publish version.Confirm Published to production and Current production: v1. The publish action checks the requirements again and records the evidence used for this release.
Release v2 against current production
Prepare v2 using the password-reset clarification, then evaluate it with the same dataset snapshot, rules, model, API key, sampling settings, and repetitions as v1. You can reuse the completed v2 run from the Results guide.
In Version readiness, set Version to release to v2. Confirm Current production is v1.
Set Evaluation for this version to Support triage v2.
Set Production evaluation to compare to Support triage v1. Only compatible runs from the current production version are listed. See comparison requirements.
Review the check table. This recorded example has 100% coverage, 100% pass rate, and 0 regressions. Open either View results link to inspect the underlying evidence.
When every required evaluation passes and the summary says Ready to publish, click Publish version. Confirm Current production changes to v2.
Before publishing v2, Release checks its saved evaluation against the required policy and the compatible v1 production evaluation. These are recorded example results, not guaranteed model outcomes.
Resolve a blocked release
The summary and What needs to change identify missing evidence or failed checks. Resolve each required policy before publishing.
What you see
What to do
Set release requirements
Create and select a policy in Release settings, then click Save release settings.
No Evaluation for this version is available
Evaluate the selected saved version with the policy’s dataset and rule snapshots. A run for another prompt version does not qualify.
No Production evaluation to compare is available
Evaluate current production with matching cases, dataset snapshot, rules, model, and API key. Match the sampling settings and repetitions too.
Low coverage, missing scores, or scoring errors
Open the results, inspect the affected cases, and resolve the scoring errors. Comparisons need every required score in both runs.
Pass rate is too low or regressions exceed the maximum
Inspect failed and regressed cases. Refine a new draft and evaluate it before checking release readiness again.
A judge needs calibration approval
Approve calibration for the required judge settings frozen into the evaluation. See Calibrate against labeled examples under Test and maintain a rule.
Settings changed or checks could not load
Reload the saved requirements or click Retry checks, then review readiness again.
Checks pass but you cannot publish
Ask an organization owner or admin to publish the version.
Inspect production history
Open Production history to see which versions were published, when they were published, and which version each release replaced. The table includes cases passed, regressions, and the release-settings revision used at publish time.In Evaluation runs, open the row’s menu and choose View evaluation to inspect its recorded results. These records describe the evidence used for that release; later requirement changes do not rewrite the earlier decision.
The example history records v1's first release and v2 replacing v1. Both used release-settings revision v1, with eight cases passed and zero recorded regressions.
Return to an earlier version
To return production to an earlier version, open Version readiness and choose that version under Version to release. You can also open its version link in Production history.Select its evaluation for each current policy, and select compatible evaluations of the version currently in production. If the required snapshots have changed since the earlier release, prepare matching evaluations for both versions first.When the earlier version passes the current requirements and shows Ready to publish, an owner or admin can click Publish version. This creates another recorded release. Opening an old version or its historical evidence does not change production.For the recorded example, selecting v1 again after releasing v2 checks Support triage v1 against Support triage v2. The current JSON-only policy still passes; the known password-reset priority mismatch is why your real release rules must cover the behavior you intend to preserve.After publishing, use Production quality and analytics to score new requests and inspect their production evidence.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Traceport","colors":{"primary":"#4F46E5","light":"#818CF8","dark":"#4338CA"},"logo":{"light":"https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/logo/light.svg?fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=eebc169dfcad8430814e9d644fa938fd","dark":"https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/logo/dark.svg?fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=befe74f707d1d0ddf2baceac77f8c5dc"},"favicon":"https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/favicon.ico?fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=a5ac59be37cc6e0487d3d4222fbd0a03","api":{"openapi":"apis.yaml"},"background":{"decoration":"gradient"},"navbar":{"primary":{"type":"button","label":"Get Started","href":"https://app.traceport.ai"}},"footer":{},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Dashboard","icon":"desktop","href":"https://app.traceport.ai"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"traceport","hasAudioNarration":false,"actualSubdomain":"traceport","customDomains":["docs.traceport.ai"],"gitSource":{"type":"github","owner":"traceport-ai","repo":"docs","deployBranch":"main","isPrivate":true,"contentDirectory":"","mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{},"buildId":"6ae5bbaa3aae848cfc967a19","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"Documentation","count":23},{"language":"default","tag":"API Reference","count":17},{"language":"default","tag":"Prompt Studio","count":9},{"language":"default","tag":"Files","count":5},{"language":"default","tag":"Overview","count":5},{"language":"default","tag":"Batches","count":4},{"language":"default","tag":"Getting Started","count":4},{"language":"default","tag":"Realtime \u0026 WebSockets","count":3},{"language":"default","tag":"Config Workflows","count":3},{"language":"default","tag":"API Management","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"prompt-studio/releases","slug":"/prompt-studio/releases","pageMetadata":{"title":"Versioning and releases","sidebarTitle":"Versioning and releases","description":"Understand draft locks, configure required evaluations, publish a prompt version, and inspect the evidence recorded in production history.","keywords":["prompt studio","prompt versions","release policy","publish","production history","rollback"],"icon":"rocket","href":"/prompt-studio/releases"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Understand draft locks, configure required evaluations, publish a prompt version, and inspect the evidence recorded in production history.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Accordion,Frame,Heading,OptimizedImage,Step,Steps,Table,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Use `,_jsx(_components.strong,{children:`Release`}),` to choose which saved prompt version is in production. Each version must pass the prompt’s required evaluation policies before you can publish it.`]}),`\n`,_jsxs(_components.p,{children:[`This guide continues with `,_jsx(_components.strong,{children:`Support ticket triage`}),` from the `,_jsx(_components.a,{href:`/prompt-studio/quickstart`,children:`Quickstart`}),`. It uses the completed `,_jsx(_components.strong,{children:`Support triage v1`}),` evaluation and the `,_jsx(_components.strong,{children:`Support triage v2`}),` candidate from `,_jsx(_components.a,{href:`/prompt-studio/results#prepare-a-comparable-candidate`,children:`Results and comparison`}),`. Use the synthetic example while learning the release flow.`]}),`\n`,_jsx(Heading,{level:`2`,id:`understand-version-states`,children:`Understand version states`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`State`}),_jsx(_components.th,{children:`What you can do`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Editable draft`}),_jsxs(_components.td,{children:[`Change messages, variables, and defaults in `,_jsx(_components.strong,{children:`Build`}),`, then click `,_jsx(_components.strong,{children:`Save changes`}),`. Saving keeps the same version and does not publish it.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Evaluated version`}),_jsxs(_components.td,{children:[`Starting a dataset evaluation makes the version read-only. You can inspect it, run it again, and use its saved evaluation evidence for release checks. Use `,_jsx(_components.strong,{children:`New draft`}),` to edit a copy.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Production version`}),_jsx(_components.td,{children:`The version currently published for this prompt. It is read-only. Publishing another version changes the production selection and adds a history entry.`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Selecting a version in `,_jsx(_components.strong,{children:`Build`}),` or `,_jsx(_components.strong,{children:`Version readiness`}),` only changes what you are viewing. Click `,_jsx(_components.strong,{children:`Publish version`}),` after the checks pass to change production.`]}),`\n`,_jsxs(_components.p,{children:[`See `,_jsx(_components.a,{href:`/prompt-studio/editor#save-changes-or-create-a-new-draft`,children:`Save changes or create a new draft`}),` for the editing workflow. Previously evaluated versions stay read-only after another version replaces them in production.`]}),`\n`,_jsx(Heading,{level:`2`,id:`before-you-publish`,children:`Before you publish`}),`\n`,_jsx(_components.p,{children:`An organization owner or admin must create policies, save release settings, and publish versions. Other users with access can inspect readiness and results.`}),`\n`,_jsxs(_components.p,{children:[`You need at least one completed dataset evaluation with a `,_jsx(_components.strong,{children:`required`}),` rule. A run with only advisory rules, or no evaluation rules, cannot establish a release policy. If you have not prepared this evidence, `,_jsx(_components.a,{href:`/prompt-studio/testing`,children:`run the eight-ticket evaluation`}),` first.`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`The example’s `,_jsx(_components.strong,{children:`Contains JSON`}),` rule only checks whether JSON can be found in the response. Both v1 and v2 passed all eight cases even though v1 assigned the wrong priority to the password-reset ticket. Use rules that check the behavior you need before relying on release checks for a real deployment. Review the `,_jsx(_components.a,{href:`/prompt-studio/results#inspect-the-password-reset-change`,children:`recorded mismatch`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`set-the-required-evaluations`,children:`Set the required evaluations`}),`\n`,_jsx(_components.p,{children:`Release settings apply to the whole prompt. You configure them once, then check each version against the saved selection.`}),`\n`,_jsxs(Steps,{children:[_jsxs(Step,{title:`Create a policy from saved evidence`,children:[_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Release`}),`, select `,_jsx(_components.strong,{children:`Support ticket triage`}),`, then open `,_jsx(_components.strong,{children:`Release settings`}),` and click `,_jsx(_components.strong,{children:`New policy`}),`.`]}),_jsxs(_components.p,{children:[`In `,_jsx(_components.strong,{children:`Source evaluation`}),`, select the completed `,_jsx(_components.strong,{children:`Support triage v1`}),` run. The policy uses the dataset snapshot and evaluation rules saved with that run. Its label comes from the source evaluation’s name.`]})]}),_jsxs(Step,{title:`Choose the thresholds`,children:[_jsx(_components.p,{children:`For this example, enter:`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setting`}),_jsx(_components.th,{children:`Example value`}),_jsx(_components.th,{children:`What it checks`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Minimum coverage`})}),_jsxs(_components.td,{\"data-numeric\":`true`,children:[_jsx(_components.code,{children:`100`}),`%`]}),_jsx(_components.td,{children:`Every case has all required scores. A generated output alone does not count as fully scored.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Minimum pass rate`})}),_jsxs(_components.td,{\"data-numeric\":`true`,children:[_jsx(_components.code,{children:`100`}),`%`]}),_jsx(_components.td,{children:`Every fully scored case passes all required rules.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Maximum regressions`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0`})}),_jsx(_components.td,{children:`No case that passed in current production fails in the candidate. This comparison starts after the first release.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Require approved AI judge calibration`})}),_jsx(_components.td,{children:`Checked`}),_jsx(_components.td,{children:`Any required LLM judge must have approved calibration matching the judge settings saved with the evaluation.`})]})]})]}),_jsx(_components.p,{children:`This example uses a deterministic rule, so it needs no AI judge calibration. The checked option does not add an AI judge to the evaluation.`})]}),_jsxs(Step,{title:`Save the prompt's requirements`,children:[_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Create policy`}),`. Confirm the new policy is selected, then click `,_jsx(_components.strong,{children:`Save release settings`}),`.`]}),_jsxs(_components.p,{children:[`Creating a policy and saving the required selection are separate actions. Until you save, the selection shows `,_jsx(_components.strong,{children:`Unsaved changes`}),` and the other release tabs are disabled.`]})]})]}),`\n`,_jsx(Frame,{caption:`The policy uses the completed v1 evaluation's dataset and rules, with 100% coverage, 100% pass rate, and zero allowed regressions.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-policy.jpg?fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=fe77a28cc58b9f4612c3ca3e5a201351`,alt:`New release policy for Support triage v1, with minimum coverage and pass rate both set to 100 percent, maximum regressions set to zero, and AI judge calibration required.`,\"data-og-width\":`1680`,width:`1680`,\"data-og-height\":`1050`,height:`1050`,\"data-path\":`images/prompt-studio/support-triage-release-policy.jpg`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-policy.jpg?w=280\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=894677861a6b2e415cde99a517cf189a 280w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-policy.jpg?w=560\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=20931f61bf68dd1cab9808e845cb8648 560w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-policy.jpg?w=840\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=b56fad383822438d9515351549b45169 840w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-policy.jpg?w=1100\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=5042352176c585690df717bd6e0a4794 1100w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-policy.jpg?w=1650\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=8ab9390f50d2be56ba60cc79ad9d6685 1650w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-policy.jpg?w=2500\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=30a2d1f55e1c64cf2647f0781e09a69c 2500w`})}),`\n`,_jsxs(Accordion,{title:`Change requirements or require more than one evaluation`,id:`change-requirements-or-require-more-than-one-evaluation`,children:[_jsxs(_components.p,{children:[`Each policy is a saved version of the requirements. To change thresholds or use a newer dataset or rule snapshot, click `,_jsx(_components.strong,{children:`New policy`}),`, select an appropriate completed evaluation, and create another policy version. Select it and click `,_jsx(_components.strong,{children:`Save release settings`}),`.`]}),_jsx(_components.p,{children:`You can require up to 20 policies, with one selected policy for each dataset-and-rule snapshot pair. Selecting another policy for the same pair replaces the previous selection. Every selected policy must pass before a version can be published.`}),_jsxs(_components.p,{children:[`Policy versions, prompt versions, and release-settings revisions have separate numbering. A policy labeled `,_jsx(_components.strong,{children:`Support triage v1 · v1`}),` can check prompt v2 when its evaluation uses the same saved dataset and rules.`]}),_jsxs(_components.p,{children:[`If someone changes release settings in another session, click `,_jsx(_components.strong,{children:`Reload selection`}),` and review the current requirements before saving again.`]})]}),`\n`,_jsx(Heading,{level:`2`,id:`publish-the-first-version`,children:`Publish the first version`}),`\n`,_jsxs(Steps,{children:[_jsxs(Step,{title:`Select the version and its evaluation`,children:[_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Version readiness`}),`. Set `,_jsx(_components.strong,{children:`Version to release`}),` to `,_jsx(_components.strong,{children:`v1`}),` and confirm `,_jsx(_components.strong,{children:`Current production`}),` says `,_jsx(_components.strong,{children:`No version published yet`}),`.`]}),_jsxs(_components.p,{children:[`Under the required policy, set `,_jsx(_components.strong,{children:`Evaluation for this version`}),` to `,_jsx(_components.strong,{children:`Support triage v1`}),`. The selector lists completed runs for this version with the policy’s saved dataset and rules. A matching run may already be selected.`]})]}),_jsxs(Step,{title:`Inspect the checks`,children:[_jsxs(_components.p,{children:[`Confirm scoring coverage and case pass rate are both `,_jsx(_components.code,{children:`100%`}),`, with `,_jsx(_components.code,{children:`8 of 8`}),` cases scored and passed.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Regressions`}),` shows `,_jsx(_components.strong,{children:`Not required`}),` because no production version exists yet. `,_jsx(_components.strong,{children:`AI judge calibration`}),` shows `,_jsx(_components.strong,{children:`No approval missing`}),` for the deterministic-only example; this does not mean an AI judge was calibrated.`]})]}),_jsxs(Step,{title:`Publish`,children:[_jsxs(_components.p,{children:[`When the summary says `,_jsx(_components.strong,{children:`Ready to publish`}),`, click `,_jsx(_components.strong,{children:`Publish version`}),`.`]}),_jsxs(_components.p,{children:[`Confirm `,_jsx(_components.strong,{children:`Published to production`}),` and `,_jsx(_components.strong,{children:`Current production: v1`}),`. The publish action checks the requirements again and records the evidence used for this release.`]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`release-v2-against-current-production`,children:`Release v2 against current production`}),`\n`,_jsxs(_components.p,{children:[`Prepare v2 using the `,_jsx(_components.a,{href:`/prompt-studio/results#prepare-a-comparable-candidate`,children:`password-reset clarification`}),`, then evaluate it with the same dataset snapshot, rules, model, API key, sampling settings, and repetitions as v1. You can reuse the completed v2 run from the Results guide.`]}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`In `,_jsx(_components.strong,{children:`Version readiness`}),`, set `,_jsx(_components.strong,{children:`Version to release`}),` to `,_jsx(_components.strong,{children:`v2`}),`. Confirm `,_jsx(_components.strong,{children:`Current production`}),` is `,_jsx(_components.strong,{children:`v1`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Set `,_jsx(_components.strong,{children:`Evaluation for this version`}),` to `,_jsx(_components.strong,{children:`Support triage v2`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Set `,_jsx(_components.strong,{children:`Production evaluation to compare`}),` to `,_jsx(_components.strong,{children:`Support triage v1`}),`. Only compatible runs from the current production version are listed. See `,_jsx(_components.a,{href:`/prompt-studio/results#compare-the-candidate-with-its-baseline`,children:`comparison requirements`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Review the check table. This recorded example has `,_jsx(_components.code,{children:`100%`}),` coverage, `,_jsx(_components.code,{children:`100%`}),` pass rate, and `,_jsx(_components.code,{children:`0`}),` regressions. Open either `,_jsx(_components.strong,{children:`View results`}),` link to inspect the underlying evidence.`]}),`\n`,_jsxs(_components.li,{children:[`When every required evaluation passes and the summary says `,_jsx(_components.strong,{children:`Ready to publish`}),`, click `,_jsx(_components.strong,{children:`Publish version`}),`. Confirm `,_jsx(_components.strong,{children:`Current production`}),` changes to `,_jsx(_components.strong,{children:`v2`}),`.`]}),`\n`]}),`\n`,_jsx(Frame,{caption:`Before publishing v2, Release checks its saved evaluation against the required policy and the compatible v1 production evaluation. These are recorded example results, not guaranteed model outcomes.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-readiness.jpg?fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=d9b4e985fa47ec90a734762234f43aae`,alt:`Support ticket triage v2 ready to publish, with v1 in current production, both evaluation runs selected, all eight cases scored and passed, and zero regressions.`,\"data-og-width\":`1680`,width:`1680`,\"data-og-height\":`1050`,height:`1050`,\"data-path\":`images/prompt-studio/support-triage-release-readiness.jpg`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-readiness.jpg?w=280\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=bae5b5ec4e7bf073007922ca7c9f55f1 280w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-readiness.jpg?w=560\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=0da4dbf267e5331a400997843a4fa20c 560w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-readiness.jpg?w=840\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=1ccd6e2b74cb2c2172cdf7c1b16603ec 840w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-readiness.jpg?w=1100\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=8f92f85b2880fcbba4813d59d0781815 1100w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-readiness.jpg?w=1650\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=2c7e69cc74a467fc9b6b96332465261d 1650w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-readiness.jpg?w=2500\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=269dff5842770fc6c3383ced5c62d2ba 2500w`})}),`\n`,_jsx(Heading,{level:`2`,id:`resolve-a-blocked-release`,children:`Resolve a blocked release`}),`\n`,_jsxs(_components.p,{children:[`The summary and `,_jsx(_components.strong,{children:`What needs to change`}),` identify missing evidence or failed checks. Resolve each required policy before publishing.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`What you see`}),_jsx(_components.th,{children:`What to do`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Set release requirements`})}),_jsxs(_components.td,{children:[`Create and select a policy in `,_jsx(_components.strong,{children:`Release settings`}),`, then click `,_jsx(_components.strong,{children:`Save release settings`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`No `,_jsx(_components.strong,{children:`Evaluation for this version`}),` is available`]}),_jsx(_components.td,{children:`Evaluate the selected saved version with the policy’s dataset and rule snapshots. A run for another prompt version does not qualify.`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[`No `,_jsx(_components.strong,{children:`Production evaluation to compare`}),` is available`]}),_jsx(_components.td,{children:`Evaluate current production with matching cases, dataset snapshot, rules, model, and API key. Match the sampling settings and repetitions too.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Low coverage, missing scores, or scoring errors`}),_jsx(_components.td,{children:`Open the results, inspect the affected cases, and resolve the scoring errors. Comparisons need every required score in both runs.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Pass rate is too low or regressions exceed the maximum`}),_jsx(_components.td,{children:`Inspect failed and regressed cases. Refine a new draft and evaluate it before checking release readiness again.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`A judge needs calibration approval`}),_jsxs(_components.td,{children:[`Approve calibration for the required judge settings frozen into the evaluation. See `,_jsx(_components.strong,{children:`Calibrate against labeled examples`}),` under `,_jsx(_components.a,{href:`/prompt-studio/evaluations#test-and-maintain-a-rule`,children:`Test and maintain a rule`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Settings changed or checks could not load`}),_jsxs(_components.td,{children:[`Reload the saved requirements or click `,_jsx(_components.strong,{children:`Retry checks`}),`, then review readiness again.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Checks pass but you cannot publish`}),_jsx(_components.td,{children:`Ask an organization owner or admin to publish the version.`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`inspect-production-history`,children:`Inspect production history`}),`\n`,_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Production history`}),` to see which versions were published, when they were published, and which version each release replaced. The table includes cases passed, regressions, and the release-settings revision used at publish time.`]}),`\n`,_jsxs(_components.p,{children:[`In `,_jsx(_components.strong,{children:`Evaluation runs`}),`, open the row’s menu and choose `,_jsx(_components.strong,{children:`View evaluation`}),` to inspect its recorded results. These records describe the evidence used for that release; later requirement changes do not rewrite the earlier decision.`]}),`\n`,_jsx(Frame,{caption:`The example history records v1's first release and v2 replacing v1. Both used release-settings revision v1, with eight cases passed and zero recorded regressions.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-history.jpg?fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=6a691ccca73afe25b3bf271921dc03c0`,alt:`Production history showing two recorded releases: Support ticket triage v2 replacing v1 and v1 as the first release, each with eight of eight cases passed and an evaluation-run menu.`,\"data-og-width\":`1680`,width:`1680`,\"data-og-height\":`1050`,height:`1050`,\"data-path\":`images/prompt-studio/support-triage-release-history.jpg`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-history.jpg?w=280\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=9834bbe80a94f874ebb1d0505aa22c4e 280w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-history.jpg?w=560\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=cfbb5bddc0cf0c2859b1e428c2739376 560w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-history.jpg?w=840\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=0b1fcb2a90f0f45229dd7f6e7d382694 840w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-history.jpg?w=1100\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=8892d8c5f991ac49164e09af23221806 1100w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-history.jpg?w=1650\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=1953b452a5241563358e7fda19529a2e 1650w, https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/images/prompt-studio/support-triage-release-history.jpg?w=2500\u0026fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=303f00672d8c333d388e80fbb00bd27c 2500w`})}),`\n`,_jsx(Heading,{level:`2`,id:`return-to-an-earlier-version`,children:`Return to an earlier version`}),`\n`,_jsxs(_components.p,{children:[`To return production to an earlier version, open `,_jsx(_components.strong,{children:`Version readiness`}),` and choose that version under `,_jsx(_components.strong,{children:`Version to release`}),`. You can also open its version link in `,_jsx(_components.strong,{children:`Production history`}),`.`]}),`\n`,_jsx(_components.p,{children:`Select its evaluation for each current policy, and select compatible evaluations of the version currently in production. If the required snapshots have changed since the earlier release, prepare matching evaluations for both versions first.`}),`\n`,_jsxs(_components.p,{children:[`When the earlier version passes the current requirements and shows `,_jsx(_components.strong,{children:`Ready to publish`}),`, an owner or admin can click `,_jsx(_components.strong,{children:`Publish version`}),`. This creates another recorded release. Opening an old version or its historical evidence does not change production.`]}),`\n`,_jsxs(_components.p,{children:[`For the recorded example, selecting v1 again after releasing v2 checks `,_jsx(_components.strong,{children:`Support triage v1`}),` against `,_jsx(_components.strong,{children:`Support triage v2`}),`. The current JSON-only policy still passes; the known password-reset priority mismatch is why your real release rules must cover the behavior you intend to preserve.`]}),`\n`,_jsxs(_components.p,{children:[`After publishing, use `,_jsx(_components.a,{href:`/prompt-studio/analytics`,children:`Production quality and analytics`}),` to score new requests and inspect their production evidence.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Versioning and releases","sidebarTitle":"Versioning and releases","description":"Understand draft locks, configure required evaluations, publish a prompt version, and inspect the evidence recorded in production history.","keywords":["prompt studio","prompt versions","release policy","publish","production history","rollback"],"icon":"rocket","href":"/prompt-studio/releases"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Understand version states","slug":"understand-version-states","depth":2,"children":[]},{"title":"Before you publish","slug":"before-you-publish","depth":2,"children":[]},{"title":"Set the required evaluations","slug":"set-the-required-evaluations","depth":2,"children":[]},{"title":"Publish the first version","slug":"publish-the-first-version","depth":2,"children":[]},{"title":"Release v2 against current production","slug":"release-v2-against-current-production","depth":2,"children":[]},{"title":"Resolve a blocked release","slug":"resolve-a-blocked-release","depth":2,"children":[]},{"title":"Inspect production history","slug":"inspect-production-history","depth":2,"children":[]},{"title":"Return to an earlier version","slug":"return-to-an-earlier-version","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"traceport","siteName":"Traceport","title":"Versioning and releases - Traceport","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-31T09:58:11.491Z","originalFileLocation":"prompt-studio/releases.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Understand draft locks, configure required evaluations, publish a prompt version, and inspect the evidence recorded in production history.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Traceport\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Versioning and releases - Traceport\">\u003cmeta data-mint-head property=\"og:description\" content=\"Understand draft locks, configure required evaluations, publish a prompt version, and inspect the evidence recorded in production history.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Traceport\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.traceport.ai/prompt-studio/releases\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://traceport.mintlify.site/_mintlify/api/og/v2?division=Prompt+Studio\u0026amp;title=Versioning+and+releases\u0026amp;description=Understand+draft+locks%2C+configure+required+evaluations%2C+publish+a+prompt+version%2C+and+inspect+the+evidence+recorded+in+production+history.\u0026amp;theme=d041f11b97e7c389433e51cb\u0026amp;signature=fd848282c8a1ea681a74f35f89191ab79c623df6232b8173714fa6be36c5fe96\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Versioning and releases - Traceport\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Understand draft locks, configure required evaluations, publish a prompt version, and inspect the evidence recorded in production history.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://traceport.mintlify.site/_mintlify/api/og/v2?division=Prompt+Studio\u0026amp;title=Versioning+and+releases\u0026amp;description=Understand+draft+locks%2C+configure+required+evaluations%2C+publish+a+prompt+version%2C+and+inspect+the+evidence+recorded+in+production+history.\u0026amp;theme=d041f11b97e7c389433e51cb\u0026amp;signature=fd848282c8a1ea681a74f35f89191ab79c623df6232b8173714fa6be36c5fe96\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/traceport/Ni6V9TRkFx8q8dLA/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Traceport\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#4F46E5\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.traceport.ai/prompt-studio/releases\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/prompt-studio/releases.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.traceport.ai/#organization\",\"name\":\"Traceport\",\"url\":\"https://docs.traceport.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/traceport/qnQpjm16A9r4NqtM/logo/light.svg?fit=max\u0026auto=format\u0026n=qnQpjm16A9r4NqtM\u0026q=85\u0026s=eebc169dfcad8430814e9d644fa938fd\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.traceport.ai#website\",\"name\":\"Traceport\",\"url\":\"https://docs.traceport.ai\",\"publisher\":{\"@id\":\"https://docs.traceport.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.traceport.ai/prompt-studio/releases#webpage\",\"url\":\"https://docs.traceport.ai/prompt-studio/releases\",\"name\":\"Versioning and releases\",\"description\":\"Understand draft locks, configure required evaluations, publish a prompt version, and inspect the evidence recorded in production history.\",\"dateModified\":\"2026-10-31T09:58:11.491Z\",\"isPartOf\":{\"@id\":\"https://docs.traceport.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.traceport.ai/prompt-studio/releases#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.traceport.ai/prompt-studio/releases#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Prompt Studio\",\"item\":\"https://docs.traceport.ai/prompt-studio/quickstart\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Versioning and releases\",\"item\":\"https://docs.traceport.ai/prompt-studio/releases\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.traceport.ai/prompt-studio/releases#article\",\"headline\":\"Versioning and releases\",\"name\":\"Versioning and releases\",\"description\":\"Understand draft locks, configure required evaluations, publish a prompt version, and inspect the evidence recorded in production history.\",\"url\":\"https://docs.traceport.ai/prompt-studio/releases\",\"mainEntityOfPage\":{\"@id\":\"https://docs.traceport.ai/prompt-studio/releases#webpage\"},\"dateModified\":\"2026-10-31T09:58:11.491Z\",\"keywords\":\"prompt studio, prompt versions, release policy, publish, production history, rollback\",\"publisher\":{\"@id\":\"https://docs.traceport.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.traceport.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Traceport\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Traceport\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/prompt-studio/releases.md","siteName":"Traceport","nav":{"global":{"anchors":[{"anchor":"Dashboard","icon":"desktop","href":"https://app.traceport.ai"}]},"tabs":[{"tab":"Documentation","groups":[{"group":"Getting Started","pages":[{"title":"Introduction","href":""},{"title":"What is Traceport","href":"/getting-started/what-is-traceport"},{"title":"Why Traceport","href":"/getting-started/why-traceport"},{"title":"Quickstart","href":"/quickstart"}]},{"group":"Overview","pages":[{"title":"Dashboard","icon":"chart-line","href":"/overview/dashboard"},{"title":"Logs","icon":"list","href":"/overview/logs"},{"title":"Workflow Runs","icon":"diagram-project","href":"/overview/workflow-runs"},{"title":"Session Tracking","icon":"messages","href":"/overview/sessions"}]},{"group":"Risk \u0026 Governance","pages":[{"title":"Alerts and monitoring","icon":"bell","href":"/management/alerts"}]},{"group":"Config Workflows","pages":[{"title":"Config Workflows","icon":"diagram-project","href":"/config-workflows/overview"},{"title":"Nodes","icon":"shapes","href":"/config-workflows/nodes"},{"title":"Versions","icon":"clock-rotate-left","href":"/config-workflows/versions"}]},{"group":"Prompt Studio","pages":[{"title":"Get started with Prompt Studio","sidebarTitle":"Quickstart","icon":"bolt","href":"/prompt-studio/quickstart"},{"title":"Build prompts","icon":"pen-to-square","href":"/prompt-studio/editor"},{"title":"Create test datasets","sidebarTitle":"Datasets","icon":"database","href":"/prompt-studio/datasets"},{"title":"Create evaluation rules","sidebarTitle":"Evaluation rules","icon":"chart-simple","href":"/prompt-studio/evaluations"},{"title":"Run dataset evaluations","sidebarTitle":"Run evaluations","icon":"flask-vial","href":"/prompt-studio/testing"},{"title":"Inspect results and compare runs","sidebarTitle":"Results and comparison","description":"Inspect saved Prompt Studio outputs, scores, errors, and traces, then compare compatible evaluation runs to understand changes in required-check results.","icon":"table-columns","href":"/prompt-studio/results"},{"title":"Versioning and releases","sidebarTitle":"Versioning and releases","icon":"rocket","href":"/prompt-studio/releases"},{"title":"Human review","description":"Review prompt outputs independently, resolve disagreements, and add agreed corrections to a dataset for future evaluations.","icon":"user-check","href":"/prompt-studio/review"},{"title":"Production quality and analytics","sidebarTitle":"Production analytics","icon":"chart-line","href":"/prompt-studio/analytics"}]},{"group":"API Management","pages":[{"title":"API Keys","icon":"key","href":"/management/api-keys"},{"title":"Integrations","icon":"plug","href":"/management/integrations"}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/introduction"}]}]},"basePath":"","title":"Versioning and releases - Traceport","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-D2acuaLg.js","DynamicMarkdown-Co5nikxh.js","zoom-image-lightbox-BbK2OBGL.js","lightbox-handle-r17bVUz3.js"]}