Skip to content

docs: align Security badge + blog excerpt with shipped behavior#239

Merged
operatoruplift merged 1 commit intomasterfrom
honesty/security-section-blog-excerpt
Apr 28, 2026
Merged

docs: align Security badge + blog excerpt with shipped behavior#239
operatoruplift merged 1 commit intomasterfrom
honesty/security-section-blog-excerpt

Conversation

@operatoruplift
Copy link
Copy Markdown
Owner

Summary

  • `src/sections/Security.tsx`: replace "AES-256-GCM Encrypted" badge with "Ed25519 Signed Receipts" so the badge matches the receipt-focused card content (rewritten in docs: replace fabricated local-encryption claims on product+security copy #231)
  • `app/blog/posts.ts`: rewrite excerpt for "Local AI vs Cloud AI" so it distinguishes the cloud-routed web app from the desktop+Ollama roadmap, instead of asserting "runs locally" without context

Why

  • The AES-256-GCM badge contradicted the card's actual copy about ed25519-signed receipts on Solana
  • The blog excerpt previously read as "Operator Uplift runs locally today" without acknowledging the web app routes through whichever provider the user picks per turn

Test plan

  • `pnpm check` (4/4: copy-check, capability-check, trust-gate, fabrication-rot-check; 14 rules)
  • `pnpm exec tsc --noEmit` (clean)

src/sections/Security.tsx: replace the "AES-256-GCM Encrypted" badge
on Security card 1 with "Ed25519 Signed Receipts". The card is now
about ed25519-signed receipts anchored on Solana (per #231 rewrite of
features.security), so the AES-256-GCM badge no longer matches the
copy underneath it. The badge should describe what the card actually
proves.

app/blog/posts.ts: rewrite the excerpt for "Local AI vs Cloud AI: The
Privacy Case Nobody's Making". The previous excerpt asserted "When
your AI runs locally, you make the decisions" without any web-app
caveat, which read as "Operator Uplift runs locally today." The new
excerpt distinguishes the present-tense web app (cloud-routed per
turn) from the desktop+Ollama path on the roadmap, and points out
both layers share the approval-gate + signed-receipt primitives.

Continues the honesty positioning sweep that PRs #227-#238 landed.

Verification:
- pnpm check (4/4: copy-check, capability-check, trust-gate,
  fabrication-rot-check, all clean with 14 rules across 197 files)
- pnpm exec tsc --noEmit (clean)
@vercel
Copy link
Copy Markdown

vercel Bot commented Apr 28, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
website Ready Ready Preview, Comment Apr 28, 2026 0:11am

@operatoruplift operatoruplift merged commit b678cc5 into master Apr 28, 2026
4 checks passed
operatoruplift added a commit that referenced this pull request Apr 28, 2026
After the homepage + dashboard + auth + demo + blog honesty sweep
landed across PRs #233-#239, this PR institutionalizes the changes
in two places so they cannot regress silently:

scripts/fabrication-rot-check.mjs:
Add 6 anchored patterns (rules 14-20):

| Pattern | Retired in | Phrase / location |
|---|---|---|
| `vault sealed[^a-zA-Z]+memory encrypted` | #235 | HeroAnimation canvas text |
| `Encrypted on your computer` | #238 | /security page header |
| `Your agent ran locally. Zero cloud. Zero surveillance` | #238 | /demo step-6 |
| `${...} deployed locally` | #238 | /agents/builder toast |
| `AES-256-GCM Encrypted` | #239 | Security card badge |
| `change: ['"]Local, encrypted['"] | 'On your computer'` | #233 | /app dashboard tiles |

tests/e2e/consumer-copy.spec.ts:
Add 8 banned phrases to BANNED_DEV_PHRASES so the existing
consumer-copy regression spec asserts they don't appear in
rendered body text on /, /paywall, /pricing, /store, /login,
/signup. This complements the build-time grep guards with a
runtime check that catches regressions in dynamic content.

Combined regression net for retired local-machine claims:
- 14 fabrication-rot rules (was 10) -> 20 total rules
- 8 banned phrases on consumer-copy.spec.ts asserting against
  rendered body innerText across 5 routes

Verification:
- pnpm check (4/4: copy-check, capability-check, trust-gate,
  fabrication-rot-check; 20 rules across 197 files)
- pnpm exec tsc --noEmit (clean)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant