140 lines
3.7 KiB
JSON
140 lines
3.7 KiB
JSON
{
|
|
"date": "2026-06-25",
|
|
"runtime": {
|
|
"observed_node": "22.16.0",
|
|
"required_node": "24.17.0",
|
|
"observed_package_path": "npm offline fallback",
|
|
"required_package_manager": "pnpm 11.9.0"
|
|
},
|
|
"results": [
|
|
{
|
|
"name": "Phase 9-14 static validation",
|
|
"status": "pass",
|
|
"evidence": "docs/quality/logs/phase14/static-validations.log"
|
|
},
|
|
{
|
|
"name": "Formatting",
|
|
"status": "pass",
|
|
"exit_code": 0,
|
|
"evidence": "docs/quality/logs/phase14/format-check.log"
|
|
},
|
|
{
|
|
"name": "Lint",
|
|
"status": "pass",
|
|
"exit_code": 0,
|
|
"evidence": "docs/quality/logs/phase14/lint.log"
|
|
},
|
|
{
|
|
"name": "Strict TypeScript",
|
|
"status": "pass",
|
|
"exit_code": 0,
|
|
"evidence": "docs/quality/logs/phase14/typecheck.log"
|
|
},
|
|
{
|
|
"name": "Unit tests",
|
|
"status": "pass",
|
|
"files": 13,
|
|
"passed": 39,
|
|
"failed": 0,
|
|
"coverage": {
|
|
"statements": 92.4,
|
|
"branches": 86.04,
|
|
"functions": 95.45,
|
|
"lines": 92.64
|
|
},
|
|
"evidence": "docs/quality/logs/phase14/unit-tests-coverage.log"
|
|
},
|
|
{
|
|
"name": "Integration tests",
|
|
"status": "pass",
|
|
"files": 1,
|
|
"passed": 4,
|
|
"failed": 0,
|
|
"evidence": "docs/quality/logs/phase14/integration-tests.log"
|
|
},
|
|
{
|
|
"name": "Security static tests",
|
|
"status": "pass",
|
|
"evidence": "docs/quality/logs/phase14/phase14-security.log"
|
|
},
|
|
{
|
|
"name": "Privacy static tests",
|
|
"status": "pass",
|
|
"evidence": "docs/quality/logs/phase14/phase14-privacy.log"
|
|
},
|
|
{
|
|
"name": "Environment validation",
|
|
"status": "pass",
|
|
"evidence": "docs/quality/logs/phase14/phase14-environment.log"
|
|
},
|
|
{
|
|
"name": "Integration structure validation",
|
|
"status": "pass",
|
|
"evidence": "docs/quality/logs/phase14/phase14-integrations.log"
|
|
},
|
|
{
|
|
"name": "Production build",
|
|
"status": "pass",
|
|
"exit_code": 0,
|
|
"duration_seconds": 29,
|
|
"evidence": "docs/quality/logs/phase14/production-build.log"
|
|
},
|
|
{
|
|
"name": "Standalone HTTP smoke",
|
|
"status": "pass",
|
|
"evidence": "docs/quality/PHASE_14_HTTP_ROUTE_RESULTS_v1.0.json"
|
|
},
|
|
{
|
|
"name": "Dependency audit",
|
|
"status": "pass",
|
|
"vulnerabilities": 0,
|
|
"note": "npm offline fallback; frozen pnpm audit still required",
|
|
"evidence": "docs/quality/logs/phase14/dependency-audit.log"
|
|
},
|
|
{
|
|
"name": "Secret scan",
|
|
"status": "pass",
|
|
"evidence": "docs/quality/logs/phase14/secret-scan.log"
|
|
},
|
|
{
|
|
"name": "Browser integration",
|
|
"status": "environment-blocked",
|
|
"attempted": 5,
|
|
"passed": 0,
|
|
"reason": "net::ERR_BLOCKED_BY_ADMINISTRATOR",
|
|
"evidence": "docs/quality/logs/phase14/browser-integration-chromium.log"
|
|
},
|
|
{
|
|
"name": "Accessibility browser",
|
|
"status": "environment-blocked",
|
|
"attempted": 3,
|
|
"passed": 0,
|
|
"reason": "net::ERR_BLOCKED_BY_ADMINISTRATOR",
|
|
"evidence": "docs/quality/logs/phase14/a11y-integration-chromium.log"
|
|
},
|
|
{
|
|
"name": "Visual regression",
|
|
"status": "environment-blocked",
|
|
"attempted": 5,
|
|
"passed": 0,
|
|
"reason": "net::ERR_BLOCKED_BY_ADMINISTRATOR",
|
|
"evidence": "docs/quality/logs/phase14/visual-integration-chromium.log"
|
|
},
|
|
{
|
|
"name": "Manual QA",
|
|
"status": "not-run",
|
|
"evidence": "docs/quality/PHASE_14_MANUAL_QA_RESULTS_v1.0.csv"
|
|
},
|
|
{
|
|
"name": "Pinned runtime and frozen install",
|
|
"status": "environment-blocked",
|
|
"issue": "P14-009"
|
|
},
|
|
{
|
|
"name": "Package manifest",
|
|
"status": "pass",
|
|
"evidence": "PHASE_14_PACKAGE_MANIFEST_v1.0.json"
|
|
}
|
|
]
|
|
}
|