Repository navigation
fix(plans): make the inline schedule preview a live read-only panel - #1177
Conversation
The inline panel imported buildLocalScheduleIntent from the dialog module, which is slated for removal. Move it and its input type to plan-schedule-intent.ts with their own tests so the dialog can go without breaking the panel. Part of #1153 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The read-only panel kept stale plots on invalid input, ignored a ramp radio change after an invalid start, rebuilt on unrelated fields and showed five disabled controls plus a roadmap sentence. Rebuild only on the ramp radios and the four schedule inputs, clear the plot and show the message when the input is invalid, hide the unused controls, and announce one polite status (summary or validation message) updated on change while the plot follows input. The scroll area is a described region with a fixed minimum height so the layout does not jump. Part of #1153 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The Create modal no longer shows the roadmap sentence, disabled date controls or a local-change counter. Assert the hidden controls, the described scroll region and the live-region summary instead, so the spec follows the panel cleanup. Part of #1153 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The status node was both the visible summary and the live region and was only written on change, so while typing a recovered plot sat next to the old error text and a valid edit showed a stale target. Keep a visible summary updated on every build and a separate visually hidden polite status updated on change only. Hide the plot caption and region while the input is invalid. Rewrite the no-rebuild test so a rebuild would be observable, and drop a redundant e2e assertion. Part of #1153 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The scroll region sets display:flex, which overrides the hidden attribute, so an invalid input left an empty bordered 372px box visible. Add a [hidden] rule and an e2e check that clearing coverage hides the region and caption and a valid value restores them. Part of #1153 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Merge gate at
|
Summary
Part of #1153 (PR1 of 3). The Create form already shows an inline schedule preview. This PR makes that panel a proper live, read-only preview. Edit mode, the layout and removing the Preview schedule dialog follow in PR2 and PR3.
b99cdf1drefactor(plans): extractsbuildLocalScheduleIntentintoplan-schedule-intent.ts(PlanScheduleIntentInput), the same names the parked feat(plans): plan editor hardening deferred from #631 (atomic Save, editor API, managed dates) #1057 editor branch uses. The panel and the dialog both import it, so the dialog can be deleted later without touching the panel.fd520831fix(plans): in read-only mode the panel:role=statusregion that carries either the summary ("Target 80% in 4 steps, … (UTC)") or the validation message. The oldrole=alertis dropped in read-only mode.role=region, described by the status line.2c8fc969test(e2e): updates the Create assertions inplan-schedule-preview.spec.tsto match. The dialog assertions are unchanged.The editable mode (
editableDates, used only by tests today) keeps its behaviour. #1153 records that it is deferred to #1057.Size
Counted as added + deleted from
git diff --numstat origin/main...HEAD, tests and e2e included. 3 commits: +75/-35, +78/-15, +9/-7.Verification
Evidence is posted as PR comments.
🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Bug Fixes