Airtable build proposal · for Jack's posting

Live · this page is the proof

AI Blog Production, built end-to-end as the proposal artifact.

Six Airtable Run Script automations. One human-gated pipeline. Swappable image APIs. Shopify-ready HTML. Click anything below.

Your spec asks for production-quality code with proper error handling, retry logic, token cost tracking, and no hard-coded magic strings. The full package (schema, six scripts, swappable adapter, build tool) is checked in. The interactive panel below calls the same outline script the production base would use.

01 · the pipeline

Twenty status states. Half are human gates, half are automation triggers.

Each *Approved status is a human gate; each *Pending or *ing status fires the next script. A failed automation never advances; it falls into Failed with the error captured in Last Error, and you re-trigger by editing the status back. The current sample article below is at stage 08, where the draft is being written.

Idea
Pick topic
Outline Pending
Script 01
Outline Ready
Review
Outline Approved
Script 02 trigger
Refining
Script 02 running
Refined Outline Ready
Review
Refined Outline Approved
Script 03 trigger
Drafting
Script 03 running
Draft Ready
Review
Draft Approved
Script 04 trigger
Revising
Script 04 running
Revision Ready
Review
Revision Approved
Script 05 trigger
Generating Images
4 in parallel
Images Ready
Review
Images Approved
Script 06 trigger
Compiling
Script 06 running
Ready to Publish
Push to Shopify
Published
Live
Failed
Captured error
Human gateScript firingTerminalCaptured failure
02 · try it live

This calls the real outline script. The response streams in below.

Click the button. The page POSTs to /api/outline, which builds the same voice + topic system prompt the production Airtable script builds, calls Claude Sonnet 4.6, and streams the response back. Same prompt code path, different rendering surface.

Topic
How to actually start using retinol without the peeling phaseFrom the seed.json fixture · Voice: DTC Educator · Product: Maris Skin
Hypothesis
Most retinol guides assume 6-8 weeks of acclimation. Real readers want a 2-week onboarding ramp using the buffering technique.
03 · swappable image API

Same call shape, five backends. Pick the one selected on the automation.

Click a card. The selected provider is what stage 05's automation would use; the others stay one input variable away. Negative-prompt support, aspect-ratio enums, and sync-vs-async behavior all differ; the adapter hides each of those quirks.

// scripts/_lib/image_adapter.js: same shape, five backends
const generate = makeImageAdapter({
    provider: "gpt",
    apiKey: process.env.OPENAI_API_KEY
});

const result = await generate(prompt, {
    aspectRatio: "16:9"
});

// → { url, costUsd, modelId, generationId, latencyMs, rawMeta }
// Note: DALL-E 3 deprecated → GPT Image 2. Flux 1.1 Pro superseded → Flux 2.
04 · shopify-ready output

Stage 06 uploads each image to Shopify Files, swaps in CDN URLs, writes JSON-LD.

The Shopify HTML field on the Article record holds the final output. Image src URLs point to your shop's Shopify CDN (not Airtable's), so the HTML is genuinely paste-ready into a Shopify Article. JSON-LD ships with the same call.

<!-- Generated by AI Blog Production system --><!-- slug: start-retinol-without-peeling-phase -->
<article class="blog-post">
  <figure class="blog-hero">
    <img src="https://cdn.shopify.com/s/files/1/0123/4567/files/start-retinol-without-peeling-phase-hero.png"
         alt="Start retinol without the peeling phase"
         loading="eager" />
  </figure>
  <h1>Start retinol without the peeling phase: a 2-week ramp using buffering</h1>
  <p class="blog-meta">A practical 2-week onboarding schedule for retinol that uses the buffering technique to skip the peeling phase entirely.</p>
  <p>Most retinol guides expect you to suffer for 6-8 weeks. That timeline is why most people quit during the peeling phase, not after. Here is a 2-week ramp using the buffering technique that skips the worst of it.</p>
  <h2>Why the peeling phase happens</h2>
  <p>Retinol speeds up cell turnover faster than your skin barrier can recover, and the gap is what produces the flaking. The effect compounds at concentrations above 0.3% in week one, and on skin that already runs dry...</p>
  <figure class="blog-img">
    <img src="https://cdn.shopify.com/s/files/1/0123/4567/files/start-retinol-without-peeling-phase-body1.png"
         alt="start retinol without peeling phase body1"
         loading="lazy" />
  </figure>
  <h2>The buffering technique</h2>
  <p>...</p>
</article>
<script type="application/ld+json">{"@context":"https://schema.org","@type":"BlogPosting","headline":"Start retinol without the peeling phase","description":"...","image":["https://cdn.shopify.com/.../hero.png","https://cdn.shopify.com/.../body1.png","https://cdn.shopify.com/.../body2.png","https://cdn.shopify.com/.../body3.png"],"publisher":{"@type":"Organization","name":"Maris Skin"},"datePublished":"2026-05-04"}</script>