feat(tui): complete v3.7.0 TUI milestone with PersonaRegistry and web mode #10637

Open
HAL9000 wants to merge 7 commits from feat/v370/tui-web-mode into master

7 Commits

Author SHA1 Message Date
HAL9000 f44d1bbd04 fix(tui): reject absolute paths in persona export/import and propagate typer.Exit
CI / lint (pull_request) Successful in 39s
CI / typecheck (pull_request) Successful in 1m3s
CI / security (pull_request) Successful in 1m15s
CI / quality (pull_request) Successful in 56s
CI / e2e_tests (pull_request) Successful in 5m10s
CI / build (pull_request) Successful in 48s
CI / integration_tests (pull_request) Successful in 6m59s
CI / helm (pull_request) Successful in 39s
CI / push-validation (pull_request) Successful in 28s
CI / unit_tests (pull_request) Failing after 8m55s
CI / docker (pull_request) Has been skipped
CI / coverage (pull_request) Successful in 13m25s
CI / status-check (pull_request) Failing after 5s
- registry.py: resolve_export_path/resolve_import_path now raise ValueError
  for absolute paths ("must be relative to current working directory"),
  fixing the two failing BDD scenarios in repl_input_modes.feature
- actor_run.py, actor.py: catch (click.exceptions.Exit, typer.Exit) so
  typer.Exit(code=2) from _resolve_config_files propagates with exit code 2
  instead of being swallowed by except Exception and re-raised as code 3
- Apply ruff format to actor_run_signature_resolve_steps.py,
  tui_persona_cycle_steps.py, state.py

ISSUES CLOSED: #10637
2026-06-11 13:15:41 -04:00
controller-ci-rerun 93707f08d2 chore: re-trigger CI [controller]
CI / push-validation (pull_request) Successful in 23s
CI / lint (pull_request) Failing after 36s
CI / helm (pull_request) Successful in 50s
CI / build (pull_request) Successful in 50s
CI / quality (pull_request) Successful in 1m1s
CI / typecheck (pull_request) Successful in 1m5s
CI / security (pull_request) Successful in 1m35s
CI / coverage (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 3m41s
CI / integration_tests (pull_request) Failing after 4m40s
CI / unit_tests (pull_request) Failing after 5m44s
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 3s
2026-06-11 01:51:17 -04:00
HAL9000 76710156eb fix(tui): resolve typecheck error and ambiguous BDD step definitions in TuiWeb mode
CI / lint (pull_request) Failing after 1m3s
CI / helm (pull_request) Successful in 29s
CI / typecheck (pull_request) Successful in 1m19s
CI / build (pull_request) Successful in 49s
CI / quality (pull_request) Successful in 1m12s
CI / security (pull_request) Successful in 1m28s
CI / coverage (pull_request) Has been skipped
CI / push-validation (pull_request) Successful in 25s
CI / integration_tests (pull_request) Successful in 5m41s
CI / e2e_tests (pull_request) Successful in 5m51s
CI / unit_tests (pull_request) Failing after 20m4s
CI / docker (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
- Fix Pyright reportInvalidTypeForm error in commands.py: change app parameter
  type annotation from CleverAgentsTuiApp (runtime variable) to Any
- Fix AmbiguousStep errors in BDD test suite:
  - Move shared helpers (_make_app, _get_combined_output) from
    actor_run_signature_resolve_steps.py to new actor_run_signature_helpers.py
    to prevent double-registration when actor_run_signature_cli_steps.py imports them
  - Remove duplicate step definitions from tui_persona_cycle_steps.py
    (a temporary TUI persona registry, set_active_persona, active_persona)
    that conflicted with tui_persona_system_steps.py
  - Fix ambiguous step in tui_persona_state_coverage_steps.py by renaming
    to 'a persona ValueError should be raised with message containing'
- Fix quoted parameter in tui_persona_cycle_steps.py log_message step
- Fix import ordering in actor_run_signature_resolve_steps.py for ruff compliance

ISSUES CLOSED: #10637
2026-04-23 14:15:53 +00:00
HAL9000 9b9d97ce6f fix(tests): remove 'tpscov' typo from persona state coverage step definition
CI / helm (pull_request) Successful in 40s
CI / lint (pull_request) Failing after 1m3s
CI / typecheck (pull_request) Failing after 1m35s
CI / push-validation (pull_request) Successful in 41s
CI / build (pull_request) Successful in 3m49s
CI / quality (pull_request) Successful in 4m23s
CI / security (pull_request) Successful in 4m47s
CI / coverage (pull_request) Has been skipped
CI / unit_tests (pull_request) Failing after 4m53s
CI / docker (pull_request) Has been skipped
CI / integration_tests (pull_request) Successful in 8m11s
CI / e2e_tests (pull_request) Successful in 8m18s
CI / status-check (pull_request) Failing after 3s
- Remove 'tpscov' prefix from step definition in tui_persona_state_coverage_steps.py
- Update corresponding feature file to use the corrected step name
- Fixes ambiguous step definition error that was causing test timeouts
2026-04-18 23:52:57 +00:00
HAL9000 c400e6ef65 feat(tui): implement web mode with --web flag for browser-based TUI access
CI / push-validation (pull_request) Successful in 26s
CI / helm (pull_request) Successful in 35s
CI / lint (pull_request) Failing after 1m18s
CI / typecheck (pull_request) Failing after 1m48s
CI / build (pull_request) Successful in 4m11s
CI / quality (pull_request) Successful in 4m58s
CI / unit_tests (pull_request) Failing after 5m15s
CI / security (pull_request) Successful in 5m20s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 7m42s
CI / integration_tests (pull_request) Successful in 8m18s
CI / status-check (pull_request) Failing after 3s
2026-04-18 22:44:50 +00:00
HAL9000 77b48a76df fix(tests): resolve ambiguous step definition in persona state coverage tests
CI / push-validation (pull_request) Successful in 36s
CI / helm (pull_request) Successful in 40s
CI / lint (pull_request) Failing after 1m8s
CI / build (pull_request) Successful in 3m52s
CI / quality (pull_request) Successful in 4m28s
CI / typecheck (pull_request) Successful in 4m40s
CI / security (pull_request) Successful in 4m55s
CI / coverage (pull_request) Has been skipped
CI / unit_tests (pull_request) Failing after 5m12s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 7m52s
CI / integration_tests (pull_request) Successful in 7m57s
CI / status-check (pull_request) Failing after 4s
- Rename duplicate step 'the registry last persona should be set to' to 'the mock registry last persona should be set to' in tui_persona_state_coverage_steps.py
- Update corresponding feature file to use the new step name
- Fixes AmbiguousStep error that was preventing unit tests from running
2026-04-18 19:54:26 +00:00
freemo a650d307e1 feat(tui): implement PersonaRegistry with YAML load/save/list/cycle and PersonaState.cycle_persona()
CI / lint (pull_request) Failing after 59s
CI / push-validation (pull_request) Successful in 24s
CI / helm (pull_request) Successful in 55s
CI / build (pull_request) Successful in 3m41s
CI / quality (pull_request) Successful in 4m14s
CI / unit_tests (pull_request) Failing after 4m20s
CI / typecheck (pull_request) Successful in 4m33s
CI / security (pull_request) Successful in 5m13s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 7m2s
CI / integration_tests (pull_request) Successful in 7m44s
CI / status-check (pull_request) Failing after 4s
2026-04-18 18:40:43 +00:00