Files
James Maes 514f8eb15b docs: audit pass — align all docs and repo meta with reality
Sweep every README/doc for accuracy and remove fabricated or stale content:
- README/CLAUDE: add the live roadmap-page link and a rule to keep the rendered
  page in sync with docs/ROADMAP.md; fix the stale cov alias and the
  already-moved-shells note.
- .github/CONTRIBUTING+SECURITY: drop the fabricated nuncio.mx site link and the
  aspirational release/security claims; state honest pre-alpha status.
- docs/RUNNING, DEVELOPING, ARCHITECTURE, BACKLOG, Home, NSQL spec, corruption
  notes, proto/README: correct crate count/list, service list, CLI flags, phase
  status, and remove claims of unshipped/removed things (IPC-as-current,
  hardcoded-keys, unwired engines); mark superseded api-surface-draft historical.
- Remove the fabricated benchmark baked into nsql_pipeline.svg and delete the
  orphaned ipc_sequence.svg (depicted the removed IPC with a fake timing).
2026-07-28 10:49:48 -05:00

1.6 KiB

Contributing to Nuncio

Thank you for contributing to Nuncio!

Semantic Versioning 2.0.0 & Tagging

Nuncio follows Semantic Versioning 2.0.0 (vMAJOR.MINOR.PATCH):

  • MAJOR: Incremented for incompatible API or structural changes.
  • MINOR: Incremented for new functionality added in a backward-compatible manner.
  • PATCH: Incremented for backward-compatible bug fixes.

Tagging a commit with vX.Y.Z is intended to drive the release workflow under .github/workflows/. Pre-alpha note: the release pipeline is being rebuilt and no functional release exists yet — see roadmap milestone M7 (issue #209). Do not tag releases until the backend is declared client-ready.

Architecture Decoupling Rules

  1. Thin Presentation Shells: Presentation shells (crates/nuncio-cli, crates/nuncio-tui, crates/nuncio-gui, crates/nuncio-mcp) MUST remain thin UI layers interacting with nunciod over length-prefixed IPC streams.
  2. 100% Multi-Shell Feature Parity Rule: Any new feature or command added to one presentation shell MUST be implemented simultaneously across ALL FOUR presentation shells.

Code Quality Gates

Before submitting a Pull Request, run the local quality suite:

cargo fmt --all -- --check
cargo check-all
cargo test-all
cargo cov

All 4 checks MUST pass cleanly. Compiler warnings are treated as hard errors (-D warnings). 100% unit test line coverage is required.

Commit Message Format

Follow Conventional Commits:

feat(mail): add JMAP WebSocket push state engine
fix(store): resolve SQLite FTS5 trigram deadlock on concurrent insert
ci: update GitHub Actions release matrix workflow