Repository navigation
Hide decided decisions without prose from the document, and owe a review when one is answered - #548
Conversation
|
Review: Looks good. Two small follow-ups below, and it needs a rebase now that #540 has merged. I checked it in the browser on a fake-Planner server (desktop 1440×900). In a blank document with three answered Server
Client
#540 conflict. #540 is already merged, so this PR goes second. The hash renewals are fine. CI: all 5 jobs pass on 26e264b (format/lint/types/tests, e2e, container, CLI, CLI Windows). |
2752b7f to
11fc04b
Compare
A question asked into a blank document has no blocks to point at. Its
empty anchor set was stored as it read while open (pending: false), so
once answered it looked reviewed and deliberately empty: "No related
text", and absent from anchors_pending, so nothing asked the Planner to
write or link its prose.
Answering now marks each set that points at nothing as pending
("missing"), and relays the room's relationships so readers see the
review is owed.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
In the document a decided card now shows only through the prose it lives in (margin marker and wash). Pending, deliberately empty and orphaned decisions draw nothing inline; their projection nodes stay, and their full cards stay in Decisions. A deck still settles its decided members while it holds an open one. - While a Planner turn runs, or a conversation write-up job is writing, for hidden decisions, the first of them shows one quiet line: "Writing up N decisions…". - A document whose only blocks are hidden decisions shows the empty document placeholder in its first empty paragraph, where typing goes. - A conversation write-up's progress and Retry move to its Decisions card. - "Linking…" shows only while a Planner turn runs; otherwise "Not linked yet". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The fake Planner gains ASK-DECISIONS THEN-WRITE, which writes and links a paragraph per answered decision after a pause, so the write-up line can be seen and then replaced by prose. Suites that read settled lines in the document now expect nothing there. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The reviewed dynamic owners keep the same data flow. question-view.tsx's Related wrapper, title link and callout classes are unchanged; it only gains a host relation note. plan-editor.tsx's empty and root classes are unchanged; the placeholder text moved to a local. questionnaire.tsx keeps decision-collapse with the presence class, and the pointing spreads carry the same props. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Answered cards without prose no longer draw anything in the document, so the spacing suite uses expired ones: still separate cards, never decked. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…t only unseen write-ups With #540 a deck shows its decided members at full size and the document hides the rest, so nothing draws the settled line any more: remove it. - While a document is blank behind hidden decisions, its first empty paragraph keeps its normal size, so the placeholder sits where the empty document's does, and Backspace or Delete has nothing to remove instead of leaving a block cursor beside an invisible decision. - "Writing up N decisions…" leaves out decided cards a deck still draws. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Data flow is unchanged: questionnaire.tsx keeps decision-collapse with the presence class and the same pointing spreads into Decided and Undecided (the removed settled line had no reviewed class); plan-editor.tsx's empty and root classes are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ecisions Answering a deck's last open card dissolves it, and its decided cards now draw nothing, so focus fell to the page. The caret goes to the start of the block after the run, or the document's first paragraph when nothing follows, and a page-wide polite status says "Decision saved". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
questionnaire.tsx keeps decision-collapse with the presence class and the same pointing spreads; only the deck's onLeave handler changed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
11fc04b to
0220a61
Compare
Maggie answered one decision in a blank document and was left with a lone "⤭ Decided: … · @MaggieAppleton / No related text" line. While the Planner writes up several answers, the document showed a stack of these lines too.
Why it said "No related text"
When the Planner asks a question in a blank document, the question has no blocks to point at. The empty anchor set gets stored while the question is open (
pending: false). Any commit'srebasesaves it as it reads. Once the question is answered, that set reads as reviewed and deliberately empty. So the card says "No related text", and the question never appears inanchors_pending, which means nothing asks the Planner to write or link its prose. The fake Planner'sASK-DECISIONSreproduces this exactly (screenshot below).Fix (server): answering a decision now marks each anchor set that points at nothing as owed (
pending,missing) and sendsplan:anchorsto the room. A decision that already points at prose is unchanged.What the document shows now
Before / after
Maggie's case: a blank document with one answered decision.
It stays fully visible in Decisions:
Several decisions waiting on prose:
The same flow when the Planner ends its turn without writing: the document is blank (placeholder) and Decisions says the answers are not linked yet.
A linked decision still shows inline, as its marker:
Tests
cardPresentationfor inline, deck and list. Document visibility for each relationship state (pending, empty, orphaned, linked). ThewritingProsepredicate. The write-up Retry on the Decisions card.Anchors.answer. A durability test that a question asked into a blank document still owes a review once answered, and that the change is relayed.ASK-DECISIONS THEN-WRITEfake Planner shows "Writing up 3 decisions…" and then the linked prose. Settled-line expectations are updated in the decision-marker, icon-size, inline-deck, sidecar-card-states and decision-prose suites. I ran the harness, decision-marker, icon-size, inline-deck and sidecar-card-states suites locally against my own servers.decision-prose.e2e.tspassed all 12 cases in the manual conversation-plan configuration after synchronizing Document navigation, persisted history expansion, and the collapse/reopen test with real browser animation.Notes
InlineCard'sdeckprop). The settled line and its tests are removed.🤖 Generated with Claude Code
Landing verification
The author's newer caret handoff and settled-line removal are preserved. A regression fix now skips hidden accepted-comment projections when finding the editable block after a dissolving deck; the new headless test failed before the fix and passes after it. Answered empty anchors remain pending after storage restart.
Fresh validation: CI, types, production build, explicit changed-source lint, 102 focused units, and both browser caret handoff cases pass on the combined UI base. The earlier full 21-case deck suite and all 12 manual decision-prose cases passed. Assertions and committed timeouts remain enforced. Full GitHub CI is running on the final head.
Final landing: full GitHub validation, browser tests, and both CLI checks passed with the caret regression fix. The shared container size failure is repaired by #553. All twelve source patches remain identical on current main
0c525fed; fresh local project checks and types pass, and lane audit confirms the existing option-lifetime guard. Admin rebase merge skips repeating full CI after this patch-preserving base update.