nato1000 / docs /TESTING.md
hugging2021's picture NaTo1000's picture
Duplicate from iNFINITEAi2025/nato1000
1ab067e
|
Raw History Blame Contribute Delete
1.59 kB
# NATO-1000 Testing and Release Protocol
## Required checks
Run `python3 -m compileall -q .`, then `pytest -q`, then execute one offline smoke request for every model ID in `MODEL_REGISTRY`. The release operator records the Python version, operating system, source revision, configuration digest, test output, and audit-chain result.
## Test classes
| Test class | Coverage | Release gate |
|---|---|---|
| Unit | Config bounds, adapters, ingestion, redaction, quarantine, errors | Must pass |
| Integration | Runtime-to-ledger-to-log flow | Must pass |
| Security | Secret absence, passive ingestion, no tool/network defaults | Must pass |
| Failure injection | Empty input, oversized input, unknown model, tampered ledger | Must fail closed as designed |
| Burst/limit | Repeated offline calls and increasing input sizes | Record observations; no unbounded resource use |
## Acceptance criteria
Every model adapter must return the same result schema, include its model ID, create start and finish audit events, and leave the chain verifiable. Invalid prompts must not produce a successful result. Ingestion errors must be visible in the ledger and quarantined when configured. No test may depend on a live credential or external network.
## Known scope
The current suite validates runtime correctness and operational controls. It does not establish model quality, AGI capability, benchmark superiority, factuality, or safe real-world autonomy. Those claims require actual weights, representative evaluation data, independently reviewed metrics, and documented deployment conditions.