feat: automate yiacad PR review lane (#18)

* feat: automate yiacad pr review lane

* fix: stabilize yiacad review and spec gates

* fix: scope kicad exports to repo hardware

* fix: ignore kicad block library sources in exports

* feat: Add infra VPS monitoring runbook and healthcheck scripts

- Created INFRA_VPS_RUNBOOK_2026.md detailing operational procedures for monitoring VPS services.
- Added infra_vps_healthcheck.sh script for automated health checks on DNS, TLS, TCP, and HTTP for VPS services.
- Introduced infra_vps_security_audit.sh for non-intrusive security checks on external VPS services.
- Established JSON schema for infra VPS inventory in infra_vps.schema.json.
- Developed integration for runtime status reporting in the Next.js API route.
- Implemented Playwright tests for smoke testing the application and ensuring core functionalities.
- Updated Makefile for development dependencies and testing commands.
- Created various test files for unit and end-to-end testing across different components.

* feat(agentics): update mesh agents, gates, prompts, and workflows
This commit was merged in pull request #18.
This commit is contained in:
Clément SAILLANT
2026-03-29 17:14:16 +02:00
committed by GitHub
parent 21831e1c88
commit 5efb380da5
250 changed files with 14972 additions and 2370 deletions
+69 -5
View File
@@ -15,7 +15,7 @@ Usage: bash tools/test_python.sh [options]
Run the supported Kill_LIFE repo-local Python suites through the repo-local venv.
Options:
--suite NAME stable | mcp | all (default: stable)
--suite NAME stable | yiacad-desktop | yiacad-manufacturing | mcp | all (default: stable)
--bootstrap Create/install the venv first if missing
--python BIN Python interpreter forwarded to bootstrap if needed
--venv-dir PATH Virtualenv directory to use (default: ./.venv)
@@ -23,9 +23,11 @@ Options:
-h, --help Show this help
Suites:
stable Repo-local unittest suite without companion runtimes.
mcp MCP integration tests that exercise local launchers.
all stable + mcp.
stable Repo-local unittest suite without companion runtimes.
yiacad-desktop YiACAD desktop/service-first contract and adapter coverage.
yiacad-manufacturing YiACAD manufacturing/backend proof contract coverage.
mcp MCP integration tests that exercise local launchers.
all stable + mcp.
EOF
}
@@ -51,13 +53,45 @@ stable:
test/test_log_ops_contract.py
test/test_intelligence_tui_contract.py
test/test_runtime_ai_gateway_contract.py
test/test_yiacad_action_registry_contract.py
test/test_yiacad_ai_bridge_contract.py
test/test_yiacad_backend_contract.py
test/test_yiacad_backend_service_contract.py
test/test_yiacad_freecad_workbench_contract.py
test/test_yiacad_native_ops_contract.py
test/test_yiacad_uiux_tui_contract.py
test/test_yiacad_kicad_plugin_contract.py
test/test_yiacad_native_surface_contract.py
test/test_yiacad_project_shell_contract.py
test/test_yiacad_pr_summary_contract.py
test/test_yiacad_ci_pr_comment_contract.py
test/test_yiacad_web_worker_contract.py
test/test_yiacad_web_review_contract.py
test/test_yiacad_evidence_pack_contract.py
test/test_zeroclaw_n8n_workflow_contract.py
test/test_auto_check_ci_cd.py
test/test_firmware_evidence.py
test/test_validate_specs.py
tools/hw/schops/tests/test_*.py
EOF
;;
yiacad-desktop)
cat <<'EOF'
yiacad-desktop:
test/test_yiacad_action_registry_contract.py
test/test_yiacad_ai_bridge_contract.py
test/test_yiacad_backend_contract.py
test/test_yiacad_backend_service_contract.py
test/test_yiacad_freecad_workbench_contract.py
test/test_yiacad_kicad_plugin_contract.py
EOF
;;
yiacad-manufacturing)
cat <<'EOF'
yiacad-manufacturing:
test/test_yiacad_native_ops_contract.py
test/test_yiacad_web_worker_contract.py
test/test_runtime_ai_gateway_contract.py
EOF
;;
mcp)
@@ -70,6 +104,8 @@ EOF
;;
all)
print_suite stable
print_suite yiacad-desktop
print_suite yiacad-manufacturing
print_suite mcp
;;
*)
@@ -116,7 +152,7 @@ while [[ $# -gt 0 ]]; do
done
case "${SUITE}" in
stable|mcp|all)
stable|yiacad-desktop|yiacad-manufacturing|mcp|all)
;;
*)
echo "Unknown suite: ${SUITE}" >&2
@@ -148,8 +184,21 @@ if [[ "${SUITE}" == "stable" || "${SUITE}" == "all" ]]; then
run_discover test 'test_log_ops_contract.py'
run_discover test 'test_intelligence_tui_contract.py'
run_discover test 'test_runtime_ai_gateway_contract.py'
run_discover test 'test_yiacad_action_registry_contract.py'
run_discover test 'test_yiacad_ai_bridge_contract.py'
run_discover test 'test_yiacad_backend_contract.py'
run_discover test 'test_yiacad_backend_service_contract.py'
run_discover test 'test_yiacad_freecad_workbench_contract.py'
run_discover test 'test_yiacad_kicad_plugin_contract.py'
run_discover test 'test_yiacad_native_ops_contract.py'
run_discover test 'test_yiacad_uiux_tui_contract.py'
run_discover test 'test_yiacad_native_surface_contract.py'
run_discover test 'test_yiacad_project_shell_contract.py'
run_discover test 'test_yiacad_pr_summary_contract.py'
run_discover test 'test_yiacad_ci_pr_comment_contract.py'
run_discover test 'test_yiacad_web_worker_contract.py'
run_discover test 'test_yiacad_web_review_contract.py'
run_discover test 'test_yiacad_evidence_pack_contract.py'
run_discover test 'test_zeroclaw_n8n_workflow_contract.py'
run_discover test 'test_auto_check_ci_cd.py'
run_discover test 'test_firmware_evidence.py'
@@ -157,6 +206,21 @@ if [[ "${SUITE}" == "stable" || "${SUITE}" == "all" ]]; then
run_discover tools/hw/schops/tests 'test_*.py'
fi
if [[ "${SUITE}" == "yiacad-desktop" ]]; then
run_discover test 'test_yiacad_action_registry_contract.py'
run_discover test 'test_yiacad_ai_bridge_contract.py'
run_discover test 'test_yiacad_backend_contract.py'
run_discover test 'test_yiacad_backend_service_contract.py'
run_discover test 'test_yiacad_freecad_workbench_contract.py'
run_discover test 'test_yiacad_kicad_plugin_contract.py'
fi
if [[ "${SUITE}" == "yiacad-manufacturing" ]]; then
run_discover test 'test_yiacad_native_ops_contract.py'
run_discover test 'test_yiacad_web_worker_contract.py'
run_discover test 'test_runtime_ai_gateway_contract.py'
fi
if [[ "${SUITE}" == "mcp" || "${SUITE}" == "all" ]]; then
run_discover test 'test_knowledge_base_mcp.py'
run_discover test 'test_github_dispatch_mcp.py'