Commit Graph
221 Commits
Author SHA1 Message Date
thePR0M3TH3ANandClaude Opus 5 eb67dac576 docs: bridge README to the TypeScript rebuild; banner the Python-era docs
The README had zero mentions of the TypeScript implementation -- on the
branch proposing to make it the main line, a reader (including PR #989's
reviewers) would find only the Python product. A bridge section near the top
now says what the rebuild is, its status (under independent review; do not
put irreplaceable secrets in it yet), and where the migration guide, the
vault/identity spec, and the cutover plan live. Deliberately a bridge, not a
rewrite: everything below it still accurately describes the Python version,
which is what install.sh installs today. Advertising the TS implementation
as the product before its review lands would be docs describing an
aspirational state -- the exact failure mode this branch has been stamping
out.

The 14 Python-era planning docs most likely to mislead (tui_v2/v3,
index0/atlas, semantic) carry a one-line legacy banner so a reader can tell
a historical record from a living document.

The full TS-first rewrite -- README, landing page, docs triage, CI scoping,
dependabot config -- is specced as a merge-day checklist under the cutover
item in TODO.md, so main never advertises a stale product in either
direction.

Co-Authored-By: Claude Opus 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Tkj4rzKBA3uhfgk7kqjsb8
2026-08-18 14:07:53 -04:00
thePR0M3TH3ANandClaude Opus 5 0482bc3dfd feat(cli): .seedpass backup naming (phase 1 -- convention only, zero format change)
A portable backup is an encrypted, checksummed, cross-impl-verified file;
its only sin was landing on disk as an anonymous .json. Exports now
self-identify: point `vault export` (or the TUI database export) at a
directory and the file is named seedpass-<fingerprint>-<date>.seedpass --
tied to the profile it restores and sortable by date. The TUI also appends
.seedpass to an extensionless destination, since interactive input has no
script-compatibility concerns.

The zero-risk boundary, kept deliberately: an explicit file path is used
exactly as typed -- a script that exports to backup.json still gets
backup.json -- and imports sniff content, never extensions, so any old
export restores unchanged. No byte of the format moved, which is what makes
this safe to ship ahead of the review gate while format_version 2 (magic
header) and the OS icon association stay queued behind it.

Tests pin all three behaviours in both surfaces: directory target gets the
generated name, extensionless TUI input gets the suffix, explicit paths pass
through untouched. 158 CLI tests pass.

Co-Authored-By: Claude Opus 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Tkj4rzKBA3uhfgk7kqjsb8
2026-08-18 13:48:36 -04:00
thePR0M3TH3AN 176d12d9ae Add KB scale stress tests and launch mode docs 2026-03-01 18:33:11 -05:00
thePR0M3TH3AN 9d1160f281 Add explicit legacy CLI launcher command 2026-03-01 18:23:22 -05:00
thePR0M3TH3AN 3470fd6aac Strengthen determinism gates and add TUI v2 agent testing workflow 2026-03-01 17:35: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 b9d6c0d49d Add Nostr sync reset/fresh namespace workflow and docs 2026-03-01 01:24:33 -05:00
thePR0M3TH3AN 68cb1169e3 Add agent autonomy controls, docs updates, and landing page agent section 2026-03-01 01:02:11 -05:00
thePR0M3TH3AN 0ffdaf4b09 docs: align development docs with current code behavior 2026-02-25 21:45:14 -05:00
thePR0M3TH3AN 88c1974ac6 Harden TUI recovery paths and add release integrity gates 2026-02-25 19:18:54 -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
thePR0M3TH3AN 40a75adcb7 docs: document headless TUI installer 2025-08-22 10:22:29 -04:00
thePR0M3TH3AN 2b68df9428 Merge pull request #845 from PR0M3TH3AN/codex/update-offline-mode-to-true
Default offline mode and docs clarify online sync opt-in
2025-08-22 09:22:12 -04:00
thePR0M3TH3AN a2a663eed1 Default offline mode 2025-08-22 09:10:06 -04: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 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 87999b1888 test: cover backup restore startup 2025-08-19 08:53:26 -04:00
thePR0M3TH3AN c353c04472 docs: note installer dependency checks 2025-08-18 18:18:07 -04:00
thePR0M3TH3AN 57935bdfc1 docs: update vault import/export commands 2025-08-18 18:09:43 -04:00
thePR0M3TH3AN b33dc5148d docs: note GUI development status 2025-08-07 22:12:49 -04:00
thePR0M3TH3AN 344c2c82e7 docs: document optional GUI install 2025-08-07 14:02:20 -04:00
thePR0M3TH3AN 8737905e93 feat: make GUI install optional on Windows 2025-08-07 13:10:11 -04:00
thePR0M3TH3AN 00edb44442 feat: make GUI dependencies optional 2025-08-07 10:51:13 -04:00
thePR0M3TH3AN 1a35bb42bd docs: add Nostr setup guide and architecture overview 2025-08-06 10:09:05 -04:00
thePR0M3TH3AN 099c24921f feat: add configurable prompt backoff 2025-08-05 22:48:18 -04:00
thePR0M3TH3AN 6a20728db4 docs: note deterministic derivation change 2025-08-05 10:55:56 -04:00
thePR0M3TH3AN a9c5deb800 Document restoration requirements 2025-08-03 10:38:55 -04:00
thePR0M3TH3AN 6f885bd65e Use hashed requirements lock 2025-08-03 10:08:50 -04:00
thePR0M3TH3AN 5acd1d489d chore: add dependency auditing 2025-08-03 08:32:57 -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 37fc2779ad Add Nostr restore option and test 2025-07-31 13:26:25 -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 4a20817094 Add key field to key/value entries 2025-07-28 15:04:56 -04:00
thePR0M3TH3AN 5b0051f76f docs: clarify beta installer command 2025-07-25 19:08:06 -04:00
thePR0M3TH3AN f5653c9bb1 docs: add Windows Nostr troubleshooting 2025-07-19 19:47:35 -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