feat(FN-3105): add planning depth selection to planning flows

- Add planning depth controls and styling in PlanningModeModal with updated modal reentry behavior
- Thread selected depth through legacy frontend API calls and planning route handlers
- Extend planning prompt builder/runtime wiring to honor depth values for subtask planning
- Add route, planning, and modal tests covering depth selector behavior and validation

Fusion-Task-Id: FN-3105
This commit is contained in:
Fusion
2026-05-02 11:09:10 -07:00
committed by gsxdsm
parent 31022b2ec1
commit ffb71b7912
9 changed files with 371 additions and 17 deletions

View File

@@ -387,6 +387,58 @@
text-align: left;
}
.planning-depth-selector {
display: flex;
align-items: flex-end;
justify-content: center;
gap: var(--space-md);
max-width: 520px;
margin: 0 auto;
width: 100%;
}
.planning-depth-chip-group {
display: flex;
flex-wrap: wrap;
gap: var(--space-sm);
}
.planning-depth-chip.btn {
border-radius: var(--radius-pill);
background: var(--surface);
border: 1px solid var(--border);
color: var(--text);
min-height: calc(var(--space-lg) + var(--space-xl));
padding: var(--space-sm) var(--space-md);
}
.planning-depth-chip.btn:hover {
border-color: var(--todo);
background: var(--card-hover);
}
.planning-depth-chip-active.btn,
.planning-depth-chip-active.btn:hover {
background: var(--todo);
border-color: var(--todo);
color: var(--bg);
}
.planning-depth-question-count {
display: flex;
flex-direction: column;
gap: var(--space-xs);
align-items: flex-start;
font-size: 12px;
color: var(--text-muted);
}
.planning-depth-question-input.input {
width: calc(var(--space-2xl) * 2 + var(--space-xs));
min-height: calc(var(--space-lg) + var(--space-xl));
padding: var(--space-xs) var(--space-sm);
}
.session-lock-overlay {
position: absolute;
inset: 0;
@@ -1223,6 +1275,20 @@
border-radius: var(--radius-lg);
}
.planning-depth-selector {
flex-direction: column;
align-items: stretch;
gap: var(--space-sm);
}
.planning-depth-chip-group {
justify-content: flex-start;
}
.planning-depth-question-count {
align-items: flex-start;
}
.planning-deps-list {
flex-direction: column;
flex-wrap: nowrap;