thePR0M3TH3AN
43f735fe3c
feat(tui-v2): implement true profile tree hierarchy with expand/collapse
...
Added _profile_tree_expanded state to track node visibility. Implemented
action_profile_tree_toggle and profile-tree-toggle command. Bound 'space'
and 'right' keys to toggle tree nodes. Added [+] / [-] visual indicators
to profile nodes. Updated interactive agent test to verify hierarchy
logic across collapse/expand transitions.
2026-03-02 22:29:47 -05:00
thePR0M3TH3AN
4eeb936e6d
docs(test): centralize test infrastructure and add interactive agent harness
...
Added docs/TEST_INVENTORY.md as a central index for all tests and runners.
Created scripts/interactive_agent_tui_test.py for password-free TUI v2
exploratory testing. Integrated standalone permission tests into main
suite and fixed TUI v2 parity regression tests broken by auto-selection
removal. Updated AGENTS.md and CLAUDE.md with strategic plan references.
2026-03-02 22:26:35 -05:00
google-labs-jules[bot] and PR0M3TH3AN
f146d1929a
fix(ci): correct poetry/venv python usage and pythonpath in test scripts
...
This resolves issues where `scripts/tui2_check_smoke.sh` and `scripts/run_ci_tests.sh` didn't appropriately resolve `py_bin` nor invoke `python` within `poetry run` or `.venv/bin/python` leading to `ModuleNotFoundError` for packages like `typer`. It also fixes a failing test test_legacy_index_reinit_syncs_once_when_confirmed that expects a single synchronization event instead of 0.
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-03-02 19:24:39 +00:00
google-labs-jules[bot] and PR0M3TH3AN
1123807d7b
fix: resolve ci failures
...
- fix unformatted test file src/tests/test_nostr_resilience_failure_modes.py
- fix missing PYTHONPATH and use poetry run in scripts/tui2_check_smoke.sh
- fix failing test test_legacy_index_reinit_syncs_once_when_confirmed by updating sync call assertion
- configure run_ci_tests.sh to use proper python binary
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-03-02 19:04:11 +00:00
thePR0M3TH3AN
b77c887446
ci: enforce tui2 and core api coverage thresholds
2026-03-02 09:03:53 -05:00
thePR0M3TH3AN
367cad6a04
tui2: complete parity phases with settings/relay tools and CI smoke
2026-03-01 20:36:04 -05:00
thePR0M3TH3AN
f02b360062
Fix beta TUI startup preflight and installer fallback hints
2026-03-01 17:47:17 -05:00
thePR0M3TH3AN
3470fd6aac
Strengthen determinism gates and add TUI v2 agent testing workflow
2026-03-01 17:35:39 -05:00
google-labs-jules[bot] and PR0M3TH3AN
8489aaf529
style: reformat files with black to fix CI
...
CI checks were failing because three files were out of formatting compliance with black.
Reformatted the following files to pass the `black --check .` step:
- `scripts/ai_tui_agent_test.py`
- `torch/scripts/test-audit/run_python_static_analysis.py`
- `torch/scripts/test-audit/run_python_flaky_check.py`
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-27 20:44:37 +00:00
google-labs-jules[bot] and PR0M3TH3AN
17dfd0ec2c
fix(tests): resolve termios / pty import error on Windows
...
The `ai_tui_agent_test.py` script imports `pty`, which relies on `termios`. Both of these are Unix-only modules and cause a `ModuleNotFoundError` when the test suite is collected or executed on Windows.
This fix:
1. Adds `pytest.importorskip("pty")` to `src/tests/test_ai_tui_agent_harness.py` to skip the tests gracefully on Windows.
2. Updates `scripts/ai_tui_agent_test.py` to catch the `ImportError` and exit gracefully with an error message, preventing it from crashing unconditionally if imported or run directly on Windows.
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-27 20:33:20 +00:00
thePR0M3TH3AN
882cd060fa
Fix Python 3.10 compatibility for UTC timezone usage
2026-02-25 21:26:32 -05:00
thePR0M3TH3AN
88c1974ac6
Harden TUI recovery paths and add release integrity gates
2026-02-25 19:18:54 -05:00
thePR0M3TH3AN
03958106e1
Add agent mode, hardened TUI harness, coverage gates, and cross-platform installer smoke CI
...
This commit delivers four related improvements focused on reliability and automation while preserving existing human/TUI workflows.
1) Agent-first CLI mode (additive)
- Added new `seedpass agent` command group (`src/seedpass/cli/agent.py`) and wired it into CLI root.
- Implemented non-interactive profile bootstrap: `seedpass agent init` with `--seed|--seed-file|--generate-seed` and password env injection (`--password-env`).
- Added policy management commands: `agent policy-show` and `agent policy-set` with allow/deny kind controls.
- Added JSON-based secret retrieval: `seedpass -f <fingerprint> agent get <query> --ttl <sec>` with lease metadata and policy enforcement.
- Kept regular human mode fully available; no behavioral changes to interactive TUI entrypoint.
2) TUI agent harness deepening and stabilization
- Refactored harness into scenario profiles: `core`, `extended`, `stress` with `--scenario` selection.
- Added deterministic seeded stress campaigns: `--stress-cycles`, `--stress-seed`.
- Added scenario-specific required coverage keys and report metadata.
- Added post-condition assertions in extended scenario (archive/restore consistency, lock/unlock retrieval recovery).
- Hardened prompt matching for output variants and fail-fast behavior on non-zero SeedPass exit codes.
- Added harness unit tests for helper logic and control flow.
3) Critical module coverage gate tooling
- Added `scripts/check_critical_coverage.py` to enforce per-module thresholds from coverage JSON and report uncovered functions.
- Added override controls (`--threshold`, `--no-default-thresholds`) and optional JSON result output.
- Integrated coverage JSON generation into CI helper script and optional gate execution via `CRITICAL_COVERAGE_GATE=1`.
- Tuned default thresholds using full-suite baseline and increased strictness:
- `src/main.py >= 50%`
- `src/seedpass/core/manager.py >= 60%`
- `src/seedpass/core/encryption.py >= 80%`
- `src/seedpass/core/migrations.py >= 90%`
- Added tests for coverage gate parser/analysis logic and targeted manager worker path tests.
4) Installer validation framework for beta/main
- Added cross-platform installer smoke scripts:
- `scripts/installer_smoke_unix.sh`
- `scripts/installer_smoke_windows.ps1`
- Added GitHub Actions workflow `.github/workflows/installer-smoke.yml` with:
- reduced PR matrix
- full scheduled/manual matrix across OS/branch/mode
- per-job log capture and artifact uploads for failure triage
- Added installer testing documentation and linked from README.
Additional housekeeping
- Added `.venv/` to `.gitignore`.
- Updated docs for new harness scenarios, seeded stress mode, post-condition metadata, coverage gate usage, and installer testing workflow.
2026-02-23 15:47:59 -05:00
thePR0M3TH3AN
dd7290e83b
Add robust AI TUI harness, docs roadmap, and lock/unlock fix
2026-02-23 14:35:40 -05:00
thePR0M3TH3AN
428efd02b4
Add GUI extras for platform backends
2025-08-21 16:18:32 -04:00
thePR0M3TH3AN
ca533a3518
feat: add installer mode flag
2025-08-21 15:45:58 -04:00
thePR0M3TH3AN
505cf1a950
feat: track nostr account index per seed
2025-08-20 22:15:35 -04:00
thePR0M3TH3AN
af4eb72385
Default to GUI install with opt-out flag
2025-08-18 17:50:18 -04:00
thePR0M3TH3AN
5194adf145
Check CLI import after installation
2025-08-18 17:02:23 -04:00
thePR0M3TH3AN
1232630dba
feat: expand install dependencies
2025-08-18 15:56:29 -04:00
thePR0M3TH3AN
b4238791aa
chore: harden installer script
2025-08-16 11:30:48 -04:00
thePR0M3TH3AN
8737905e93
feat: make GUI install optional on Windows
2025-08-07 13:10:11 -04:00
thePR0M3TH3AN
171f92167e
feat: add optional GUI install flag
2025-08-07 12:05:12 -04:00
thePR0M3TH3AN
00edb44442
feat: make GUI dependencies optional
2025-08-07 10:51:13 -04:00
thePR0M3TH3AN
68eaa34d76
Add dependency scanning and optional dependency checks
2025-08-05 21:04:50 -04:00
thePR0M3TH3AN
6f885bd65e
Use hashed requirements lock
2025-08-03 10:08:50 -04:00
thePR0M3TH3AN
5423c41b06
Include fingerprint salt in password key derivation
2025-08-03 09:37:59 -04:00
thePR0M3TH3AN
ccca399b09
docs: clarify manual clipboard dependencies
2025-08-03 08:12:25 -04:00
thePR0M3TH3AN
4ccdd2b3df
feat(install): auto install gtk deps
2025-07-31 21:42:28 -04:00
thePR0M3TH3AN
365a098d70
Update Linux dependencies in install script
2025-07-31 12:21:59 -04:00
thePR0M3TH3AN
160a8fac51
CI: run desktop GUI tests
2025-07-19 19:11:59 -04:00
thePR0M3TH3AN
bdf6a038c2
Enhance install scripts to warn about stale executables
2025-07-19 15:17:16 -04:00
thePR0M3TH3AN
c80495eca6
fix linux dependencies
2025-07-19 14:21:24 -04:00
thePR0M3TH3AN
a01e0f0037
fix: install missing deps for pygobject
2025-07-19 14:11:34 -04:00
thePR0M3TH3AN
04862bce48
install: ensure cairo installed
2025-07-19 13:43:49 -04:00
thePR0M3TH3AN
d7df6679bd
Install toga-winforms backend on Windows
2025-07-19 13:09:31 -04:00
thePR0M3TH3AN
ad3f1bc80c
Add platform-specific Toga installation
2025-07-19 13:00:35 -04:00
thePR0M3TH3AN
c23b2e4913
Refactor password manager modules
2025-07-17 19:21:10 -04:00
thePR0M3TH3AN
f7eaf2897f
Add vendor dependencies script
2025-07-17 08:39:22 -04:00
thePR0M3TH3AN
479c034573
fix windows ci hangs
2025-07-16 17:50:08 -04:00
thePR0M3TH3AN
0741744f99
Handle missing timeout in CI script
2025-07-16 16:06:21 -04:00
thePR0M3TH3AN
b88a93df29
Add CI test script and update workflow
2025-07-16 15:57:33 -04:00
thePR0M3TH3AN
1c2bb84e75
Update test profile generator with new entry types
2025-07-14 09:54:00 -04:00
thePR0M3TH3AN
11d78a98c9
docs: clarify test profile location
2025-07-13 20:47:26 -04:00
thePR0M3TH3AN
79488b4373
Fix KDF iteration config in test profile script
2025-07-13 18:58:59 -04:00
thePR0M3TH3AN
80c67905ae
Allow passing ConfigManager to NostrClient
2025-07-13 15:57:31 -04:00
thePR0M3TH3AN
fc56ec169f
docs: describe launching TUI
2025-07-11 12:41:31 -04:00
thePR0M3TH3AN
29b06d5b40
Fix CLI launcher and module entry
2025-07-11 11:24:24 -04:00
thePR0M3TH3AN
8d64a94d83
Handle rm failure in uninstall
2025-07-11 10:41:33 -04:00
thePR0M3TH3AN
fb27d49ad7
enhance uninstall script to clean old executables
2025-07-11 10:28:48 -04:00