--- status: shipped created: 2026-08-13 owner: kandev --- # Task-create advanced settings disclosure ## Why The searchable dependency selector is useful, but it is not needed for most new tasks. Keeping it visible in the main form adds a full selector row to a dialog whose primary job is to collect the task request and workspace context. The create dialog should keep the common path compact while preserving a clear place for dependency selection and future less-common options. ## What - Add a compact, collapsed `Advanced settings` disclosure to the bottom of the create-task form, below the model, executor, and workflow selector controls. - Render the disclosure label in muted, very small text with a subtle chevron. The whole row remains a semantic button so the small visual label does not reduce the interaction target. - Start the disclosure collapsed for a new create-dialog instance. Expanding it reveals the existing dependency selector. The selector keeps its current `No dependency` default, task icon treatment, search, help action, and multiple-predecessor behavior. - Show the dependency selector with a muted `Depends on` label and a contextual help control that explains the dependency wait and automatic-start behavior. - Keep the label and selector in the same setting column. On desktop, render advanced settings as a two-column option grid so each row can hold two settings; on narrow screens, collapse the grid to one column. - Keep the dependency selector's `blockedBy` state and disabled behavior unchanged. Collapsing the section must not clear a selected dependency, and reopening the section must show the same selector value. - Keep the existing workflow selector and its visibility rules unchanged. The new disclosure replaces only the dependency's always-visible presentation. - Make the expanded content a single extensible advanced-options region. Future advanced controls can be appended inside that region without adding another top-level row to the dialog. Do not add placeholder future controls in this change. - Show the disclosure only for an unstarted task in create mode, matching the dependency selector's existing availability. Session mode, edit mode, and started-task forms do not gain a new advanced-settings row. - Keep all new trigger copy localized through the task translation namespace. ## Interaction contract ### Collapsed state - The row is visible at the bottom of the create-task settings, below the model, executor, and workflow selector controls. - The row shows the localized `Advanced settings` label in a muted, subtle size and a direction indicator. - The dependency trigger and its `No dependency` text are not visible while the section is collapsed. - The row exposes `aria-expanded="false"` and a stable control/test identity. ### Expanded state - Activating the row with pointer, touch, Enter, or Space expands the content. - The dependency selector is visible inside the content with its existing searchable picker behavior. Its trigger uses the available row width on narrow screens and a compact, constrained width on desktop. - The selector is introduced by a localized `Depends on` label with an accessible help control. Hovering or focusing the control explains the dependency wait and automatic-start behavior. - The row exposes `aria-expanded="true"`, and the expanded content is connected to it through the normal collapsible relationship. - Closing the section preserves every selected predecessor. Reopening it reveals the existing selected title or localized count. - The selector's search-row info control continues to explain dependency wait behavior without changing the disclosure state or selection. ## Mobile design contract - Desktop outcome: the create dialog keeps the workspace or worktree context, then provides a compact advanced-settings entry that reveals dependencies. - Mobile entry point: the same inline disclosure in the full-screen task-create form. A new drawer or separate mobile navigation surface is not needed for one short advanced field. - The nearest shipped mobile exemplars are the task-create selector controls, `task-create-dialog-pill.tsx`, and the existing dependency picker. Reuse the project's contained popover and command-list behavior. - The disclosure trigger has a mobile hitbox of at least 44 CSS pixels even though its label uses a subtle text size. The expanded dependency trigger and dependency help control and task rows retain their existing touch-safe sizing. - The task-create form remains the outer scroll owner when the collapsible is closed or expanded. The dependency command list remains the inner scroll owner while its picker is open. - The expanded content uses a responsive option grid. On desktop, each row can contain two settings, and each setting keeps its label/help to the left of its selector in the same column. On narrow screens, the grid collapses to one column and must not introduce document-level horizontal overflow. - State, selection logic, candidate filtering, and payload behavior are shared across desktop and mobile. Only the disclosure geometry and touch presentation are responsive. ## Scenarios - **GIVEN** a new task create dialog, **WHEN** the form first renders, **THEN** the advanced-settings row is visible and collapsed, and the dependency trigger is not visible. - **GIVEN** the collapsed advanced-settings row, **WHEN** the user activates it, **THEN** the row reports expanded and the dependency selector appears below the model, executor, and workflow selector controls. - **GIVEN** the expanded selector with no predecessors, **THEN** its trigger shows the existing `No dependency` label and dependency icon. - **GIVEN** a selected predecessor, **WHEN** the user collapses and reopens the advanced section, **THEN** the selected task title or localized dependency count remains visible in the selector and the form state is unchanged. - **GIVEN** a workflow selector that is visible, hidden for a single workflow, or locked by a caller, **WHEN** the create dialog renders, **THEN** the workflow's existing behavior is preserved and the advanced dependency control remains available under the same create-mode rules. - **GIVEN** session mode, edit mode, or a started task, **WHEN** the form renders, **THEN** no advanced-settings disclosure is added. - **GIVEN** a mobile create dialog, **WHEN** the user taps the disclosure and opens the dependency picker, **THEN** the controls remain reachable, the picker is contained in the viewport, and the document has no horizontal overflow. - **GIVEN** selected predecessors, **WHEN** the user submits the task after using the disclosure, **THEN** the existing `blocked_by` payload contains the same IDs and no dependency API contract changes. ## Out of scope - Changing dependency persistence, AND semantics, candidate derivation, archived-task filtering, or automatic task-start behavior. - Changing the dependency selector's search, task icons, info help, or picker interaction except where needed to mount it inside the disclosure. - Adding dependency editing to task detail, Kanban card menus, or MCP. - Adding or designing future advanced controls beyond the extensible content region. - Changing workflow, agent, executor, repository, or branch selector behavior.