# SDT Roadmap / Kanban ## Done (v1.2 Stabilization) - [x] Python-first runtime for diagnostics/build wrappers - [x] Config bootstrap generator for missing `devtool.json` - [x] Workflow-first execution + dual schema support - [x] Strict legacy mode default (`targets`-only blocked) - [x] Compatibility escape hatch (`SDT_LEGACY_MODE=compat`) - [x] Auto-generated migration preview (`devtool.generated.workflows.json`) - [x] In-app migration action: `Migrate legacy targets -> workflows` - [x] Centralized requirement inference (`RequirementResolver`) - [x] Installer planning precedence + fallback resilience - [x] Windows resolver hardening (`%VAR%` PATH expansion) - [x] Resolver tracing surfaced in probe details - [x] Secure diagnostics default (allowlist-only env capture) - [x] Workspace external project add flow - [x] Shared run event stream (`RunEvent`) across workflow + debug execution - [x] TUI event rendering layer wired on top of core run events (GUI-readiness slice) - [x] Persist run-event stream to JSONL for external GUI/client consumption (`.sdt/events/*.jsonl`) - [x] TUI events viewer for persisted run-event logs (`SYSTEM -> View run events`) - [x] Config doctor (`SYSTEM -> Run config doctor`) - [x] Doctor autofix actions (create missing working dirs + invoke legacy migration) - [x] Rich probe diagnostics panel in workflow failure summary - [x] Enhanced Tauri fallback guidance (Windows/macOS/Linux package manager aware) - [x] First-run setup wizard + completion state marker (`.sdt/setup-state.json`) - [x] Toolchain hardening: probe diagnostics + toolchain doctor + auto-fix missing tools - [x] Workspace-level defaults file layering (`sdt-defaults.json`) above per-project `devtool.json` - [x] Add dedicated TUI "Events" viewer for last run - [x] Add doctor autofix actions for common issues (missing dirs, legacy schema migration) - [x] Env profiles (`dev`, `ci`, `release`) with deterministic merge order and runtime selection - [x] Managed secrets redaction policy for diagnostics bundles (env + output patterns) - [x] Setup wizard for first run (bootstrap + tool fixes) - [x] Improve setup wizard to handle more edge cases and missing tools for projects - [x] Add support for more project types - [x] Add support for more tool types - [x] Add support for more environment types - [x] Add support for more environment variables - [x] Favorites/quick actions across projects - [x] Legacy PowerShell fallback made opt-in (`SDT_PWSH_LEGACY_FALLBACK=1`), Python reroute remains default - [x] Bootstrap now resolves dotnet working directory from nearest `.slnx/.sln/.csproj` in multi-project roots - [x] Bootstrap filters node/npm detection to runnable package scripts (avoids dependency-only `package.json` false positives) - [x] Action layer now skips non-applicable stacks (`npm`/`cargo`/`tauri`/`dotnet`) instead of hard-failing - [x] `publish-output.py` now auto-skips non-detected sidecar/web/gateway/tauri stacks in generic repos - [x] Add workflow route verifier script (`scripts/verify-workflow-routes.py`) for static path checks + optional headless execution replay - [x] Wire workflow route verifier into CI reliability matrix (`.github/workflows/reliability-matrix.yml`) ## In Progress (next focus) - [ ] Execute full OS matrix verification on Windows/Linux/macOS runners - [ ] Native GUI shell over headless core services (Tauri-first in v1.x; Avalonia re-evaluate later) - [x] GUI parity phase 1 bridge foundation shipped (`sdt bridge --stdio` + `DevTool.Host.Bridge`) - [x] GUI debug + failure UX slice shipped (debug run, failure card, run context/lifecycle panel) - [x] GUI history/events/env/doctor/setup-plan read views shipped via bridge methods - [x] GUI workspace project switcher shipped (configured projects -> set active context) - [x] GUI favorite quick action runner shipped (run favorite directly from workspace panel) - [x] GUI workspace/favorites search/filter/sort ergonomics shipped - [x] GUI "Switch + Run" one-click action shipped from configured projects list - [x] GUI view preferences persisted (workspace-scoped filters/sorts/context defaults) - [x] GUI workspace/favorites advanced grouping shipped (tool/path + project/workflow views) - [x] GUI workspace/favorites bulk actions shipped (bulk run filtered projects/favorites, bulk remove filtered favorites) - [x] GUI setup actions shipped (apply autofix dirs, apply legacy migration, apply recommended config with backup) - [x] GUI keyboard refinements shipped (`Ctrl+K` command palette, `?` shortcut help) - [x] GUI env profile editor shipped (select/load, set-active, create/update profile values) - [x] Create dedicated `src/DevTool.Host.Gui/TauriShell` scaffold to keep GUI work isolated from TUI/core - [x] Bootstrap first Tauri command bridge: `sdt workspace scan --json` - [x] Structural refactor to domain-separated projects under `src/` (`DevTool.Engine`, `DevTool.Runtime`, `DevTool.Host.Tui`) - [x] Add second Tauri bridge command: `sdt run --json` with live stream panel - [ ] Remove legacy PowerShell wrappers in v2 - [x] Add workspace project inventory model (all `.slnx/.sln/.csproj`) for GUI/TUI multi-project selector - [x] Expand GUI command palette coverage across workspace/run/setup/history/events/favorites actions - [x] Add full GUI env var definition editor parity (`env[]` model editing with validation) ## Next Sprint (v1.3 UX Foundation) - [x] Define stable event contract version (`run_event_version`) and publish schema docs - [x] Add `--json`/headless execution mode for workflow/debug runs (machine-readable progress + result) - [x] Add TUI command palette (`Ctrl+K`) for quick action/run/switch project - [x] Add unified failure card: `What failed`, `Why`, `Exact fix command`, `Retry action` - [x] Add non-interactive install mode for CI/headless (`SDT_NONINTERACTIVE=1`) - [x] Add per-run execution context block in TUI (`project`, `envProfile`, `cwd`, `tool resolution source`) - [x] Add cross-platform keybinding help screen (`?`) and normalize shortcuts across Windows/macOS/Linux terminals - [x] Add terminal capability fallback modes (no color/no unicode/no emoji safe rendering) - [x] Add workspace quick-action pinning from run results and events viewer - [x] Add run history browser with re-run from prior execution context ## v1.3 Reliability Matrix - [x] Add project-type matrix coverage tests (`dotnet`, `node/npm`, `tauri/cargo`) - [x] Add deterministic headless stop-reason/exit-code tests - [ ] Execute full OS matrix verification on Windows/Linux/macOS runners - [x] Publish reliability matrix runbook + results artifact in docs - Blocked in current local workspace: no `.git` repo context and no `gh` CLI/auth; execute from Git-connected checkout. - v1.4 policy: ship Windows/Linux, macOS delegated with checklist in `docs/matrix-status.md`. ## Cross-Platform UX Principles - [x] One mental model for all surfaces: `Plan -> Probe -> Prompt -> Execute -> Diagnose` - [x] Every failure must include a copy-pastable remediation command - [x] No blocking hidden prompts from package managers (always explicit/non-interactive flags where possible) - [x] Keep TUI and future GUI on the same core events/state, not duplicated execution logic - [x] Preserve deterministic behavior across shell/env differences via explicit working directory + env profile display - [ ] Remove legacy PowerShell wrappers in v2 ## Current Milestone Status - v1.1 expansion items shipped partially (debug profiles + diagnostics + workspace add external) - Robustness Sprint v1.2: **complete** - v1.3 workstreams A/B/C: **complete** - v1.3 workstream D: **in progress** (matrix test suite implemented; cross-OS execution pending) - v1.3 UX foundation backlog items: **complete** - Remaining gaps for broader AIO vision are GUI shell, cross-OS matrix run completion, and advanced orchestration scale. ## GUI Decision Record - [x] GUI runtime direction locked for current phase: **Tauri-first now** - [x] Keep headless core + JSON/event contracts as the shared backend authority - [x] Defer Avalonia shell implementation to a re-evaluation checkpoint after Tauri shell proves workflow/debug/event parity - [ ] Avalonia re-evaluation gate criteria documented and reviewed after first Tauri shell milestone