fix(home): send starter cards instead of filling the composer
Independent Staging Quality Gate / validate (push) Successful in 11m21s
Independent Staging Quality Gate / publish (push) Successful in 17m56s

Clicking today's reading or a topic card should open a consultation and wait for the model, not leave the question in the input box.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Jesse_Chen
2026-08-21 22:02:40 +08:00
parent cf168a54c0
commit 649ba32034
7 changed files with 70 additions and 18 deletions
@@ -6,7 +6,7 @@ Make the “今日星语” and “生时校正” cards behave like concise pro
## Approved interaction
- Clicking anywhere on the 今日星语 card places `深入看今日` in the composer.
- Clicking anywhere on the 今日星语 card starts a consultation session with `深入看今日` (or the no-minute public daily question) and waits for the model. It does not place the question in the composer.
- Clicking the 生时校正 card places `生时校正` before a result exists and `再次校正` after a candidate or confirmed time exists.
- Each card remains a semantic `article`; one stretched native button covers the card, and a quiet action label with an arrow sits at the lower-right edge.
- The cards contain no nested visible button, so mobile layouts do not create a large control in the middle of the content.
@@ -28,7 +28,8 @@ Normal typed questions omit `entrypoint` and retain their current behavior.
## Composer and transcript behavior
- Card selection stores the short visible question plus an internal entrypoint enum in React state.
- Homepage daily and topic cards send immediately on an empty consultation session (or a newly created one). They do not store the question in the composer first.
- The send path still attaches the closed entrypoint enum for the daily card so the server can expand the public label.
- Any manual edit to the composer clears the entrypoint enum, so edited text is treated as an ordinary user question.
- Sending clears both fields.
- Undo/cancel restores both fields, preserving the same behavior when the user retries.
@@ -54,4 +55,4 @@ Normal typed questions omit `entrypoint` and retain their current behavior.
- Unit tests prove each entrypoint selects a server expansion without pinning natural-language prompt prose.
- Route contract tests prove the enum is optional, invalid values fail, and the expanded question reaches both Agent and tool input.
- Client tests prove the browser source no longer contains the internal daily or rectification prompt builders, manual editing clears intent, and cancellation restores it.
- Browser QA verifies whole-card click, short composer text, keyboard focus, and desktop/390px mobile layout.
- Browser QA verifies whole-card click starts the consultation, public transcript labels stay short, keyboard focus, and desktop/390px mobile layout.