feat(capture): optional titles — let the AI name captures (Phase 2D)#21
Merged
Conversation
Phase 2, piece D. Capturing a thought or pasting a transcript required typing a
title even though extraction produces a better one and the backend already
backfills empty titles.
- QuickCaptureForm: submit enables on a title OR a description (file mode
unchanged). Title relabelled "(optional)" with a hint placeholder.
- capture/route: the title-required check relaxes to require title OR
description OR attachment — only an entirely-empty capture is rejected
("Add a title or some content").
- capture/process meeting branch: backfill the parent title from the LLM's
meeting_title when none was given (single-node + document branches already
backfill; this brings the call/transcript path to parity).
Tests: QuickCaptureForm now covers description-only submit (title optional) and
both-empty disabled. tsc 0, lint 0, 562 pass.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Last Phase 2 piece. Pasting a transcript or jotting a thought required typing a title, even though extraction already produces a better one and the backend already backfills empty titles for single-node and document captures.
Changes
QuickCaptureForm: submit enables on a title or a description (file mode unchanged). Title relabelled "(optional)" with a hint placeholder ("Leave blank — the AI will name it from your notes").capture/route.ts: the title-required check relaxes to require title OR description OR attachment — only an entirely-empty capture is rejected ("Add a title or some content").capture/process(meeting branch): backfill the parent title from the LLM'smeeting_titlewhen none was given. The single-node and document branches already backfilled; this brings the call/transcript path to parity, so untitled call captures still get a name.Test plan
QuickCaptureForm: submit enabled with description-only (title empty); disabled when both empty; existing submit/data tests still greentsc→ 0 ·eslint .→ 0 ·vitest run→ 562 passSpec:
docs/superpowers/specs/2026-06-12-optional-capture-titles-design.md. Completes Phase 2.