explorbot 0.4.5 → 0.4.6

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 (39) hide show
  1. package/boat/api-tester/src/apibot.ts +18 -2
  2. package/boat/api-tester/src/cli.ts +85 -274
  3. package/boat/api-tester/src/commands/api-command.ts +10 -0
  4. package/boat/api-tester/src/commands/explore-command.ts +52 -0
  5. package/boat/api-tester/src/commands/init-command.ts +119 -0
  6. package/boat/api-tester/src/commands/know-command.ts +44 -0
  7. package/boat/api-tester/src/commands/plan-command.ts +42 -0
  8. package/boat/api-tester/src/commands/test-command.ts +54 -0
  9. package/dist/boat/api-tester/src/apibot.js +14 -1
  10. package/dist/boat/api-tester/src/cli.js +87 -243
  11. package/dist/boat/api-tester/src/commands/api-command.js +7 -0
  12. package/dist/boat/api-tester/src/commands/explore-command.js +41 -0
  13. package/dist/boat/api-tester/src/commands/init-command.js +88 -0
  14. package/dist/boat/api-tester/src/commands/know-command.js +39 -0
  15. package/dist/boat/api-tester/src/commands/plan-command.js +37 -0
  16. package/dist/boat/api-tester/src/commands/test-command.js +45 -0
  17. package/dist/package.json +4 -4
  18. package/dist/src/ai/researcher/deep-analysis.d.ts +1 -1
  19. package/dist/src/ai/researcher/deep-analysis.js +14 -6
  20. package/dist/src/ai/tools.d.ts +1 -1
  21. package/dist/src/ai/tools.js +15 -10
  22. package/dist/src/api/spec-reader.d.ts +1 -0
  23. package/dist/src/api/spec-reader.js +93 -1
  24. package/dist/src/commands/base-command.d.ts +3 -3
  25. package/dist/src/commands/init-command.d.ts +3 -0
  26. package/dist/src/commands/init-command.js +6 -3
  27. package/dist/src/explorer.d.ts +1 -1
  28. package/dist/src/explorer.js +1 -1
  29. package/dist/src/utils/html-diff.js +4 -1
  30. package/docs/api-testing/basics.md +26 -2
  31. package/docs/superpowers/specs/2026-09-09-pagination-rule-design.md +317 -0
  32. package/package.json +4 -4
  33. package/src/ai/researcher/deep-analysis.ts +13 -6
  34. package/src/ai/tools.ts +15 -11
  35. package/src/api/spec-reader.ts +106 -1
  36. package/src/commands/base-command.ts +3 -3
  37. package/src/commands/init-command.ts +6 -3
  38. package/src/explorer.ts +1 -1
  39. package/src/utils/html-diff.ts +3 -1
@@ -37,7 +37,7 @@ const IGNORED_PATHS = new Set(['html[1]', 'html[1]/head[1]', 'html[1]/body[1]'])
37
37
  const SHELL_RATIO = 0.8;
38
38
  const ROOT_CONTENT_RATIO = 0.8;
39
39
 
40
- const LIVE_REGION_ROLES = new Set(['alert', 'alertdialog', 'status', 'log']);
40
+ const LIVE_REGION_ROLES = new Set(['alert', 'alertdialog', 'status', 'log', 'tooltip']);
41
41
  const TEXT_LINE_PREFIX = 'TEXT:';
42
42
  const MESSAGE_MAX_LENGTH = 200;
43
43
  const MESSAGE_LIMIT = 8;
@@ -549,6 +549,8 @@ function semanticSelectorFor(element: ElementNode, allElements: NodeMap): string
549
549
  while (current) {
550
550
  const selector = buildContainerSelector(current, allElements);
551
551
  if (selector) return selector;
552
+ const classAttr = (current.attrs ?? []).find((a) => a.name === 'class')?.value;
553
+ if (classAttr && filterContainerClasses(classAttr.split(/\s+/).filter(Boolean)).length > 0) return undefined;
552
554
  current = dominantChild(current);
553
555
  }
554
556
  return undefined;