160 lines
4.1 KiB
JSON
160 lines
4.1 KiB
JSON
{
|
|
"blockers": [
|
|
{
|
|
"gate": "remote_auth",
|
|
"reason": "Remote repository authentication and branch permission are not available to this local acceptance run.",
|
|
"status": "blocked"
|
|
},
|
|
{
|
|
"gate": "deployment_access",
|
|
"reason": "No production host, Docker/Compose, DNS/TLS, secrets, or deployment access is available; no deployment was attempted.",
|
|
"status": "blocked"
|
|
},
|
|
{
|
|
"gate": "real_provider_legal",
|
|
"reason": "Real source/provider enablement, consent/legal basis, terms, and operational approval remain explicit gates; outreach stays disabled.",
|
|
"status": "blocked"
|
|
}
|
|
],
|
|
"capacity_smoke": {
|
|
"bounded": true,
|
|
"interpretation": "Deterministic in-memory smoke only; not a production capacity or throughput claim.",
|
|
"large_batch": {
|
|
"input_items": 5000,
|
|
"retained_items": 100,
|
|
"truncated": true
|
|
},
|
|
"limits": {
|
|
"max_batch_items_retained": 100,
|
|
"max_page_size": 100
|
|
},
|
|
"pagination": {
|
|
"has_more": true,
|
|
"requested_page_size": 100,
|
|
"returned_items": 100,
|
|
"synthetic_total": 1000
|
|
}
|
|
},
|
|
"checks": {
|
|
"api_tests": {
|
|
"command": [
|
|
"/usr/bin/python3",
|
|
"-m",
|
|
"unittest",
|
|
"discover",
|
|
"-v",
|
|
"-s",
|
|
"apps/api/tests",
|
|
"-t",
|
|
"apps/api"
|
|
],
|
|
"passed": true,
|
|
"status": "passed",
|
|
"summary": "exit=0, tests=100"
|
|
},
|
|
"benchmark_no_latency": {
|
|
"command": [
|
|
"/usr/bin/python3",
|
|
"scripts/benchmark_phase16.py",
|
|
"--no-latency",
|
|
"--output",
|
|
"/tmp/prospect-phase16-acceptance.json"
|
|
],
|
|
"passed": true,
|
|
"status": "passed",
|
|
"summary": "exit=0"
|
|
},
|
|
"compose_config": {
|
|
"command": [
|
|
"docker",
|
|
"compose",
|
|
"-f",
|
|
"docker-compose.yml",
|
|
"config",
|
|
"--quiet"
|
|
],
|
|
"passed": true,
|
|
"status": "passed",
|
|
"summary": "exit=0"
|
|
},
|
|
"git_state": {
|
|
"branch_status": "exit=0",
|
|
"head": "561efe88551b3d50944b13e10a9c2b3e7eb57cce",
|
|
"passed": true,
|
|
"status": "passed",
|
|
"working_tree_clean": true
|
|
},
|
|
"json_validation": {
|
|
"files": {
|
|
"docs/benchmarks/final_acceptance.schema.json": {
|
|
"passed": true,
|
|
"status": "valid_json"
|
|
},
|
|
"docs/benchmarks/phase16.latest.json": {
|
|
"passed": true,
|
|
"status": "valid_json"
|
|
},
|
|
"docs/benchmarks/phase16.schema.json": {
|
|
"passed": true,
|
|
"status": "valid_json"
|
|
},
|
|
"phase16_schema_contract": {
|
|
"passed": true,
|
|
"status": "schema_valid"
|
|
}
|
|
},
|
|
"passed": true
|
|
},
|
|
"py_compile": {
|
|
"command": [
|
|
"/usr/bin/python3",
|
|
"-m",
|
|
"py_compile",
|
|
"scripts/benchmark_phase16.py",
|
|
"scripts/final_acceptance.py",
|
|
"apps/api/app/__init__.py",
|
|
"apps/api/app/ai_assistance.py",
|
|
"apps/api/app/config.py",
|
|
"apps/api/app/contact_extractor.py",
|
|
"apps/api/app/domain.py",
|
|
"apps/api/app/domain_intelligence.py",
|
|
"apps/api/app/main.py",
|
|
"apps/api/app/scoring.py",
|
|
"apps/api/app/sources.py",
|
|
"apps/api/app/website_scanner.py"
|
|
],
|
|
"passed": true,
|
|
"status": "passed",
|
|
"summary": "exit=0"
|
|
},
|
|
"safety_invariants": {
|
|
"checks": {
|
|
"no_send_network": true,
|
|
"outreach_disabled": true,
|
|
"tenant_routes": true
|
|
},
|
|
"passed": true
|
|
},
|
|
"shell_syntax": {
|
|
"command": [
|
|
"bash",
|
|
"-n",
|
|
"scripts/backup_sqlite.sh",
|
|
"scripts/healthcheck.sh",
|
|
"scripts/restore_sqlite.sh",
|
|
"scripts/rollback.sh"
|
|
],
|
|
"passed": true,
|
|
"status": "passed",
|
|
"summary": "exit=0"
|
|
}
|
|
},
|
|
"limitations": [
|
|
"Synthetic capacity smoke measurements do not establish production throughput, concurrency, durability, or availability."
|
|
],
|
|
"passed": true,
|
|
"report": "phase17-final-acceptance",
|
|
"scope": "local-repository-acceptance",
|
|
"version": 1
|
|
}
|