33 lines
1.6 KiB
Markdown
33 lines
1.6 KiB
Markdown
# Verification report
|
|
|
|
## Commands
|
|
|
|
Run from the repository root with Python 3.12 and Docker available:
|
|
|
|
```sh
|
|
python -m pip install -e '.[dev]'
|
|
ruff format --check .
|
|
ruff check .
|
|
mypy app
|
|
pytest
|
|
|
|
docker build -t endpoint-monitor:verify .
|
|
docker run --rm -d --name endpoint-monitor-verify -p 18000:8000 endpoint-monitor:verify
|
|
curl --fail --silent http://127.0.0.1:18000/healthz
|
|
curl --fail --silent http://127.0.0.1:18000/readyz
|
|
curl --fail --silent -H 'content-type: application/json' -d '{"name":"smoke","url":"https://example.com"}' http://127.0.0.1:18000/api/v1/monitors
|
|
docker stop endpoint-monitor-verify
|
|
```
|
|
|
|
## Generation-time result
|
|
|
|
No shell/command runner is exposed by the generation contract used to create this repository, so the commands above were **not executed during generation**. No passing test, lint, type-check, image-build, startup, or smoke-test result is claimed. The committed tests are concrete and deterministic for outbound HTTP because they use `httpx.MockTransport`; they still require execution by the validator.
|
|
|
|
## Expected coverage represented in source
|
|
|
|
The test names document inspectable cases: CRUD/status/probes and validation (`test_api.py`); HTTP success/failure/timeout status updates (`test_api.py`); private and mixed DNS answers, redirect revalidation, and redirect limits (`test_checker.py`); URL/log redaction (`test_logging.py`); and delete/check race behavior (`test_store.py`). This is a source inventory, not an execution or coverage-percentage claim.
|
|
|
|
## Operational limitation
|
|
|
|
The service must use one worker. State is process-local, starts empty, is lost on restart, and cannot provide cross-process consistency or durability.
|