testaro 78.0.5 → 78.0.8

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.
Files changed (75) hide show
  1. package/CLAUDE.md +1 -1
  2. package/CONTAINERS.md +1 -0
  3. package/README.md +2 -1
  4. package/netWatch.js +1 -0
  5. package/package.json +1 -1
  6. package/procs/catalog.js +1 -0
  7. package/procs/config.js +1 -0
  8. package/procs/getSource.js +1 -0
  9. package/procs/job.js +1 -0
  10. package/procs/nu.js +13 -0
  11. package/procs/shoot.js +3 -1
  12. package/procs/testaro.js +1 -0
  13. package/procs/xPath.js +6 -0
  14. package/testaro/adbID.js +1 -0
  15. package/testaro/allCapStyle.js +1 -0
  16. package/testaro/allHidden.js +1 -0
  17. package/testaro/allSlanted.js +1 -0
  18. package/testaro/altScheme.js +1 -0
  19. package/testaro/attVal.js +1 -0
  20. package/testaro/autocomplete.js +1 -0
  21. package/testaro/bulk.js +1 -0
  22. package/testaro/buttonMenu.js +1 -0
  23. package/testaro/captionLoc.js +1 -0
  24. package/testaro/datalistRef.js +1 -0
  25. package/testaro/distortion.js +1 -0
  26. package/testaro/docType.js +1 -0
  27. package/testaro/dupAtt.js +1 -0
  28. package/testaro/embAc.js +1 -0
  29. package/testaro/focAll.js +1 -0
  30. package/testaro/focAndOp.js +1 -0
  31. package/testaro/focInd.js +1 -0
  32. package/testaro/focVis.js +1 -0
  33. package/testaro/headEl.js +1 -0
  34. package/testaro/headingAmb.js +1 -0
  35. package/testaro/hovInd.js +1 -0
  36. package/testaro/hover.js +1 -0
  37. package/testaro/hr.js +1 -0
  38. package/testaro/imageLink.js +1 -0
  39. package/testaro/labClash.js +1 -0
  40. package/testaro/legendLoc.js +1 -0
  41. package/testaro/lineHeight.js +1 -0
  42. package/testaro/linkAmb.js +1 -0
  43. package/testaro/linkExt.js +1 -0
  44. package/testaro/linkOldAtt.js +1 -0
  45. package/testaro/linkTo.js +1 -0
  46. package/testaro/linkUl.js +1 -0
  47. package/testaro/miniText.js +1 -0
  48. package/testaro/motion.js +1 -0
  49. package/testaro/nonTable.js +1 -0
  50. package/testaro/optRoleSel.js +1 -0
  51. package/testaro/phOnly.js +1 -0
  52. package/testaro/pseudoP.js +1 -0
  53. package/testaro/radioSet.js +1 -0
  54. package/testaro/role.js +1 -0
  55. package/testaro/secHeading.js +1 -0
  56. package/testaro/styleDiff.js +1 -0
  57. package/testaro/tabNav.js +1 -0
  58. package/testaro/targetsNear.js +1 -0
  59. package/testaro/textSem.js +1 -0
  60. package/testaro/titledEl.js +1 -0
  61. package/testaro/zIndex.js +1 -0
  62. package/tests/alfa.js +1 -0
  63. package/tests/aslint.js +1 -0
  64. package/tests/axe.js +1 -0
  65. package/tests/ed11y.js +1 -0
  66. package/tests/htmlcs.js +1 -0
  67. package/tests/ibm.js +1 -0
  68. package/tests/nuVal.js +8 -1
  69. package/tests/nuVnu.js +9 -1
  70. package/tests/qualWeb.js +1 -0
  71. package/tests/testaro.js +1 -0
  72. package/tests/wave.js +1 -0
  73. package/validation/validateTest.js +1 -1
  74. package/memory/MEMORY.md +0 -3
  75. package/memory/project_validation_pause.md +0 -10
package/CLAUDE.md CHANGED
@@ -59,7 +59,7 @@ Two implementation patterns exist:
59
59
 
60
60
  ### Validation
61
61
 
