testdriverai 7.1.0 → 7.1.1

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 (325) hide show
  1. package/.env.example +2 -0
  2. package/.github/workflows/linux-tests.yml +28 -0
  3. package/agent/index.js +18 -45
  4. package/agent/interface.js +13 -2
  5. package/agent/lib/commands.js +1 -1
  6. package/agent/lib/redraw.js +1 -1
  7. package/agent/lib/sandbox.js +30 -2
  8. package/agent/lib/valid-version.js +2 -2
  9. package/debugger/index.html +1 -1
  10. package/docs/docs.json +86 -125
  11. package/docs/v6/getting-started/self-hosting.mdx +3 -2
  12. package/docs/v7/_drafts/agents.mdx +852 -0
  13. package/docs/v7/_drafts/auto-cache-key.mdx +167 -0
  14. package/docs/v7/{guides → _drafts}/caching-selectors.mdx +125 -17
  15. package/docs/v7/_drafts/dashcam-title-feature.mdx +89 -0
  16. package/docs/v7/_drafts/error-handling.mdx +501 -0
  17. package/docs/v7/_drafts/implementation-plan.mdx +994 -0
  18. package/docs/v7/_drafts/init-command.mdx +95 -0
  19. package/docs/v7/_drafts/optimal-sdk-design.mdx +1348 -0
  20. package/docs/v7/_drafts/plugin-migration.mdx +222 -0
  21. package/docs/v7/_drafts/prompt-cache.mdx +200 -0
  22. package/docs/{QUICK_START_TEST_RECORDING.md → v7/_drafts/quick-start-test-recording.mdx} +3 -3
  23. package/docs/v7/_drafts/sdk-logging.mdx +222 -0
  24. package/docs/v7/_drafts/sdk-migration.mdx +474 -0
  25. package/docs/v7/_drafts/sdk-v7-complete.mdx +345 -0
  26. package/docs/v7/{guides → _drafts}/self-hosting.mdx +1 -1
  27. package/docs/v7/{guides → _drafts}/troubleshooting.mdx +2 -2
  28. package/docs/v7/{guides → _drafts}/vitest-plugin.mdx +4 -4
  29. package/docs/v7/api/{ai.mdx → act.mdx} +24 -24
  30. package/docs/v7/api/client.mdx +1 -1
  31. package/docs/v7/api/dashcam.mdx +2 -2
  32. package/docs/v7/api/elements.mdx +143 -41
  33. package/docs/v7/api/find.mdx +258 -0
  34. package/docs/v7/api/type.mdx +51 -7
  35. package/docs/v7/features/ai-native.mdx +427 -0
  36. package/docs/v7/features/easy-to-write.mdx +351 -0
  37. package/docs/v7/features/enterprise.mdx +540 -0
  38. package/docs/v7/features/fast.mdx +424 -0
  39. package/docs/v7/features/observable.mdx +623 -0
  40. package/docs/v7/features/powerful.mdx +531 -0
  41. package/docs/v7/features/scalable.mdx +417 -0
  42. package/docs/v7/features/stable.mdx +514 -0
  43. package/docs/v7/getting-started/configuration.mdx +1 -1
  44. package/docs/v7/getting-started/generating-tests.mdx +525 -0
  45. package/docs/v7/getting-started/installation.mdx +486 -0
  46. package/docs/v7/getting-started/quickstart.mdx +51 -5
  47. package/docs/v7/getting-started/running-and-debugging.mdx +511 -0
  48. package/docs/v7/getting-started/setting-up-in-ci.mdx +612 -0
  49. package/docs/v7/getting-started/writing-tests.mdx +535 -0
  50. package/docs/v7/overview/what-is-testdriver.mdx +398 -0
  51. package/docs/v7/playwright.mdx +3 -3
  52. package/docs/v7/presets/chrome.mdx +16 -0
  53. package/docs/v7/presets/electron.mdx +18 -0
  54. package/docs/v7/presets/vscode.mdx +19 -0
  55. package/examples/run-tests-with-recording.sh +70 -0
  56. package/examples/screenshot-example.js +63 -0
  57. package/examples/sdk-awesome-logs-demo.js +177 -0
  58. package/examples/sdk-cache-thresholds.js +96 -0
  59. package/examples/sdk-element-properties.js +155 -0
  60. package/examples/sdk-simple-example.js +65 -0
  61. package/examples/test-recording-example.test.js +166 -0
  62. package/interfaces/cli/commands/init.js +358 -0
  63. package/interfaces/vitest-plugin.mjs +214 -10
  64. package/{src → lib}/core/Dashcam.js +41 -4
  65. package/{src → lib}/vitest/hooks.mjs +118 -100
  66. package/lib/vitest/setup.mjs +44 -0
  67. package/package.json +9 -10
  68. package/sdk.d.ts +15 -2
  69. package/sdk.js +70 -18
  70. package/{self-hosted.yml → setup/aws/self-hosted.yml} +1 -1
  71. package/{testdriver/acceptance-sdk → test/manual}/test-console-logs.test.mjs +1 -1
  72. package/test/manual/test-find-api.js +73 -0
  73. package/test/manual/test-init.sh +54 -0
  74. package/test/manual/test-prompt-cache.js +96 -0
  75. package/test/manual/test-provision-auth.mjs +22 -0
  76. package/test/manual/test-sandbox-render.js +28 -0
  77. package/test/manual/test-sdk-methods.js +15 -0
  78. package/test/manual/test-sdk-refactor.js +53 -0
  79. package/test/manual/test-stack-trace.mjs +57 -0
  80. package/test/testdriver/assert.test.mjs +41 -0
  81. package/{testdriver/acceptance-sdk → test/testdriver}/auto-cache-key-demo.test.mjs +1 -1
  82. package/{testdriver/acceptance-sdk → test/testdriver}/drag-and-drop.test.mjs +1 -1
  83. package/{testdriver/acceptance-sdk → test/testdriver}/element-not-found.test.mjs +1 -1
  84. package/{testdriver/acceptance-sdk → test/testdriver}/exec-js.test.mjs +1 -1
  85. package/{testdriver/acceptance-sdk → test/testdriver}/exec-output.test.mjs +3 -3
  86. package/{testdriver/acceptance-sdk → test/testdriver}/exec-pwsh.test.mjs +3 -3
  87. package/{testdriver/acceptance-sdk → test/testdriver}/focus-window.test.mjs +1 -1
  88. package/{testdriver/acceptance-sdk → test/testdriver}/formatted-logging.test.mjs +1 -1
  89. package/{testdriver/acceptance-sdk → test/testdriver}/hover-image.test.mjs +1 -1
  90. package/{testdriver/acceptance-sdk → test/testdriver}/hover-text-with-description.test.mjs +1 -1
  91. package/{testdriver/acceptance-sdk → test/testdriver}/hover-text.test.mjs +1 -1
  92. package/{testdriver/acceptance-sdk → test/testdriver}/match-image.test.mjs +1 -1
  93. package/{testdriver/acceptance-sdk → test/testdriver}/press-keys.test.mjs +1 -1
  94. package/{testdriver/acceptance-sdk → test/testdriver}/prompt.test.mjs +2 -2
  95. package/{testdriver/acceptance-sdk → test/testdriver}/scroll-keyboard.test.mjs +1 -1
  96. package/{testdriver/acceptance-sdk → test/testdriver}/scroll-until-image.test.mjs +1 -1
  97. package/{testdriver/acceptance-sdk → test/testdriver}/scroll-until-text.test.mjs +1 -1
  98. package/{testdriver/acceptance-sdk → test/testdriver}/scroll.test.mjs +1 -1
  99. package/{src/vitest/lifecycle.mjs → test/testdriver/setup/lifecycleHelpers.mjs} +84 -99
  100. package/test/testdriver/setup/testHelpers.mjs +653 -0
  101. package/{testdriver/acceptance-sdk → test/testdriver}/type.test.mjs +1 -1
  102. package/vitest.config.mjs +11 -57
  103. package/.github/dependabot.yml +0 -11
  104. package/.github/workflows/acceptance-linux.yml +0 -75
  105. package/.github/workflows/acceptance-sdk-tests.yml +0 -133
  106. package/.github/workflows/acceptance-tests.yml +0 -130
  107. package/.github/workflows/lint.yml +0 -27
  108. package/.github/workflows/publish-canary.yml +0 -40
  109. package/.github/workflows/publish-latest.yml +0 -61
  110. package/.github/workflows/test-install.yml +0 -29
  111. package/.vscode/extensions.json +0 -3
  112. package/.vscode/launch.json +0 -22
  113. package/.vscode/settings.json +0 -14
  114. package/AGENTS.md +0 -550
  115. package/CODEOWNERS +0 -2
  116. package/_testdriver/acceptance/assert.yaml +0 -7
  117. package/_testdriver/acceptance/dashcam.yaml +0 -9
  118. package/_testdriver/acceptance/drag-and-drop.yaml +0 -49
  119. package/_testdriver/acceptance/embed.yaml +0 -9
  120. package/_testdriver/acceptance/exec-js.yaml +0 -29
  121. package/_testdriver/acceptance/exec-output.yaml +0 -43
  122. package/_testdriver/acceptance/exec-shell.yaml +0 -40
  123. package/_testdriver/acceptance/focus-window.yaml +0 -16
  124. package/_testdriver/acceptance/hover-image.yaml +0 -18
  125. package/_testdriver/acceptance/hover-text-with-description.yaml +0 -29
  126. package/_testdriver/acceptance/hover-text.yaml +0 -14
  127. package/_testdriver/acceptance/if-else.yaml +0 -31
  128. package/_testdriver/acceptance/match-image.yaml +0 -15
  129. package/_testdriver/acceptance/press-keys.yaml +0 -35
  130. package/_testdriver/acceptance/prompt.yaml +0 -11
  131. package/_testdriver/acceptance/remember.yaml +0 -27
  132. package/_testdriver/acceptance/screenshots/cart.png +0 -0
  133. package/_testdriver/acceptance/scroll-keyboard.yaml +0 -34
  134. package/_testdriver/acceptance/scroll-until-image.yaml +0 -26
  135. package/_testdriver/acceptance/scroll-until-text.yaml +0 -20
  136. package/_testdriver/acceptance/scroll.yaml +0 -33
  137. package/_testdriver/acceptance/snippets/login.yaml +0 -29
  138. package/_testdriver/acceptance/snippets/match-cart.yaml +0 -8
  139. package/_testdriver/acceptance/type.yaml +0 -29
  140. package/_testdriver/behavior/failure.yaml +0 -7
  141. package/_testdriver/behavior/hover-text.yaml +0 -13
  142. package/_testdriver/behavior/lifecycle/postrun.yaml +0 -10
  143. package/_testdriver/behavior/lifecycle/prerun.yaml +0 -8
  144. package/_testdriver/behavior/lifecycle/provision.yaml +0 -8
  145. package/_testdriver/behavior/secrets.yaml +0 -7
  146. package/_testdriver/edge-cases/dashcam-chrome.yaml +0 -8
  147. package/_testdriver/edge-cases/exec-pwsh-multiline.yaml +0 -10
  148. package/_testdriver/edge-cases/js-exception.yaml +0 -8
  149. package/_testdriver/edge-cases/js-promise.yaml +0 -19
  150. package/_testdriver/edge-cases/lifecycle/postrun.yaml +0 -10
  151. package/_testdriver/edge-cases/prompt-in-middle.yaml +0 -23
  152. package/_testdriver/edge-cases/prompt-nested.yaml +0 -7
  153. package/_testdriver/edge-cases/success-test.yaml +0 -9
  154. package/_testdriver/examples/android/example.yaml +0 -12
  155. package/_testdriver/examples/android/lifecycle/postrun.yaml +0 -11
  156. package/_testdriver/examples/android/lifecycle/provision.yaml +0 -47
  157. package/_testdriver/examples/android/readme.md +0 -7
  158. package/_testdriver/examples/chrome-extension/lifecycle/provision.yaml +0 -74
  159. package/_testdriver/examples/desktop/lifecycle/prerun.yaml +0 -0
  160. package/_testdriver/examples/desktop/lifecycle/provision.yaml +0 -64
  161. package/_testdriver/examples/vscode-extension/lifecycle/provision.yaml +0 -73
  162. package/_testdriver/examples/web/lifecycle/postrun.yaml +0 -7
  163. package/_testdriver/examples/web/lifecycle/prerun.yaml +0 -22
  164. package/_testdriver/lifecycle/postrun.yaml +0 -8
  165. package/_testdriver/lifecycle/prerun.yaml +0 -15
  166. package/_testdriver/lifecycle/provision.yaml +0 -25
  167. package/docs/v7/guides/ci-cd/azure.mdx +0 -587
  168. package/docs/v7/guides/ci-cd/circleci.mdx +0 -523
  169. package/docs/v7/guides/ci-cd/github-actions.mdx +0 -457
  170. package/docs/v7/guides/ci-cd/gitlab.mdx +0 -498
  171. package/docs/v7/guides/ci-cd/jenkins.mdx +0 -664
  172. package/docs/v7/guides/ci-cd/travis.mdx +0 -438
  173. package/scripts/view-test-results.mjs +0 -96
  174. package/src/vitest/extended.mjs +0 -108
  175. package/src/vitest/index.mjs +0 -64
  176. package/src/vitest/utils.mjs +0 -150
  177. package/styles/.vale-config/2-MDX.ini +0 -5
  178. package/styles/Microsoft/AMPM.yml +0 -9
  179. package/styles/Microsoft/Accessibility.yml +0 -30
  180. package/styles/Microsoft/Acronyms.yml +0 -64
  181. package/styles/Microsoft/Adverbs.yml +0 -272
  182. package/styles/Microsoft/Auto.yml +0 -11
  183. package/styles/Microsoft/Avoid.yml +0 -14
  184. package/styles/Microsoft/Contractions.yml +0 -50
  185. package/styles/Microsoft/Dashes.yml +0 -13
  186. package/styles/Microsoft/DateFormat.yml +0 -8
  187. package/styles/Microsoft/DateNumbers.yml +0 -40
  188. package/styles/Microsoft/DateOrder.yml +0 -8
  189. package/styles/Microsoft/Ellipses.yml +0 -9
  190. package/styles/Microsoft/FirstPerson.yml +0 -16
  191. package/styles/Microsoft/Foreign.yml +0 -13
  192. package/styles/Microsoft/Gender.yml +0 -8
  193. package/styles/Microsoft/GenderBias.yml +0 -42
  194. package/styles/Microsoft/GeneralURL.yml +0 -11
  195. package/styles/Microsoft/HeadingAcronyms.yml +0 -7
  196. package/styles/Microsoft/HeadingColons.yml +0 -8
  197. package/styles/Microsoft/HeadingPunctuation.yml +0 -13
  198. package/styles/Microsoft/Headings.yml +0 -28
  199. package/styles/Microsoft/Hyphens.yml +0 -14
  200. package/styles/Microsoft/Negative.yml +0 -13
  201. package/styles/Microsoft/Ordinal.yml +0 -13
  202. package/styles/Microsoft/OxfordComma.yml +0 -8
  203. package/styles/Microsoft/Passive.yml +0 -183
  204. package/styles/Microsoft/Percentages.yml +0 -7
  205. package/styles/Microsoft/Plurals.yml +0 -7
  206. package/styles/Microsoft/Quotes.yml +0 -7
  207. package/styles/Microsoft/RangeTime.yml +0 -13
  208. package/styles/Microsoft/Semicolon.yml +0 -8
  209. package/styles/Microsoft/SentenceLength.yml +0 -6
  210. package/styles/Microsoft/Spacing.yml +0 -8
  211. package/styles/Microsoft/Suspended.yml +0 -7
  212. package/styles/Microsoft/Terms.yml +0 -42
  213. package/styles/Microsoft/URLFormat.yml +0 -9
  214. package/styles/Microsoft/Units.yml +0 -16
  215. package/styles/Microsoft/Vocab.yml +0 -25
  216. package/styles/Microsoft/We.yml +0 -11
  217. package/styles/Microsoft/Wordiness.yml +0 -127
  218. package/styles/Microsoft/meta.json +0 -4
  219. package/styles/alex/Ablist.yml +0 -274
  220. package/styles/alex/Condescending.yml +0 -16
  221. package/styles/alex/Gendered.yml +0 -110
  222. package/styles/alex/LGBTQ.yml +0 -55
  223. package/styles/alex/OCD.yml +0 -10
  224. package/styles/alex/Press.yml +0 -12
  225. package/styles/alex/ProfanityLikely.yml +0 -1289
  226. package/styles/alex/ProfanityMaybe.yml +0 -282
  227. package/styles/alex/ProfanityUnlikely.yml +0 -251
  228. package/styles/alex/README.md +0 -27
  229. package/styles/alex/Race.yml +0 -85
  230. package/styles/alex/Suicide.yml +0 -26
  231. package/styles/alex/meta.json +0 -4
  232. package/styles/config/vocabularies/Docs/accept.txt +0 -47
  233. package/styles/config/vocabularies/Docs/reject.txt +0 -4
  234. package/styles/proselint/Airlinese.yml +0 -8
  235. package/styles/proselint/AnimalLabels.yml +0 -48
  236. package/styles/proselint/Annotations.yml +0 -9
  237. package/styles/proselint/Apologizing.yml +0 -8
  238. package/styles/proselint/Archaisms.yml +0 -52
  239. package/styles/proselint/But.yml +0 -8
  240. package/styles/proselint/Cliches.yml +0 -782
  241. package/styles/proselint/CorporateSpeak.yml +0 -30
  242. package/styles/proselint/Currency.yml +0 -5
  243. package/styles/proselint/Cursing.yml +0 -15
  244. package/styles/proselint/DateCase.yml +0 -7
  245. package/styles/proselint/DateMidnight.yml +0 -7
  246. package/styles/proselint/DateRedundancy.yml +0 -10
  247. package/styles/proselint/DateSpacing.yml +0 -7
  248. package/styles/proselint/DenizenLabels.yml +0 -52
  249. package/styles/proselint/Diacritical.yml +0 -95
  250. package/styles/proselint/GenderBias.yml +0 -45
  251. package/styles/proselint/GroupTerms.yml +0 -39
  252. package/styles/proselint/Hedging.yml +0 -8
  253. package/styles/proselint/Hyperbole.yml +0 -6
  254. package/styles/proselint/Jargon.yml +0 -11
  255. package/styles/proselint/LGBTOffensive.yml +0 -13
  256. package/styles/proselint/LGBTTerms.yml +0 -15
  257. package/styles/proselint/Malapropisms.yml +0 -8
  258. package/styles/proselint/Needless.yml +0 -358
  259. package/styles/proselint/Nonwords.yml +0 -38
  260. package/styles/proselint/Oxymorons.yml +0 -22
  261. package/styles/proselint/P-Value.yml +0 -6
  262. package/styles/proselint/RASSyndrome.yml +0 -30
  263. package/styles/proselint/README.md +0 -12
  264. package/styles/proselint/Skunked.yml +0 -13
  265. package/styles/proselint/Spelling.yml +0 -17
  266. package/styles/proselint/Typography.yml +0 -11
  267. package/styles/proselint/Uncomparables.yml +0 -50
  268. package/styles/proselint/Very.yml +0 -6
  269. package/styles/proselint/meta.json +0 -15
  270. package/styles/write-good/Cliches.yml +0 -702
  271. package/styles/write-good/E-Prime.yml +0 -32
  272. package/styles/write-good/Illusions.yml +0 -11
  273. package/styles/write-good/Passive.yml +0 -183
  274. package/styles/write-good/README.md +0 -27
  275. package/styles/write-good/So.yml +0 -5
  276. package/styles/write-good/ThereIs.yml +0 -6
  277. package/styles/write-good/TooWordy.yml +0 -221
  278. package/styles/write-good/Weasel.yml +0 -29
  279. package/styles/write-good/meta.json +0 -4
  280. package/test/dashcam.test.js +0 -137
  281. package/test/mcp-example-test.yaml +0 -27
  282. package/test/test_parser.js +0 -47
  283. package/testdriver/acceptance-sdk/QUICK_REFERENCE.md +0 -61
  284. package/testdriver/acceptance-sdk/README.md +0 -128
  285. package/testdriver/acceptance-sdk/TEST_REPORTING.md +0 -245
  286. package/testdriver/acceptance-sdk/assert.test.mjs +0 -26
  287. package/testdriver/acceptance-sdk/hooks-example.test.mjs +0 -38
  288. package/testdriver/acceptance-sdk/presets-example.test.mjs +0 -87
  289. package/testdriver/acceptance-sdk/setup/testHelpers.mjs +0 -420
  290. package/testdriver/acceptance-sdk/sully-ai.test.mjs +0 -234
  291. package/testdriver/acceptance-sdk/type-checking-demo.js +0 -49
  292. package/vale.ini +0 -18
  293. package/vitest.config.example.js +0 -19
  294. package/vitest.config.mjs.bak +0 -44
  295. /package/docs/{ARCHITECTURE.md → v7/_drafts/architecture.mdx} +0 -0
  296. /package/docs/{AWESOME_LOGS_QUICK_REF.md → v7/_drafts/awesome-logs-quick-ref.mdx} +0 -0
  297. /package/docs/v7/{guides → _drafts}/best-practices.mdx +0 -0
  298. /package/docs/v7/{guides → _drafts}/caching-ai.mdx +0 -0
  299. /package/docs/v7/{guides → _drafts}/caching.mdx +0 -0
  300. /package/docs/{MIGRATION.md → v7/_drafts/cli-to-sdk-migration.mdx} +0 -0
  301. /package/{CONTRIBUTING.md → docs/v7/_drafts/contributing.mdx} +0 -0
  302. /package/docs/v7/{progressive-apis/CORE.md → _drafts/core.mdx} +0 -0
  303. /package/docs/v7/{guides → _drafts}/debugging.mdx +0 -0
  304. /package/docs/v7/{guides → _drafts}/faq.mdx +0 -0
  305. /package/docs/v7/{progressive-apis/HOOKS.md → _drafts/hooks.mdx} +0 -0
  306. /package/docs/v7/{guides → _drafts}/migration.mdx +0 -0
  307. /package/docs/v7/{guides → _drafts}/performance.mdx +0 -0
  308. /package/docs/{PRESETS.md → v7/_drafts/presets.mdx} +0 -0
  309. /package/docs/v7/{progressive-apis/PROGRESSIVE_DISCLOSURE.md → _drafts/progressive-disclosure.mdx} +0 -0
  310. /package/docs/v7/{progressive-apis/PROVISION.md → _drafts/provision.mdx} +0 -0
  311. /package/docs/{SDK_AWESOME_LOGS.md → v7/_drafts/sdk-awesome-logs.mdx} +0 -0
  312. /package/docs/{sdk-browser-rendering.md → v7/_drafts/sdk-browser-rendering.mdx} +0 -0
  313. /package/docs/{TEST_RECORDING.md → v7/_drafts/test-recording.mdx} +0 -0
  314. /package/docs/v7/{guides → _drafts}/vitest.mdx +0 -0
  315. /package/docs/v7/{README.md → overview/readme.mdx} +0 -0
  316. /package/{src → lib}/core/index.d.ts +0 -0
  317. /package/{src → lib}/core/index.js +0 -0
  318. /package/{src → lib}/presets/index.mjs +0 -0
  319. /package/{src → lib}/vitest/hooks.d.ts +0 -0
  320. /package/{debug-locate-response.js → test/manual/debug-locate-response.js} +0 -0
  321. /package/{verify-element-api.js → test/manual/verify-element-api.js} +0 -0
  322. /package/{verify-types.js → test/manual/verify-types.js} +0 -0
  323. /package/{testdriver/acceptance-sdk → test/testdriver}/chrome-extension.test.mjs +0 -0
  324. /package/{testdriver/acceptance-sdk → test/testdriver}/setup/globalTeardown.mjs +0 -0
  325. /package/{testdriver/acceptance-sdk → test/testdriver}/setup/vitestSetup.mjs +0 -0
