¿Qué hace claw-score?
Usa esta habilidad cuando trabajes en el cuadro de mandos de madurez de OpenClaw en este repositorio.
Esta es la versión openclaw-local del flujo de trabajo claw-score del mantenedor:
mantiene los conceptos de taxonomía y cuadro de mandos, pero excluye discrawl y el antiguo
árbol de informes inventory/ confirmado.
Autoridad
Esta habilidad posee el flujo de trabajo operativo para:
taxonomy.yamlqa/maturity-scores.yamldocs/concepts/qa-e2e-automation.mdqa/scenarios/index.yaml
Mantén fuera de este repositorio la información personal específica del mantenedor, privada del mantenedor, archivos de Discord y hechos de discrawl. Si una puntuación necesita evidencia privada, utiliza la forma de artefacto qa-evidence.json redactada generada por los flujos de trabajo de QA de OpenClaw.
Modelo de Fuente
taxonomy.yamles la fuente de verdad editada manualmente para superficies, niveles, perfiles de QA, categorías, IDs de cobertura de características, referencias de documentación, anulaciones de LTS y rutas de instrucciones de completitud.- Cada característica tiene exactamente una entrada
coverageIds. Mantén ese ID de evidencia único para la característica; el mapeo de evidencia muchos a muchos más amplio no es parte del esquema de taxonomía actual. - Los IDs de cobertura usan la forma
namespace.behaviorcon puntos, con segmentos alfanuméricos en minúsculas/guiones. Los IDs de perfil, superficie y categoría pueden permanecer con guiones o puntos. - Mantén los nombres de categorías y características únicos, con forma de producto y más amplios que los IDs de cobertura brutos. No promuevas IDs genéricos a nombres de características independientes.
- Evita paquetes de ID de cobertura duplicados bajo diferentes nombres de características en una categoría.
qa/maturity-scores.yamles la fuente agregada confirmada para el estado de revisión de Calidad, Completitud y LTS.extensions/qa-lab/src/scorecard-taxonomy.tsexportareadValidatedQaMaturityScoreSources; úsalo para validar la salida de puntuación.- Los documentos públicos generados son
docs/maturity/scorecard.mdydocs/maturity/taxonomy.md; ambos provienen depnpm maturity:render. No edites manualmente el Markdown generado para cambiar los resultados de puntuación. - Los artefactos
qa-evidence.jsonproporcionan evidencia del cuadro de mandos de QA por ejecución. Los artefactos del perfil de lanzamiento son la fuente de verdad para la Cobertura. Pueden enriquecer los documentos de artefactos generados, pero no se confirman como inventario.
Comandos
Ejecuta desde la raíz del repositorio openclaw.
Validar la estructura YAML de la taxonomía y el esquema de puntuación de madurez después de las ediciones de la fuente:
node --import tsx --input-type=module <<'NODE'
import fs from "node:fs";
import YAML from "yaml";
import { readValidatedQaMaturityScoreSources } from "./extensions/qa-lab/src/scorecard-taxonomy.ts";
for (const file of ["taxonomy.yaml", "qa/scenarios/index.yaml"]) {
YAML.parse(fs.readFileSync(file, "utf8"));
}
readValidatedQaMaturityScoreSources();
NODE
Comprobar la documentación al tocar la prosa de los documentos:
pnpm check:docs
Ejecutar comprobaciones de QA/perfil enfocadas al cambiar IDs de cobertura o pertenencia a perfiles:
pnpm openclaw qa coverage --json
Ejecuciones de Generación Completa
Para una ejecución directa del cuadro de mandos completo que publique la solicitud de extracción
de documento generado, usa la resolución main flotante por defecto:
github workflow run maturity-scorecard.yml \
--repo openclaw/openclaw \
--ref main \
-f ref=main \
-f expected_sha='' \
-f publish_pull_request=true \
-f allow_failures=true
No resuelvas main localmente y pases ese commit como ref y
expected_sha para una ejecución de generación manual ordinaria. main de OpenClaw se mueve
rápidamente, por lo que el commit seleccionado por el llamante puede quedar obsoleto antes de la validación. El
flujo de trabajo entonces rechaza correctamente la publicación cuando la base de la solicitud de extracción contiene
entradas de madurez más recientes, y QA nunca comienza.
Con ref=main y un expected_sha en blanco, la ruta
floating_default_branch del flujo de trabajo obtiene y congela la rama predeterminada remota actual
dentro de la validación antes de pasar una revisión inmutable a trabajos
posteriores. Usa un SHA explícito solo cuando la evidencia solicitada debe permanecer vinculada a
esa revisión exacta, como una llamada de flujo de trabajo de candidato a lanzamiento o una
reproducción histórica solo de artefactos. Si esa ejecución de revisión exacta también solicita
publicación y main ha cambiado las entradas relevantes, espera que la validación falle y
vuelve a enviar desde main flotante.
Flujo de Trabajo de Puntuación
Cuando se te pida puntuar o actualizar una superficie:
- Lee la superficie en
taxonomy.yaml. - Lee la rúbrica de completitud de la superficie bajo
.agents/skills/claw-score/references/completeness/. - Reúne evidencia del repositorio público a partir de documentos, código fuente, pruebas y metadatos de escenarios de QA.
- Prefiere los artefactos
qa-evidence.jsondel perfil de lanzamiento existentes para la prueba ejecutada. - Actualiza
qa/maturity-scores.yamlsolo para el estado de revisión de Calidad, Completitud y LTS respaldado por evidencia de artefactos pública o redactada. - Ejecuta el comando de validación de esquema de esta habilidad.
- Ejecuta
pnpm check:docssi la prosa de los documentos cambió, y comprobaciones de cobertura de QA enfocadas si los IDs de cobertura o la pertenencia a perfiles cambiaron.
Para cambios subjetivos de puntuación, haz la edición defendible más pequeña y deja la ruta
de evidencia en la solicitud de extracción o resumen de tarea. Mantén la prosa manual en los documentos actuales y
almacena los datos de puntuación en qa/maturity-scores.yaml.
Proceso de Completitud por Defecto
La completitud se puntúa contra el flujo de trabajo previsto visible para el operador para cada
categoría, no contra la amplitud de las pruebas o la calidad de la implementación. Los archivos de
referencia de completitud bajo references/completeness/ definen el alcance de la categoría y
cualquier variación específica de la superficie de este proceso por defecto.
Por defecto, la Completitud mide qué tan completamente OpenClaw expone el conjunto de capacidades de superficie previsto al usuario, operador, autor o mantenedor para esa superficie. Puntúa si cada categoría entrega el flujo de trabajo completo esperado, incluyendo configuración, uso normal, estado o inspección, recuperación y variantes importantes de plataforma, proveedor, canal, seguridad o ciclo de vida cuando corresponda.
Trata las Preguntas de Puntuación Específicas de la Superficie y la Guía Específica de la Superficie como
instrucciones de mayor prioridad para esa superficie. Las instrucciones de la superficie pueden
ampliar, reducir o entrar intencionalmente en conflicto con las ideas por defecto aquí; cuando lo hagan,
sigue las instrucciones de la superficie y haz que la justificación de la puntuación refleje esa
instrucción específica de la superficie. Si un archivo de referencia no incluye
preguntas o guía específicas de la superficie, aplica este proceso por defecto al
Alcance de la Categoría de la superficie.
Para cada categoría, pregúntate:
- ¿Puede el usuario u operador previsto completar el flujo de trabajo de la categoría de principio a fin?
- ¿Están presentes las características de la taxonomía como capacidades compatibles en lugar de fragmentos de implementación aislados?
- ¿Están representadas las etapas importantes del ciclo de vida: configuración, operación normal, estado/inspección, recuperación y actualización o eliminación cuando sea relevante?
- ¿Están presentes las ramas importantes de entorno, proveedor, plataforma, canal o seguridad para esta superficie?
- ¿Dejan las brechas conocidas faltantes ramas de capacidades principales visibles para el usuario?
Guía por defecto:
- Favorece una Completitud más alta cuando la categoría soporta el flujo de trabajo completo visible para el operador descrito por la taxonomía y la evidencia de la categoría.
- Disminuye la Completitud cuando solo existe la ruta feliz, cuando variantes importantes no están documentadas o implementadas, o cuando faltan rutas de recuperación/estado.
- No disminuyas la Completitud porque las pruebas sean escasas; eso es Cobertura.
- No disminuyas la Completitud porque la calidad de la implementación sea frágil; eso es Calidad.
Banda por defecto de Completitud:
Clawesome(95-100): completa a través de los flujos de trabajo esperados, variantes y ramas de recuperación, con solo brechas de pulido menores.Stable(80-95): el conjunto de flujos de trabajo esperado está ampliamente presente, con solo ramas faltantes acotadas.Beta(70-80): el flujo de trabajo principal existe, pero ramas significativas o rutas de recuperación aún están ausentes.Alpha(50-70): solo está presente un conjunto parcial de capacidades; los usuarios pueden completar algunas tareas principales pero no el flujo de trabajo completo esperado.Experimental(0-50): la categoría expone solo fragmentos de la capacidad prevista.
Contexto de Decisión
Registra una decision opcional junto a score y label para la Calidad/Completitud de la superficie y la categoría,
o junto a supported para la categoría LTS. En taxonomy.yaml, usa el opcional
level_decision junto al level canónico de la superficie.
Cada registro contiene value, rationale, reviewer, evidence_refs y
revalidate_when. Usa un entero de 0–100 para Calidad/Completitud, un booleano
para LTS y un ID de nivel de taxonomía declarado para level_decision. Proporciona campos de texto
no vacíos y al menos una referencia de evidencia. Nombra al revisor real y
la condición que debería desencadenar otra revisión.
Deja el historial no disponible ausente: es desconocido, no una invitación a inventar revisores, justificación o evidencia. Un registro no sobrescribe la puntuación actual, el indicador de soporte o el nivel canónico. Si su valor difiere, conserva ambos; los documentos generados muestran una discrepancia no bloqueante, incluso bajo validación de entrada estricta.
No adjuntes decisiones a la Cobertura, resúmenes calculados, resúmenes de superficie LTS o el nivel copiado en los agregados de puntuación. El contexto de decisión no cambia la identidad de cobertura, los cálculos de puntuación, los compromisos de soporte o las puertas de lanzamiento.
Semántica de Puntuación
- Cobertura: cobertura de validación de lanzamiento determinista derivada de los datos de cumplimiento de características
qa-evidence.json.scorecarddel perfil de lanzamiento. - Calidad: fiabilidad, mantenibilidad, seguridad del operador y confianza en la regresión para la categoría.
- Completitud: cuánto del flujo de trabajo previsto visible para el operador existe para la categoría. Usa el proceso de completitud por defecto más cualquier variación específica de la superficie antes de cambiar esta puntuación.
- LTS: derivado de la Calidad, la cobertura de evidencia de lanzamiento y
human_lts_override; no edites manualmente el Markdown generado para cambiar el estado de LTS.
Banda:
Clawesome: 95-100Stable: 80-95Beta: 70-80Alpha: 50-70Experimental: 0-50
Artefactos
No añadas el árbol docs/kevinslin/maturity-scorecard/inventory/ del repositorio del mantenedor
a openclaw. Las salidas del cuadro de mandos enriquecidas con evidencia pertenecen a artefactos
de corta duración, no a documentos generados confirmados, a menos que este repositorio añada un flujo de trabajo
explícito de renderizador/verificación primero.