diff --git a/docs/presentations/README.md b/docs/presentations/README.md
index 9b18fed..e17c6bc 100644
--- a/docs/presentations/README.md
+++ b/docs/presentations/README.md
@@ -155,6 +155,7 @@ docs/presentations/
└── assets/
├── puppeteer-config.json ← no-sandbox config for mmdc
├── mmd/ ← mermaid source files (Step 2 input)
+ │ ├── sp-theme.json ← S&P Red/Black/White theme (mermaid-cli --configFile)
│ ├── platform-works-01-contract-driven.mmd
│ ├── platform-works-02-end-to-end-flow.mmd
│ ├── platform-works-03-scope-boundary.mmd
@@ -256,12 +257,18 @@ for f in mmd/*.mmd; do
PUPPETEER_EXECUTABLE_PATH=/root/.cache/ms-playwright/chromium-1217/chrome-linux64/chrome \
npx --yes @mermaid-js/mermaid-cli@latest \
-i "$f" -o "png/$name.png" \
- -p puppeteer-config.json -s 2 -b transparent
+ -p puppeteer-config.json -s 2 -b transparent \
+ --configFile mmd/sp-theme.json
done
```
The `puppeteer-config.json` passes `--no-sandbox` to the headless browser
-(required when running as root in this environment).
+(required when running as root in this environment). The `--configFile
+mmd/sp-theme.json` applies the S&P Global Red/Black/White theme (dark
+`#1B1B1B` accent nodes with `#D6002A` red borders, white supporting nodes,
+`#F0F0F0` subgraph backgrounds). Each `.mmd` file also carries the same
+theme inline via a `%%{init:...}%%` block so it renders correctly even
+without the `--configFile` flag.
### Export a Marp deck to HTML (committed to repo)
diff --git a/docs/presentations/assets/mmd/developer-experience-01b-scope-boundary.mmd b/docs/presentations/assets/mmd/developer-experience-01b-scope-boundary.mmd
index f11f8e5..aadbc56 100644
--- a/docs/presentations/assets/mmd/developer-experience-01b-scope-boundary.mmd
+++ b/docs/presentations/assets/mmd/developer-experience-01b-scope-boundary.mmd
@@ -1,3 +1,5 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart LR
subgraph UP ["Upstream — anything"]
direction TB
@@ -18,4 +20,8 @@ flowchart LR
C --> D
C --> E
D --> F
- F --> G
\ No newline at end of file
+ F --> G
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+class C,D,E accent
+
diff --git a/docs/presentations/assets/mmd/developer-experience-02-what-dev-does.mmd b/docs/presentations/assets/mmd/developer-experience-02-what-dev-does.mmd
index 92aa160..92736b9 100644
--- a/docs/presentations/assets/mmd/developer-experience-02-what-dev-does.mmd
+++ b/docs/presentations/assets/mmd/developer-experience-02-what-dev-does.mmd
@@ -1,5 +1,11 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart LR
A["1. App code
(top level of the repo)"] --> D["Push to main"]
- B["2. Contract
(.acdl/contract.yaml)"] --> D
+ B["2. Contract
(.acdl/contract.yml)"] --> D
C["3. CI definition
(.github/workflows/deploy.yml
— one 'uses:' line)"] --> D
- D --> E["Platform does the rest"]
\ No newline at end of file
+ D --> E["Platform does the rest"]
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+class E accent
+
diff --git a/docs/presentations/assets/mmd/developer-experience-03-no-cloning.mmd b/docs/presentations/assets/mmd/developer-experience-03-no-cloning.mmd
index 1c52292..ed65a63 100644
--- a/docs/presentations/assets/mmd/developer-experience-03-no-cloning.mmd
+++ b/docs/presentations/assets/mmd/developer-experience-03-no-cloning.mmd
@@ -1,6 +1,12 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart LR
A["Consumer repo
app + contract + 'uses:'"] -->|triggers on push to main| B["Platform runner"]
B -->|checks out the consumer repo| A
B -->|checks out the ACDL platform repo
into the workspace| C["Platform code
(modules, adapters, schemas)"]
C --> B
- B -->|runs the pipeline against
the consumer's contract| D["Consumer's resources in AWS"]
\ No newline at end of file
+ B -->|runs the pipeline against
the consumer's contract| D["Consumer's resources in AWS"]
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+class B,C accent
+
diff --git a/docs/presentations/assets/mmd/developer-experience-04-promotion-journey.mmd b/docs/presentations/assets/mmd/developer-experience-04-promotion-journey.mmd
index 4981816..c0b84f7 100644
--- a/docs/presentations/assets/mmd/developer-experience-04-promotion-journey.mmd
+++ b/docs/presentations/assets/mmd/developer-experience-04-promotion-journey.mmd
@@ -1,3 +1,5 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart LR
A["dev\n≥ 0.50\nautonomous"] -->|promotion| B["qa\n≥ 0.75\nQA attests"]
B -->|promotion| C["prod\n≥ 0.90\nSRE attests"]
@@ -5,4 +7,7 @@ flowchart LR
A -.->|"Testing\n(pilot-ready)"| A
B -.->|"Planned"| B
C -.->|"Planned"| C
- D -.->|"Planned"| D
\ No newline at end of file
+ D -.->|"Planned"| D
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+
diff --git a/docs/presentations/assets/mmd/platform-works-01-contract-driven.mmd b/docs/presentations/assets/mmd/platform-works-01-contract-driven.mmd
index ecbc9a5..54bb7d1 100644
--- a/docs/presentations/assets/mmd/platform-works-01-contract-driven.mmd
+++ b/docs/presentations/assets/mmd/platform-works-01-contract-driven.mmd
@@ -1,3 +1,9 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart LR
A["Consumer
writes a contract"] --> B["Platform resolves,
compiles, checks,
deploys, records"]
- B --> C["Resources running in AWS
+ tamper-evident evidence"]
\ No newline at end of file
+ B --> C["Resources running in AWS
+ tamper-evident evidence"]
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+class B accent
+
diff --git a/docs/presentations/assets/mmd/platform-works-02-end-to-end-flow.mmd b/docs/presentations/assets/mmd/platform-works-02-end-to-end-flow.mmd
index 194e015..0bfa35c 100644
--- a/docs/presentations/assets/mmd/platform-works-02-end-to-end-flow.mmd
+++ b/docs/presentations/assets/mmd/platform-works-02-end-to-end-flow.mmd
@@ -1,3 +1,5 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart TD
subgraph R1 [" "]
direction LR
@@ -7,4 +9,8 @@ flowchart TD
direction LR
F["Policy
checks"] --> G["Confidence
signal"] --> H["Evidence
event"] --> I["Infrastructure
apply"]
end
- E --> F
\ No newline at end of file
+ E --> F
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+class C,D,E,G,H accent
+
diff --git a/docs/presentations/assets/mmd/platform-works-03-scope-boundary.mmd b/docs/presentations/assets/mmd/platform-works-03-scope-boundary.mmd
index e4fa375..0551c04 100644
--- a/docs/presentations/assets/mmd/platform-works-03-scope-boundary.mmd
+++ b/docs/presentations/assets/mmd/platform-works-03-scope-boundary.mmd
@@ -1,3 +1,5 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart LR
subgraph UP ["Upstream — anything"]
direction TB
@@ -22,4 +24,8 @@ flowchart LR
E --> F
E --> G
F --> H
- H --> I
\ No newline at end of file
+ H --> I
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+class D,E,F,G accent
+
diff --git a/docs/presentations/assets/mmd/platform-works-04-confidence-signal.mmd b/docs/presentations/assets/mmd/platform-works-04-confidence-signal.mmd
index 8a9d8b2..cebe7f6 100644
--- a/docs/presentations/assets/mmd/platform-works-04-confidence-signal.mmd
+++ b/docs/presentations/assets/mmd/platform-works-04-confidence-signal.mmd
@@ -1,3 +1,5 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart LR
subgraph IN ["6 weighted inputs"]
direction TB
@@ -12,4 +14,8 @@ flowchart LR
G --> H{"Threshold\ngate"}
H -->|Meets threshold| I["Proceed"]
H -->|Below threshold| J["Halt +\nexplainable reason"]
- H -->|Critical finding| J
\ No newline at end of file
+ H -->|Critical finding| J
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+class G,H,J accent
+
diff --git a/docs/presentations/assets/mmd/platform-works-05-attestation-flow.mmd b/docs/presentations/assets/mmd/platform-works-05-attestation-flow.mmd
index 446c750..3eee146 100644
--- a/docs/presentations/assets/mmd/platform-works-05-attestation-flow.mmd
+++ b/docs/presentations/assets/mmd/platform-works-05-attestation-flow.mmd
@@ -1,3 +1,5 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart LR
A["Deployment arrives\nat env gate"] --> B["Confidence signal\ncomputed"]
B --> C{"Meets\nthreshold?"}
@@ -10,4 +12,8 @@ flowchart LR
H -->|Reject| J["Halt — rejection\nextends audit chain"]
I --> K["Deployment\nproceeds"]
F --> K
- K --> L["Evidence written\nRPO=0"]
\ No newline at end of file
+ K --> L["Evidence written\nRPO=0"]
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+class C,E,I,K,L accent
+
diff --git a/docs/presentations/assets/mmd/road-to-north-star.mmd b/docs/presentations/assets/mmd/road-to-north-star.mmd
index b2faead..0a1ce70 100644
--- a/docs/presentations/assets/mmd/road-to-north-star.mmd
+++ b/docs/presentations/assets/mmd/road-to-north-star.mmd
@@ -1,3 +1,5 @@
+%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#1B1B1B", "primaryBorderColor": "#D6002A", "primaryTextColor": "#fff", "secondaryColor": "#fff", "secondaryBorderColor": "#D6002A", "secondaryTextColor": "#1B1B1B", "tertiaryColor": "#F0F0F0", "clusterBkg": "#F0F0F0", "lineColor": "#1B1B1B", "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"}}}%%
+
flowchart LR
A["v1.0\nDEMO\ncomplete"] --> B["v1.1–v1.8\nPLATFORM BUILD\ncomplete"]
B --> C["v1.9\nPRESENTATIONS + PATCHES\ncomplete"]
@@ -8,4 +10,8 @@ flowchart LR
B -.->|"IR + OIDC + ABAC +\nmodule catalog +\nencryption + decommission"| B
C -.->|"10-slide decks +\ntalking points +\nS&P theme"| C
D -.->|"proposed phasing\nnot formally planned"| D
- E -.->|"proposed phasing\nnot formally planned"| E
\ No newline at end of file
+ E -.->|"proposed phasing\nnot formally planned"| E
+classDef accent fill:#1B1B1B,color:#fff,stroke:#D6002A,stroke-width:2px
+classDef supporting fill:#fff,color:#1B1B1B,stroke:#D6002A,stroke-width:1px
+class F accent
+
diff --git a/docs/presentations/assets/mmd/sp-theme.json b/docs/presentations/assets/mmd/sp-theme.json
new file mode 100644
index 0000000..ce08fc7
--- /dev/null
+++ b/docs/presentations/assets/mmd/sp-theme.json
@@ -0,0 +1,15 @@
+{
+ "theme": "base",
+ "themeVariables": {
+ "primaryColor": "#1B1B1B",
+ "primaryBorderColor": "#D6002A",
+ "primaryTextColor": "#fff",
+ "secondaryColor": "#fff",
+ "secondaryBorderColor": "#D6002A",
+ "secondaryTextColor": "#1B1B1B",
+ "tertiaryColor": "#F0F0F0",
+ "clusterBkg": "#F0F0F0",
+ "lineColor": "#1B1B1B",
+ "fontFamily": "\"Akkurat Pro\", \"Helvetica Neue\", \"Arial\", sans-serif"
+ }
+}
\ No newline at end of file
diff --git a/docs/presentations/assets/png/developer-experience-01b-scope-boundary.png b/docs/presentations/assets/png/developer-experience-01b-scope-boundary.png
index ca26e43..32eb3aa 100644
Binary files a/docs/presentations/assets/png/developer-experience-01b-scope-boundary.png and b/docs/presentations/assets/png/developer-experience-01b-scope-boundary.png differ
diff --git a/docs/presentations/assets/png/developer-experience-02-what-dev-does.png b/docs/presentations/assets/png/developer-experience-02-what-dev-does.png
index 39ce66c..a6ffd5a 100644
Binary files a/docs/presentations/assets/png/developer-experience-02-what-dev-does.png and b/docs/presentations/assets/png/developer-experience-02-what-dev-does.png differ
diff --git a/docs/presentations/assets/png/developer-experience-03-no-cloning.png b/docs/presentations/assets/png/developer-experience-03-no-cloning.png
index 97c9872..adf58a8 100644
Binary files a/docs/presentations/assets/png/developer-experience-03-no-cloning.png and b/docs/presentations/assets/png/developer-experience-03-no-cloning.png differ
diff --git a/docs/presentations/assets/png/developer-experience-04-promotion-journey.png b/docs/presentations/assets/png/developer-experience-04-promotion-journey.png
index 152b2f9..88ea3ff 100644
Binary files a/docs/presentations/assets/png/developer-experience-04-promotion-journey.png and b/docs/presentations/assets/png/developer-experience-04-promotion-journey.png differ
diff --git a/docs/presentations/assets/png/platform-works-01-contract-driven.png b/docs/presentations/assets/png/platform-works-01-contract-driven.png
index 21629ea..d9b0b6c 100644
Binary files a/docs/presentations/assets/png/platform-works-01-contract-driven.png and b/docs/presentations/assets/png/platform-works-01-contract-driven.png differ
diff --git a/docs/presentations/assets/png/platform-works-02-end-to-end-flow.png b/docs/presentations/assets/png/platform-works-02-end-to-end-flow.png
index 534fd49..0d5cd35 100644
Binary files a/docs/presentations/assets/png/platform-works-02-end-to-end-flow.png and b/docs/presentations/assets/png/platform-works-02-end-to-end-flow.png differ
diff --git a/docs/presentations/assets/png/platform-works-03-scope-boundary.png b/docs/presentations/assets/png/platform-works-03-scope-boundary.png
index 218fe6d..0940889 100644
Binary files a/docs/presentations/assets/png/platform-works-03-scope-boundary.png and b/docs/presentations/assets/png/platform-works-03-scope-boundary.png differ
diff --git a/docs/presentations/assets/png/platform-works-04-confidence-signal.png b/docs/presentations/assets/png/platform-works-04-confidence-signal.png
index 56832ba..8e829d3 100644
Binary files a/docs/presentations/assets/png/platform-works-04-confidence-signal.png and b/docs/presentations/assets/png/platform-works-04-confidence-signal.png differ
diff --git a/docs/presentations/assets/png/platform-works-05-attestation-flow.png b/docs/presentations/assets/png/platform-works-05-attestation-flow.png
index 15d210f..5d1cc84 100644
Binary files a/docs/presentations/assets/png/platform-works-05-attestation-flow.png and b/docs/presentations/assets/png/platform-works-05-attestation-flow.png differ
diff --git a/docs/presentations/assets/png/road-to-north-star.png b/docs/presentations/assets/png/road-to-north-star.png
index e143424..ffcda60 100644
Binary files a/docs/presentations/assets/png/road-to-north-star.png and b/docs/presentations/assets/png/road-to-north-star.png differ
diff --git a/docs/presentations/how-the-platform-works-marp.md b/docs/presentations/how-the-platform-works-marp.md
index 9844538..ce98255 100644
--- a/docs/presentations/how-the-platform-works-marp.md
+++ b/docs/presentations/how-the-platform-works-marp.md
@@ -45,7 +45,7 @@ section.title h3 { color: #F0F0F0; font-weight: 400; font-size: 22px; margin-top
# The Problem & The North Star
-Story beat: Here's the problem we're solving and where we're going.
+Here's the problem we're solving and where we're going.
Four frictions slow every team:
@@ -64,7 +64,7 @@ Four frictions slow every team:
# Where ACDL Sits in Your World
-Story beat: Now that we know the problem, here's where ACDL fits — and where it doesn't.
+Now that we know the problem, here's where ACDL fits — and where it doesn't.

@@ -77,7 +77,7 @@ Four frictions slow every team:
# The Contract-Driven Model
-Story beat: The contract is the boundary between upstream and ACDL. It's all a consumer writes.
+The contract is the boundary between upstream and ACDL. It's all a consumer writes.
A single YAML contract — **module, environment, inputs**. The platform owns everything else.
@@ -92,7 +92,7 @@ A single YAML contract — **module, environment, inputs**. The platform owns ev
# The End-to-End Flow
-Story beat: Once the contract is written, here's what the platform does with it — every time.
+Once the contract is written, here's what the platform does with it — every time.
Every deployment runs the same stages, in the same order, with the same checks — no team-specific pipelines, no tribal runbooks.
@@ -105,7 +105,7 @@ Every deployment runs the same stages, in the same order, with the same checks
# Zero-Trust by Default
-Story beat: Before any infrastructure is created, here's how access is scoped.
+Before any infrastructure is created, here's how access is scoped.
Consumer repositories hold **no long-lived cloud credentials.** Ever.
@@ -120,7 +120,7 @@ Consumer repositories hold **no long-lived cloud credentials.** Ever.
# Safety is Computed, Not Assumed
-Story beat: Now let's look at how the platform decides whether a deployment is safe.
+Now let's look at how the platform decides whether a deployment is safe.
Every delivery action produces a **measurable, explainable confidence signal** — a weighted sum of observable facts, not a black box. Agentic
@@ -141,7 +141,7 @@ Every delivery action produces a **measurable, explainable confidence signal**
# Security by Construction
-Story beat: Beyond the confidence signal, security defaults are on by construction — not by opt-in.
+Beyond the confidence signal, security defaults are on by construction — not by opt-in.
Security defaults that **do not require a team to opt in.** Checks run on **every** deployment, normalized to a single schema. Testing
@@ -154,7 +154,7 @@ Security defaults that **do not require a team to opt in.** Checks run on **ever
# Accountability & Audit
-Story beat: Computed safety handles the gate. But humans still matter — here's how accountability works.
+Computed safety handles the gate. But humans still matter — here's how accountability works.

@@ -171,7 +171,7 @@ Security defaults that **do not require a team to opt in.** Checks run on **ever
# Testing vs. Planned
-Story beat: Let's be honest about what works today and what's on the roadmap.
+Let's be honest about what works today and what's on the roadmap.
\n