62
- Validation is currently broken. A reconsideration of its architecture is anticipated, but in the meantime the next paragraph describes its current inoperative design.
62
+ A revision of the validation architecture is currently being planned. In the meantime the next paragraph describes its current design, not guaranteed to work without error.
63
63
 
64
64
  Validation tests live in `validation/tests/jobs/` (jobs with `expect` arrays) and `validation/tests/targets/` (static HTML pages served locally as test targets). Running `npm test <ruleID>` executes `validation/executors/test.js` → `validation/validateTest.js`, which runs the job and compares `result` fields against `expect` clauses.
65
65
 
package/CONTAINERS.md CHANGED
@@ -84,6 +84,7 @@ docker run --rm --init \
84
84
  ## License
85
85
 
86
86
  © 2026 Jeff Witt.
87
+ © 2026 Jonathan Robert Pool.
87
88
 
88
89
  Licensed under the [MIT License](https://opensource.org/license/mit/). See [LICENSE](LICENSE) file at the project root for details.
89
90
 
package/README.md CHANGED
@@ -141,7 +141,7 @@ Here is a sample job, showing properties that you can set:
141
141
  what: 'monthly health check', // Job description
142
142
  strict: true, // Whether to reject redirections from the target URL
143
143
  standard: 'only', // Report native (no), standard (only), or both (also) results
144
- imageColor: 0, // Color type (0, 2, 4, 6) of the page image, if one is to be created along with a catalog
144
+ imageColor: 0, // Color type (0 (grayscale), 2 (RGB), 4 (grayscale alpha), 6 (RGBA)) if initial page image required
145
145
  imageScale: 2, // Optional: also capture the page image at this device pixel density (see the images section)
146
146
  device: { // Device to emulate
147
147
  id: 'iPhone 8',
@@ -663,6 +663,7 @@ Future work contemplated for this project is described in its [issues](https://g
663
663
  ## License
664
664
 
665
665
  © 2021–2025 CVS Health and/or one of its affiliates. All rights reserved.
666
+ © 2026 Jeff Witt.
666
667
  © 2025–2026 Jonathan Robert Pool.
667
668
 
668
669
  Licensed under the [MIT License](https://opensource.org/license/mit/). See [LICENSE](../../LICENSE) file at the project root for details.
package/netWatch.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2022–2025 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "testaro",
3
- "version": "78.0.5",
3
+ "version": "78.0.8",
4
4
  "description": "Run 1300 web accessibility tests from 10 tools and get a standardized report",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/procs/catalog.js CHANGED
@@ -1,4 +1,5 @@
1
1
  /*
2
+ © 2026 Jeff Witt.
2
3
  © 2025–2026 Jonathan Robert Pool.
3
4
 
4
5
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
package/procs/config.js CHANGED
@@ -1,4 +1,5 @@
1
1
  /*
2
+ © 2026 Jeff Witt.
2
3
  © 2025–2026 Jonathan Robert Pool.
3
4
 
4
5
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jonathan Robert Pool.
3
4
 
4
5
  Licensed under the MIT License. See LICENSE file at the project root or
5
6
  https://opensource.org/license/mit/ for details.
package/procs/job.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
package/procs/nu.js CHANGED
@@ -1,4 +1,5 @@
1
1
  /*
2
+ © 2026 Jeff Witt.
2
3
  © 2025–2026 Jonathan Robert Pool.
3
4
 
4
5
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -93,3 +94,15 @@ exports.curate = async (data, nuData, rules) => {
93
94
  // Return the result.
94
95
  return result;
95
96
  };
97
+ // Maximum length of an extract excerpt included in the what property of a standard instance.
98
+ const excerptMax = 400;
99
+ // Gets an excerpt of the extract of a message for inclusion in the what property of a standard instance, if the element catalog cannot report the extract.
100
+ exports.getExtractExcerpt = extract => {
101
+ // If there is no extract, or the extract contains a data-xpath attribute identifying an element:
102
+ if (! extract || / data-xpath="/.test(extract)) {
103
+ // Report that no excerpt is needed, because the catalog reports the element.
104
+ return null;
105
+ }
106
+ // Return the extract (e.g. the erroneous text of a CSS: Parse Error message), truncated if necessary.
107
+ return extract.length > excerptMax ? `${extract.slice(0, excerptMax)} …` : extract;
108
+ };
package/procs/shoot.js CHANGED
@@ -57,7 +57,9 @@ exports.shoot = async (page, report, {
57
57
  scale = 'css'
58
58
  } = {}) => {
59
59
  // Make and get a screenshot as a buffer.
60
- let shot = await screenShot(page, exclusionSelector ? page.locator(exclusionSelector) : null, scale);
60
+ let shot = await screenShot(
61
+ page, exclusionSelector ? page.locator(exclusionSelector) : null, scale
62
+ );
61
63
  // If it succeeded:
62
64
  if (shot.length) {
63
65
  // Get the screenshot as an object representation of a PNG image.
package/procs/testaro.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
package/procs/xPath.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -57,6 +58,11 @@ exports.getNormalizedXPath = xPath => {
57
58
  };
58
59
  // Gets an XPath from a data-xpath attribute in an HTML excerpt.
59
60
  exports.getAttributeXPath = html => {
61
+ // If there is no excerpt (e.g. a Nu Html Checker message without an extract):
62
+ if (! html) {
63
+ // Return the fallback XPath, as for an excerpt without a data-xpath attribute.
64
+ return '/html';
65
+ }
60
66
  const match = html.match(/ data-xpath="([^" ]+)"/);
61
67
  return match ? match[1] : '/html';
62
68
  };
package/testaro/adbID.js CHANGED
@@ -1,6 +1,7 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
3
  © 2025 Juan S. Casado.
4
+ © 2026 Jeff Witt.
4
5
  © 2025–2026 Jonathan Robert Pool.
5
6
 
6
7
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,6 +1,7 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
3
  © 2025 Juan S. Casado.
4
+ © 2026 Jeff Witt.
4
5
  © 2025–2026 Jonathan Robert Pool.
5
6
 
6
7
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/attVal.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/bulk.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,6 +1,7 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
3
  © 2025 Juan S. Casado.
4
+ © 2026 Jeff Witt.
4
5
  © 2025–2026 Jonathan Robert Pool.
5
6
 
6
7
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,6 +1,7 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
3
  © 2025 Juan S. Casado.
4
+ © 2026 Jeff Witt.
4
5
  © 2025–2026 Jonathan Robert Pool.
5
6
 
6
7
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2022–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/dupAtt.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
package/testaro/embAc.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/focAll.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/focInd.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/focVis.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2022–2025 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/headEl.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
package/testaro/hovInd.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2025 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
package/testaro/hover.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
package/testaro/hr.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,6 +1,7 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
3
  © 2025 Juan S. Casado.
4
+ © 2026 Jeff Witt.
4
5
  © 2025–2026 Jonathan Robert Pool
5
6
 
6
7
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,6 +1,7 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
3
  © 2025 Juan S. Casado.
4
+ © 2026 Jeff Witt.
4
5
  © 2025–2026 Jonathan Robert Pool.
5
6
 
6
7
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2025 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/linkTo.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/linkUl.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2022–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/motion.js CHANGED
@@ -1,4 +1,5 @@
1
1
  /*
2
+ © 2026 Jeff Witt.
2
3
  © 2025–2026 Jonathan Robert Pool.
3
4
  Licensed under the MIT License. See LICENSE for details.
4
5
  */
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2022–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,6 +1,7 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
3
  © 2025 Juan S. Casado.
4
+ © 2026 Jeff Witt.
4
5
  © 2025–2026 Jonathan Robert Pool.
5
6
 
6
7
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/phOnly.js CHANGED
@@ -1,6 +1,7 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
3
  © 2025 Juan S. Casado.
4
+ © 2026 Jeff Witt.
4
5
  © 2025–2026 Jonathan Robert Pool.
5
6
 
6
7
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
package/testaro/role.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2025 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,6 +1,7 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
3
  © 2025 Juan S. Casado.
4
+ © 2026 Jeff Witt.
4
5
  © 2025–2026 Jonathan Robert Pool.
5
6
 
6
7
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
package/testaro/tabNav.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2025 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2025 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or https://opensource.org/license/mit/ for details.
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2025 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/testaro/zIndex.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2023 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/tests/alfa.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/tests/aslint.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/tests/axe.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/tests/ed11y.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/tests/htmlcs.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2022–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/tests/ibm.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/tests/nuVal.js CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  // IMPORTS
20
20
 
21
- const {curate, getContent} = require('../procs/nu');
21
+ const {curate, getContent, getExtractExcerpt} = require('../procs/nu');
22
22
  const {getAttributeXPath, getXPathCatalogIndex} = require('../procs/xPath');
23
23
 
24
24
  // FUNCTIONS
@@ -113,6 +113,13 @@ exports.reporter = async (page, report, actIndex) => {
113
113
  // Add the catalog index to the standard instance.
114
114
  standardInstance.catalogIndex = getXPathCatalogIndex(report, xPath);
115
115
  }
116
+ // Get an excerpt of the extract, if the extract identifies no element.
117
+ const extractExcerpt = getExtractExcerpt(message.extract);
118
+ // If one was obtained (e.g. the erroneous CSS of a CSS: Parse Error message):
119
+ if (extractExcerpt) {
120
+ // Add it to the description of the violation, so the extract is not lost.
121
+ standardInstance.what = `${message.message} Extract: ${extractExcerpt}`;
122
+ }
116
123
  // Add the standard instance to the standard result.
117
124
  standardResult.instances.push(standardInstance);
118
125
  })
package/tests/nuVnu.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2022–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -16,7 +17,7 @@
16
17
 
17
18
  // IMPORTS
18
19
 
19
- const {curate, getContent} = require('../procs/nu');
20
+ const {curate, getContent, getExtractExcerpt} = require('../procs/nu');
20
21
  const {getAttributeXPath, getXPathCatalogIndex} = require('../procs/xPath');
21
22
  const fs = require('fs/promises');
22
23
  const path = require('path');
@@ -101,6 +102,13 @@ exports.reporter = async (page, report, actIndex) => {
101
102
  // Add the catalog index to the standard instance.
102
103
  standardInstance.catalogIndex = getXPathCatalogIndex(report, xPath);
103
104
  }
105
+ // Get an excerpt of the extract, if the extract identifies no element.
106
+ const extractExcerpt = getExtractExcerpt(message.extract);
107
+ // If one was obtained (e.g. the erroneous CSS of a CSS: Parse Error message):
108
+ if (extractExcerpt) {
109
+ // Add it to the description of the violation, so the extract is not lost.
110
+ standardInstance.what = `${message.message} Extract: ${extractExcerpt}`;
111
+ }
104
112
  // Add the standard instance to the standard result.
105
113
  standardResult.instances.push(standardInstance);
106
114
  });
