mirror of
https://github.com/CyberMind-FR/secubox-deb.git
synced 2026-07-29 09:14:33 +00:00
- annuaire/verbs.py: auto_add / invite / accept_invite / propose / vote / tally / revoke / emancipate — pure service layer, no FastAPI. Enforces OBSERVED→MEMBER state machine, EM-MONOTONE invariant, one-voice-per-node dedup, bounded cascade revocation, M1/M2/M3 milestone gates for emancipate, and founder-anchor safety predicate. - api/__init__.py + api/main.py: FastAPI on root_path=/api/v1/annuaire, Unix socket /run/secubox/annuaire.sock; read endpoints public, mutating endpoints JWT-gated; secubox_core import guarded for off-box use. - tests/test_verbs.py: 24 new tests (97 total). EM-MONOTONE: level-decrease and same-level both rejected. Invitation: tampered sig / expired / over-used all rejected. Non-MEMBER inviter blocked. One-voice-per-node enforced. - Packaging: debian/control, changelog (0.1.0-1~bookworm1), rules, postinst, prerm, secubox-annuaire.service (NoNewPrivileges=yes, RuntimeDirectoryPreserve=yes), secubox.yaml, nginx/annuaire.conf + annuaire-routes.conf, menu.d/575-annuaire.json. |
||
|---|---|---|
| .. | ||
| 575-annuaire.json | ||