decomposer: generate deliverable files for Define the service contract and project architecture for the FastAPI endpoint monitoring service.; Implement the typed monitor CRUD API and concurrency-safe in-memory state according to the service design.; Implement secure on-demand endpoint checks with status updates, latency measurement, robust error handling, and redacted structured logs.; Add operational API endpoints and environment-driven runtime configuration to the monitoring service.; Create automated tests for the monitoring service.; Package the service with Docker and developer documentation.; Validate the complete project.

This commit is contained in:
2026-08-09 15:35:53 +00:00
parent 557adf383e
commit a21c14c4ee

30
docs/verification.md Normal file
View File

@@ -0,0 +1,30 @@
# Verification report
## Reproducible validation commands
Run these from the repository root in a Python 3.12 environment:
```bash
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 http://127.0.0.1:18000/healthz
curl --fail http://127.0.0.1:18000/readyz
docker rm -f endpoint-monitor-verify
```
## Coverage represented in the suite
The tests cover CRUD and validation, health/readiness/current status, successful and failed status updates, 100 concurrent creates, stale-check compare-and-set behavior, defensive copies, bounded error mapping, public-address pinning, private/loopback/link-local/reserved and mixed DNS answers, redirect revalidation, credential/query/fragment redaction, structured JSON logs, and environment bounds. Outbound HTTP is mocked.
## Generation-environment result
Repository generation has no command-execution or Docker daemon interface, so the commands above could not be executed during generation. They are provided as the exact acceptance sequence rather than being falsely marked successful. Static review was performed while assembling the single commit. Docker image build/startup and live smoke checks remain explicitly unverified until run in an environment with Docker and curl.
## Known limitation
The lock coordinates coroutines only inside one process. Data is neither durable nor shared, so the service must remain single-worker and cannot provide continuity across restarts. The supplied Docker command enforces one worker. A database-backed store would be required for durability or horizontal scaling.