- Add collectAllRequiredVars to traverse dep tree and find missing vars
- Add promptForAllVars to prompt for all vars at once
- Store prompted vars on Executor and inject into all RunTask calls
- Remove redundant GetTask call in collectAllRequiredVars
- Make SyncWriter conditional on TTY presence
- Add SyncWriter to synchronize stdout/stderr writes with prompts
- Add promptMutex to serialize interactive prompts
- Keep rawStdout/rawStderr for BubbleTea to avoid deadlock
- Update test Taskfile with nested deps scenario
Add support for interactive variable prompting using Bubble Tea.
Variables can be marked as `interactive: true` in the requires section,
and users will be prompted to enter values for missing variables when
running in a TTY.
Features:
- New `interactive` field on required variables
- Bubble Tea-based text input and select prompts
- --no-tty flag to disable interactive prompts
- Automatic skip when variable is already set
* docs: Update Remote Taskfiles default values
This change updates the documentation for [Remote Taskfiles > Configuration](https://taskfile.dev/docs/experiments/remote-taskfiles#configuration) for `timeout` and `cache-expiry` to match the defaults in code.
* docs: Update `cache-expiry` default to 0s
* docs: Update executor.go comment
Fix doc comment to indicate that cache expiry default duration is 0.
* feat: use TaskTest for executor tests
* feat: more tests
* feat: separate tests for executing and formatting with new functional options that work for both test types
* feat: formatter tests
* refactor: more tests
* refactor: executor functional options
* refactor: minor tidy up of list code
* fix: WithVersionCheck missing from call to NewExecutor
* feat: docstrings for structs with functional options
* refactor: prefix the functional options with the name of the struct they belong to