@mcptoolshop/a11y-evidence-engine 0.3.0 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/ci.yml +21 -2
- package/.github/workflows/pages.yml +50 -0
- package/.github/workflows/publish.yml +48 -0
- package/.polyglot-cache.json +1055 -0
- package/README.es.md +109 -0
- package/README.fr.md +109 -0
- package/README.hi.md +109 -0
- package/README.it.md +109 -0
- package/README.ja.md +109 -0
- package/README.md +44 -11
- package/README.pt-BR.md +109 -0
- package/README.zh.md +109 -0
- package/assets/logo-a11y-evidence-engine.png +0 -0
- package/docs/index.md +31 -0
- package/package.json +4 -4
- package/site/astro.config.mjs +13 -0
- package/site/package-lock.json +6141 -0
- package/site/package.json +17 -0
- package/site/src/pages/index.astro +33 -0
- package/site/src/site-config.ts +94 -0
- package/site/src/styles/global.css +3 -0
- package/site/tsconfig.json +5 -0
package/README.es.md
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/a11y-evidence-engine/readme.png" alt="a11y-evidence-engine" width="400">
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
11
|
+
<a href="https://www.npmjs.com/package/@mcptoolshop/a11y-evidence-engine"><img src="https://img.shields.io/npm/v/@mcptoolshop/a11y-evidence-engine" alt="npm"></a>
|
|
12
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow" alt="MIT License"></a>
|
|
13
|
+
<a href="https://mcp-tool-shop-org.github.io/a11y-evidence-engine/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
14
|
+
</p>
|
|
15
|
+
|
|
16
|
+
**Motor de análisis de accesibilidad sin interfaz que genera registros de trazabilidad según la especificación [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec).**
|
|
17
|
+
|
|
18
|
+
Diseñado para funcionar en conjunto con **a11y-assist**: este motor identifica problemas y recopila evidencia verificable; a11y-assist transforma esos hallazgos en soluciones.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Características
|
|
23
|
+
|
|
24
|
+
- **Resultado determinista**: la misma entrada siempre produce los mismos resultados y trazabilidad.
|
|
25
|
+
- **Compatible con prov-spec**: cada hallazgo incluye evidencia verificable criptográficamente.
|
|
26
|
+
- **Amigable para CI**: códigos de salida diseñados para la automatización.
|
|
27
|
+
- **No requiere navegador**: análisis estático de HTML puro.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Instalación
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npm install -g @mcptoolshop/a11y-evidence-engine
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Uso
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Scan a file or directory
|
|
43
|
+
a11y-engine scan ./path/to/html --out ./results
|
|
44
|
+
|
|
45
|
+
# View help
|
|
46
|
+
a11y-engine --help
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Salida
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
results/
|
|
55
|
+
├── findings.json # All findings with metadata
|
|
56
|
+
└── provenance/
|
|
57
|
+
└── finding-0001/
|
|
58
|
+
├── record.json # engine.extract.evidence.json_pointer
|
|
59
|
+
├── digest.json # integrity.digest.sha256
|
|
60
|
+
└── envelope.json # adapter.wrap.envelope_v0_1
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Códigos de salida
|
|
66
|
+
|
|
67
|
+
| Code | Significado |
|
|
68
|
+
| ------ | --------- |
|
|
69
|
+
| 0 | No se encontraron problemas con la severidad "error". |
|
|
70
|
+
| 2 | Se encontró al menos un problema con la severidad "error". |
|
|
71
|
+
| 3 | Fallo interno del motor / entrada inválida. |
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## Reglas (v0.1.0)
|
|
76
|
+
|
|
77
|
+
| ID de la regla | Descripción |
|
|
78
|
+
| --------- | ------------- |
|
|
79
|
+
| `html.document.missing_lang` | El elemento `<html>` no tiene el atributo "lang". |
|
|
80
|
+
| `html.img.missing_alt` | El elemento `<img>` no tiene el atributo "alt". |
|
|
81
|
+
| `html.form_control.missing_label` | Un control de formulario no tiene una etiqueta asociada. |
|
|
82
|
+
| `html.interactive.missing_name` | Un elemento interactivo no tiene un nombre accesible. |
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## Trazabilidad
|
|
87
|
+
|
|
88
|
+
Cada hallazgo incluye tres registros prov-spec:
|
|
89
|
+
|
|
90
|
+
1. **record.json**: Extracción de evidencia utilizando `engine.extract.evidence.json_pointer`.
|
|
91
|
+
2. **digest.json**: Hash SHA-256 de la evidencia canónica utilizando `integrity.digest.sha256`.
|
|
92
|
+
3. **envelope.json**: Resultado encapsulado utilizando `adapter.wrap.envelope_v0_1`.
|
|
93
|
+
|
|
94
|
+
Estos registros se pueden verificar de forma independiente sin confiar en el motor.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Relacionado
|
|
99
|
+
|
|
100
|
+
- [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec) - Especificación de trazabilidad.
|
|
101
|
+
- [a11y-mcp-tools](https://github.com/mcp-tool-shop-org/a11y-mcp-tools) - Herramientas MCP para accesibilidad.
|
|
102
|
+
- [a11y-assist](https://github.com/mcp-tool-shop-org/a11y-assist) - Asesor de corrección.
|
|
103
|
+
- [a11y-demo-site](https://github.com/mcp-tool-shop-org/a11y-demo-site) - Demostración con flujos de trabajo de CI.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Licencia
|
|
108
|
+
|
|
109
|
+
[MIT](LICENSE)
|
package/README.fr.md
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/a11y-evidence-engine/readme.png" alt="a11y-evidence-engine" width="400">
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
11
|
+
<a href="https://www.npmjs.com/package/@mcptoolshop/a11y-evidence-engine"><img src="https://img.shields.io/npm/v/@mcptoolshop/a11y-evidence-engine" alt="npm"></a>
|
|
12
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow" alt="MIT License"></a>
|
|
13
|
+
<a href="https://mcp-tool-shop-org.github.io/a11y-evidence-engine/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
14
|
+
</p>
|
|
15
|
+
|
|
16
|
+
**Moteur d'analyse de l'accessibilité sans interface utilisateur, qui génère des enregistrements de traçabilité au format [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec).**
|
|
17
|
+
|
|
18
|
+
Conçu pour fonctionner en complément de **a11y-assist** : ce moteur identifie les problèmes et collecte des preuves vérifiables ; a11y-assist transforme ces résultats en corrections.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Fonctionnalités
|
|
23
|
+
|
|
24
|
+
- **Résultats déterministes** : les mêmes entrées produisent toujours les mêmes résultats et la même traçabilité.
|
|
25
|
+
- **Compatible avec prov-spec** : chaque résultat inclut des preuves vérifiables cryptographiquement.
|
|
26
|
+
- **Adapté aux environnements CI** : codes de sortie conçus pour l'automatisation.
|
|
27
|
+
- **Aucun navigateur requis** : analyse statique pure du code HTML.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Installation
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npm install -g @mcptoolshop/a11y-evidence-engine
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Utilisation
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Scan a file or directory
|
|
43
|
+
a11y-engine scan ./path/to/html --out ./results
|
|
44
|
+
|
|
45
|
+
# View help
|
|
46
|
+
a11y-engine --help
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Sortie
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
results/
|
|
55
|
+
├── findings.json # All findings with metadata
|
|
56
|
+
└── provenance/
|
|
57
|
+
└── finding-0001/
|
|
58
|
+
├── record.json # engine.extract.evidence.json_pointer
|
|
59
|
+
├── digest.json # integrity.digest.sha256
|
|
60
|
+
└── envelope.json # adapter.wrap.envelope_v0_1
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Codes de sortie
|
|
66
|
+
|
|
67
|
+
| Code | Signification |
|
|
68
|
+
| ------ | --------- |
|
|
69
|
+
| 0 | Aucune anomalie détectée avec la sévérité "erreur". |
|
|
70
|
+
| 2 | Au moins une anomalie détectée avec la sévérité "erreur". |
|
|
71
|
+
| 3 | Erreur interne du moteur / entrée invalide. |
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## Règles (v0.1.0)
|
|
76
|
+
|
|
77
|
+
| Identifiant de la règle | Description |
|
|
78
|
+
| --------- | ------------- |
|
|
79
|
+
| `html.document.missing_lang` | L'élément `<html>` est dépourvu de l'attribut `lang`. |
|
|
80
|
+
| `html.img.missing_alt` | L'élément `<img>` est dépourvu de l'attribut `alt`. |
|
|
81
|
+
| `html.form_control.missing_label` | Un élément de formulaire est dépourvu de son étiquette associée. |
|
|
82
|
+
| `html.interactive.missing_name` | Un élément interactif est dépourvu de son nom accessible. |
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## Traçabilité
|
|
87
|
+
|
|
88
|
+
Chaque anomalie inclut trois enregistrements au format prov-spec :
|
|
89
|
+
|
|
90
|
+
1. **record.json** : Extraction des preuves à l'aide de `engine.extract.evidence.json_pointer`.
|
|
91
|
+
2. **digest.json** : Hachage SHA-256 des preuves canoniques à l'aide de `integrity.digest.sha256`.
|
|
92
|
+
3. **envelope.json** : Résultat encapsulé à l'aide de `adapter.wrap.envelope_v0_1`.
|
|
93
|
+
|
|
94
|
+
Ces enregistrements peuvent être vérifiés indépendamment, sans avoir à faire confiance au moteur.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Liens connexes
|
|
99
|
+
|
|
100
|
+
- [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec) - Spécification de la traçabilité.
|
|
101
|
+
- [a11y-mcp-tools](https://github.com/mcp-tool-shop-org/a11y-mcp-tools) - Outils MCP pour l'accessibilité.
|
|
102
|
+
- [a11y-assist](https://github.com/mcp-tool-shop-org/a11y-assist) - Assistant de correction.
|
|
103
|
+
- [a11y-demo-site](https://github.com/mcp-tool-shop-org/a11y-demo-site) - Démonstration avec des flux de travail CI.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Licence
|
|
108
|
+
|
|
109
|
+
[MIT](LICENSE)
|
package/README.hi.md
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/a11y-evidence-engine/readme.png" alt="a11y-evidence-engine" width="400">
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
11
|
+
<a href="https://www.npmjs.com/package/@mcptoolshop/a11y-evidence-engine"><img src="https://img.shields.io/npm/v/@mcptoolshop/a11y-evidence-engine" alt="npm"></a>
|
|
12
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow" alt="MIT License"></a>
|
|
13
|
+
<a href="https://mcp-tool-shop-org.github.io/a11y-evidence-engine/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
14
|
+
</p>
|
|
15
|
+
|
|
16
|
+
**एक "हेडलेस" एक्सेसिबिलिटी जांच इंजन जो [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec) प्रमाण रिकॉर्ड उत्पन्न करता है।**
|
|
17
|
+
|
|
18
|
+
यह इंजन **a11y-assist** के साथ काम करने के लिए डिज़ाइन किया गया है: यह इंजन समस्याओं का पता लगाता है और सत्यापन योग्य प्रमाण एकत्र करता है; a11y-assist उन निष्कर्षों को समाधानों में बदल देता है।
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## विशेषताएं
|
|
23
|
+
|
|
24
|
+
- **निश्चित आउटपुट:** समान इनपुट हमेशा समान निष्कर्ष और प्रमाण उत्पन्न करता है।
|
|
25
|
+
- **prov-spec के साथ संगत:** प्रत्येक निष्कर्ष में क्रिप्टोग्राफिक रूप से सत्यापन योग्य प्रमाण शामिल होता है।
|
|
26
|
+
- **CI-अनुकूल:** स्वचालन के लिए डिज़ाइन किए गए एग्जिट कोड।
|
|
27
|
+
- **ब्राउज़र की आवश्यकता नहीं:** केवल स्थिर HTML विश्लेषण।
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## स्थापना
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npm install -g @mcptoolshop/a11y-evidence-engine
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## उपयोग
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Scan a file or directory
|
|
43
|
+
a11y-engine scan ./path/to/html --out ./results
|
|
44
|
+
|
|
45
|
+
# View help
|
|
46
|
+
a11y-engine --help
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## आउटपुट
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
results/
|
|
55
|
+
├── findings.json # All findings with metadata
|
|
56
|
+
└── provenance/
|
|
57
|
+
└── finding-0001/
|
|
58
|
+
├── record.json # engine.extract.evidence.json_pointer
|
|
59
|
+
├── digest.json # integrity.digest.sha256
|
|
60
|
+
└── envelope.json # adapter.wrap.envelope_v0_1
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## एग्जिट कोड
|
|
66
|
+
|
|
67
|
+
| Code | अर्थ |
|
|
68
|
+
| ------ | --------- |
|
|
69
|
+
| 0 | कोई भी गंभीर त्रुटि नहीं मिली। |
|
|
70
|
+
| 2 | कम से कम एक गंभीर त्रुटि मिली। |
|
|
71
|
+
| 3 | इंजन में आंतरिक त्रुटि / अमान्य इनपुट। |
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## नियम (v0.1.0)
|
|
76
|
+
|
|
77
|
+
| नियम आईडी | विवरण |
|
|
78
|
+
| --------- | ------------- |
|
|
79
|
+
| `html.document.missing_lang` | `<html>` तत्व में `lang` विशेषता गायब है। |
|
|
80
|
+
| `html.img.missing_alt` | `<img>` तत्व में `alt` विशेषता गायब है। |
|
|
81
|
+
| `html.form_control.missing_label` | फॉर्म नियंत्रण में संबंधित लेबल गायब है। |
|
|
82
|
+
| `html.interactive.missing_name` | इंटरैक्टिव तत्व में सुलभ नाम गायब है। |
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## प्रमाण
|
|
87
|
+
|
|
88
|
+
प्रत्येक निष्कर्ष में तीन prov-spec रिकॉर्ड शामिल हैं:
|
|
89
|
+
|
|
90
|
+
1. **record.json**: `engine.extract.evidence.json_pointer` का उपयोग करके प्रमाण निष्कर्षण।
|
|
91
|
+
2. **digest.json**: `integrity.digest.sha256` का उपयोग करके मानक प्रमाण का SHA-256 हैश।
|
|
92
|
+
3. **envelope.json**: `adapter.wrap.envelope_v0_1` का उपयोग करके लिपटे हुए परिणाम।
|
|
93
|
+
|
|
94
|
+
ये रिकॉर्ड इंजन पर भरोसा किए बिना स्वतंत्र रूप से सत्यापित किए जा सकते हैं।
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## संबंधित
|
|
99
|
+
|
|
100
|
+
- [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec) - प्रमाण विनिर्देश।
|
|
101
|
+
- [a11y-mcp-tools](https://github.com/mcp-tool-shop-org/a11y-mcp-tools) - एक्सेसिबिलिटी के लिए MCP उपकरण।
|
|
102
|
+
- [a11y-assist](https://github.com/mcp-tool-shop-org/a11y-assist) - समाधान सलाहकार।
|
|
103
|
+
- [a11y-demo-site](https://github.com/mcp-tool-shop-org/a11y-demo-site) - CI वर्कफ़्लो के साथ डेमो।
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## लाइसेंस
|
|
108
|
+
|
|
109
|
+
[MIT](LICENSE)
|
package/README.it.md
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/a11y-evidence-engine/readme.png" alt="a11y-evidence-engine" width="400">
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
11
|
+
<a href="https://www.npmjs.com/package/@mcptoolshop/a11y-evidence-engine"><img src="https://img.shields.io/npm/v/@mcptoolshop/a11y-evidence-engine" alt="npm"></a>
|
|
12
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow" alt="MIT License"></a>
|
|
13
|
+
<a href="https://mcp-tool-shop-org.github.io/a11y-evidence-engine/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
14
|
+
</p>
|
|
15
|
+
|
|
16
|
+
**Motore di analisi dell'accessibilità senza interfaccia utente che genera record di provenienza conformi a [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec).**
|
|
17
|
+
|
|
18
|
+
Progettato per essere utilizzato in combinazione con **a11y-assist**: questo motore individua i problemi e raccoglie prove verificabili; a11y-assist trasforma queste scoperte in soluzioni.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Caratteristiche
|
|
23
|
+
|
|
24
|
+
- **Output deterministico**: lo stesso input produce sempre risultati identici e informazioni sulla provenienza.
|
|
25
|
+
- **Compatibile con prov-spec**: ogni risultato include prove verificabili crittograficamente.
|
|
26
|
+
- **Adatto per l'integrazione continua (CI)**: codici di uscita progettati per l'automazione.
|
|
27
|
+
- **Non richiede un browser**: analisi statica di file HTML.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Installazione
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npm install -g @mcptoolshop/a11y-evidence-engine
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Utilizzo
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Scan a file or directory
|
|
43
|
+
a11y-engine scan ./path/to/html --out ./results
|
|
44
|
+
|
|
45
|
+
# View help
|
|
46
|
+
a11y-engine --help
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Output
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
results/
|
|
55
|
+
├── findings.json # All findings with metadata
|
|
56
|
+
└── provenance/
|
|
57
|
+
└── finding-0001/
|
|
58
|
+
├── record.json # engine.extract.evidence.json_pointer
|
|
59
|
+
├── digest.json # integrity.digest.sha256
|
|
60
|
+
└── envelope.json # adapter.wrap.envelope_v0_1
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Codici di uscita
|
|
66
|
+
|
|
67
|
+
| Code | Significato |
|
|
68
|
+
| ------ | --------- |
|
|
69
|
+
| 0 | Nessun risultato con gravità "errore" |
|
|
70
|
+
| 2 | Almeno un risultato con gravità "errore" |
|
|
71
|
+
| 3 | Errore interno del motore / input non valido |
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## Regole (v0.1.0)
|
|
76
|
+
|
|
77
|
+
| ID della regola | Descrizione |
|
|
78
|
+
| --------- | ------------- |
|
|
79
|
+
| `html.document.missing_lang` | Elemento `<html>` privo dell'attributo `lang` |
|
|
80
|
+
| `html.img.missing_alt` | Elemento `<img>` privo dell'attributo `alt` |
|
|
81
|
+
| `html.form_control.missing_label` | Elemento di controllo del modulo privo dell'etichetta associata |
|
|
82
|
+
| `html.interactive.missing_name` | Elemento interattivo privo di un nome accessibile |
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## Provenienza
|
|
87
|
+
|
|
88
|
+
Ogni risultato include tre record conformi a prov-spec:
|
|
89
|
+
|
|
90
|
+
1. **record.json**: Estrazione delle prove utilizzando `engine.extract.evidence.json_pointer`
|
|
91
|
+
2. **digest.json**: Hash SHA-256 delle prove standardizzate utilizzando `integrity.digest.sha256`
|
|
92
|
+
3. **envelope.json**: Risultato incapsulato utilizzando `adapter.wrap.envelope_v0_1`
|
|
93
|
+
|
|
94
|
+
Questi record possono essere verificati indipendentemente, senza dover fidarsi del motore.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Correlati
|
|
99
|
+
|
|
100
|
+
- [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec) - Specifiche sulla provenienza
|
|
101
|
+
- [a11y-mcp-tools](https://github.com/mcp-tool-shop-org/a11y-mcp-tools) - Strumenti MCP per l'accessibilità
|
|
102
|
+
- [a11y-assist](https://github.com/mcp-tool-shop-org/a11y-assist) - Suggerimenti per la correzione
|
|
103
|
+
- [a11y-demo-site](https://github.com/mcp-tool-shop-org/a11y-demo-site) - Dimostrazione con flussi di lavoro CI
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## Licenza
|
|
108
|
+
|
|
109
|
+
[MIT](LICENSE)
|
package/README.ja.md
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/a11y-evidence-engine/readme.png" alt="a11y-evidence-engine" width="400">
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
11
|
+
<a href="https://www.npmjs.com/package/@mcptoolshop/a11y-evidence-engine"><img src="https://img.shields.io/npm/v/@mcptoolshop/a11y-evidence-engine" alt="npm"></a>
|
|
12
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow" alt="MIT License"></a>
|
|
13
|
+
<a href="https://mcp-tool-shop-org.github.io/a11y-evidence-engine/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
14
|
+
</p>
|
|
15
|
+
|
|
16
|
+
**ヘッドレスアクセシビリティ検証エンジン。 [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec) に準拠したトレーサビリティ情報を出力します。**
|
|
17
|
+
|
|
18
|
+
**a11y-assist** と連携するように設計されています。このエンジンは問題点を検出し、検証可能な証拠を収集し、a11y-assist はそれらの結果を修正に変換します。
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 機能
|
|
23
|
+
|
|
24
|
+
- **決定論的な出力:** 同じ入力に対して常に同じ結果(問題点とトレーサビリティ情報)を出力します。
|
|
25
|
+
- **prov-spec 準拠:** すべての問題点には、暗号学的に検証可能な証拠が含まれています。
|
|
26
|
+
- **CI 環境に最適:** 自動化のために設計された終了コードを提供します。
|
|
27
|
+
- **ブラウザ不要:** 静的な HTML ファイルのみを解析します。
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## インストール
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npm install -g @mcptoolshop/a11y-evidence-engine
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 使用方法
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Scan a file or directory
|
|
43
|
+
a11y-engine scan ./path/to/html --out ./results
|
|
44
|
+
|
|
45
|
+
# View help
|
|
46
|
+
a11y-engine --help
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## 出力
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
results/
|
|
55
|
+
├── findings.json # All findings with metadata
|
|
56
|
+
└── provenance/
|
|
57
|
+
└── finding-0001/
|
|
58
|
+
├── record.json # engine.extract.evidence.json_pointer
|
|
59
|
+
├── digest.json # integrity.digest.sha256
|
|
60
|
+
└── envelope.json # adapter.wrap.envelope_v0_1
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## 終了コード
|
|
66
|
+
|
|
67
|
+
| Code | 意味 |
|
|
68
|
+
| ------ | --------- |
|
|
69
|
+
| 0 | `error` 以上の重大度を持つ問題点が見つからなかった |
|
|
70
|
+
| 2 | 少なくとも 1 つの `error` の重大度を持つ問題点が見つかった |
|
|
71
|
+
| 3 | エンジンの内部エラーまたは無効な入力 |
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## ルール (v0.1.0)
|
|
76
|
+
|
|
77
|
+
| ルール ID | 説明 |
|
|
78
|
+
| --------- | ------------- |
|
|
79
|
+
| `html.document.missing_lang` | `<html>` 要素に `lang` 属性が設定されていない |
|
|
80
|
+
| `html.img.missing_alt` | `<img>` 要素に `alt` 属性が設定されていない |
|
|
81
|
+
| `html.form_control.missing_label` | フォームコントロールに関連するラベルが設定されていない |
|
|
82
|
+
| `html.interactive.missing_name` | インタラクティブな要素にアクセシブルな名前が設定されていない |
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## トレーサビリティ
|
|
87
|
+
|
|
88
|
+
各問題点には、prov-spec に準拠した 3 つのレコードが含まれています。
|
|
89
|
+
|
|
90
|
+
1. **record.json**: `engine.extract.evidence.json_pointer` を使用して証拠を抽出します。
|
|
91
|
+
2. **digest.json**: `integrity.digest.sha256` を使用して、正規化された証拠の SHA-256 ハッシュ値を計算します。
|
|
92
|
+
3. **envelope.json**: `adapter.wrap.envelope_v0_1` を使用して結果をラップします。
|
|
93
|
+
|
|
94
|
+
これらのレコードは、エンジンを信頼しなくても、個別に検証することができます。
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## 関連
|
|
99
|
+
|
|
100
|
+
- [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec) - トレーサビリティ仕様
|
|
101
|
+
- [a11y-mcp-tools](https://github.com/mcp-tool-shop-org/a11y-mcp-tools) - アクセシビリティのための MCP ツール
|
|
102
|
+
- [a11y-assist](https://github.com/mcp-tool-shop-org/a11y-assist) - 修正アドバイザー
|
|
103
|
+
- [a11y-demo-site](https://github.com/mcp-tool-shop-org/a11y-demo-site) - CI ワークフローを使用したデモ
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
107
|
+
## ライセンス
|
|
108
|
+
|
|
109
|
+
[MIT](LICENSE)
|
package/README.md
CHANGED
|
@@ -1,27 +1,41 @@
|
|
|
1
|
-
>
|
|
2
|
-
>
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
|
|
3
|
+
</p>
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/a11y-evidence-engine/readme.png" alt="a11y-evidence-engine" width="400">
|
|
7
|
+
</p>
|
|
5
8
|
|
|
6
|
-
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml"><img src="https://github.com/mcp-tool-shop-org/a11y-evidence-engine/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
11
|
+
<a href="https://www.npmjs.com/package/@mcptoolshop/a11y-evidence-engine"><img src="https://img.shields.io/npm/v/@mcptoolshop/a11y-evidence-engine" alt="npm"></a>
|
|
12
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow" alt="MIT License"></a>
|
|
13
|
+
<a href="https://mcp-tool-shop-org.github.io/a11y-evidence-engine/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
|
|
14
|
+
</p>
|
|
7
15
|
|
|
8
|
-
Headless accessibility evidence engine that emits [prov-spec](https://github.com/mcp-tool-shop/prov-spec) provenance records
|
|
16
|
+
**Headless accessibility evidence engine that emits [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec) provenance records.**
|
|
9
17
|
|
|
10
18
|
Designed to pair with **a11y-assist**: this engine finds issues and captures verifiable evidence; a11y-assist turns those findings into fixes.
|
|
11
19
|
|
|
20
|
+
---
|
|
21
|
+
|
|
12
22
|
## Features
|
|
13
23
|
|
|
14
|
-
- **Deterministic output
|
|
15
|
-
- **prov-spec compatible
|
|
16
|
-
- **CI-friendly
|
|
17
|
-
- **No browser required
|
|
24
|
+
- **Deterministic output** -- same input always produces identical findings and provenance
|
|
25
|
+
- **prov-spec compatible** -- every finding includes cryptographically verifiable evidence
|
|
26
|
+
- **CI-friendly** -- exit codes designed for automation
|
|
27
|
+
- **No browser required** -- pure static HTML analysis
|
|
28
|
+
|
|
29
|
+
---
|
|
18
30
|
|
|
19
31
|
## Installation
|
|
20
32
|
|
|
21
33
|
```bash
|
|
22
|
-
npm install -g a11y-evidence-engine
|
|
34
|
+
npm install -g @mcptoolshop/a11y-evidence-engine
|
|
23
35
|
```
|
|
24
36
|
|
|
37
|
+
---
|
|
38
|
+
|
|
25
39
|
## Usage
|
|
26
40
|
|
|
27
41
|
```bash
|
|
@@ -32,6 +46,8 @@ a11y-engine scan ./path/to/html --out ./results
|
|
|
32
46
|
a11y-engine --help
|
|
33
47
|
```
|
|
34
48
|
|
|
49
|
+
---
|
|
50
|
+
|
|
35
51
|
## Output
|
|
36
52
|
|
|
37
53
|
```
|
|
@@ -44,6 +60,8 @@ results/
|
|
|
44
60
|
└── envelope.json # adapter.wrap.envelope_v0_1
|
|
45
61
|
```
|
|
46
62
|
|
|
63
|
+
---
|
|
64
|
+
|
|
47
65
|
## Exit Codes
|
|
48
66
|
|
|
49
67
|
| Code | Meaning |
|
|
@@ -52,6 +70,8 @@ results/
|
|
|
52
70
|
| 2 | At least one `error` finding |
|
|
53
71
|
| 3 | Internal engine failure / invalid input |
|
|
54
72
|
|
|
73
|
+
---
|
|
74
|
+
|
|
55
75
|
## Rules (v0.1.0)
|
|
56
76
|
|
|
57
77
|
| Rule ID | Description |
|
|
@@ -61,6 +81,8 @@ results/
|
|
|
61
81
|
| `html.form_control.missing_label` | Form control missing associated label |
|
|
62
82
|
| `html.interactive.missing_name` | Interactive element missing accessible name |
|
|
63
83
|
|
|
84
|
+
---
|
|
85
|
+
|
|
64
86
|
## Provenance
|
|
65
87
|
|
|
66
88
|
Each finding includes three prov-spec records:
|
|
@@ -71,6 +93,17 @@ Each finding includes three prov-spec records:
|
|
|
71
93
|
|
|
72
94
|
These records are independently verifiable without trusting the engine.
|
|
73
95
|
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Related
|
|
99
|
+
|
|
100
|
+
- [prov-spec](https://github.com/mcp-tool-shop-org/prov-spec) - Provenance specification
|
|
101
|
+
- [a11y-mcp-tools](https://github.com/mcp-tool-shop-org/a11y-mcp-tools) - MCP tools for accessibility
|
|
102
|
+
- [a11y-assist](https://github.com/mcp-tool-shop-org/a11y-assist) - Fix advisor
|
|
103
|
+
- [a11y-demo-site](https://github.com/mcp-tool-shop-org/a11y-demo-site) - Demo with CI workflows
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
74
107
|
## License
|
|
75
108
|
|
|
76
|
-
MIT
|
|
109
|
+
[MIT](LICENSE)
|