Paul Welty, PhD AI, WORK, AND STAYING HUMAN

What shipped today

Massive day — 23 commits landed across two parallel workstreams: the autonomous pipeline grinding through queued issues, and a manual session building out the full admin CRUD layer.

DISC onboarding and user profiles — The pipeline completed the entire DISC personality assessment flow overnight and through the morning. This includes the scoring engine (GH-84), assessment UI (GH-85), results interpretation (GH-86), user profile page (GH-87), post-signup onboarding (GH-88), and skip-assessment handling (GH-89). Users can now sign up, take a DISC assessment, see their personality profile, and have that profile influence their learning content. The content schema milestone also wrapped up with the pipeline shipping admin modules list (GH-73), module forms (GH-74), lesson editor (GH-75), content unit editor (GH-76), DISC tag selector (GH-77), content library (GH-78), module/lesson viewer pages (GH-79, GH-80), and DISC profile columns (GH-82, GH-83).

Admin CRUD for content taxonomy — Built the complete admin authoring layer in one session: module detail pages with lessons tables, lesson create/delete, goal management with inline blur-save editing, and a full assessment/question management UI embedded in the lesson editor. This was a manual 11-issue plan covering confirm-delete component, slug-vs-UUID routing fixes, stub page cleanup, module detail page, lesson forms, delete functionality, goal section/cards, assessment section/cards, and question cards with DISC toggles. All following existing patterns (optimistic UI, position-based reordering, collapsible sections).

Pipeline hygiene — The scout found 5 quality issues (GH-118–122) that the pipeline auto-fixed: breadcrumb inconsistencies, sentence case violations, missing auth guards, query parallelization, and admin auth helper extraction. Also fixed a pipeline merge artifact where the old [moduleId] route conflicted with the new [id] route, and a duplicate auth block in the demo-requests page.

Pipeline loading — Created 18 issues across two upcoming milestones to keep the pipeline fed: 10 for “Adaptive lesson delivery” (GH-128–137) covering learner-facing features like assessment responses, AI feedback, DISC indicators, progress tracking, and loading skeletons; and 8 for “First module: Delegation” (GH-138–145) covering DISC-adapted content generation, assessments, and practice tasks.

Completed

  • GH-73 — Admin modules list page
  • GH-74 — Admin module create/edit form
  • GH-75 — Admin lesson editor with structured content sections
  • GH-76 — Content unit inline editor
  • GH-77 — DISC tag selector component
  • GH-78 — Content library browse page
  • GH-79 — Module detail page
  • GH-80 — Lesson viewer page
  • GH-82 — Add DISC profile columns to user_profiles table
  • GH-83 — Add DISC assessment questions seed data
  • GH-84 — DISC scoring engine
  • GH-85 — DISC assessment UI page
  • GH-86 — DISC results interpretation text
  • GH-87 — User profile page with DISC results
  • GH-88 — Post-signup onboarding flow
  • GH-89 — Skip assessment option and incomplete profile handling
  • GH-118 — Fix breadcrumb text inconsistency across admin pages
  • GH-119 — Fix sentence case violations in module form and page titles
  • GH-120 — Add auth guard to demo-requests admin page
  • GH-121 — Parallelize lesson editor server queries for faster page load
  • GH-122 — Extract admin auth guard helper to reduce boilerplate
  • PR #146 — Admin CRUD for content taxonomy (manual session work)

Carry-over

  • 18 issues queued for pipeline (GH-128–145) across “Adaptive lesson delivery” and “First module: Delegation” milestones
  • “Content schema and CMS” and “DISC onboarding and user profiles” milestones are 100% complete

Risks

  • Pipeline may struggle with content generation issues (GH-138–145) which require writing substantive DISC-adapted learning content, not just code changes
  • The [moduleId][id] route rename was manual — if any old links persist in pipeline worktrees, they’ll break

Flags and watch-outs

  • Demo page had a pre-existing useSearchParams Suspense issue that only surfaced during full build — fixed in PR #146
  • The pipeline left duplicate auth code in demo-requests/page.tsx when it merged GH-120 on top of existing code — watch for similar merge artifacts

Next session

  • Check pipeline progress on the 18 queued issues — expect “Adaptive lesson delivery” milestone to be partially through
  • If content generation issues (GH-138–145) stall the pipeline, consider augmenting them with more specific prompts or switching to manual authoring
  • The learner-facing lesson page needs testing end-to-end once GH-128 (goals) and GH-129 (assessments) land
  • Consider running /scout again after the pipeline batch completes to catch new quality issues

Why customer tools are organized wrong

This article reveals a fundamental flaw in how customer support tools are designed—organizing by interaction type instead of by customer—and explains why this fragmentation wastes time and obscures the full picture you need to help users effectively.

Infrastructure shapes thought

The tools you build determine what kinds of thinking become possible. On infrastructure, friction, and building deliberately for thought rather than just throughput.

Server-side dashboard architecture: Why moving data fetching off the browser changes everything

How choosing server-side rendering solved security, CORS, and credential management problems I didn't know I had.

The work of being available now

A book on AI, judgment, and staying human at work.

The practice of work in progress

Practical essays on how work actually gets done.

The bottleneck moved

The constraint in knowledge work used to be execution. Now it's specification. Most organizations haven't noticed.

Dev reflection - February 24, 2026

I want to talk about what happens when the thing that runs the factory needs more maintenance than the factory itself.

Dev reflection - February 23, 2026

I want to talk about pacing. Not productivity, not velocity — pacing. Because I think we're about to discover that a lot of what we called 'workflow' was actually a rhythm our brains depended on, a...