This commit is contained in:
@@ -0,0 +1,260 @@
|
||||
apiVersion: devrunbook.io/v1alpha1
|
||||
kind: Playbook
|
||||
metadata:
|
||||
id: release-operations.release-candidate-prep
|
||||
slug: release-candidate-prep
|
||||
version: 1.0.0
|
||||
title: Prepare a Release Candidate
|
||||
summary: Execute a bounded release-readiness pass covering versions, migrations, tests, artifacts, documentation and known
|
||||
limitations.
|
||||
category: release-operations
|
||||
tags:
|
||||
- release
|
||||
- quality
|
||||
- validation
|
||||
lifecycle: reviewed
|
||||
riskTier: high
|
||||
authors:
|
||||
- name: DevRunbook Core Team
|
||||
license: MIT
|
||||
package:
|
||||
files:
|
||||
- path: prompt.md
|
||||
role: template
|
||||
digest: true
|
||||
exportByDefault: false
|
||||
- path: README.md
|
||||
role: documentation
|
||||
digest: true
|
||||
exportByDefault: false
|
||||
- path: CHANGELOG.md
|
||||
role: changelog
|
||||
digest: true
|
||||
exportByDefault: false
|
||||
- path: examples/minimal.yaml
|
||||
role: example
|
||||
digest: true
|
||||
exportByDefault: false
|
||||
- path: evaluations/static-structure.yaml
|
||||
role: evaluation
|
||||
digest: true
|
||||
exportByDefault: false
|
||||
spec:
|
||||
type: run-pack
|
||||
intent:
|
||||
problem: Development work around prepare a release candidate is often underspecified, inconsistently executed or reported
|
||||
without enough evidence.
|
||||
outcome: Execute a bounded release-readiness pass covering versions, migrations, tests, artifacts, documentation and known
|
||||
limitations.
|
||||
whenToUse:
|
||||
- Use this playbook when the repository needs a bounded prepare a release candidate task with explicit evidence and completion
|
||||
criteria.
|
||||
- Use it when Codex should follow a repeatable workflow rather than improvise from a one-line request.
|
||||
whenNotToUse:
|
||||
- Do not use it when the desired outcome or authority boundaries are still materially undecided.
|
||||
- Do not use it to access unavailable production credentials, bypass safeguards or claim validation that cannot be performed.
|
||||
modes:
|
||||
- guided
|
||||
- execute
|
||||
- recovery
|
||||
defaultMode: execute
|
||||
autonomy:
|
||||
min: implement
|
||||
max: repair
|
||||
default: repair
|
||||
inputs:
|
||||
- key: targetVersion
|
||||
label: Target version
|
||||
description: Provide the semantic version or release identifier being prepared.
|
||||
type: string
|
||||
required: true
|
||||
sensitive: false
|
||||
includeInOutput: true
|
||||
- key: releaseScope
|
||||
label: Release scope
|
||||
description: Describe included features, fixes, migrations and explicit exclusions.
|
||||
type: multiline
|
||||
required: true
|
||||
sensitive: false
|
||||
includeInOutput: true
|
||||
compatibility:
|
||||
repositoryRequired: true
|
||||
languages: []
|
||||
frameworks: []
|
||||
packageManagers: []
|
||||
databases: []
|
||||
deploymentTypes: []
|
||||
requiredProfileCapabilities:
|
||||
- build-command
|
||||
incompatibleConditions: []
|
||||
guardrails:
|
||||
- id: guardrail-1
|
||||
severity: blocking
|
||||
text: Do not tag, push, publish or deploy without explicit authorization.
|
||||
- id: guardrail-2
|
||||
severity: blocking
|
||||
text: Do not hide failing checks or unresolved migration and security blockers.
|
||||
- id: guardrail-3
|
||||
severity: blocking
|
||||
text: Preserve a complete evidence trail for the exact candidate commit.
|
||||
workflow:
|
||||
- id: freeze-scope
|
||||
title: Freeze release scope
|
||||
instruction: Identify exact candidate commit, version, included changes, migration state and exclusions.
|
||||
required: true
|
||||
- id: verify-versioning
|
||||
title: Verify versioning
|
||||
instruction: Check package versions, changelog, lockfiles, generated artifacts and compatibility declarations.
|
||||
required: true
|
||||
- id: run-quality
|
||||
title: Run quality gates
|
||||
instruction: Execute formatting, lint, typecheck, tests, build, security and dependency checks.
|
||||
required: true
|
||||
- id: verify-migrations
|
||||
title: Verify migrations
|
||||
instruction: Run preflight, upgrade and rollback-limit checks on representative data when applicable.
|
||||
required: true
|
||||
- id: clean-room
|
||||
title: Run clean-room validation
|
||||
instruction: Build and launch from a fresh checkout using documented deployment steps.
|
||||
required: true
|
||||
- id: verify-user-flows
|
||||
title: Verify critical flows
|
||||
instruction: Exercise representative browser/API/operational smoke flows.
|
||||
required: true
|
||||
- id: assemble-evidence
|
||||
title: Assemble release evidence
|
||||
instruction: Produce acceptance matrix, blockers, artifacts, checksums and release notes.
|
||||
required: true
|
||||
- id: release-decision
|
||||
title: Make release decision
|
||||
instruction: State ready, conditionally ready or blocked without performing publication.
|
||||
required: true
|
||||
validation:
|
||||
commandRoles:
|
||||
- format-check
|
||||
- lint
|
||||
- typecheck
|
||||
- unit-test
|
||||
- integration-test
|
||||
- end-to-end-test
|
||||
- build
|
||||
- smoke-test
|
||||
- security-scan
|
||||
- dependency-audit
|
||||
checks:
|
||||
- id: check-1
|
||||
type: assertion
|
||||
description: All release gates are tied to the exact candidate commit.
|
||||
blocking: true
|
||||
evidence: Referenced files, command results or explicit review notes.
|
||||
- id: check-2
|
||||
type: assertion
|
||||
description: The final decision lists every blocker, exception and unverified area.
|
||||
blocking: true
|
||||
evidence: Referenced files, command results or explicit review notes.
|
||||
- id: command-format-check
|
||||
type: command
|
||||
description: Run the resolved format-check command when the repository profile provides it and record the result.
|
||||
blocking: true
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
- id: command-lint
|
||||
type: command
|
||||
description: Run the resolved lint command when the repository profile provides it and record the result.
|
||||
blocking: true
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
- id: command-typecheck
|
||||
type: command
|
||||
description: Run the resolved typecheck command when the repository profile provides it and record the result.
|
||||
blocking: true
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
- id: command-unit-test
|
||||
type: command
|
||||
description: Run the resolved unit-test command when the repository profile provides it and record the result.
|
||||
blocking: true
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
- id: command-integration-test
|
||||
type: command
|
||||
description: Run the resolved integration-test command when the repository profile provides it and record the result.
|
||||
blocking: true
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
- id: command-end-to-end-test
|
||||
type: command
|
||||
description: Run the resolved end-to-end-test command when the repository profile provides it and record the result.
|
||||
blocking: true
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
- id: command-build
|
||||
type: command
|
||||
description: Run the resolved build command when the repository profile provides it and record the result.
|
||||
blocking: true
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
- id: command-smoke-test
|
||||
type: command
|
||||
description: Run the resolved smoke-test command when the repository profile provides it and record the result.
|
||||
blocking: true
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
- id: command-security-scan
|
||||
type: command
|
||||
description: Run the resolved security-scan command when the repository profile provides it and record the result.
|
||||
blocking: false
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
- id: command-dependency-audit
|
||||
type: command
|
||||
description: Run the resolved dependency-audit command when the repository profile provides it and record the result.
|
||||
blocking: false
|
||||
evidence: Resolved command, exit status and concise result summary.
|
||||
completion:
|
||||
criteria:
|
||||
- All release gates have evidence.
|
||||
- Known limitations and rollback notes are published.
|
||||
- Validation evidence and unresolved limitations are reported honestly.
|
||||
failurePolicy:
|
||||
onValidationFailure: Investigate failures caused by the current work, repair them when they remain within scope, rerun
|
||||
affected validation and report any genuine blocker without claiming success.
|
||||
onAmbiguity: Use repository evidence and existing conventions for minor reversible choices. Preserve current behavior
|
||||
and stop before any material irreversible decision that the specification does not resolve.
|
||||
onMissingContext: Inspect the repository for missing non-sensitive context. Never invent commands, credentials, production
|
||||
behavior or validation results; report what remains unavailable.
|
||||
onOutOfScopeCause: Explain the evidenced out-of-scope cause, avoid unrelated changes and provide the smallest safe follow-up
|
||||
recommendation.
|
||||
onExternalDependencyUnavailable: Use an approved local substitute or fixture only when it preserves the behavior under
|
||||
test. Otherwise record the blocked validation and do not claim the external path succeeded.
|
||||
onUnableToReproduce: Record attempted reproduction, environment and observed evidence. Do not apply speculative production
|
||||
changes; provide the narrowest next diagnostic action.
|
||||
reporting:
|
||||
sections:
|
||||
- id: outcome
|
||||
title: Outcome
|
||||
required: true
|
||||
description: State the delivered result or audit conclusion without overstating evidence.
|
||||
- id: evidence
|
||||
title: Evidence and scope
|
||||
required: true
|
||||
description: List inspected or changed areas and the evidence supporting the result.
|
||||
- id: validation
|
||||
title: Validation
|
||||
required: true
|
||||
description: Report commands, manual checks and their actual outcomes.
|
||||
- id: risks
|
||||
title: Risks and limitations
|
||||
required: true
|
||||
description: State residual risk, inaccessible evidence and untested conditions.
|
||||
- id: follow-up
|
||||
title: Recommended follow-up
|
||||
required: true
|
||||
description: List the smallest useful next actions or state None.
|
||||
template:
|
||||
main: prompt.md
|
||||
partials: []
|
||||
exports:
|
||||
prompt: true
|
||||
markdown: true
|
||||
runPack: true
|
||||
agentsSuggestion: false
|
||||
quality:
|
||||
reviewStatus: editorial-reviewed
|
||||
testedStacks: []
|
||||
knownLimitations:
|
||||
- Repository-specific effectiveness depends on the accuracy of the selected profile and the evidence available to Codex.
|
||||
evaluationCaseIds:
|
||||
- release-candidate-prep.static-structure
|
||||
Reference in New Issue
Block a user