Arxi Sistema-Prova i Arquitectura de Validació
Audience: Engineers maintaining release confidence, deterministic Audiència: Enginyers que mantenen la confiança en les versions, la validació determinista i els artefactes de prova preparats per a auditoria.
Taula de continguts
- Visió Executiva
- System-Test Contract
- Inventari Dirigit per Registre
- Matriz de cobertura i model de buit
- Artifact i Contracte de Transcripció
- Eina d’Execució
- Estructura de la Suite
- File per Fitxer Referència Creuada
Executive Overview
El sistema de proves d’Arxi valida el comportament a través de límits de producció reals (CLI i ingestió d’adaptadors), emet artefactes estructurats i rastreja la cobertura mitjançant fitxers TOML de registre + buits. El sistema està dissenyat per mantenir les execucions deterministes i inspeccionables.
F:system-tests/README.md L12-L39 F:system-tests/AGENTS.md L12-L35
Contracte de Prova del Sistema
Les proves del sistema requereixen:
- afirmacions de fallada tancada,
- sense correcció basada en el son,
- comandes de producció i superfícies de dades,
- emissió d’artefactes per prova obligatòria.
F:system-tests/AGENTS.md L14-L37
La restricció de funcions manté les proves del sistema explícites en CI i en execucions locals. F:system-tests/README.md L34-L45
Inventari Dirigit per Registre
system-tests/test_registry.toml és autoritari per:
- categories,
- metadades per prova,
- punts d’entrada de comandes,
- artefactes requerits,
- temps d’execució estimat.
F:system-tests/test_registry.toml L5-L14 F:system-tests/test_registry.toml L15-L480
Matriz de cobertura i model de buit
system-tests/TEST_MATRIX.md defineix instantànies de cobertura objectiva P0/P1/P2. F:system-tests/TEST_MATRIX.md L12-L42
system-tests/test_gaps.toml fa un seguiment dels buits oberts/tancats amb criteris d’acceptació explícits i mapeig de categoria/prioritat. F:system-tests/test_gaps.toml L4-L74 F:system-tests/test_gaps.toml L75-L190
A partir del 2026-02-07, tots els buits P1 seguits estan tancats (deduplicació de selectors compostos, ancoratges de segments parcials, fallades de coincidència entre segments tancades, tancament d’adjuncions tancades, paritat SQLite/en memòria). La cobertura de pressió/performance P2 es manté intencionadament oberta. A partir de la mateixa data, els resultats de seguretat de l’OSS Launch 0 estan subjectes a proves de sistema per als límits/polítiques de la interfície de línia de comandes (CLI), camins de manipulació estructural del manifest, materialització de corrupció de SQLite i aplicació d’un sol segment obert. A partir de la mateixa data, el cicle de vida de HTTP del sidecar i la persistència de la idempotència de reinici estan subjectes a proves de sistema amb subprocessos reals de sidecar + fluxos de treball de transport TCP. A partir del 2026-02-08, el seguiment de l’expansió de classe mundial de la CLI OSS està totalment reflectit en les proves de sistema: validació de la forma de l’identificador del gravador, comprovacions de fallada tancada d’entrada hostil en l’adjunció, durada de segellat automàtic/carrils de cicle de vida combinats, paginació JSON de consultes + baranes de seguretat per sobre del límit, i camins de comandes estrictes de fallada/èxit de ingest-fixture de Decision Gate CLI. A partir del 2026-02-08, l’embalatge del contenidor del sidecar també està subjecte a proves de sistema a través de la suite sidecar_docker (comprovacions de reforç d’actius + carril e2e de Docker Compose amb política d’ometre/fallada explícita a través de ARXI_REQUIRE_DOCKER). A partir del 2026-02-08, el carril de Docker Compose valida addicionalment el comportament de la prova d’inici/lectura del contenidor (/startup, /ready) abans i després de les transicions del cicle de vida d’obertura de segment.
Artifact i Contracte de Transcripció
Cada execució de prova emet com a mínim:
summary.json,summary.md,tool_transcript.json.
TestReporter i TestArtifacts creen arrels d’execució deterministes, imposen una política de reutilització d’arrels d’execució i produeixen documents de resum estàndard.
F:system-tests/tests/helpers/artifacts.rs L65-L131 F:system-tests/tests/helpers/artifacts.rs L133-L214 F:system-tests/tests/helpers/cli.rs L19-L107
Eina d’Execució
Python helpers:
test_runner.py: registry-based execution with optional parallelism,test_runner.py: execució basada en registre amb paral·lelisme opcional, arrels d’artifacts per a cada prova i generació de manifest.coverage_report.py: genera documents a partir del registre + buits.gap_tracker.py: llista/mostra/tanca buits i genera indicacions d’implementació.
F:scripts/system_tests/test_runner.py L64-L112 F:scripts/system_tests/test_runner.py L119-L199 F:scripts/system_tests/coverage_report.py L43-L101 F:scripts/system_tests/gap_tracker.py L92-L140
Estructura de la Suite
Els mòduls de la suite cobreixen:
smoke: inici del CLI i comprovacions d’ajuda/version,bundle: construcció/verificació/inspecció i detecció d’alteracions,persistència: reinici, determinisme i comprovacions de paritat SQLite/en memòria,operations: query ordering/cursor plus JSON pagination/limit guardrails andoperacions: ordenació de consultes/cursor més paginació JSON/límits de seguretat i comprovacions de paritat de validació de configuració de recorder-id + auto-seal,security: bounded CLI input surfaces, malformed-identifier rejection, secure signer-file policy, signer-rotation recovery/corruption behavior, contract path safety, hostile bundle parse-boundary checks, and hostilerecord-with-attachmentscomprovacions de límits,recorder: lifecycle plus auto-seal count/duration/combined behavior andrecorder: comptatge/duració del cicle de vida més auto-segellament/comportament combinat i comprovacions de persistència de gravació d’adjunts sobre el límit real de la CLI,sidecar: real sidecar process lifecycle over HTTP (record/seal/build/verify)sidecar: cicle de vida real del procés sidecar sobre HTTP (registre/sellar/construir/verificar) i comprovacions de persistència de reproducció/idempotència de conflicte a la frontera de reinici,sidecar_docker: Dockerfile/Compose/config hardening checks and Docker Compose build/up/down with containerized sidecar startup/readiness probesidecar_docker: comprovacions de reforç del Dockerfile/Compose/config i construcció/pujada/baixada de Docker Compose amb comprovacions d’inici/lectura de contenidors sidecar, així com flux de treball d’obertura/registres/consultes,integration_openclaw: fixture-driven OpenClaw gateway/CLI ingest, signed/unsigned verification lanes, sequence-gap policy checks, sensitiveintegration_openclaw: ingesta de gateway/CLI OpenClaw basada en fixtures, carrils de verificació signats/no signats, comprovacions de política de buits de seqüència, redacció de camps sensibles i comprovacions de gestió de càrregues limitades.integration_decision_gate: fixture-driven Decision Gate MCP runpack flow ingest through the productionarxi-decision-gate-adaptercrate, signed/unsigned verification lanes, runpack-integrity strict-vs-anomaly policy checks (including manifest self-integrity recomputation), sensitive transcript-field redaction, bounded transcript payload handling checks, CLIdecision-gate ingest-fixturecommand-path validation, and a fixture conformance gate that enforces canonical Decision Gate tool request/response shapes (including export-vs-verifychecked_filessemàntica).
F:system-tests/tests/suites/smoke.rs L15-L43 F:system-tests/tests/suites/recorder.rs L20-L678 F:system-tests/tests/suites/bundle.rs L64-L684 F:system-tests/tests/suites/persistence.rs L24-L468 F:system-tests/tests/suites/operations.rs L23-L570 F:system-tests/tests/suites/security.rs L19-L1024 F:system-tests/tests/suites/sidecar.rs F:system-tests/tests/suites/sidecar_docker.rs F:system-tests/tests/suites/integration_openclaw.rs L1-L200 F:system-tests/tests/suites/integration_decision_gate.rs L1-L1161 F:Docs/architecture/arxi_openclaw_integration_architecture.md L1-L160 F:Docs/architecture/arxi_decision_gate_integration_architecture.md L1-L170
File per Fitxer Referència Creuada
| Àrea | Fitxer | Notes |
|---|---|---|
| Contracte i estàndards | system-tests/AGENTS.md | Requisits de comportament i artefacte per a les proves del sistema. |
| Visió general de l’execució | system-tests/README.md | Com executar i ampliar suites. |
| Instantània de cobertura | system-tests/TEST_MATRIX.md | Matriu P0/P1/P2. |
| Registre de proves | system-tests/test_registry.toml | Inventari autoritatiu i ordres d’execució. |
| Dades de seguiment de buits | system-tests/test_gaps.toml | Buits de cobertura i criteris d’acceptació. |
| Ajut d’artefactes | system-tests/tests/helpers/artifacts.rs | Contracte de generació de resum i arrel d’execució. |
| Ajut de CLI | system-tests/tests/helpers/cli.rs | Execució real de comandes de CLI i captura de transcripcions. |
| Ajut de sidecar | system-tests/tests/helpers/sidecar.rs | Inici/aturada real del procés sidecar i captura de transcripcions HTTP. |
| Ajut de Docker | system-tests/tests/helpers/docker.rs | Probes del daemon/compose de Docker i helpers d’ordres per a carrils contenidors. |
| Suite de sidecar | system-tests/tests/suites/sidecar.rs | Cicle de vida HTTP de sidecar i validació d’idempotència de reinici. |
| Suite de Docker de sidecar | system-tests/tests/suites/sidecar_docker.rs | Enduriment del paquetatge de contenidors de sidecar i validació del flux de treball de Docker Compose, incloent probes d’inici/preparació. |
| Suite d’integració d’OpenClaw | system-tests/tests/suites/integration_openclaw.rs | Validació d’ingestió d’adaptadors basada en fixtures per a fluxos simulats de gateway + CLI. |
| Fixtures d’OpenClaw | system-tests/tests/fixtures/openclaw_gateway_mock_events.json | Fixture d’esdeveniments de flux simulats de gateway alineada amb l’esquema d’esdeveniments d’OpenClaw. |
| Fixtures d’OpenClaw | system-tests/tests/fixtures/openclaw_cli_mock_events.json | Fixture d’esdeveniments de flux de tipus fallback de CLI alineada amb l’esquema d’esdeveniments d’OpenClaw. |
| Arquitectura d’integració d’OpenClaw | Docs/architecture/arxi_openclaw_integration_architecture.md | Mapeig versionat, redacció i contracte de política de càrrega limitada. |
| Adaptador de producció de Decision Gate | crates/arxi-decision-gate-adapter/src/adapter.rs | Implementació canònica del mapeig de Decision Gate a Arxi exercida per proves del sistema. |
| Suite d’integració de Decision Gate | system-tests/tests/suites/integration_decision_gate.rs | Validació del flux de runpack MCP basada en fixtures per al acoblament del pla de control. |
| Fixture de Decision Gate | system-tests/tests/fixtures/decision_gate_runpack_mock_flow.json | Fixture de flux de runpack MCP simulada alineada amb la transcripció de Decision Gate i el disseny del manifest de runpack. |
| Arquitectura d’integració de Decision Gate | Docs/architecture/arxi_decision_gate_integration_architecture.md | Mapeig de flux MCP versionat, política d’integritat de runpack i contracte de redacció/límits de transcripció. |
| Anàlisi d’entorn | system-tests/src/config/env.rs | Anàlisi estricta de l’entorn per a la configuració de proves. |
| Script de runner | scripts/system_tests/test_runner.py | Motor d’execució basat en registre. |
| Generador de docs de cobertura | scripts/system_tests/coverage_report.py | Canalització de docs de proves generades. |
| Script de gestió de buits | scripts/system_tests/gap_tracker.py | Eines per al cicle de vida de buits. |