Synthesis: March 20, 2026
Cross-project synthesis: March 20, 2026
Nine projects active. The headline: Authexis shipped 30 native macOS app issues in a single session. Prakta pivoted its entire product model. Eclectis closed 20 issues in a cleanup sprint. Dinly added a cadence system. SimpleBooks began its Rails-to-Next.js migration design. The fleet now has 16 projects.
Authexis — 32 issues closed, massive macOS native app push
The day split into two sessions. The first was a web hardening pass: filtering automated scan entries from the dashboard activity feed, adding a push-to-front button for social queue posts, and a scout that found a missing admin auth check, unsanitized HTML on the blog page, 10 routes without error boundaries, and a 1,487-line admin actions file needing decomposition.
The second session was a sustained grind through the v1-apple milestone — 30 issues shipped across the macOS/iOS native app. The work organized around three themes. Foundation and polish: a reusable ToastOverlay component became the standard feedback mechanism, feeds renamed to Sources, toggle switches replaced status dots, segmented pickers replaced filter chip rows, accessibility labels added to icon-only buttons, and destructive action confirmations got proper context.
List view enrichment touched every major screen. Articles gained status/source filters, per-article action buttons, and source labels preferring feed names. Ideas got summary text and a sort picker. Content list got type filter pills, type icons, cleaned-up stage/type hierarchy, and formatted dates. Social queue got character counts, post numbering, and retry feedback. Blog queue got search, filters, table headers, and an “add to queue” content picker.
Briefings got critical fixes: a missing Hashable conformance silently broke the three-column layout, briefing rows got emailed status badges, and toolbar buttons for “Generate briefing” and “Run full pipeline” were backed by new REST command endpoints (POST /api/v2/commands). Briefing detail got a PDF download button that renders via WKWebView. Source rows got inline thumbs up/down rating and edit. Sources got a newsletter address banner with copy-to-clipboard.
v1.5 milestone at 42/45 closed.
Prakta — 27 issues shipped + complete product vision pivot
The biggest outcome wasn’t code — it was the brainstorm that fundamentally reshaped Prakta’s model. Through an extended conversation, the “serve, don’t show” paradigm was established: the user never sees a task list. Prakta serves one chunk at a time. Check out / check in, like Subversion. Energy as a number (not just 4 states). One cycle length per user. Decomposition at ingestion. No priorities — energy + mode + grain chain only. PRODUCT.md was rewritten to capture the full model with all edge cases resolved: partial check-ins, empty queues, multi-day tasks, the escape hatch problem, “not now” spirals.
Every schema change and core function the serve model requires shipped: single cycle length (#133), cycle-sized decomposition at parse time (#134), energy_cost on tasks (#157), numeric energy budget at day-start (#158), mode preference (#140), started_at timestamps (#153), checkin_notes (#163), source task completion rollup (#137), and the serve API itself (#151) — a deterministic scoring function that picks the best chunk without calling Claude.
UX changes: task list hidden by default with /queue escape hatch, narrative queue via Maya “What’s ahead?” button, daily cap enforcement, weekly reflection report, homepage copy rewritten, deadline_weight removed for the pure no-priority model, onboarding redirects to /today.
Earlier: production 500 fix, app nav bar, sign-out button, screenshot ingestion via Claude Vision, task edit/delete, input length limits, JSON error handling, sequencing validation, daily plan persistence, learning insights after wrap-up, task history page.
Eclectis — 20 issues closed, cleanup sprint
A sustained automated scout → triage → prep → exec pipeline run cleared 20 issues across the full stack. Performance: composite database indexes for frequent query patterns, N+1 fix in admin engagement signals, silent failure fixes in server actions. UX: downvoted articles now get archived and hidden from the feed, users can add optional notes to votes, newsletter detail page shows full interactive article cards with voting and bookmarking. Codebase health: dead code removal (orphaned dashboard route, unused JSON-LD component, dead Python text utilities), Next.js 16 proxy convention fix, Sentry environment variables configured in Vercel.
The time-decayed ranking system shipped (#337) — the issue Paul filed this morning. Articles now blend score with recency so fresh high-scoring content surfaces above stale top-scorers. A notable false positive was caught: scout flagged “learned preferences aren’t used in scoring” but tracing confirmed the feedback loop is intact through an indirection via a shared module.
Backlog down to 3 parked items. All milestones closed.
Dinly — Cadence system + 18 issues closed
Two scout passes identified 13 issues across code quality, UX gaps, and missing features. All executed in a single session. The ranking engine got its first 17 unit tests. Performance fixes: N+1 candidate updates batched, redundant family_members subqueries eliminated. Planning flow got empty states on every step, form validation feedback, and loading/disabled states.
The biggest new feature was the weekly cadence system — a planning timeline derived from 4 household settings (week start day, meals per week, finalize lead time, voting window). A pure computation function derives all milestone dates. The settings page got a “Planning cadence” card with live timeline preview. The cycle detail page shows a horizontal step indicator. A daily Vercel cron job sends context-appropriate nudge emails: draft reminders to cooks, voting reminders to unvoted members, finalize reminders when it’s time to curate.
Email notifications were wired in — they were fully built but never connected. Opening voting and finalizing plans now send branded emails.
Supabase configured for production: redirect URLs, SMTP, email templates, and migration applied via supabase db push.
Polymathic-h — CSP header + newsletter edition 16
Five scout issues shipped: Content-Security-Policy header built from a full audit of every external resource, newsletter-send.sh error handling, mobile email input overflow fix, template guards for optional params, og:locale meta tag.
A new essay published: “Your project management tool was made for a non-human factory” — arguing that every PM tool descends from Taylor’s Scientific Management and fails at knowledge work. Newsletter edition 16 was staged from this essay and scheduled for Tuesday March 24 at 11am ET via Brevo campaign 32.
Phantasmagoria — First release with visible effects
Generated Celestial Equinox, the first release using the new effect types (deposits, tech grants, research options). Confirmed the effects render in output: 9 planet deposits, 9 tech grants, 7 research options across 34 events. Stellaris 4.3 “Cetus” compatibility verified — the stat squish didn’t break anything. Fixed a validator bug where 1-option auto-resolve chapters were rejected. Ready for playtest.
SimpleBooks — Migration design complete
The Rails-to-Next.js migration was designed but no code written. The session explored the existing Rails codebase (8 models, 12 controllers, AI-powered bank reconciliation, reports, CSV import, invoicing), stripped out multi-tenant layers that don’t apply to a single-user tool, and decided on SQLite via Drizzle ORM for zero external dependencies.
Critical discovery: the Postgres database isn’t running — the only data source is a November 2025 dump file. The migration script must restore from this dump, remap all IDs for SQLite, and handle ActiveStorage receipt files. Design spec and 20-task implementation plan written. Two review rounds caught 14 issues.
Textorium — Smart quotes already implemented
Issue #51 (smart quotes) was investigated and found to be already implemented — SmartQuotes.swift with the complete algorithm was in place. Closed without changes. Board is now empty.
Textorium TUI — Smart quotes + security + performance
Six issues closed. Smart quotes (#98): pressing Q converts straight quotes to curly quotes, -- to em dashes, ... to ellipses, with code span detection and 7 new tests. Security fix: path traversal and YAML injection in create_post(). Performance: cached visual line count computation, eliminated Vec allocations in the hot path. Dead code: removed tokio and ~150 transitive crates (async runtime was never used). Config.rs got 16 tests. Error handling: WalkDir errors now surface instead of silently hiding posts. Test count went from 28 to 47.
Cross-cutting themes
Native app push. Authexis shipped 30 macOS/iOS issues in one session. The pattern of building web-first then wrapping with native UI is proving productive — the API endpoints, data models, and business logic are already solid from the web app.
Product vision pivots in production. Prakta didn’t just iterate — it fundamentally changed what the product is. “Serve, don’t show” is a different philosophy from “here’s your task list.” The fact that the schema changes, API, and UX for this pivot shipped in the same session as the vision conversation shows the velocity the fleet enables.
Automated pipeline proving itself. Eclectis ran the full scout → triage → prep → exec pipeline multiple times, clearing 20 issues without human intervention. The pipeline is no longer experimental — it’s the default operating mode.
Cadence and scheduling. Dinly’s weekly cadence system and Prakta’s daily serve cycle both represent the same insight: the app should know when things need to happen, not wait for the user to decide. The tools are becoming proactive.
Migration planning. SimpleBooks is the first Rails-to-Next.js migration in the fleet. The design phase correctly identified the highest risk (data migration from a cold Postgres dump) before any code was written.
Carry-over
- Prakta: Build serve UI (#152) — backend complete but /today page still shows old multi-cycle view. Deploy to production.
- Dinly: Test full planning flow end-to-end in browser. Set CRON_SECRET in Vercel. This has carried since March 19.
- Authexis: Verify auth flows in production (carried from March 18, 3 sessions). Visual QA pass on macOS app after 30-issue push.
- Eclectis: Confirm Sentry source maps uploading, PostHog events firing.
- SimpleBooks: Begin implementation — scaffold Next.js, Drizzle schema, data migration script.
- Polymathic-h: Confirm newsletter 16 delivery March 24. Update Brevo sender name.
- Phantasmagoria: Playtest Celestial Equinox on Stellaris 4.3.
Risks
- Prakta and Dinly have zero tests on most features. Prakta has 50+ PRs with no test coverage. Dinly now has 33 tests but only on ranking and cadence.
- SimpleBooks data migration. The Postgres dump is the only copy of 6 months of financial data. Any migration bug loses data.
- Authexis macOS app not visually QA’d. 30 issues shipped without a comprehensive click-through. Needs a visual pass.
- Dinly full flow still untested. The Draft → Vote → Curate → Resolve → Days → Shopping flow has been carry-over for two days.
By the numbers
| Project | Issues closed | PRs merged | Milestone status |
|---|---|---|---|
| Textorium | 1 | 0 | v1.5: 18/18, board empty |
| Authexis | 32 | 32 | v1.5: 42/45 |
| Dinly | 18 | 18 | All phases complete |
| Eclectis | 20 | 20 | All milestones closed |
| Phantasmagoria | 0 | 0 | Release generated, ready for playtest |
| Polymathic-h | 5 | 5 | April: 2/3 |
| Prakta | 27 | 27 | Product pivot + serve model shipped |
| SimpleBooks | 0 | 0 | Design spec + plan complete |
| Textorium TUI | 6 | 6 | 47 tests, 3 backlog items |
| Total | 109 | 108 |
109 issues closed across 9 projects. Three consecutive days over 100. A product vision pivot, a native app marathon, and a new project entering the fleet. Day 3 of the acceleration.
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 product changed its mind
A product pivoted its entire philosophy mid-session — from 'here's your list' to 'here's your next thing.' The code shipped in the same conversation as the idea. That's not iteration. That's something else.
Your project management tool was made for a non-human (AI) factory, not for you
Every project or task management tool on the market descends from Frederick Taylor's factory floor. The assumptions were wrong then. They're catastrophic in the Age of AI.
The last mile is all the miles
Building the product is the fun part. Deploying it, configuring auth, pasting email templates into dashboards, rotating leaked API keys — that's where the work actually lives.