Commit Graph
129 Commits
Author SHA1 Message Date
thePR0M3TH3AN fcbe2b2943 Harden security item 2: KDF policy, export safeguards, and tests 2026-02-25 18:15:51 -05:00
thePR0M3TH3AN c3eef44ab7 improved tests 2026-02-25 18:07:22 -05:00
thePR0M3TH3AN 966701fb1a update 2026-02-23 17:26:14 -05:00
thePR0M3TH3AN 0789dfcb55 Harden agent policy and API import limits; fix docs links 2026-02-23 16:24:53 -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
google-labs-jules[bot]andPR0M3TH3AN a8d626a915 chore(scheduler): Execute ci-health-agent daily run
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-19 21:40:32 +00:00
google-labs-jules[bot]andPR0M3TH3AN f38bbe57d2 Fix XSS vulnerability in docs search highlighting
- Implement `escapeHtml` function in `docs/assets/theme.js`
- Update `highlight` function to safely escape content before wrapping matches in `<mark>` tags
- Update `torch/src/todo/TODO_2026-02-16T11:47:38Z.md` to mark task as completed

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-16 18:06:19 +00:00
thePR0M3TH3AN a2a663eed1 Default offline mode 2025-08-22 09:10:06 -04:00
thePR0M3TH3AN 492bfba3fb tests: add offline default and kdf slider 2025-08-20 20:51:36 -04:00
thePR0M3TH3AN 857b1ef0f9 Document memory zeroization caveat 2025-08-20 20:29:58 -04:00
thePR0M3TH3AN d99af30d9f Switch API token to bcrypt 2025-08-20 19:29:08 -04:00
thePR0M3TH3AN c353c04472 docs: note installer dependency checks 2025-08-18 18:18:07 -04:00
thePR0M3TH3AN 593b173e95 Add Briefcase packaging docs and scripts 2025-08-08 09:24:25 -04:00
thePR0M3TH3AN 00edb44442 feat: make GUI dependencies optional 2025-08-07 10:51:13 -04:00
thePR0M3TH3AN 363b54b656 Merge pull request #782 from PR0M3TH3AN/codex/add-architecture-overview-to-readme
docs: add Nostr setup guide and architecture overview
2025-08-06 10:09:22 -04:00
thePR0M3TH3AN 1a35bb42bd docs: add Nostr setup guide and architecture overview 2025-08-06 10:09:05 -04:00
thePR0M3TH3AN edcf2787ee Add Argon2 calibration and encryption fuzz tests 2025-08-06 09:58:44 -04:00
thePR0M3TH3AN 6a20728db4 docs: note deterministic derivation change 2025-08-05 10:55:56 -04:00
thePR0M3TH3AN 3a19ef9c2a require password for sensitive read endpoints 2025-08-03 14:12:24 -04:00
thePR0M3TH3AN a9c5deb800 Document restoration requirements 2025-08-03 10:38:55 -04:00
thePR0M3TH3AN 2c44f51fc4 ci: add secret scanning 2025-08-03 10:27:13 -04:00
thePR0M3TH3AN 6f885bd65e Use hashed requirements lock 2025-08-03 10:08:50 -04:00
thePR0M3TH3AN ccca399b09 docs: clarify manual clipboard dependencies 2025-08-03 08:12:25 -04:00
thePR0M3TH3AN 7aeba78245 Remove insecure parent seed endpoint 2025-08-02 22:01:38 -04:00
thePR0M3TH3AN 186e39cc91 feat: add short-lived JWT auth and secure endpoints 2025-08-02 21:48:52 -04:00
thePR0M3TH3AN 7f503f0787 feat: add quick password entry mode 2025-08-02 16:43:43 -04:00
thePR0M3TH3AN dcd095d1af Include entry type in search results 2025-08-02 16:26:52 -04:00
thePR0M3TH3AN 4ccdd2b3df feat(install): auto install gtk deps 2025-07-31 21:42:28 -04:00
thePR0M3TH3AN a7a2e70321 Import safe special chars constant 2025-07-31 08:37:42 -04:00
thePR0M3TH3AN d3bd3b9e0a docs: document new password policy flags 2025-07-30 22:08:04 -04:00
thePR0M3TH3AN b74c0993ca Prompt for per-entry password policy 2025-07-30 20:55:56 -04:00
thePR0M3TH3AN 627d69cf30 Add edit options for key/value entries 2025-07-30 16:51:53 -04:00
thePR0M3TH3AN 4a20817094 Add key field to key/value entries 2025-07-28 15:04:56 -04:00
thePR0M3TH3AN 04862bce48 install: ensure cairo installed 2025-07-19 13:43:49 -04:00
thePR0M3TH3AN bfe65c9707 docs: mention automatic BeeWare backend install 2025-07-19 13:19:20 -04:00
thePR0M3TH3AN a94762e8a1 Merge branch 'beta' into codex/fix-script-checksum-mismatch-warning 2025-07-19 12:18:26 -04:00
thePR0M3TH3AN 70e05970f0 Document GUI backend requirement and handle missing backend 2025-07-19 12:16:30 -04:00
thePR0M3TH3AN c6a87e000d docs: clarify GUI backend requirement 2025-07-19 12:09:39 -04:00
thePR0M3TH3AN c3e2ff4b4b docs: document GUI event subscriptions 2025-07-18 23:06:07 -04:00
thePR0M3TH3AN 5fce7836d9 Remove binary docs images 2025-07-18 17:38:07 -04:00
thePR0M3TH3AN 29690d7c7b Add vault profile export/import 2025-07-18 16:05:00 -04:00
thePR0M3TH3AN edea2d3a6f docs: expand GUI start options 2025-07-18 11:45:22 -04:00
thePR0M3TH3AN 66dfb9d205 Add Briefcase config and update docs 2025-07-18 11:11:13 -04:00
thePR0M3TH3AN dcda452da8 Add GUI getting started docs 2025-07-18 09:48:13 -04:00
thePR0M3TH3AN 474f2d134b Add architecture documentation 2025-07-17 22:25:34 -04:00
thePR0M3TH3AN df0279ac03 docs: reference gui adapter and core services 2025-07-17 22:21:09 -04:00
thePR0M3TH3AN 3ff9843750 docs: explain BeeWare adapter 2025-07-17 22:03:53 -04:00
thePR0M3TH3AN 728c4be6e1 docs: add architecture diagram 2025-07-17 21:57:22 -04:00
thePR0M3TH3AN fac31cd99f Add GUI runner and packaging docs 2025-07-17 21:21:05 -04:00