Launch checklist · content audit

What still needs fixing — and who does it

Layout C is done. Search, chat, and Cloudflare wiring are in place. What remains is mostly post bodies — the words inside each article. Read the blog version for a shareable permalink.

Where problems live

The homepage can look great while individual posts still hurt. These are separate layers.

Layout C (theme) Cards · hero · sidebars ✓ Done Post markdown body src/content/blog/*.md 13 posts need work Reader sees Title + cover + prose Only as good as the body

Published posts audit (22)

9 Clean Ready to ship 4 Thin Stubs / wrong topic 6 HTML-heavy Legacy Jekyll HTML 3 Migration junk Sidebar debris
Clean — proper markdown, headings, readable
Thin — title exists, body is notes or wrong content
HTML-heavy — old <p> / <ul> markup, needs conversion
Migration junk — Chirping layout text baked into the body

Who does what

You Env vars & secrets Cloudflare dashboard DNS redirects hellodk.in → .io Proofread & fiction Your voice only Cover photos Optional frontmatter We (scripts / agent) Restore from backup fix-empty-posts.mjs HTML → markdown Headings & lists Strip junk Migration debris Rewrite thin posts Like dns-explained

Every published post

Post Status Notes
Kubernetes Monitoring Clean Full markdown — no action needed.
pnpm: The Package Manager… Clean Full markdown — no action needed.
Kubernetes Split DNS on Ubuntu 24.04 Clean Full markdown — no action needed.
kri: Fleet Management Platform Clean Full markdown — no action needed.
406 Million Wasted Tokens… Clean Full markdown — no action needed.
GNOME Thumbnails Broke Clean Full markdown — no action needed.
Working with aureport Clean Good structure — optional light edit.
DNS Explained Clean Rewritten from panel scratch notes.
Jekyll → Astro Migration Clean Meta post — publish when ready.
Exploring the Linux top Command Thin Body is QEMU/Vagrant commands — wrong topic entirely.
Generating SSL Certificates Thin Stub — only a few lines.
Vagrant with QEMU/KVM Thin Command fragments, not an article.
Understanding DNS Records Thin Prose exists but wrapped in <html> tags, no headings.
Kubernetes Cluster on Vagrant HTML-heavy Legacy HTML lists — readable but ugly.
MySQL Master-Master Replication HTML-heavy Legacy HTML from Jekyll.
Understanding LVM Basics HTML-heavy Heavy <ul>/<code> HTML.
Yum Commands Quick Reference HTML-heavy HTML table/list reference.
The Road to Kingdom HTML-heavy Fiction — HTML paragraphs.
DataStax Cassandra Cert HTML-heavy Body may be wrong post (K8s text) — verify source.
kri + graphify Knowledge Graph Migration junk Chirping sidebar chrome in body.
macOS VMs with tart + Salt Migration junk Broken heading lines + layout debris.
Browser RDP Zero Ports Migration junk Liquid/code-fence artifacts possible.

Your action items

  1. Cloudflare environment variables

    Set PUBLIC_GISCUS_*, PUBLIC_BREVO_FORM_URL, PUBLIC_GA4_ID, PUBLIC_GOATCOUNTER_CODE, PUBLIC_CF_BEACON_TOKEN in Pages dashboard.

    docs/LAUNCH-CHECKLIST.md
  2. Workers AI binding

    Bind Workers AI as AI in Cloudflare Pages → Functions. Without this, chat uses search-only fallback.

    wrangler.toml
  3. Contact form secret

    Add BREVO_API_KEY + CONTACT_* emails as encrypted vars for /api/contact.

    .env.example
  4. Domain redirects

    Configure hellodk.in → hellodk.io and www → apex in Cloudflare Bulk Redirects.

    docs/cloudflare-dns.md
  5. Personal / fiction posts

    Review The Road to a Kingdom and any draft fiction — only you can judge tone and privacy.

  6. Custom cover images (optional)

    Add cover: "assets/images/..." to frontmatter on posts you want a specific thumbnail. Others use tag defaults.

  7. Proofread after auto-rewrite

    When we restore posts from _jekyll-backup, skim for accuracy — especially tutorials with version-specific commands.

  8. 44 legacy drafts

    Files in _drafts/ and _jekyll-backup/_drafts/ — decide publish, merge, or archive.

Next automated passes

  • Run scripts/fix-empty-posts.mjs against _jekyll-backup HTML sources
  • Convert html-heavy posts to clean markdown (headings, lists, code blocks)
  • Rewrite thin posts from backup or scratch using original intent
  • Strip Chirping migration junk (On This Page, sidebar blocks)
  • Fix wrong-body duplicates (e.g. Cassandra cert vs K8s cluster)
  • Add cover: fields where legacy posts had images

Say “fix all html-heavy posts” or “fix thin posts from backup” to run the next batch.