Files
hoelee-blog/scripts/og-gen/prompts_catalog.json
T
hoelee 9fbb02e298
Deploy / build (push) Successful in 2m50s
art: v2 artwork for the 504 read-amplification post (6 targets)
Generated through post_art.py on the local RTX 3060. Metaphor: four identical
steel pipes drawing from one dark reservoir, plus a single short pipe that
bypasses all four into a lit chamber (four redundant reads vs the bypass path).

- banner 1600x900 from the planned crop (band 755,119-1281,675, x1.43, subject
  at 47.0% of the banner width) instead of the on-the-fly fallback
- EN + ZH OG cards, 800/400 list thumbs, banner webp
- evidence line: 4 reads/file - 960 per page - 0.3 us cache hit

State mirrored into the repo so git alone reproduces the frame: the caption,
plus this slug in metaphors.json and prompts_catalog.json. banner-plan.json
also picks up the 22 frames that were in art-meta but had no plan entry.

Verified: check-assets 190/190 with the post temporarily published, both pages
point at their own og card and banner, then reverted to draft true and rebuilt
-- no page left in dist. ComfyUI terminated after the render.
2026-10-30 02:40:29 +08:00

1109 lines
59 KiB
JSON

[
{
"slug": "adding-a-domain-to-someone-elses-mail-server",
"title": "Adding a Domain to Someone Else's Mail Server",
"category": "notes",
"tags": [
"email",
"dns",
"mailcow"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "A set of four brass routing vanes mounted along a dark obsidian mail chute, three of them steering translucent envelopes cleanly away, while the fourth channel is physically sealed by a solid black baffle wall",
"evidence_summary": "4 DNS records · 554 antispam reject",
"prompt": "A set of four brass routing vanes mounted along a dark obsidian mail chute, three of them steering translucent envelopes cleanly away, while the fourth channel is physically sealed by a solid black baffle wall",
"caption": "captions/adding-a-domain-to-someone-elses-mail-server.json"
},
{
"slug": "adding-english-mode-to-a-chinese-only-web-app",
"title": "No API for Browser Translation: Adding an English Mode to a Chinese-Only Web App",
"category": "engineering",
"tags": [
"i18n",
"nginx",
"vue"
],
"accent": "royal cobalt blue (#295cff) with crisp ice-white",
"unique_elements": "A monolithic dark application cube whose sealed front face carries two sliding glass plaques bearing different scripts, the second plaque being lifted into position by a precision gantry clamp at the doorway",
"evidence_summary": "no browser API · sub_filter EN mode",
"prompt": "A monolithic dark application cube whose sealed front face carries two sliding glass plaques bearing different scripts, the second plaque being lifted into position by a precision gantry clamp at the doorway",
"caption": "captions/adding-english-mode-to-a-chinese-only-web-app.json"
},
{
"slug": "ai-furniture-compositing-with-flux-kontext",
"title": "How I Built an AI Furniture Compositing Demo With FLUX.1 Kontext",
"category": "case-studies",
"tags": [
"fal-ai",
"flux",
"ai-image"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "A matte dark lounge chair module seated into a cut-away room diorama cube, its original studio backdrop peeling away as a curled translucent film sheet",
"evidence_summary": "kontext multi-image · tainted canvas fix",
"prompt": "A matte dark lounge chair module seated into a cut-away room diorama cube, its original studio backdrop peeling away as a curled translucent film sheet",
"caption": "captions/ai-furniture-compositing-with-flux-kontext.json"
},
{
"slug": "authentik-css-greater-than-bug",
"title": "The Character That Silently Broke My authentik CSS",
"category": "devops",
"tags": [
"authentik",
"css",
"self-hosting"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A single oversized angular chevron wedge jammed into a hairline seam of a frosted glass control panel, splitting the panel's edge glow into misaligned fragments",
"evidence_summary": "1 escaped '>' · CSS silently dropped",
"prompt": "A single oversized angular chevron wedge jammed into a hairline seam of a frosted glass control panel, splitting the panel's edge glow into misaligned fragments",
"caption": "captions/authentik-css-greater-than-bug.json"
},
{
"slug": "authentik-forward-auth-gate-wasnt-live",
"title": "The Forward-Auth Gate That Verified Perfectly — and Wasn't Live",
"category": "devops",
"tags": [
"authentik",
"forward-auth",
"cloudflare"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "Two gate arches standing in series, the inner arch sealed by a tight blue light curtain while the outer arch hangs fully open with a stream of light passing straight through it",
"evidence_summary": "host 302 · public 200 · 2 ingress layers",
"prompt": "Two gate arches standing in series, the inner arch sealed by a tight blue light curtain while the outer arch hangs fully open with a stream of light passing straight through it",
"caption": "captions/authentik-forward-auth-gate-wasnt-live.json"
},
{
"slug": "authentik-major-upgrade-gotchas",
"title": "Authentik 2025.8 to 2026.8: The Breakable Parts Nobody Warns You About",
"category": "devops",
"tags": [
"authentik",
"sso",
"docker"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A stack of obsidian anniversary plinths where the topmost slab has just been swapped in, its mounting pegs misaligned so three small crystal key tags tumble out of their sockets",
"evidence_summary": "2025.8 → 2026.8 · auth_flow mixup",
"prompt": "A stack of obsidian anniversary plinths where the topmost slab has just been swapped in, its mounting pegs misaligned so three small crystal key tags tumble out of their sockets",
"caption": "captions/authentik-major-upgrade-gotchas.json"
},
{
"slug": "automating-cyberpanel-without-the-ui",
"title": "Automating CyberPanel Without the UI: Reverse-Engineering an Undocumented v2 API",
"category": "devops",
"tags": [
"cyberpanel",
"api",
"reverse-engineering"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A slim robotic probe arm reaching behind the polished facade of a dark server control panel, plugging into exposed circuit contacts concealed behind the front glass",
"evidence_summary": "v2 JSON API gone · session + CSRF",
"prompt": "A slim robotic probe arm reaching behind the polished facade of a dark server control panel, plugging into exposed circuit contacts concealed behind the front glass",
"caption": "captions/automating-cyberpanel-without-the-ui.json"
},
{
"slug": "best-ai-video-generators-2026",
"title": "Best AI Video Generators in 2026: Free vs Paid, and My LTX-2.3 Test",
"category": "ai",
"tags": [
"ai-video",
"video-generation",
"ltx"
],
"accent": "neon-cyan and electric violet-magenta",
"unique_elements": "A rack of five glowing film reels of differing sizes, one heavy obsidian reel grounded on a heatsink pedestal while the others float as translucent holograms trailed by thin price-tag slivers",
"evidence_summary": "free vs paid · local LTX-2.3 test",
"prompt": "A rack of five glowing film reels of differing sizes, one heavy obsidian reel grounded on a heatsink pedestal while the others float as translucent holograms trailed by thin price-tag slivers",
"caption": "captions/best-ai-video-generators-2026.json"
},
{
"slug": "calibrating-intel-quick-sync-hevc-quality",
"title": "Calibrating Intel Quick Sync HEVC: A Cliff at 28, and a Preset That Does Nothing",
"category": "tutorials",
"tags": [
"ffmpeg",
"hevc",
"qsv"
],
"accent": "electric cyan and soft ultraviolet spectrum",
"unique_elements": "A 3D topographic luminous video waveform mountain whose face drops off a 90-degree vertical cliff edge, flanked by two perfectly identical overlapping optical calibration prisms",
"evidence_summary": "ICQ 28-30 cliff · fast == medium",
"prompt": "A 3D topographic luminous video waveform mountain whose face drops off a 90-degree vertical cliff edge, flanked by two perfectly identical overlapping optical calibration prisms",
"caption": "captions/calibrating-intel-quick-sync-hevc-quality.json"
},
{
"slug": "chainlink-vrf-v2-lottery-contract",
"title": "An Automated Lottery Contract on Chainlink VRF v2.5 and Automation",
"category": "web3",
"tags": [
"solidity",
"chainlink",
"vrf"
],
"accent": "translucent emerald (#10b981) and prism-split cyan",
"unique_elements": "A transparent mechanical drum sealed inside a hexagonal glass case, its tumbling sphere fed by a chain of interlocked machined links, a polished glass orb hovering just outside the case",
"evidence_summary": "VRF v2.5 · mock-funding bug",
"prompt": "A transparent mechanical drum sealed inside a hexagonal glass case, its tumbling sphere fed by a chain of interlocked machined links, a polished glass orb hovering just outside the case",
"caption": "captions/chainlink-vrf-v2-lottery-contract.json"
},
{
"slug": "docker-reported-exit-0-the-oom-killer-disagreed",
"title": "Docker Reported Exit 0. The Kernel Had Already OOM-Killed It.",
"category": "devops",
"tags": [
"docker",
"oom",
"traefik"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A translucent glass server cube displaying a deceptive green heartbeat light while a razor-sharp crimson beam slices horizontally through its bottom core, scattering fractured memory crystals",
"evidence_summary": "exit 0 · dmesg: 6x cgroup OOM kills",
"prompt": "A translucent glass server cube displaying a deceptive green heartbeat light while a razor-sharp crimson beam slices horizontally through its bottom core, scattering fractured memory crystals",
"caption": "captions/docker-reported-exit-0-the-oom-killer-disagreed.json"
},
{
"slug": "does-hevc-actually-shrink-your-files",
"title": "Does Re-encoding to HEVC Actually Shrink Your Files? I Measured It.",
"category": "tutorials",
"tags": [
"ffmpeg",
"hevc",
"x265"
],
"accent": "electric cyan and soft ultraviolet spectrum",
"unique_elements": "Three matched glass vials of compressed film ribbon standing on a dark calibration bench, two visibly shorter than their source capsule while the third swells larger than the capsule it was poured from",
"evidence_summary": "NVENC cq27 bigger · x265 -10-22%",
"prompt": "Three matched glass vials of compressed film ribbon standing on a dark calibration bench, two visibly shorter than their source capsule while the third swells larger than the capsule it was poured from",
"caption": "captions/does-hevc-actually-shrink-your-files.json"
},
{
"slug": "embedding-fonts-so-a-pdf-looks-the-same-everywhere",
"title": "Embedding Fonts So a PDF Looks the Same on Every Machine",
"category": "engineering",
"tags": [
"pdf",
"fonts",
"mpdf"
],
"accent": "royal cobalt blue (#295cff) with crisp ice-white",
"unique_elements": "A sealed obsidian press frame holding one smooth unmarked crystal sheet, lit identically through three differently angled viewing ports",
"evidence_summary": "4 families · 8 faces · 2 renderers",
"prompt": "A sealed obsidian press frame holding one smooth unmarked crystal sheet, lit identically through three differently angled viewing ports",
"caption": "captions/embedding-fonts-so-a-pdf-looks-the-same-everywhere.json"
},
{
"slug": "every-player-stuttered-the-file-was-fine",
"title": "Every Player Stuttered on the Same Video. The File Was Blameless.",
"category": "devops",
"tags": [
"ffmpeg",
"nvdec",
"hevc"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A perfectly aligned dark film canister whose internal sprocket teeth sit one notch out of phase, casting a doubled ghost shadow onto a translucent glass slab",
"evidence_summary": "5818/5818 intervals · 0 duplicate PTS",
"prompt": "A perfectly aligned dark film canister whose internal sprocket teeth sit one notch out of phase, casting a doubled ghost shadow onto a translucent glass slab",
"caption": "captions/every-player-stuttered-the-file-was-fine.json"
},
{
"slug": "five-step-ai-roadmap-what-i-actually-run",
"title": "The Five-Step AI Roadmap Everyone Shares — and What I Actually Run in Production",
"category": "ai",
"tags": [
"llm",
"rag",
"agents"
],
"accent": "neon-cyan and electric violet-magenta",
"unique_elements": "A five-tier architectural staircase in dark graphite, the middle tiers brightly illuminated with active hardware racks while the speculative top tiers remain skeletal wireframes",
"evidence_summary": "whisper + mem0 in production · step 4 skipped",
"prompt": "A five-tier architectural staircase in dark graphite, the middle tiers brightly illuminated with active hardware racks while the speculative top tiers remain skeletal wireframes",
"caption": "captions/five-step-ai-roadmap-what-i-actually-run.json"
},
{
"slug": "fully-on-chain-svg-nfts",
"title": "Fully On-Chain SVG NFTs: Putting the Artwork Inside the Contract",
"category": "web3",
"tags": [
"solidity",
"foundry",
"erc721"
],
"accent": "translucent emerald (#10b981) and prism-split cyan",
"unique_elements": "A crystalline art plaque sealed completely inside a transparent contract block, its imagery carved directly into the block's inner facets rather than mounted on any external frame",
"evidence_summary": "base64 SVG in tokenURI() · mood flip on-chain",
"prompt": "A crystalline art plaque sealed completely inside a transparent contract block, its imagery carved directly into the block's inner facets rather than mounted on any external frame",
"caption": "captions/fully-on-chain-svg-nfts.json"
},
{
"slug": "generating-subtitles-for-songs-without-timestamps",
"unique_elements": "A translucent glass rod of trapped sound resting on a dark machined spindle, a thin brass feeler tracing along its length and pressing evenly spaced notches into the glass, each notch filling with pale light just behind the moving feeler",
"prompt": "A translucent glass rod of trapped sound resting on a dark machined spindle, a thin brass feeler tracing along its length and pressing evenly spaced notches into the glass, each notch filling with pale light just behind the moving feeler",
"evidence_summary": "18 songs - 342 lines - 0.96 anchor coverage",
"caption": "captions/generating-subtitles-for-songs-without-timestamps.json"
},
{
"slug": "hardening-a-tor-onion-service",
"title": "Hardening a Tor Onion Service: What Actually Matters",
"category": "devops",
"tags": [
"tor",
"docker",
"security"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A matte black multi-shell relay tower of stacked concentric domes, each layer locked by a brass ring, with a single narrow sealed ingress slit glowing soft violet",
"evidence_summary": "bind 0.0.0.0:80 denied · onion v3",
"prompt": "A matte black multi-shell relay tower of stacked concentric domes, each layer locked by a brass ring, with a single narrow sealed ingress slit glowing soft violet",
"caption": "captions/hardening-a-tor-onion-service.json"
},
{
"slug": "hello-world",
"title": "Hello, World — About This Blog",
"category": "notes",
"tags": [
"intro"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "A minimal dark workbench holding one glowing filament cursor hovering above a blank obsidian slate, first light spilling from a small pulsing pinpoint of light at its corner",
"evidence_summary": "~140-container homelab · self-hosted",
"prompt": "A minimal dark workbench holding one glowing filament cursor hovering above a blank obsidian slate, first light spilling from a small pulsing pinpoint of light at its corner",
"caption": "captions/hello-world.json"
},
{
"slug": "how-i-built-the-digikedai-telegram-bot",
"title": "How I Built the DigiKedai Telegram AI Bot",
"category": "case-studies",
"tags": [
"telegram",
"docker",
"cloudflare"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "A folded paper-plane shaped obsidian drone docked at a glowing delivery dock module, tethered by a luminous thread to a private gateway pylon behind it",
"evidence_summary": "Telegram + WhatsApp · LiteLLM gateway",
"prompt": "A folded paper-plane shaped obsidian drone docked at a glowing delivery dock module, tethered by a luminous thread to a private gateway pylon behind it",
"caption": "captions/how-i-built-the-digikedai-telegram-bot.json"
},
{
"slug": "how-i-host-this-blog",
"title": "How I Host This Blog: Astro, Gitea Actions, and Self-Hosted CI/CD",
"category": "case-studies",
"tags": [
"astro",
"gitea",
"ci-cd"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "An assembly line of three interlocking obsidian machine modules — a rolling press, a stamping arm and a delivery chute — feeding a sealed glass site cube at the end of the rail",
"evidence_summary": "git push · act_runner · nginx",
"prompt": "An assembly line of three interlocking obsidian machine modules — a rolling press, a stamping arm and a delivery chute — feeding a sealed glass site cube at the end of the rail",
"caption": "captions/how-i-host-this-blog.json"
},
{
"slug": "how-i-made-my-own-songs-with-suno-ai",
"title": "How I Made My Own Songs with Suno AI",
"category": "case-studies",
"tags": [
"suno",
"ai-music",
"music"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "A shard of amber-lit vinyl suspended inside a dark circular resonator hall, seven smaller song discs orbiting it in a single ring",
"evidence_summary": "7 songs · lyrics + prompts",
"prompt": "A shard of amber-lit vinyl suspended inside a dark circular resonator hall, seven smaller song discs orbiting it in a single ring",
"caption": "captions/how-i-made-my-own-songs-with-suno-ai.json"
},
{
"slug": "how-i-vetted-20-vps-providers-with-parallel-subagents",
"title": "How I Vetted 20 VPS Providers in Three Hours with Parallel Subagents",
"category": "case-studies",
"tags": [
"ai-orchestration",
"subagents",
"due-diligence"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "Twenty identical dark server tiles fanned out along a scoring rail, a mechanical grading carriage sweeping across them and stamping pass or fail notches into each tile face",
"evidence_summary": "20 providers · 3 hours · subagents",
"prompt": "Twenty identical dark server tiles fanned out along a scoring rail, a mechanical grading carriage sweeping across them and stamping pass or fail notches into each tile face",
"caption": "captions/how-i-vetted-20-vps-providers-with-parallel-subagents.json"
},
{
"slug": "how-to-verify-a-hosting-provider-before-you-buy",
"title": "How to Verify a Hosting Provider Before You Buy",
"category": "tutorials",
"tags": [
"hosting",
"vps",
"due-diligence"
],
"accent": "electric cyan and soft ultraviolet spectrum",
"unique_elements": "A polished glass loupe hovering over a rack of miniature server towers, revealing a hairline crack hidden inside one tower's casing",
"evidence_summary": "rdap.org domain age · AUP read",
"prompt": "A polished glass loupe hovering over a rack of miniature server towers, revealing a hairline crack hidden inside one tower's casing",
"caption": "captions/how-to-verify-a-hosting-provider-before-you-buy.json"
},
{
"slug": "i-let-an-agent-manage-my-shopee-vouchers",
"title": "I Let an Agent Manage My Shopee Vouchers — And It Created One I Never Approved",
"category": "ai",
"tags": [
"ai-agent",
"shopee",
"automation"
],
"accent": "neon-cyan and electric violet-magenta",
"unique_elements": "An intricate rotating glass agent decision loop where a stray orange pulse vector veers off the machined guide track and materializes a glowing geometric token block in mid-air",
"evidence_summary": "mode=propose gate · RM140 voucher unapproved",
"prompt": "An intricate rotating glass agent decision loop where a stray orange pulse vector veers off the machined guide track and materializes a glowing geometric token block in mid-air",
"caption": "captions/i-let-an-agent-manage-my-shopee-vouchers.json"
},
{
"slug": "it-reported-success-nothing-had-changed",
"title": "It Reported Success. Nothing Had Changed.",
"category": "devops",
"tags": [
"storage",
"smb",
"verification"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A rotating brass checkmark stamp pressed onto an empty obsidian pipe segment that carries no flow, with the pipe's mouth visibly dry behind the impression",
"evidence_summary": "12.5 MB of 403 MB · rename never landed",
"prompt": "A rotating brass checkmark stamp pressed onto an empty obsidian pipe segment that carries no flow, with the pipe's mouth visibly dry behind the impression",
"caption": "captions/it-reported-success-nothing-had-changed.json"
},
{
"slug": "jpa-version-field-lost-update",
"title": "The JPA Field That Turns a Silent Lost Update Into a 409",
"category": "engineering",
"tags": [
"java",
"spring",
"jpa"
],
"accent": "royal cobalt blue (#295cff) with crisp ice-white",
"unique_elements": "Two opposing piston arms pressing on the same crystal data block, one arm halted by a mechanical version latch snapping shut with a red-lit click",
"evidence_summary": "@Version · stale PUT → 409",
"prompt": "Two opposing piston arms pressing on the same crystal data block, one arm halted by a mechanical version latch snapping shut with a red-lit click",
"caption": "captions/jpa-version-field-lost-update.json"
},
{
"slug": "loop-engineering-without-a-coding-agent",
"title": "Loop Engineering Without a Coding Agent: The 11 Cron Jobs That Run My Infrastructure",
"category": "case-studies",
"tags": [
"loop-engineering",
"ai-agents",
"cron"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "Eleven concentric circular obsidian gear loops rotating in mechanical harmony, eight solid pure crystal clockwork rings alongside three subtle neural pulse rings, operating autonomously",
"evidence_summary": "11 cron jobs · 8 zero-AI loops",
"prompt": "Eleven concentric circular obsidian gear loops rotating in mechanical harmony, eight solid pure crystal clockwork rings alongside three subtle neural pulse rings, operating autonomously",
"caption": "captions/loop-engineering-without-a-coding-agent.json"
},
{
"slug": "migrating-codeigniter-iis-to-openlitespeed",
"title": "Migrating a CodeIgniter 4 App From IIS to OpenLiteSpeed",
"category": "engineering",
"tags": [
"codeigniter",
"php",
"openspeedway"
],
"accent": "royal cobalt blue (#295cff) with crisp ice-white",
"unique_elements": "A functional app engine block being lifted off a heavy bolted window-frame chassis and reseated onto a taller lightweight finned frame, two loose dark bolts falling behind it",
"evidence_summary": "17,000-line CI4 · env() fatal",
"prompt": "A functional app engine block being lifted off a heavy bolted window-frame chassis and reseated onto a taller lightweight finned frame, two loose dark bolts falling behind it",
"caption": "captions/migrating-codeigniter-iis-to-openlitespeed.json"
},
{
"slug": "my-backup-was-using-someone-elses-api-quota",
"title": "My Backup Was Crawling Because I Was Using Someone Else's API Quota",
"category": "notes",
"tags": [
"rclone",
"backup",
"google-drive"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "A massive high-throughput data conduit bottlenecked at a narrow glowing amber hourglass valve, releasing only single sparse droplets into a dark repository vault below",
"evidence_summary": "1 TB restic seed · shared rclone quota",
"prompt": "A massive high-throughput data conduit bottlenecked at a narrow glowing amber hourglass valve, releasing only single sparse droplets into a dark repository vault below",
"caption": "captions/my-backup-was-using-someone-elses-api-quota.json"
},
{
"slug": "n8n-v1-to-v2-upgrade-gotchas",
"title": "Upgrading n8n v1 to v2: Seven Deprecations in One Log File",
"category": "devops",
"tags": [
"n8n",
"docker",
"upgrade"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A rail of plain obsidian cube nodes rolling forward while seven of their connector pins hang loose and sparking beneath the track",
"evidence_summary": "1.x → 2.40.1 · 7 silent breaks",
"prompt": "A rail of plain obsidian cube nodes rolling forward while seven of their connector pins hang loose and sparking beneath the track",
"caption": "captions/n8n-v1-to-v2-upgrade-gotchas.json"
},
{
"slug": "nocodb-sso-is-a-licensed-feature",
"title": "NocoDB SSO Is a Licensed Feature — and the Env Vars Won't Tell You",
"category": "notes",
"tags": [
"nocodb",
"sso",
"oidc"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "A recessed keyhole cut into an otherwise sealed obsidian cabinet, faint cyan glow leaking from the seam while the keyhole itself is blocked by a solid brass plug",
"evidence_summary": "OIDC env accepted · first login crashes",
"prompt": "A recessed keyhole cut into an otherwise sealed obsidian cabinet, faint cyan glow leaking from the seam while the keyhole itself is blocked by a solid brass plug",
"caption": "captions/nocodb-sso-is-a-licensed-feature.json"
},
{
"slug": "one-hostname-public-tracker-sso-dashboard",
"title": "One Hostname for a Public Tracker and an SSO-Gated Dashboard",
"category": "devops",
"tags": [
"umami",
"authentik",
"sso"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A single dark gateway arch splitting into two passages, a wide open slit of light on one side and a latched vault door with a rotating seal on the other",
"evidence_summary": "1 host · tracker public, dashboard SSO",
"prompt": "A single dark gateway arch splitting into two passages, a wide open slit of light on one side and a latched vault door with a rotating seal on the other",
"caption": "captions/one-hostname-public-tracker-sso-dashboard.json"
},
{
"slug": "one-prometheus-for-unraid-synology-and-a-vps",
"title": "One Prometheus for unRaid, a Synology NAS, and a VPS: What I Got Wrong",
"category": "case-studies",
"tags": [
"prometheus",
"grafana",
"unraid"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "A single radiant central telemetry beacon sending precision laser monitoring vectors to three distinct hexagonal platform nodes, illuminating transparent storage volumes with holographic metrics",
"evidence_summary": "3 hosts · 1 prometheus · 0 false panels",
"prompt": "A single radiant central telemetry beacon sending precision laser monitoring vectors to three distinct hexagonal platform nodes, illuminating transparent storage volumes with holographic metrics",
"caption": "captions/one-prometheus-for-unraid-synology-and-a-vps.json"
},
{
"slug": "passbolt-hang-three-failure-modes",
"title": "Passbolt UI Kept Hanging — Three Failure Modes From One Missing Config File",
"category": "devops",
"tags": [
"passbolt",
"docker",
"gpg"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A brass padlock seal hovering over an obsidian vault door whose three latching bolts are stuck mid-turn, a stalled orange glow pulsing in the keyway",
"evidence_summary": "null fingerprint · 3 failure modes",
"prompt": "A brass padlock seal hovering over an obsidian vault door whose three latching bolts are stuck mid-turn, a stalled orange glow pulsing in the keyway",
"caption": "captions/passbolt-hang-three-failure-modes.json"
},
{
"slug": "patching-workbench-26-for-mariadb",
"title": "When Your Database Client Lies to You: Patching Workbench 26 for MariaDB",
"category": "devops",
"tags": [
"mysql",
"mariadb",
"workbench"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A precision instrument module whose connector block has been re-pinned by three hand-cut copper jumpers bridging over its original sealed socket",
"evidence_summary": "26.7.0 TypeError · 3 patches",
"prompt": "A precision instrument module whose connector block has been re-pinned by three hand-cut copper jumpers bridging over its original sealed socket",
"caption": "captions/patching-workbench-26-for-mariadb.json"
},
{
"slug": "putting-a-front-door-on-an-app-you-cant-modify",
"title": "Putting a Front Door on an App You Can't Modify",
"category": "devops",
"tags": [
"nginx",
"docker",
"self-hosting"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A new bilingual stone lintel and portal erected in front of a sealed monolithic app block, three thin luminous cables threading through a drilled seam into its interior",
"evidence_summary": "5879-byte SPA · 3 injected lines",
"prompt": "A new bilingual stone lintel and portal erected in front of a sealed monolithic app block, three thin luminous cables threading through a drilled seam into its interior",
"caption": "captions/putting-a-front-door-on-an-app-you-cant-modify.json"
},
{
"slug": "read-amplification-504-gateway-timeout-swr-cache",
"unique_elements": "Four identical steel pipes drawing from one dark reservoir in a row, and a single short pipe that bypasses all four into one lit chamber",
"prompt": "Four identical steel pipes drawing from one dark reservoir in a row, and a single short pipe that bypasses all four into one lit chamber",
"evidence_summary": "4 reads/file · 960 per page · 0.3 µs cache hit",
"caption": "captions/read-amplification-504-gateway-timeout-swr-cache.json"
},
{
"slug": "read-only-nocodb-dashboard-for-a-remote-database",
"title": "A Read-Only NocoDB Dashboard for a Database on Another Machine",
"category": "devops",
"tags": [
"nocodb",
"mysql",
"mariadb"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A glass observation window mounted over a distant obsidian data silo, the viewing frame open while every latch on the data hatch itself stays closed",
"evidence_summary": "SNAT source IP · 0 rows copied",
"prompt": "A glass observation window mounted over a distant obsidian data silo, the viewing frame open while every latch on the data hatch itself stays closed",
"caption": "captions/read-only-nocodb-dashboard-for-a-remote-database.json"
},
{
"slug": "reading-a-containers-own-api-docs",
"title": "Read a Container's Own API Docs Instead of the Vendor's",
"category": "notes",
"tags": [
"docker",
"openapi",
"api"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "A scanning beam unfolding a lathe-cut obsidian shell to expose its inner circuit routing, four small inspection tools laid out on the dark bench beside it",
"evidence_summary": "4 docker commands · image is the spec",
"prompt": "A scanning beam unfolding a lathe-cut obsidian shell to expose its inner circuit routing, four small inspection tools laid out on the dark bench beside it",
"caption": "captions/reading-a-containers-own-api-docs.json"
},
{
"slug": "replacing-rdpguard-with-ipban",
"title": "Replacing RDPGuard With IPBan: The Traps Nobody Documents",
"category": "devops",
"tags": [
"windows",
"security",
"rdp"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "An old shield slab lifted out of a dark doorway as a tighter woven black mesh gate is lowered into the same frame, grey marker pins fenced off outside it",
"evidence_summary": "RDPGuard 7.8.7 → IPBan 4.1.0 · 12 IPs",
"prompt": "An old shield slab lifted out of a dark doorway as a tighter woven black mesh gate is lowered into the same frame, grey marker pins fenced off outside it",
"caption": "captions/replacing-rdpguard-with-ipban.json"
},
{
"slug": "running-ai-video-locally-on-a-12gb-gpu",
"unique_elements": "A compact dark alloy pressure vessel clamped inside a narrow slot, its single outlet feeding a translucent ribbon of thin frames between two polished steel rollers that widen the ribbon as it passes",
"prompt": "A compact dark alloy pressure vessel clamped inside a narrow slot, its single outlet feeding a translucent ribbon of thin frames between two polished steel rollers that widen the ribbon as it passes",
"evidence_summary": "1280x736 -> 1080p - 32 min / 5 s - $0",
"caption": "captions/running-ai-video-locally-on-a-12gb-gpu.json"
},
{
"slug": "running-production-infrastructure-solo",
"title": "Running Production Infrastructure Solo: 162 Containers Across Three Hosts",
"category": "case-studies",
"tags": [
"docker",
"traefik",
"monitoring"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "Three interconnected matte-black server monoliths in isometric perspective surrounded by a dense floating matrix of tiny glowing glass container cubes with emerald heartbeat lights, routed by blue optical fiber conduits into one master control node",
"evidence_summary": "162 containers · 3 hosts · 78 compose stacks",
"prompt": "Three interconnected matte-black server monoliths in isometric perspective surrounded by a dense floating matrix of tiny glowing glass container cubes with emerald heartbeat lights, routed by blue optical fiber conduits into one master control node",
"caption": "captions/running-production-infrastructure-solo.json"
},
{
"slug": "running-tts-as-a-service-with-token-sidecars",
"title": "I Ran a Text-to-Speech Service for a Year on Two Cron Containers",
"category": "ai",
"tags": [
"n8n",
"tts",
"azure"
],
"accent": "neon-cyan and electric violet-magenta",
"unique_elements": "A central obsidian voice resonance horn flanked by two small paired fuel canisters that replenish its expiring energy keys through thin silver tubes",
"evidence_summary": "tokens expire 10 min / 1 h · sidecars",
"prompt": "A central obsidian voice resonance horn flanked by two small paired fuel canisters that replenish its expiring energy keys through thin silver tubes",
"caption": "captions/running-tts-as-a-service-with-token-sidecars.json"
},
{
"slug": "scraping-bot-walled-marketplace-warm-browser-session",
"title": "Scraping a Bot-Walled Marketplace With a Warm Browser Session",
"category": "engineering",
"tags": [
"scraping",
"cdp",
"headless-chrome"
],
"accent": "royal cobalt blue (#295cff) with crisp ice-white",
"unique_elements": "A dexterous glass gripper carrying a warm amber-lit browser window pane through a walled dark tunnel gate, holding the pane at a preserved angle",
"evidence_summary": "warm CDP session · split waits",
"prompt": "A dexterous glass gripper carrying a warm amber-lit browser window pane through a walled dark tunnel gate, holding the pane at a preserved angle",
"caption": "captions/scraping-bot-walled-marketplace-warm-browser-session.json"
},
{
"slug": "self-healing-digital-goods-entitlements",
"title": "Self-Healing Access Control for Digital Goods: NocoDB, n8n, and AList",
"category": "case-studies",
"tags": [
"n8n",
"nocodb",
"alist"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "A multi-stage floating acrylic workflow pathway with five interlocking diamond gates, automatically bridging broken link fragments with glowing golden solder",
"evidence_summary": "5 workflows · NocoDB + n8n + AList",
"prompt": "A multi-stage floating acrylic workflow pathway with five interlocking diamond gates, automatically bridging broken link fragments with glowing golden solder",
"caption": "captions/self-healing-digital-goods-entitlements.json"
},
{
"slug": "self-hosted-speech-to-text-api",
"title": "Your Own Speech-to-Text Server: Faster Than Typing, Private by Default",
"category": "case-studies",
"tags": [
"whisper",
"cuda",
"stt"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "A floating obsidian microphone capsule inside a soundproof dark chamber, its waveform converted into clean engraved grooves on a crystal tablet beside it",
"evidence_summary": "whisper.cpp large-v3 · ~5x typing",
"prompt": "A floating obsidian microphone capsule inside a soundproof dark chamber, its waveform converted into clean engraved grooves on a crystal tablet beside it",
"caption": "captions/self-hosted-speech-to-text-api.json"
},
{
"slug": "self-hosting-mem0-memory-stack",
"title": "How I Self-Hosted a Mem0 Memory Stack (So My AI Agent Remembers)",
"category": "case-studies",
"tags": [
"mem0",
"docker",
"postgres"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "A stack of three interlocking transparent memory capsules above a glowing vector-index lattice core, each capsule holding suspended point-cloud nodes",
"evidence_summary": "mem0 + LiteLLM + pgvector · :20015",
"prompt": "A stack of three interlocking transparent memory capsules above a glowing vector-index lattice core, each capsule holding suspended point-cloud nodes",
"caption": "captions/self-hosting-mem0-memory-stack.json"
},
{
"slug": "shipping-an-ai-photo-editor-as-a-wordpress-plugin",
"title": "Shipping an AI Photo Editor as a WordPress Plugin: 22 Versions of Hard Lessons",
"category": "case-studies",
"tags": [
"wordpress",
"php",
"fal-ai"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "A brushed dark modular cartridge docked into a slot on a wall of stacked obsidian building blocks, a neat pile of thin shims beside it with one cracked shim glowing red",
"evidence_summary": "22 versions · fal.ai async queue",
"prompt": "A brushed dark modular cartridge docked into a slot on a wall of stacked obsidian building blocks, a neat pile of thin shims beside it with one cracked shim glowing red",
"caption": "captions/shipping-an-ai-photo-editor-as-a-wordpress-plugin.json"
},
{
"slug": "smartctl-exit-code-32-skips-the-disks-that-matter",
"title": "smartctl Exit Code 32: The Code That Skips the Disks You Care About",
"category": "notes",
"tags": [
"smart",
"smartctl",
"unraid"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "A row of dark platter cartridges on an inspection rail where a sorting gate waves the most worn cartridge straight past into an unchecked waste channel",
"evidence_summary": "rc=32 is not failure · skips bad disks",
"prompt": "A row of dark platter cartridges on an inspection rail where a sorting gate waves the most worn cartridge straight past into an unchecked waste channel",
"caption": "captions/smartctl-exit-code-32-skips-the-disks-that-matter.json"
},
{
"slug": "space-reclamation-wasnt-stuck-it-was-waiting",
"title": "Space Reclamation Wasn't Stuck. It Was Waiting for Tomorrow at 09:29.",
"category": "devops",
"tags": [
"synology",
"btrfs",
"snapshots"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A massive filesystem disk cylinder slowly draining fragmented blue blocks into an obsidian reclamation pit, guided by a precision holographic countdown ring",
"evidence_summary": "121 GiB returned · scheduled 09:29",
"prompt": "A massive filesystem disk cylinder slowly draining fragmented blue blocks into an obsidian reclamation pit, guided by a precision holographic countdown ring",
"caption": "captions/space-reclamation-wasnt-stuck-it-was-waiting.json"
},
{
"slug": "stop-writing-agent-prompts-for-deterministic-work",
"title": "Stop Writing Agent Prompts for Deterministic Work",
"category": "notes",
"tags": [
"loop-engineering",
"cron",
"ai-agents"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "An oversized ornate mechanical gear train fused to a tiny simple toggle switch, a strand of glowing ribbon tangled uselessly around the gear teeth",
"evidence_summary": "29 straight failures · 1 string compare",
"prompt": "An oversized ornate mechanical gear train fused to a tiny simple toggle switch, a strand of glowing ribbon tangled uselessly around the gear teeth",
"caption": "captions/stop-writing-agent-prompts-for-deterministic-work.json"
},
{
"slug": "syncing-a-self-improving-ai-agent-across-machines",
"title": "Syncing a Self-Improving AI Agent Across Machines",
"category": "case-studies",
"tags": [
"hermes",
"git",
"gitea"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "Two obsidian agent cores on separate pedestals sharing one translucent memory ribbon strung between them, their curved shells catching the same rim light",
"evidence_summary": "git-backed profile · manual sync",
"prompt": "Two obsidian agent cores on separate pedestals sharing one translucent memory ribbon strung between them, their curved shells catching the same rim light",
"caption": "captions/syncing-a-self-improving-ai-agent-across-machines.json"
},
{
"slug": "synology-api-401-with-the-correct-password",
"title": "Why Your Synology API Login Returns 401 With the Correct Password",
"category": "notes",
"tags": [
"synology",
"dsm",
"rest-api"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "A brass key entered perfectly into a dark lock housing that still glows red, two different fault traces visible behind a diagnostic glass side panel",
"evidence_summary": "401 twice · 2 causes · 3 commands",
"prompt": "A brass key entered perfectly into a dark lock housing that still glows red, two different fault traces visible behind a diagnostic glass side panel",
"caption": "captions/synology-api-401-with-the-correct-password.json"
},
{
"slug": "synology-spreadsheet-api-is-a-container",
"title": "The Synology Spreadsheet API Is a Container, Not an API Endpoint",
"category": "devops",
"tags": [
"synology",
"dsm",
"docker"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A grid of obsidian spreadsheet cells housed inside a sealed service container box, four small barricade blocks standing around its access hatches",
"evidence_summary": "1515 APIs · 4 traps",
"prompt": "A grid of obsidian spreadsheet cells housed inside a sealed service container box, four small barricade blocks standing around its access hatches",
"caption": "captions/synology-spreadsheet-api-is-a-container.json"
},
{
"slug": "that-dying-ssd-was-just-a-bad-sata-cable",
"title": "I Was About to RMA This SSD — the Fault Was a SATA Cable",
"category": "devops",
"tags": [
"unraid",
"sata",
"ssd"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "An unbranded solid-state drive slab lying clean and healthy on an inspection cradle beside a single frayed ribbon cable whose exposed conductor is the only damaged element in the frame",
"evidence_summary": "WRITE FPDMA timeout · 1 SATA cable",
"prompt": "An unbranded solid-state drive slab lying clean and healthy on an inspection cradle beside a single frayed ribbon cable whose exposed conductor is the only damaged element in the frame",
"caption": "captions/that-dying-ssd-was-just-a-bad-sata-cable.json"
},
{
"slug": "the-cause-was-trim-not-the-ssds",
"title": "The Corruption Came Back on Different Drives — the Cause Was TRIM, Not the SSDs",
"category": "devops",
"tags": [
"unraid",
"btrfs",
"trim"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "Two identical crystal data platters both striped by the same glowing zero-band across their surface, a hidden firmware splinter visible in the shared substrate between them",
"evidence_summary": "corruption_errs 27 / 31 · queued TRIM",
"prompt": "Two identical crystal data platters both striped by the same glowing zero-band across their surface, a hidden firmware splinter visible in the shared substrate between them",
"caption": "captions/the-cause-was-trim-not-the-ssds.json"
},
{
"slug": "the-nocodb-attachment-that-wouldnt-update",
"title": "The NocoDB Attachment That Wouldn't Update (and a Regex That Missed)",
"category": "notes",
"tags": [
"nocodb",
"backfill",
"python"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "Two nearly identical obsidian tiles slotted into the same dark rail, the older tile stubbornly holding its groove while a translucent duplicate hovers beside it",
"evidence_summary": "300 rows · 1 lookahead regex miss",
"prompt": "Two nearly identical obsidian tiles slotted into the same dark rail, the older tile stubbornly holding its groove while a translucent duplicate hovers beside it",
"caption": "captions/the-nocodb-attachment-that-wouldnt-update.json"
},
{
"slug": "the-upstream-was-deleted-then-came-back-rewritten",
"title": "The Upstream Was Deleted, Then Came Back as a Rewrite",
"category": "devops",
"tags": [
"docker",
"self-hosting",
"upstream"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "An empty hollow container shell sitting on a dark shelf beside a freshly rebuilt shell of a brighter alloy, the new one still gleaming and unweathered",
"evidence_summary": "repo 404 · 233 commits rewrite",
"prompt": "An empty hollow container shell sitting on a dark shelf beside a freshly rebuilt shell of a brighter alloy, the new one still gleaming and unweathered",
"caption": "captions/the-upstream-was-deleted-then-came-back-rewritten.json"
},
{
"slug": "two-ways-a-javascript-file-stops-working-and-looks-fine",
"title": "Two Ways a JavaScript File Stops Working and Looks Fine",
"category": "engineering",
"tags": [
"javascript",
"i18n",
"debugging"
],
"accent": "royal cobalt blue (#295cff) with crisp ice-white",
"unique_elements": "A luminous display panel that looks perfectly alive while two of its internal conduits are severed beneath the unbroken glass face",
"evidence_summary": "shadowed name · let below call",
"prompt": "A luminous display panel that looks perfectly alive while two of its internal conduits are severed beneath the unbroken glass face",
"caption": "captions/two-ways-a-javascript-file-stops-working-and-looks-fine.json"
},
{
"slug": "unraid-stop-array-hangs-on-swapfile",
"title": "Why Unraid Hangs When You Stop the Array With a Swapfile — and the Fix",
"category": "devops",
"tags": [
"unraid",
"swap",
"btrfs"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A heavy obsidian disk array carriage halted on its rails, an eight-segment anchor block clamping one wheel to the floor frame",
"evidence_summary": "8 GB swapfile pins /mnt/cache",
"prompt": "A heavy obsidian disk array carriage halted on its rails, an eight-segment anchor block clamping one wheel to the floor frame",
"caption": "captions/unraid-stop-array-hangs-on-swapfile.json"
},
{
"slug": "upgrading-codeigniter-46-to-47",
"title": "Upgrading CodeIgniter 4.6 to 4.7: The Breaking Changes the Guide Misses",
"category": "notes",
"tags": [
"codeigniter",
"php",
"upgrade"
],
"accent": "warm amber-orange warning glow (#fbbf24)",
"unique_elements": "An obsidian upgrade manifold whose eight sealed ports run cold and silent while two open ports vent hot red vapour",
"evidence_summary": "4.6 → 4.7 · 2 unlisted fatals",
"prompt": "An obsidian upgrade manifold whose eight sealed ports run cold and silent while two open ports vent hot red vapour",
"caption": "captions/upgrading-codeigniter-46-to-47.json"
},
{
"slug": "using-chinese-llm-apis-from-malaysia",
"title": "Using Chinese LLM APIs From Malaysia: What Actually Works",
"category": "ai",
"tags": [
"llm",
"api",
"deepseek"
],
"accent": "neon-cyan and electric violet-magenta",
"unique_elements": "A sealed steel tower module with a single machined keyway and a small suspended counterweight, feeding a distant dark lattice of machined spheres through a long cable run",
"evidence_summary": "GLM-5.3 · DeepSeek V4 · RMB top-up",
"prompt": "A sealed steel tower module with a single machined keyway and a small suspended counterweight, feeding a distant dark lattice of machined spheres through a long cable run",
"caption": "captions/using-chinese-llm-apis-from-malaysia.json"
},
{
"slug": "verifying-a-pdf-report-page-by-page",
"title": "Verifying a 19-Page PDF Report Page by Page",
"category": "engineering",
"tags": [
"php",
"codeigniter",
"pdf"
],
"accent": "royal cobalt blue (#295cff) with crisp ice-white",
"unique_elements": "Nineteen identically cut crystal sheets fanned in a stack on a dark calibration bench, while a precision measuring caliper checks each sheet's edge alignment",
"evidence_summary": "19 pages · every deviation < 2 pt",
"prompt": "Nineteen identically cut crystal sheets fanned in a stack on a dark calibration bench, while a precision measuring caliper checks each sheet's edge alignment",
"caption": "captions/verifying-a-pdf-report-page-by-page.json"
},
{
"slug": "vetting-an-open-source-dependency-before-you-bet-on-it",
"title": "How I Vet an Open-Source Dependency Before Betting On It",
"category": "devops",
"tags": [
"open-source",
"due-diligence",
"oidc"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A dark dependency crate opened on a bare inspection bench, six inspection checkpoints laid out beside it and one hollow false-bottomed compartment exposed",
"evidence_summary": "6 checks · grep beats the README",
"prompt": "A dark dependency crate opened on a bare inspection bench, six inspection checkpoints laid out beside it and one hollow false-bottomed compartment exposed",
"caption": "captions/vetting-an-open-source-dependency-before-you-bet-on-it.json"
},
{
"slug": "when-smart-says-healthy-but-your-raid-is-corrupting-data",
"title": "When SMART Says Healthy and Your RAID Is Silently Corrupting Data",
"category": "devops",
"tags": [
"unraid",
"btrfs",
"nvme"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "Two clean-looking mirrored disk platters certified with green tags while a fine hairline of corrupted static seeps from the seam between them",
"evidence_summary": "SMART healthy · checksum 0x8941f998",
"prompt": "Two clean-looking mirrored disk platters certified with green tags while a fine hairline of corrupted static seeps from the seam between them",
"caption": "captions/when-smart-says-healthy-but-your-raid-is-corrupting-data.json"
},
{
"slug": "why-500000-lines-of-commit-churn-only-left-230000-in-production",
"title": "Why 500,000 Lines of Commit Churn Only Left 230,000 Lines in Production",
"category": "engineering",
"tags": [
"ai",
"git",
"devops"
],
"accent": "royal cobalt blue (#295cff) with crisp ice-white",
"unique_elements": "A wide extrusion nozzle laying down an enormous glowing filament coil while a narrow precision sieve beneath it lets only a smaller refined strand fall into a production crate",
"evidence_summary": "518,000 added · 235,000 kept · 5 repos",
"prompt": "A wide extrusion nozzle laying down an enormous glowing filament coil while a narrow precision sieve beneath it lets only a smaller refined strand fall into a production crate",
"caption": "captions/why-500000-lines-of-commit-churn-only-left-230000-in-production.json"
},
{
"slug": "why-chrome-forgets-its-tabs-in-a-container",
"title": "Why Chrome Forgets Its Tabs in a Container — And How I Fixed It",
"category": "devops",
"tags": [
"docker",
"chrome",
"cdp"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A dark browser window frame whose restored tab slats are scattered outside its own container wall, a small keeper bracket bridging the seam",
"evidence_summary": "RestoreOnStartup=1 · 70-line keeper",
"prompt": "A dark browser window frame whose restored tab slats are scattered outside its own container wall, a small keeper bracket bridging the seam",
"caption": "captions/why-chrome-forgets-its-tabs-in-a-container.json"
},
{
"slug": "why-i-still-bought-a-local-gpu",
"title": "Why I Still Bought a GPU to Run AI When Claude and GPT Are Obviously Stronger",
"category": "ai",
"tags": [
"local-llm",
"gpu",
"llama-cpp"
],
"accent": "neon-cyan and electric violet-magenta",
"unique_elements": "A dense obsidian accelerator block seated in its own heatsink cradle on a workbench, radiating private warm light while cloud-tethered terminals hang faintly in the dark background",
"evidence_summary": "stronger frontier · local for retries + batch",
"prompt": "A dense obsidian accelerator block seated in its own heatsink cradle on a workbench, radiating private warm light while cloud-tethered terminals hang faintly in the dark background",
"caption": "captions/why-i-still-bought-a-local-gpu.json"
},
{
"slug": "why-my-on-chain-nft-art-changed-on-windows",
"title": "Why My On-Chain NFT Art Changed When I Cloned It on Windows",
"category": "web3",
"tags": [
"foundry",
"solidity",
"svg"
],
"accent": "translucent emerald (#10b981) and prism-split cyan",
"unique_elements": "An identical carved art plaque duplicated on two colour-matched plinths, one copy shifted by an extra invisible notch at every edge",
"evidence_summary": "autocrlf CRLF · base64 differs",
"prompt": "An identical carved art plaque duplicated on two colour-matched plinths, one copy shifted by an extra invisible notch at every edge",
"caption": "captions/why-my-on-chain-nft-art-changed-on-windows.json"
},
{
"slug": "why-telegram-bot-notifications-die",
"title": "Why Telegram Bot Notifications Die: IPv6, DNS, and a 400 That Took a Day",
"category": "devops",
"tags": [
"docker",
"telegram",
"python"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A folded paper-plane drone stopped at a narrow dark archway, its front slot jammed with a crumpled translucent strip and a red glow bleeding out",
"evidence_summary": "400 on sendPhoto · getMe fine · IPv6-only DNS",
"prompt": "A folded paper-plane drone stopped at a narrow dark archway, its front slot jammed with a crumpled translucent strip and a red glow bleeding out",
"caption": "captions/why-telegram-bot-notifications-die.json"
},
{
"slug": "why-your-cdp-clicks-silently-fail",
"title": "Why Your CDP Clicks Silently Fail: Smooth Scroll, Minimised Windows, and JS-Dispatched Events",
"category": "devops",
"tags": [
"cdp",
"chrome",
"react"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A high-precision robotic cursor pointer clicking onto a translucent glass pad that has already shifted away on an invisible kinetic wave, triggering no resonance",
"evidence_summary": "scroll-behavior:smooth · rect expired",
"prompt": "A high-precision robotic cursor pointer clicking onto a translucent glass pad that has already shifted away on an invisible kinetic wave, triggering no resonance",
"caption": "captions/why-your-cdp-clicks-silently-fail.json"
},
{
"slug": "why-your-grafana-dashboard-shows-no-data",
"title": "Why Your Grafana Dashboard Shows No Data (When Prometheus Is Fine)",
"category": "devops",
"tags": [
"grafana",
"prometheus",
"dashboards"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A wide wall of forty-one dark telemetry panels all reading blank, one small self-referential filter disc visibly stuck against its own inlet",
"evidence_summary": "41 panels No data · variable filtered itself",
"prompt": "A wide wall of forty-one dark telemetry panels all reading blank, one small self-referential filter disc visibly stuck against its own inlet",
"caption": "captions/why-your-grafana-dashboard-shows-no-data.json"
},
{
"slug": "why-your-headless-browser-cant-scrape-everything",
"title": "Why Your Headless Browser Can't Scrape Everything",
"category": "case-studies",
"tags": [
"scraping",
"playwright",
"browserless"
],
"accent": "emerald green (#4ade80) status nodes and gold telemetry",
"unique_elements": "Two identical dark vault chambers side by side, one sealed shut behind a wall of blank grey panels while the other stands open with warm light spilling from inside",
"evidence_summary": "Goofish blocks · Carousell serves",
"prompt": "Two identical dark vault chambers side by side, one sealed shut behind a wall of blank grey panels while the other stands open with warm light spilling from inside",
"caption": "captions/why-your-headless-browser-cant-scrape-everything.json"
},
{
"slug": "your-disk-full-alert-is-lying",
"title": "Your Disk-Full Alert Is Lying: Stop Alerting on Percentages",
"category": "devops",
"tags": [
"monitoring",
"alerting",
"prometheus"
],
"accent": "cyan and vibrant emerald green (#4ade80)",
"unique_elements": "A tall nearly empty barrel of enormous capacity with a tiny amber fill line at its base, while a thin illuminated arc above it strains against its stop",
"evidence_summary": "3% free = 500 GB · alert fires wrong way",
"prompt": "A tall nearly empty barrel of enormous capacity with a tiny amber fill line at its base, while a thin illuminated arc above it strains against its stop",
"caption": "captions/your-disk-full-alert-is-lying.json"
},
{
"slug": "yue2-on-a-12gb-gpu-songs-that-lost-their-endings",
"unique_elements": "A row of slender dark glass tubes standing upright in a black rack on a machined rail, a single horizontal blade bar sweeping across them and cutting every one at the same height, the severed upper segments laid out in a shallow tray beside the rail",
"prompt": "A row of slender dark glass tubes standing upright in a black rack on a machined rail, a single horizontal blade bar sweeping across them and cutting every one at the same height, the severed upper segments laid out in a shallow tray beside the rail",
"evidence_summary": "12 takes - all 240.000 s - cap now 300 s",
"caption": "captions/yue2-on-a-12gb-gpu-songs-that-lost-their-endings.json"
}
]