thePR0M3TH3AN
96f64d00bc
tui3: guard against non-interactive stdin with TTY check
...
Add _stdin_is_tty() helper and check at start of _launch_tui3_or_exit.
When stdin is not a TTY, emit a clear error message and exit 1 instead
of propagating an EOF exception from seed setup prompts.
Add test for non-interactive stdin error path; patch _stdin_is_tty in
existing tests that expect tui3 launch to proceed.
Fixes SeedPass-6d26
2026-03-09 12:45:34 -04:00
thePR0M3TH3AN
e8a2b81e7b
Make TUI v3 the default and add index0 foundations
2026-03-05 21:52:39 -05:00
thePR0M3TH3AN
033870f2df
fix: harden legacy/tui3 non-tty flows and shutdown stability
2026-03-03 21:56:55 -05:00
thePR0M3TH3AN
538ce42338
chore: format codebase and harden v3 CLI/CI gates
2026-03-03 21:22:19 -05:00
thePR0M3TH3AN
18a637d3a2
feat(tui-v3): implement modular TUI architecture and CLI selector
...
Scaffolded TUI v3 from scratch with modular directory structure. Created
RibbonHeader, ProfileTree, EntryDataTable, and BoardContainer widgets.
Implemented full-screen SettingsScreen and MaximizedInspectorScreen.
Updated CLI with unified '--tui [legacy|v2|v3]' option and 'tui3' command.
Reused existing service hooks for zero-logic migration.
2026-03-02 23:01:00 -05:00
thePR0M3TH3AN
ec407c611a
feat: wire semantic controls into legacy and tui v2 interfaces
2026-03-02 11:52:30 -05:00
thePR0M3TH3AN
165e2db204
feat: add semantic index scaffolding, cli/api surfaces, and tui tree nav polish
2026-03-02 11:44:17 -05:00
thePR0M3TH3AN
367cad6a04
tui2: complete parity phases with settings/relay tools and CI smoke
2026-03-01 20:36:04 -05:00
thePR0M3TH3AN
9d1160f281
Add explicit legacy CLI launcher command
2026-03-01 18:23:22 -05:00
thePR0M3TH3AN
f02b360062
Fix beta TUI startup preflight and installer fallback hints
2026-03-01 17:47:17 -05:00
thePR0M3TH3AN
e3c117110a
Switch default interactive CLI routing to TUI v2
2026-03-01 16:46:08 -05:00
thePR0M3TH3AN
5f0dbe82af
Add TUI v2 parity scenarios and align help hints
2026-03-01 16:44:07 -05:00
thePR0M3TH3AN
4113bd1282
Implement TUI v2 phase 1 read-only shell
2026-03-01 16:06:39 -05:00
thePR0M3TH3AN
8d3d2a3993
Add TUI v2 scaffold, plan docs, and discovery command hints
2026-03-01 16:03:04 -05:00
thePR0M3TH3AN
d0ea0d96f6
Add document workflows, entry graph links, and discovery/docs updates
2026-03-01 15:43:43 -05:00
thePR0M3TH3AN
68cb1169e3
Add agent autonomy controls, docs updates, and landing page agent section
2026-03-01 01:02:11 -05:00
thePR0M3TH3AN
fe96ccd7c7
Add agent security controls, broker auth, and capability discovery
2026-02-28 22:32:38 -05:00
google-labs-jules[bot] and PR0M3TH3AN
9e08e5082b
Refactor GUI backend config to constants.py
...
Extracts the hardcoded BeeWare GUI backend configuration (package names, versions, and SHA256 hashes) from `src/seedpass/cli/__init__.py` into a new `GUI_BACKEND_CONFIG` dictionary in `src/constants.py`. This improves maintainability by centralizing configuration and simplifying the CLI logic.
- Adds `GUI_BACKEND_CONFIG` to `src/constants.py`.
- Updates `src/seedpass/cli/__init__.py` to import and use `GUI_BACKEND_CONFIG`.
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-26 19:25:24 +00: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
google-labs-jules[bot] and PR0M3TH3AN
1f92fe7901
Refactor test fixtures and fix linting issues
...
- Moved `client` and `dummy_nostr_client` fixtures to `src/tests/conftest.py` to fix F811 redefinition errors and improve test organization.
- Introduced `make_dummy_nostr_client` factory fixture to support tests requiring multiple client instances.
- Updated all affected tests to use the new fixture pattern.
- Removed deprecated `is_flag=True` from Typer boolean options in CLI modules.
- Fixed F541 (f-string without placeholders) in `entry_management.py`.
- Fixed F841 (unused variable) in `manager.py`.
Co-authored-by: PR0M3TH3AN <[email protected] >
2026-02-18 03:39:55 +00:00
thePR0M3TH3AN
d5e0d61db4
Use custom SeedPassError instead of sys.exit
2025-08-22 10:01:14 -04:00
thePR0M3TH3AN
619226d336
feat: support random and deterministic TOTP secrets
2025-08-20 18:36:19 -04:00
thePR0M3TH3AN
6888fa2431
Remove duplicate import in test
2025-08-05 22:18:26 -04:00
thePR0M3TH3AN
90b60a6682
refactor: modularize CLI commands
2025-08-05 18:51:36 -04:00