Files
SeedPass/docs
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
..
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-08-22 09:10:06 -04:00
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-07-17 22:25:34 -04:00
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-08-22 09:10:06 -04:00
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-07-10 19:37:30 -04:00
2025-08-03 10:27:13 -04:00

Archivox

Archivox is a lightweight static site generator aimed at producing documentation sites similar to "Read the Docs". Write your content in Markdown, run the generator, and deploy the static files anywhere.

Build Status

Features

  • Markdown based pages with automatic navigation
  • Responsive layout with sidebar and search powered by Lunr.js
  • Simple configuration through config.yaml
  • Extensible via plugins and custom templates

Getting Started

Install the dependencies and start the development server:

npm install
npm run dev

The site will be available at http://localhost:8080. Edit files inside the content/ directory to update pages.

To create a new project from the starter template you can run:

npx create-archivox my-docs --install

Building

When you are ready to publish your documentation run:

npm run build

The generated site is placed in the _site/ folder.

Customization

  • config.yaml – change the site title, theme options and other settings.
  • plugins/ – add JavaScript files exporting hook functions such as onPageRendered to extend the build process.
  • templates/ – modify or replace the Nunjucks templates for full control over the HTML.

Hosting

Upload the contents of _site/ to any static host. For Netlify you can use the provided netlify.toml:

[build]
  command = "npm run build"
  publish = "_site"

Documentation

See the files under the docs/ directory for a full guide to Archivox including an integration tutorial for existing projects.

Archivox is released under the MIT License.