Cobertura e2e
Lo que la batería end-to-end en vivo ejercitó en su última ejecución completa registrada: cada acción del catálogo en cada una de las tres superficies de herramientas, contra instancias reales de Arcane v2.17.2 en el entorno Docker-in-Docker. Las cifras salen de test/e2e/coverage-record.json, que make e2e-coverage-record genera a partir del registro que la batería escribe mientras se ejecuta; make check-e2e-coverage contrasta ese registro, esta página y el código de la batería con el catálogo sin necesidad del entorno. En Pruebas se explica cómo funciona la batería.
Ejecución registrada
Sección titulada «Ejecución registrada»| Fecha | 2026-11-02 |
| Commit | 245296129b6a |
| Árbol de trabajo | limpio |
| Arcane | v2.17.2 |
| Go | 1.27.3 |
| Duración | 18 min 13 s |
| Subtests de escenarios | 186: 186 correctos, 0 fallidos, 0 omitidos |
Resumen
Sección titulada «Resumen»455 de 461 acciones de 52 dominios funcionaron en las tres superficies. Cada acción tiene exactamente un estado:
| Estado | Acciones | Significado |
|---|---|---|
| cubierta | 455 | Una llamada funcionó en las superficies dinámica, meta e individual, dentro de un test que pasó. |
| parcial | 0 | Funcionó solo en algunas superficies. |
| solo en limpiezas | 0 | Solo funcionó como limpieza al final de un escenario, cuyo resultado ningún escenario comprueba. |
| solo rutas de error | 0 | Se llamó, pero todas las llamadas fallaron. |
| depende del entorno | 0 | Solo falló con un error declarado como propio de la red del equipo y no de la acción (por ejemplo, un registro público al que este equipo no llega). |
| no comprobable | 6 | Figura en test/e2e/untested.yaml: el entorno no puede ejercitarla, por el motivo que se indica más abajo. |
| sin ejercitar | 0 | Ninguna llamada de los escenarios llegó a ella. |
Además de funcionar, 89 acciones tienen también comprobada una ruta de error: una llamada MustFail que debía fallar falló (un recurso inexistente, una petición rechazada, una salvaguarda).
Por dominio
Sección titulada «Por dominio»| Dominio | Acciones | Cubierta | Parcial | Solo en limpiezas | Solo rutas de error | Depende del entorno | No comprobable | Sin ejercitar |
|---|---|---|---|---|---|---|---|---|
activity | 4 | 4 | – | – | – | – | – | – |
api_key | 8 | 8 | – | – | – | – | – | – |
app_image | 4 | 4 | – | – | – | – | – | – |
auth | 9 | 9 | – | – | – | – | – | – |
backup | 17 | 16 | – | – | – | – | 1 | – |
build | 6 | 6 | – | – | – | – | – | – |
container | 23 | 23 | – | – | – | – | – | – |
customize | 2 | 2 | – | – | – | – | – | – |
dashboard | 1 | 1 | – | – | – | – | – | – |
diagnostics | 12 | 12 | – | – | – | – | – | – |
environment | 15 | 15 | – | – | – | – | – | – |
event | 4 | 4 | – | – | – | – | – | – |
federated_credential | 6 | 6 | – | – | – | – | – | – |
git_repository | 9 | 9 | – | – | – | – | – | – |
gitops | 13 | 13 | – | – | – | – | – | – |
image | 18 | 17 | – | – | – | – | 1 | – |
image_update | 7 | 7 | – | – | – | – | – | – |
job | 11 | 10 | – | – | – | – | 1 | – |
mobile_push | 6 | 6 | – | – | – | – | – | – |
network | 9 | 9 | – | – | – | – | – | – |
notification | 6 | 6 | – | – | – | – | – | – |
oidc | 10 | 10 | – | – | – | – | – | – |
passkey | 21 | 21 | – | – | – | – | – | – |
podman | 6 | 6 | – | – | – | – | – | – |
podman_pod | 8 | 8 | – | – | – | – | – | – |
podman_quadlet | 7 | 7 | – | – | – | – | – | – |
podman_secret | 5 | 5 | – | – | – | – | – | – |
port | 1 | 1 | – | – | – | – | – | – |
project | 26 | 26 | – | – | – | – | – | – |
registry | 11 | 11 | – | – | – | – | – | – |
role | 8 | 8 | – | – | – | – | – | – |
s3_destination | 10 | 10 | – | – | – | – | – | – |
server | 3 | 3 | – | – | – | – | – | – |
settings | 5 | 5 | – | – | – | – | – | – |
stream | 1 | 1 | – | – | – | – | – | – |
swarm | 13 | 13 | – | – | – | – | – | – |
swarm_config | 5 | 5 | – | – | – | – | – | – |
swarm_node | 12 | 12 | – | – | – | – | – | – |
swarm_secret | 5 | 5 | – | – | – | – | – | – |
swarm_service | 9 | 9 | – | – | – | – | – | – |
swarm_stack | 9 | 9 | – | – | – | – | – | – |
swarm_task | 1 | 1 | – | – | – | – | – | – |
system | 11 | 8 | – | – | – | – | 3 | – |
template | 15 | 15 | – | – | – | – | – | – |
updater | 5 | 5 | – | – | – | – | – | – |
upload | 4 | 4 | – | – | – | – | – | – |
user | 6 | 6 | – | – | – | – | – | – |
variable | 6 | 6 | – | – | – | – | – | – |
volume | 13 | 13 | – | – | – | – | – | – |
volume_backup | 14 | 14 | – | – | – | – | – | – |
vulnerability | 16 | 16 | – | – | – | – | – | – |
webhook | 5 | 5 | – | – | – | – | – | – |
| Total | 461 | 455 | 0 | 0 | 0 | 0 | 6 | 0 |
Por superficie
Sección titulada «Por superficie»Cada acción en cada superficie es una celda, que se juzga por las llamadas que los escenarios hicieron a través de esa superficie:
| Estado | dynamic | meta | individual |
|---|---|---|---|
| Correcta: una llamada que no era de limpieza funcionó en un test que no falló | 455 | 455 | 455 |
| Test fallido: una llamada así funcionó, pero solo en tests que fallaron | 0 | 0 | 0 |
| Solo limpieza: solo funcionaron las limpiezas del final del escenario | 0 | 0 | 0 |
| Solo fallos: todas las llamadas fallaron | 4 | 4 | 4 |
| Sin llamadas: ninguna llamada | 2 | 2 | 2 |
Acciones que no están cubiertas en todas las superficies
Sección titulada «Acciones que no están cubiertas en todas las superficies»Los motivos se citan tal cual, en inglés, de test/e2e/untested.yaml y de las declaraciones de dependencia del entorno de cmd/audit_e2e_coverage.
| Acción | Estado | Superficies | Motivo |
|---|---|---|---|
backup.restore | no comprobable | dynamic: solo fallosmeta: solo fallosindividual: solo fallos | Arcane finds its own container through its cgroup before restoring. The estate managers do not run in the daemon they manage, and an Arcane run inside the estate’s Docker-in-Docker resolves the outer dind container, which the inner daemon does not know (‘inspect Arcane container: No such container’). TestPlatform_PrivateManager covers everything up to it and calls restore, checking the result if it ever succeeds. |
image.patch | no comprobable | dynamic: solo fallos (fallo esperado)meta: solo fallos (fallo esperado)individual: solo fallos (fallo esperado) | Needs a daemon on the containerd image store (Copacetic uses BuildKit’s docker exporter); the estate’s docker:dind daemons use overlay2, so Arcane refuses before patching. The core suite asserts that refusal. |
job.resolve_run | no comprobable | dynamic: solo fallos (fallo esperado)meta: solo fallos (fallo esperado)individual: solo fallos (fallo esperado) | Deprecated mixed-version compatibility route (removed in Arcane v3): only needs_attention runs can be resolved, and Arcane (v2.16.1 to v2.17.2) records every such outcome as failed (pkg/scheduler/runs/actors.go), so it only succeeds for a run of an agent older than v2.16 (verified against a v2.14.0 agent, plan/upstream-bugs/job-resolve-run-unreachable). The estate runs v2.17.1 agents only; the suite asserts the refusal. |
system.update_all | no comprobable | dynamic: sin llamadasmeta: sin llamadasindividual: sin llamadas | Same as system.upgrade, for every environment starting with the manager. |
system.update_all_status | no comprobable | dynamic: solo fallosmeta: solo fallosindividual: solo fallos | Answers 404 ‘no update-all job found’ until system.update_all has run, which the estate cannot do (see system.update_all). The core suite accepts the 404. |
system.upgrade | no comprobable | dynamic: sin llamadasmeta: sin llamadasindividual: sin llamadas | Upgrades the Arcane server itself by replacing its own container, which it must find on the daemon it manages; the estate managers run outside the daemons they manage, and replacing the server under test would end the run. |
Subtests omitidos
Sección titulada «Subtests omitidos»Ninguno.