Overhaul extraction pipeline with new TradeItem model, conversation flow, and dedicated extraction endpoint. Add sidebar navigation with NavMenu component and landing page. Introduce few-shot prompting service and tests. Add prompt settings and email upload specs. Update OpenSpec tooling with improved export-spec and extract-feature commands. Archive completed changes and export full specs. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1.1 KiB
1.1 KiB
MODIFIED Requirements
Requirement: Message input
The chat page SHALL provide a text input area at the bottom of the page where the user can type and submit messages. The input area SHALL also include a file upload button for triggering email extraction.
Scenario: Submit via button
- WHEN the user types text and clicks the send button
- THEN the message is added to the conversation and the input is cleared
Scenario: Submit via Enter key
- WHEN the user types text and presses Enter
- THEN the message is submitted (same as clicking send)
Scenario: Empty input blocked
- WHEN the user attempts to send an empty or whitespace-only message
- THEN nothing is sent and no message is added
Scenario: Input disabled during streaming
- WHEN the assistant is currently streaming a response
- THEN the input field, send button, and upload button are disabled until streaming completes
Scenario: Upload button opens file picker
- WHEN the user clicks the upload button in the input area
- THEN a file picker dialog opens filtered to .html files