@@ -1,30 +0,0 @@
1
- extends: existence
2
- message: "'%s' is corporate speak."
3
- ignorecase: true
4
- level: error
5
- tokens:
6
- - at the end of the day
7
- - back to the drawing board
8
- - hit the ground running
9
- - get the ball rolling
10
- - low-hanging fruit
11
- - thrown under the bus
12
- - think outside the box
13
- - let's touch base
14
- - get my manager's blessing
15
- - it's on my radar
16
- - ping me
17
- - i don't have the bandwidth
18
- - no brainer
19
- - par for the course
20
- - bang for your buck
21
- - synergy
22
- - move the goal post
23
- - apples to apples
24
- - win-win
25
- - circle back around
26
- - all hands on deck
27
- - take this offline
28
- - drill-down
29
- - elephant in the room
30
- - on my plate
@@ -1,5 +0,0 @@
1
- extends: existence
2
- message: "Incorrect use of symbols in '%s'."
3
- ignorecase: true
4
- raw:
5
- - \$[\d]* ?(?:dollars|usd|us dollars)
@@ -1,15 +0,0 @@
1
- extends: existence
2
- message: "Consider replacing '%s'."
3
- level: error
4
- ignorecase: true
5
- tokens:
6
- - shit
7
- - piss
8
- - fuck
9
- - cunt
10
- - cocksucker
11
- - motherfucker
12
- - tits
13
- - fart
14
- - turd
15
- - twat
@@ -1,7 +0,0 @@
1
- extends: existence
2
- message: With lowercase letters, the periods are standard.
3
- ignorecase: false
4
- level: error
5
- nonword: true
6
- tokens:
7
- - '\d{1,2} ?[ap]m\b'
@@ -1,7 +0,0 @@
1
- extends: existence
2
- message: "Use 'midnight' or 'noon'."
3
- ignorecase: true
4
- level: error
5
- nonword: true
6
- tokens:
7
- - '12 ?[ap]\.?m\.?'
@@ -1,10 +0,0 @@
1
- extends: existence
2
- message: "'a.m.' is always morning; 'p.m.' is always night."
3
- ignorecase: true
4
- level: error
5
- nonword: true
6
- tokens:
7
- - '\d{1,2} ?a\.?m\.? in the morning'
8
- - '\d{1,2} ?p\.?m\.? in the evening'
9
- - '\d{1,2} ?p\.?m\.? at night'
10
- - '\d{1,2} ?p\.?m\.? in the afternoon'
@@ -1,7 +0,0 @@
1
- extends: existence
2
- message: "It's standard to put a space before '%s'"
3
- ignorecase: true
4
- level: error
5
- nonword: true
6
- tokens:
7
- - '\d{1,2}[ap]\.?m\.?'
@@ -1,52 +0,0 @@
1
- extends: substitution
2
- message: Did you mean '%s'?
3
- ignorecase: false
4
- action:
5
- name: replace
6
- swap:
7
- (?:Afrikaaner|Afrikander): Afrikaner
8
- (?:Hong Kongite|Hong Kongian): Hong Konger
9
- (?:Indianan|Indianian): Hoosier
10
- (?:Michiganite|Michiganian): Michigander
11
- (?:New Hampshireite|New Hampshireman): New Hampshirite
12
- (?:Newcastlite|Newcastleite): Novocastrian
13
- (?:Providencian|Providencer): Providentian
14
- (?:Trentian|Trentonian): Tridentine
15
- (?:Warsawer|Warsawian): Varsovian
16
- (?:Wolverhamptonite|Wolverhamptonian): Wulfrunian
17
- Alabaman: Alabamian
18
- Albuquerquian: Albuquerquean
19
- Anchoragite: Anchorageite
20
- Arizonian: Arizonan
21
- Arkansawyer: Arkansan
22
- Belarusan: Belarusian
23
- Cayman Islander: Caymanian
24
- Coloradoan: Coloradan
25
- Connecticuter: Nutmegger
26
- Fairbanksian: Fairbanksan
27
- Fort Worther: Fort Worthian
28
- Grenadian: Grenadan
29
- Halifaxer: Haligonian
30
- Hartlepoolian: Hartlepudlian
31
- Illinoisian: Illinoisan
32
- Iowegian: Iowan
33
- Leedsian: Leodenisian
34
- Liverpoolian: Liverpudlian
35
- Los Angelean: Angeleno
36
- Manchesterian: Mancunian
37
- Minneapolisian: Minneapolitan
38
- Missouran: Missourian
39
- Monacan: Monegasque
40
- Neopolitan: Neapolitan
41
- New Jerseyite: New Jerseyan
42
- New Orleansian: New Orleanian
43
- Oklahoma Citian: Oklahoma Cityan
44
- Oklahomian: Oklahoman
45
- Saudi Arabian: Saudi
46
- Seattlite: Seattleite
47
- Surinamer: Surinamese
48
- Tallahassean: Tallahasseean
49
- Tennesseean: Tennessean
50
- Trois-Rivièrester: Trifluvian
51
- Utahan: Utahn
52
- Valladolidian: Vallisoletano
@@ -1,95 +0,0 @@
1
- extends: substitution
2
- message: Consider using '%s' instead of '%s'.
3
- ignorecase: true
4
- level: error
5
- action:
6
- name: replace
7
- swap:
8
- beau ideal: beau idéal
9
- boutonniere: boutonnière
10
- bric-a-brac: bric-à-brac
11
- cafe: café
12
- cause celebre: cause célèbre
13
- chevre: chèvre
14
- cliche: cliché
15
- consomme: consommé
16
- coup de grace: coup de grâce
17
- crudites: crudités
18
- creme brulee: crème brûlée
19
- creme de menthe: crème de menthe
20
- creme fraice: crème fraîche
21
- creme fresh: crème fraîche
22
- crepe: crêpe
23
- debutante: débutante
24
- decor: décor
25
- deja vu: déjà vu
26
- denouement: dénouement
27
- facade: façade
28
- fiance: fiancé
29
- fiancee: fiancée
30
- flambe: flambé
31
- garcon: garçon
32
- lycee: lycée
33
- maitre d: maître d
34
- menage a trois: ménage à trois
35
- negligee: négligée
36
- protege: protégé
37
- protegee: protégée
38
- puree: purée
39
- my resume: my résumé
40
- your resume: your résumé
41
- his resume: his résumé
42
- her resume: her résumé
43
- a resume: a résumé
44
- the resume: the résumé
45
- risque: risqué
46
- roue: roué
47
- soiree: soirée
48
- souffle: soufflé
49
- soupcon: soupçon
50
- touche: touché
51
- tete-a-tete: tête-à-tête
52
- voila: voilà
53
- a la carte: à la carte
54
- a la mode: à la mode
55
- emigre: émigré
56
-
57
- # Spanish loanwords
58
- El Nino: El Niño
59
- jalapeno: jalapeño
60
- La Nina: La Niña
61
- pina colada: piña colada
62
- senor: señor
63
- senora: señora
64
- senorita: señorita
65
-
66
- # Portuguese loanwords
67
- acai: açaí
68
-
69
- # German loanwords
70
- doppelganger: doppelgänger
71
- Fuhrer: Führer
72
- Gewurztraminer: Gewürztraminer
73
- vis-a-vis: vis-à-vis
74
- Ubermensch: Übermensch
75
-
76
- # Swedish loanwords
77
- filmjolk: filmjölk
78
- smorgasbord: smörgåsbord
79
-
80
- # Names, places, and companies
81
- Beyonce: Beyoncé
82
- Bronte: Brontë
83
- Champs-Elysees: Champs-Élysées
84
- Citroen: Citroën
85
- Curacao: Curaçao
86
- Lowenbrau: Löwenbräu
87
- Monegasque: Monégasque
88
- Motley Crue: Mötley Crüe
89
- Nescafe: Nescafé
90
- Queensryche: Queensrÿche
91
- Quebec: Québec
92
- Quebecois: Québécois
93
- Angstrom: Ångström
94
- angstrom: ångström
95
- Skoda: Škoda
@@ -1,45 +0,0 @@
1
- extends: substitution
2
- message: Consider using '%s' instead of '%s'.
3
- ignorecase: true
4
- level: error
5
- action:
6
- name: replace
7
- swap:
8
- (?:alumnae|alumni): graduates
9
- (?:alumna|alumnus): graduate
10
- air(?:m[ae]n|wom[ae]n): pilot(s)
11
- anchor(?:m[ae]n|wom[ae]n): anchor(s)
12
- authoress: author
13
- camera(?:m[ae]n|wom[ae]n): camera operator(s)
14
- chair(?:m[ae]n|wom[ae]n): chair(s)
15
- congress(?:m[ae]n|wom[ae]n): member(s) of congress
16
- door(?:m[ae]|wom[ae]n): concierge(s)
17
- draft(?:m[ae]n|wom[ae]n): drafter(s)
18
- fire(?:m[ae]n|wom[ae]n): firefighter(s)
19
- fisher(?:m[ae]n|wom[ae]n): fisher(s)
20
- fresh(?:m[ae]n|wom[ae]n): first-year student(s)
21
- garbage(?:m[ae]n|wom[ae]n): waste collector(s)
22
- lady lawyer: lawyer
23
- ladylike: courteous
24
- landlord: building manager
25
- mail(?:m[ae]n|wom[ae]n): mail carriers
26
- man and wife: husband and wife
27
- man enough: strong enough
28
- mankind: human kind
29
- manmade: manufactured
30
- men and girls: men and women
31
- middle(?:m[ae]n|wom[ae]n): intermediary
32
- news(?:m[ae]n|wom[ae]n): journalist(s)
33
- ombuds(?:man|woman): ombuds
34
- oneupmanship: upstaging
35
- poetess: poet
36
- police(?:m[ae]n|wom[ae]n): police officer(s)
37
- repair(?:m[ae]n|wom[ae]n): technician(s)
38
- sales(?:m[ae]n|wom[ae]n): salesperson or sales people
39
- service(?:m[ae]n|wom[ae]n): soldier(s)
40
- steward(?:ess)?: flight attendant
41
- tribes(?:m[ae]n|wom[ae]n): tribe member(s)
42
- waitress: waiter
43
- woman doctor: doctor
44
- woman scientist[s]?: scientist(s)
45
- work(?:m[ae]n|wom[ae]n): worker(s)
@@ -1,39 +0,0 @@
1
- extends: substitution
2
- message: Consider using '%s' instead of '%s'.
3
- ignorecase: true
4
- action:
5
- name: replace
6
- swap:
7
- (?:bunch|group|pack|flock) of chickens: brood of chickens
8
- (?:bunch|group|pack|flock) of crows: murder of crows
9
- (?:bunch|group|pack|flock) of hawks: cast of hawks
10
- (?:bunch|group|pack|flock) of parrots: pandemonium of parrots
11
- (?:bunch|group|pack|flock) of peacocks: muster of peacocks
12
- (?:bunch|group|pack|flock) of penguins: muster of penguins
13
- (?:bunch|group|pack|flock) of sparrows: host of sparrows
14
- (?:bunch|group|pack|flock) of turkeys: rafter of turkeys
15
- (?:bunch|group|pack|flock) of woodpeckers: descent of woodpeckers
16
- (?:bunch|group|pack|herd) of apes: shrewdness of apes
17
- (?:bunch|group|pack|herd) of baboons: troop of baboons
18
- (?:bunch|group|pack|herd) of badgers: cete of badgers
19
- (?:bunch|group|pack|herd) of bears: sloth of bears
20
- (?:bunch|group|pack|herd) of bullfinches: bellowing of bullfinches
21
- (?:bunch|group|pack|herd) of bullocks: drove of bullocks
22
- (?:bunch|group|pack|herd) of caterpillars: army of caterpillars
23
- (?:bunch|group|pack|herd) of cats: clowder of cats
24
- (?:bunch|group|pack|herd) of colts: rag of colts
25
- (?:bunch|group|pack|herd) of crocodiles: bask of crocodiles
26
- (?:bunch|group|pack|herd) of dolphins: school of dolphins
27
- (?:bunch|group|pack|herd) of foxes: skulk of foxes
28
- (?:bunch|group|pack|herd) of gorillas: band of gorillas
29
- (?:bunch|group|pack|herd) of hippopotami: bloat of hippopotami
30
- (?:bunch|group|pack|herd) of horses: drove of horses
31
- (?:bunch|group|pack|herd) of jellyfish: fluther of jellyfish
32
- (?:bunch|group|pack|herd) of kangeroos: mob of kangeroos
33
- (?:bunch|group|pack|herd) of monkeys: troop of monkeys
34
- (?:bunch|group|pack|herd) of oxen: yoke of oxen
35
- (?:bunch|group|pack|herd) of rhinoceros: crash of rhinoceros
36
- (?:bunch|group|pack|herd) of wild boar: sounder of wild boar
37
- (?:bunch|group|pack|herd) of wild pigs: drift of wild pigs
38
- (?:bunch|group|pack|herd) of zebras: zeal of wild pigs
39
- (?:bunch|group|pack|school) of trout: hover of trout
@@ -1,8 +0,0 @@
1
- extends: existence
2
- message: "'%s' is hedging."
3
- ignorecase: true
4
- level: error
5
- tokens:
6
- - I would argue that
7
- - ", so to speak"
8
- - to a certain degree
@@ -1,6 +0,0 @@
1
- extends: existence
2
- message: "'%s' is hyperbolic."
3
- level: error
4
- nonword: true
5
- tokens:
6
- - "[a-z]+[!?]{2,}"
@@ -1,11 +0,0 @@
1
- extends: existence
2
- message: "'%s' is jargon."
3
- ignorecase: true
4
- level: error
5
- tokens:
6
- - in the affirmative
7
- - in the negative
8
- - agendize
9
- - per your order
10
- - per your request
11
- - disincentivize
@@ -1,13 +0,0 @@
1
- extends: existence
2
- message: "'%s' is offensive. Remove it or consider the context."
3
- ignorecase: true
4
- tokens:
5
- - fag
6
- - faggot
7
- - dyke
8
- - sodomite
9
- - homosexual agenda
10
- - gay agenda
11
- - transvestite
12
- - homosexual lifestyle
13
- - gay lifestyle
@@ -1,15 +0,0 @@
1
- extends: substitution
2
- message: "Consider using '%s' instead of '%s'."
3
- ignorecase: true
4
- action:
5
- name: replace
6
- swap:
7
- homosexual man: gay man
8
- homosexual men: gay men
9
- homosexual woman: lesbian
10
- homosexual women: lesbians
11
- homosexual people: gay people
12
- homosexual couple: gay couple
13
- sexual preference: sexual orientation
14
- (?:admitted homosexual|avowed homosexual): openly gay
15
- special rights: equal rights
@@ -1,8 +0,0 @@
1
- extends: existence
2
- message: "'%s' is a malapropism."
3
- ignorecase: true
4
- level: error
5
- tokens:
6
- - the infinitesimal universe
7
- - a serial experience
8
- - attack my voracity