Controlled Delivery Pipeline and Release Evidence
Agent-Assisted Engineering Check
Prerequisites
Day 80 approved review packet; Ticket 24 CI practice runner.
Learning Objective
Run the clean-install and controlled-deployment pipeline stages for the approved change and capture machine-verifiable release evidence instead of screenshots of commands.
Instructions
1. Package and verify: python3 scripts/ci_practice_runner.py --stage clean_install --json — the runner copies projects/text_tools into a pristine sandbox, creates input data, and executes the CLI end-to-end.
2. Inspect the evidence payload: stage clean_install success=true, returncode==0, valid JSON stats output (total_chars, total_tokens, vocab_size).
3. Understand the delivery model: versioned release directories behind a symlink flip (blue/green-style), so rollback is a pointer change, not a rebuild.
4. Note the authorization boundary: this pipeline proves the artifact locally; pushing to a shared remote, real deployment, and any paid infrastructure still require explicit separate authorization.
Practice & Prediction Log
Save the stage output to release_evidence.json and annotate: artifact path, exit code, the health-check command used, and why symlink-based versioned releases make rollback cheap.
Evidence is the emitted JSON and exit codes — not 'it looked green in the terminal'.
python3 scripts/ci_practice_runner.py --stage clean_install --json > release_evidence.json
# stage clean_install: success=true, packaged artifact executed with returncode 0
# versioned dirs releases/1.0.0 + releases/1.1.0 behind a 'current' symlink: rollback = re-point symlink + health check
Produce a repeatable, machine-verifiable release record for an approved change.
Authoritative Source Resources & Provenance
GitHub Actions Documentation
Relevant Section / Range: N/A
Verified Version & Date: GitHub Docs continuous publication (Verified: 2026-10-30)
Primary reference for pipeline stages, required status checks, and branch protection mechanics that the local CI practice runner mirrors in a disposable environment.
YAML familiarity, shell commands, and Git hosting vocabulary.
Pipeline stage semantics (lint, test, package, deploy gate) are exercised offline by scripts/ci_practice_runner.py; no GitHub account or push authorization is required for the practice.
Compared Candidate Sources & Selection Analysis (2)
Equivalent pipeline concepts under a different provider; GitHub Actions matches the hosted-workflow conventions used in this project's delivery story.
Self-hosted CI server documentation; GitHub Actions better matches the hosted pipeline model the learner will meet first.
Site Reliability Engineering, Chapter 8: Release Engineering
Relevant Section / Range: Continuous Build and Deployment (Building, Branching, Testing, Packaging, Deployment)
Verified Version & Date: O'Reilly 2016 free web edition (Verified: 2026-10-30)
Widely used industry reference for hermetic builds, release approval gates, and rollback-ready deployment doctrine that anchor Day 81's controlled delivery and verified rollback exercises.
Build and deployment vocabulary; version control basics.
The controlled delivery and rollback runbook is fully executable offline via the scripts/ci_practice_runner.py deploy stage, which emits recorded evidence payloads.
Compared Candidate Sources & Selection Analysis (2)
Focused single-pattern bliki on blue/green cutover; the SRE chapter covers the wider release-engineering lifecycle including build hermeticity and rollback policy.
Foundational paid text on deployment pipelines; the SRE web edition provides equivalent operational doctrine at zero cost with a stable public URL.