package/tests/qualWeb.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/tests/testaro.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2023–2025 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2025–2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
package/tests/wave.js CHANGED
@@ -1,5 +1,6 @@
1
1
  /*
2
2
  © 2021–2024 CVS Health and/or one of its affiliates. All rights reserved.
3
+ © 2026 Jeff Witt.
3
4
  © 2026 Jonathan Robert Pool.
4
5
 
5
6
  Licensed under the MIT License. See LICENSE file at the project root or
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  © 2022–2025 CVS Health and/or one of its affiliates. All rights reserved.
3
- © 2025 Jonathan Robert Pool.
3
+ © 2025–2026 Jonathan Robert Pool.
4
4
 
5
5
  Licensed under the MIT License. See LICENSE file at the project root or
6
6
  https://opensource.org/license/mit/ for details.
package/memory/MEMORY.md DELETED
@@ -1,3 +0,0 @@
1
- # Memory Index
2
-
3
- - [Validation system paused](project_validation_pause.md) — new validation tests on hold pending redesign of broken validation architecture
@@ -1,10 +0,0 @@
1
- ---
2
- name: Validation system paused
3
- description: All new validation test work is on hold pending a redesign of the currently broken validation architecture
4
- type: project
5
- ---
6
-
7
- New validation tests and updates to existing validation tests are paused. The validation system is currently broken and a redesign is anticipated. Do not create or modify files in validation/tests/ until the user indicates the redesign is underway.
8
-
9
- **Why:** The validation architecture is broken and being reconsidered.
10
- **How to apply:** Skip validation file creation/updates when adding or modifying Testaro rules until further notice.