Innovation Engine — insight

Socratic Question Resurfacer

May 13, 2026

Ethan generates daily Socratic reflection questions from his commits (socratic-morning-brief, pondercard-generate) but past questions vanish after the morning brief. This tool resurfaces an unanswered question from 30/60/90 days ago on the tablet each Sunday, letting him see which past prompts still haven't been journaled on — turning ephemeral prompts into a longitudinal self-inquiry practice.

socratic-morning-briefpondercard-generatetablet-syncTCL-Note-tablet

Create ~/bin/socratic-question-resurfacer (bash, ~80 lines): (1) Scan ~/Tablet/socratic-briefs/*.md for questions written 30/60/90 days ago (date from filename). (2) Cross-reference ~/Tablet/journal-entries/ (or grep ~/notes/) to detect which were never journaled on — match by question keyword overlap. (3) Pick the oldest unanswered question, generate a fresh PDF via pondercard-generate with header 'You asked this 90 days ago — still unanswered:'. (4) Drop into ~/Tablet/Doc-Markup/inbox/ via tablet-sync. (5) Add cron entry: '0 7 * * 0 ~/bin/socratic-question-resurfacer' (Sunday 7am). Bats test verifies date parsing + keyword-match logic.

Built & Ready
End-to-end works against real data. The behavior is correct: today there's no 30/60/90d PDF, so it no-ops; sim'd 30d hit on 2026-06-07 picks a real question from 2026-05-08's pondercard.

## Summary

**Created:**
- `~/bin/socratic-question-resurfacer` (95 lines, executable) — scans `~/Tablet/morning-brief-<date>.pdf` and `~/Tablet/Inbox/pondercard-<date>.pdf` at exactly 30/60/90 days back from today, extracts questions via `pdftotext`, cross-references `~/Tablet/Notes/*.txt` OCR'd handwritten notes for ≥2 keyword overlap (only notes newer than the question count), picks the oldest unanswered question (90 → 60 → 30 priority), renders a wide-margin journal PDF with the header `You asked this <N> days ago — still unanswered:` to `~/Tablet/Inbox/resurfaced-<today>.pdf`, then triggers `tablet-sync --once`.
- `~/bin/socratic-question-resurfacer.bats` (6 tests, all passing) — covers: empty case, 90d pick, journaled-skip-then-fall-through, date-cutoff for notes (old notes don't count), no PDFs at non-30/60/90 marks, and pondercard PDFs in `Inbox/`.

**Cron installed:** `0 7 * * 0 /home/ethan/bin/socratic-question-resurfacer >> ~/.claude/socratic-question-resurfacer.cron.log 2>&1` (every Sunday 7am).

**Adaptations from plan:** the source dirs in the plan (`~/Tablet/socratic-briefs/*.md`, `~/Tablet/journal-entries/`, `~/Tablet/Doc-Markup/inbox/`) don't exist — the actual artifacts are PDFs in `~/Tablet/` and `~/Tablet/Inbox/`, and handwritten journaling lives as OCR'd `.txt` files in
Active Projects
innovation-engine, russ-telegram, linkedin-engine, bys-website, .claude
Category
insight