Add a custom bounding range for flexible wishes, and auto-save edits
Flexible wishes could only be bounded by one of four season presets, a deliberate v1 scope cut. They can now take any month/day range, including one that wraps the year end the way the jul preset does. The range stays a search bound -- the engine still chooses the placement inside it at propose time. February is capped at 28 days rather than 29: the backend builds a concrete date(year, month, day) per anchor year, so a Feb 29 bound would raise in a non-leap year. Per-row Save buttons are replaced by a debounced auto-save (800ms), which is what prompted this: clicking save on each individual field was the reported annoyance. A draft that has not actually changed never saves, so a refetch cannot trigger a further save -- the save/refetch/save loop is guarded explicitly and has a regression test. An invalid draft (bounding range shorter than the wish) holds the edit locally and shows why rather than saving. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RXMhc9nT6sNz1SL4j8dznL
This commit is contained in:
@@ -210,9 +210,33 @@
|
||||
|
||||
.wish-editor__actions {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: var(--sp-3);
|
||||
}
|
||||
|
||||
.wish-editor__wrap-note {
|
||||
flex-basis: 100%;
|
||||
font-size: var(--fs-sm);
|
||||
color: var(--c-text-muted);
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.wish-editor__save-status {
|
||||
font-size: var(--fs-sm);
|
||||
}
|
||||
|
||||
.wish-editor__save-status--saving {
|
||||
color: var(--c-text-muted);
|
||||
}
|
||||
|
||||
.wish-editor__save-status--saved {
|
||||
color: var(--c-success);
|
||||
}
|
||||
|
||||
.wish-editor__save-status--error {
|
||||
color: var(--c-danger);
|
||||
}
|
||||
|
||||
/* Plan results */
|
||||
.plan-results__preview-banner {
|
||||
background-color: var(--c-accent-weak);
|
||||
|
||||
Reference in New Issue
Block a user