docs(milestone): complete v1.12 — Presentation Refinement (tag v1.12.0)
--- ci--- project: acdl phase: 0 milestone: v1.12 status: complete requirements: covered: [REQ-129, REQ-130, REQ-134, REQ-131, REQ-132, REQ-133] partial: [] --- /ci--- Milestone v1.12 complete. All 6 requirements satisfied: - REQ-129: adapter dedup defect fixed (CAP-013 Verified). - REQ-130: 2 regression-probe bugs fixed (CAP-017/018). - REQ-134: lifecycle tests plan-only default + ACDL_LIFECYCLE_MODE flag. - REQ-131: decks match CAPABILITY_INVENTORY.md (22/22 Verified, zero stale claims except the honest 'v1.10 status is closed' disclosure). - REQ-132: decks reflect v1.11 architecture + roadmap (v1.10 no longer NEXT); version refs bumped to @v1.12. - REQ-133: A6 (real cost figures + pre-mortem) + A7 (stateless adapter + lifecycle pipeline); HTML re-rendered; PPTX exported for the release. Verification: 522 tests pass; 22/22 capabilities Verified (D-091); run_platform.sh --check-only green; run_ci.sh green; ci-doc-verifier grep clean; multi-persona review clean (P1 remediated). ROADMAP.md v1.12 section added; v1.11 marked complete; config.json status -> complete, ship_tag v1.12.0. Version refs @v1.11 -> @v1.12 (decks re-rendered). PPTX in /tmp/v1.12-release/ for the Gitea upload.
This commit is contained in:
@@ -109,7 +109,7 @@ Developers see **what the platform is doing**, in real time. <span class="badge
|
||||
|
||||
Consumers control **when** they absorb platform improvements. <span class="badge testing">Testing</span>
|
||||
|
||||
- **Floating MAJOR + MINOR tags** (e.g. `@v1.11`) — a consumer automatically receives patch updates within the line
|
||||
- **Floating MAJOR + MINOR tags** (e.g. `@v1.12`) — a consumer automatically receives patch updates within the line
|
||||
- **Semantic versioning with a clear contract:** interface → MAJOR, behavior → MINOR, lifecycle → PATCH
|
||||
- **A consumer can pin to an exact version** for maximum stability, or float on MAJOR only (`@v1`) to absorb new features on their own cadence
|
||||
- **Unversioned references (`@main`, bare) are discouraged** — the versioned tag is the only immutability lever
|
||||
@@ -153,11 +153,11 @@ The contract is environment-agnostic. The platform raises the bar automatically.
|
||||
```yaml
|
||||
jobs:
|
||||
dev:
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with: { contract: .acdl/contract.yml, environment: dev }
|
||||
qa:
|
||||
needs: dev
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with: { contract: .acdl/contract.yml, environment: qa }
|
||||
```
|
||||
|
||||
@@ -169,11 +169,11 @@ jobs:
|
||||
```yaml
|
||||
jobs:
|
||||
dev:
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with: { contract: .acdl/contract-dev.yaml }
|
||||
qa:
|
||||
needs: dev
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with: { contract: .acdl/contract-qa.yaml }
|
||||
```
|
||||
|
||||
@@ -197,7 +197,7 @@ td { font-size: 14px; }
|
||||
Tearing down a stack is **as deliberate as deploying one.** <span class="badge testing">Testing</span>
|
||||
|
||||
```yaml
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with:
|
||||
contract: .acdl/contract.yml
|
||||
mode: decommission
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
|
||||
**Talking points:**
|
||||
- This is the "no surprise upgrades" story — consumers aren't forced to chase the platform, and the platform isn't forced to support N forks of every workflow
|
||||
- Floating MAJOR + MINOR tags (e.g. `@v1.11`) — a consumer automatically receives patch updates within the line. Pin to exact version for stability, or float on MAJOR only for new features
|
||||
- Floating MAJOR + MINOR tags (e.g. `@v1.12`) — a consumer automatically receives patch updates within the line. Pin to exact version for stability, or float on MAJOR only for new features
|
||||
- Semantic versioning with a clear contract: interface → MAJOR, behavior → MINOR, lifecycle → PATCH
|
||||
- Unversioned references (`@main`, bare) are discouraged — the versioned tag is the only immutability lever a consumer has
|
||||
- The automated release job computes the next semver on merge to main, creates the tag, and updates the floating tags — no manual release process
|
||||
|
||||
@@ -307,7 +307,7 @@ em.story { color: #6B7280; font-size: 16px; font-style: italic; }
|
||||
<p><em class="story">You control when you absorb platform improvements — no surprise upgrades.</em></p>
|
||||
<p>Consumers control <strong>when</strong> they absorb platform improvements. <span class="badge testing">Testing</span></p>
|
||||
<ul>
|
||||
<li><strong>Floating MAJOR + MINOR tags</strong> (e.g. <code>@v1.11</code>) — a consumer automatically receives patch updates within the line</li>
|
||||
<li><strong>Floating MAJOR + MINOR tags</strong> (e.g. <code>@v1.12</code>) — a consumer automatically receives patch updates within the line</li>
|
||||
<li><strong>Semantic versioning with a clear contract:</strong> interface → MAJOR, behavior → MINOR, lifecycle → PATCH</li>
|
||||
<li><strong>A consumer can pin to an exact version</strong> for maximum stability, or float on MAJOR only (<code>@v1</code>) to absorb new features on their own cadence</li>
|
||||
<li><strong>Unversioned references (<code>@main</code>, bare) are discouraged</strong> — the versioned tag is the only immutability lever</li>
|
||||
@@ -435,11 +435,11 @@ em.story { color: #6B7280; font-size: 16px; font-style: italic; }
|
||||
<p><strong>Approach A — One contract, one job per environment.</strong> Environment passed by each job.</p>
|
||||
<pre is="marp-pre" data-auto-scaling="downscale-only"><code class="language-yaml"><span class="hljs-attr">jobs:</span>
|
||||
<span class="hljs-attr">dev:</span>
|
||||
<span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.11</span>
|
||||
<span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.12</span>
|
||||
<span class="hljs-attr">with:</span> { <span class="hljs-attr">contract:</span> <span class="hljs-string">.acdl/contract.yml</span>, <span class="hljs-attr">environment:</span> <span class="hljs-string">dev</span> }
|
||||
<span class="hljs-attr">qa:</span>
|
||||
<span class="hljs-attr">needs:</span> <span class="hljs-string">dev</span>
|
||||
<span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.11</span>
|
||||
<span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.12</span>
|
||||
<span class="hljs-attr">with:</span> { <span class="hljs-attr">contract:</span> <span class="hljs-string">.acdl/contract.yml</span>, <span class="hljs-attr">environment:</span> <span class="hljs-string">qa</span> }
|
||||
</code></pre>
|
||||
</td>
|
||||
@@ -447,11 +447,11 @@ em.story { color: #6B7280; font-size: 16px; font-style: italic; }
|
||||
<p><strong>Approach B — Environment-specific contracts.</strong> When inputs differ per environment.</p>
|
||||
<pre is="marp-pre" data-auto-scaling="downscale-only"><code class="language-yaml"><span class="hljs-attr">jobs:</span>
|
||||
<span class="hljs-attr">dev:</span>
|
||||
<span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.11</span>
|
||||
<span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.12</span>
|
||||
<span class="hljs-attr">with:</span> { <span class="hljs-attr">contract:</span> <span class="hljs-string">.acdl/contract-dev.yaml</span> }
|
||||
<span class="hljs-attr">qa:</span>
|
||||
<span class="hljs-attr">needs:</span> <span class="hljs-string">dev</span>
|
||||
<span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.11</span>
|
||||
<span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.12</span>
|
||||
<span class="hljs-attr">with:</span> { <span class="hljs-attr">contract:</span> <span class="hljs-string">.acdl/contract-qa.yaml</span> }
|
||||
</code></pre>
|
||||
</td>
|
||||
@@ -510,7 +510,7 @@ em.story { color: #6B7280; font-size: 16px; font-style: italic; }
|
||||
<h1 id="safe-decommission">Safe Decommission</h1>
|
||||
<p><em class="story">Tearing down is as deliberate as deploying — and just as gated.</em></p>
|
||||
<p>Tearing down a stack is <strong>as deliberate as deploying one.</strong> <span class="badge testing">Testing</span></p>
|
||||
<pre is="marp-pre" data-auto-scaling="downscale-only"><code class="language-yaml"><span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.11</span>
|
||||
<pre is="marp-pre" data-auto-scaling="downscale-only"><code class="language-yaml"><span class="hljs-attr">uses:</span> <span class="hljs-string">acdl/.github/workflows/deploy.yml@v1.12</span>
|
||||
<span class="hljs-attr">with:</span>
|
||||
<span class="hljs-attr">contract:</span> <span class="hljs-string">.acdl/contract.yml</span>
|
||||
<span class="hljs-attr">mode:</span> <span class="hljs-string">decommission</span>
|
||||
|
||||
@@ -118,7 +118,7 @@ You control when you absorb platform improvements — no surprise upgrades.
|
||||
|
||||
Consumers control **when** they absorb platform improvements. <span class="badge testing">Testing</span>
|
||||
|
||||
- **Floating MAJOR + MINOR tags** (e.g. `@v1.11`) — a consumer automatically receives patch updates within the line.
|
||||
- **Floating MAJOR + MINOR tags** (e.g. `@v1.12`) — a consumer automatically receives patch updates within the line.
|
||||
- **Semantic versioning with a clear contract:** interface → MAJOR, behavior → MINOR, lifecycle → PATCH.
|
||||
- **A consumer can pin to an exact version** for maximum stability, or float on MAJOR only (`@v1`) to absorb new features on their own cadence.
|
||||
- **Unversioned references (`@main`, bare) are discouraged** — the versioned tag is the only immutability lever a consumer has.
|
||||
@@ -167,11 +167,11 @@ flowchart LR
|
||||
```yaml
|
||||
jobs:
|
||||
dev:
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with: { contract: .acdl/contract.yml, environment: dev }
|
||||
qa:
|
||||
needs: dev
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with: { contract: .acdl/contract.yml, environment: qa }
|
||||
```
|
||||
|
||||
@@ -180,11 +180,11 @@ jobs:
|
||||
```yaml
|
||||
jobs:
|
||||
dev:
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with: { contract: .acdl/contract-dev.yaml }
|
||||
qa:
|
||||
needs: dev
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with: { contract: .acdl/contract-qa.yaml }
|
||||
```
|
||||
|
||||
@@ -212,7 +212,7 @@ Tearing down is as deliberate as deploying — and just as gated.
|
||||
Tearing down a stack is **as deliberate as deploying one.** <span class="badge testing">Testing</span>
|
||||
|
||||
```yaml
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.11
|
||||
uses: acdl/.github/workflows/deploy.yml@v1.12
|
||||
with:
|
||||
contract: .acdl/contract.yml
|
||||
mode: decommission
|
||||
|
||||
Reference in New Issue
Block a user