Commit Graph

  • df44012d3e chore(folio): add gradle/libs.versions.toml pj 2026-04-26 14:17:39 +07:00
  • d115cdfd97 feat(hierarchy): testTag alias resolves to resource-id and accessibilityIdentifier pj 2026-04-26 14:13:46 +07:00
  • 28909d954b docs: spec language reference page + writing-specs rewrite (#46) pj 2026-04-26 13:07:31 +07:00
  • 0511c05655 docs(sidebar): add spec-language entry to sidebar nav update-spec-lang-docs pj 2026-04-26 13:06:35 +07:00
  • 612c258d23 docs(manual): add spec-language reference page pj 2026-04-26 13:06:30 +07:00
  • 0deedf3d48 docs(manual): rewrite writing-specs with accurate API and updated examples pj 2026-04-26 13:06:27 +07:00
  • cb1c103080 docs(architecture): add device/emulator node and XCTest edge to diagram pj 2026-04-26 13:06:24 +07:00
  • 34fb73d6cb fix(folio): stop abusing contentDescription as data carrier (#45) pj 2026-04-25 23:43:19 +07:00
  • b31997b9e4 fix(spec): replace desc-parsing with text-based parseDollarCents extraction fix-element-value-exposure pj 2026-04-25 23:34:36 +07:00
  • 1089f1a166 fix(folio): embed accountId in LedgerScreen desc, expose values via text semantics pj 2026-04-25 23:33:51 +07:00
  • 5f197917d8 fix(folio): use account_card:id desc, expose balance via text semantics pj 2026-04-25 23:33:24 +07:00
  • ff79aa445f feat(folio): migrate to chained object-form selectors full-attr-selector pj 2026-04-25 21:22:10 +07:00
  • d8aa768837 feat(spec): extend AccessibilityElement and AccessibilityTree types pj 2026-04-25 21:22:03 +07:00
  • 91f504fc11 feat(verifier): object-form selectors + attrs + element-level find pj 2026-04-25 21:18:57 +07:00
  • 99383bdd1e test(hierarchy): full-attribute selector coverage pj 2026-04-25 21:17:40 +07:00
  • c7e3353e95 feat(hierarchy): full-attribute selector system pj 2026-04-25 21:16:55 +07:00
  • 776becdf4b Remove in-app SDK (#43) pj 2026-04-25 20:04:29 +07:00
  • 1813f6c9fd chore(folio): switch to bun, add tsconfig.json for IDE type checking remove-sdk pj 2026-04-25 20:02:33 +07:00
  • f49ea7f2cb feat(spec): add desc, class, clickable, enabled, checked, focused, selected to AccessibilityElement pj 2026-04-25 20:02:29 +07:00
  • 108f0e33da chore(folio): link @sanderling/spec to local pkg/spec for IDE type checking pj 2026-04-25 19:56:38 +07:00
  • 57df510b70 fix(folio): guard newAccountBalanceIsZero against navigation false positives pj 2026-04-25 19:55:19 +07:00
  • 0708655ec1 fix(folio): scope all ax selectors through screen root nodes pj 2026-04-25 19:50:26 +07:00
  • cd11faf1fa feat(folio): add screen root contentDescription for scoped ax selection pj 2026-04-25 19:50:19 +07:00
  • 3feb7b2d7f fix(folio): detect screens from unique element presence, not id: selectors pj 2026-04-25 19:45:06 +07:00
  • 270d4bef7e docs: update per-step cycle diagram in architecture doc pj 2026-04-25 19:22:19 +07:00
  • 13c6ce6f92 docs(folio): update README for SDK removal pj 2026-04-25 19:21:22 +07:00
  • 3ba475d7de docs: remove in-app SDK from architecture doc pj 2026-04-25 19:20:59 +07:00
  • 74e0744ae3 docs: remove snapshots from writing-specs pj 2026-04-25 19:20:25 +07:00
  • eea760d6ed refactor(testrun): remove agent SDK connection setup pj 2026-04-25 19:20:00 +07:00
  • d21c5b1a14 docs: remove Android SDK section from getting-started pj 2026-04-25 19:19:59 +07:00
  • 0983e6dfc5 test(runner): update tests for SDK removal pj 2026-04-25 19:19:57 +07:00
  • 6e06f54d90 refactor(runner): remove agent SDK connection and snapshot step pj 2026-04-25 19:19:54 +07:00
  • 71d88a6827 docs: remove in-app SDK from index pj 2026-04-25 19:19:35 +07:00
  • 1c8a9be2e4 feat(folio): add focused_input indicator to App pj 2026-04-25 19:19:31 +07:00
  • fc99e31e85 docs: remove in-app SDK from README pj 2026-04-25 19:19:29 +07:00
  • ba8c4e56ed refactor(folio): rewrite spec.ts to use ax extractors pj 2026-04-25 19:19:22 +07:00
  • cfb7131d96 feat(folio): add hierarchy content descriptions to LedgerScreen pj 2026-04-25 19:18:51 +07:00
  • 10f7143013 feat(folio): add balance to account card content description pj 2026-04-25 19:18:34 +07:00
  • dafaff7ca9 chore(folio): delete snapshot extractor files pj 2026-04-25 19:18:26 +07:00
  • d512e11385 chore(folio): remove SDK initialization from FolioApplication pj 2026-04-25 19:18:20 +07:00
  • 1a0f9710c2 chore(folio): remove sdk-android dependency pj 2026-04-25 19:18:14 +07:00
  • 606e3cdbec chore(ci): remove release-android job from release workflow pj 2026-04-25 19:17:56 +07:00
  • a66f38ada5 chore(makefile): remove sdk-android targets pj 2026-04-25 19:17:45 +07:00
  • 6d41de3c26 chore(build): remove sdk-android from gradle settings pj 2026-04-25 19:17:21 +07:00
  • b88535cace chore: delete internal/agent package pj 2026-04-25 19:17:03 +07:00
  • 6c32fb0e1d feat(hierarchy): flat-to-tree + path query selector (#41) pj 2026-04-25 18:46:15 +07:00
  • 1c05efb32a fix(sidecar): update AndroidDriver calls for Maestro 2.4.0 API hierarchy-path-query pj 2026-04-25 18:41:30 +07:00
  • 334f571111 chore(sidecar): bump maestro to 2.4.0, exclude graalvm from fat JAR pj 2026-04-25 18:41:25 +07:00
  • b0c2019b3d fix(sidecar): use ephemeral host port for AndroidDriver pj 2026-04-25 18:06:41 +07:00
  • 29d82d7f6e fix(sidecar): align grpc-netty/grpc-okhttp with grpc-core version pj 2026-04-25 18:06:37 +07:00
  • 96e716f727 feat(folio): scope spec selectors to screen testTags via path queries pj 2026-04-25 17:44:43 +07:00
  • cd98814e66 feat(folio): testTag AddTransactionScreen pj 2026-04-25 17:44:06 +07:00
  • 6d81e96f0d feat(folio): testTag LedgerScreen pj 2026-04-25 17:43:53 +07:00
  • e8912d42c7 feat(folio): testTag AddAccountScreen pj 2026-04-25 17:43:42 +07:00
  • a9bec44cf3 feat(folio): testTag HomeScreen pj 2026-04-25 17:43:31 +07:00
  • a0d053ab98 feat(folio): testTag LoginScreen pj 2026-04-25 17:43:22 +07:00
  • dc19465e61 feat(folio): add modifier param to Screen composable pj 2026-04-25 17:43:12 +07:00
  • f5b6b74274 test(hierarchy): add path query tests pj 2026-04-25 17:43:03 +07:00
  • 7f64e5ef03 feat(hierarchy): add Node tree + path query support pj 2026-04-25 17:42:24 +07:00
  • 2a1b263b8c fix: WDA startup flakiness - warmup + connection drop message (#40) pj 2026-04-25 17:39:39 +07:00
  • f4e226d79e refactor(folio-spec): replace bloated spec with two focused properties wda-warmup-fix pj 2026-04-25 16:44:15 +07:00
  • 92524a6ded fix(hierarchy): parse iOS [x1,y1][x2,y2] bounds + match iOS merged desc labels pj 2026-04-25 16:39:42 +07:00
  • 900a7652c1 chore: gitignore built sanderling binary pj 2026-04-25 16:11:42 +07:00
  • 4db2652f49 Revert "fix web examples package config" pj 2026-04-25 16:11:14 +07:00
  • 70c10ade27 fix web examples package config pj 2026-04-25 15:55:47 +07:00
  • 0681272078 fix(sidecar): serialize WDA reconnect with ReentrantLock to prevent concurrent xcodebuild races pj 2026-04-25 15:55:08 +07:00
  • 8c6c8c85df fix(sidecar): explicit Unit return in pressKey and waitForIdle withReconnect lambdas pj 2026-04-25 15:52:53 +07:00
  • 665831ffd7 fix(sidecar): walk cause chain in withReconnect to catch Maestro-wrapped IOException pj 2026-04-25 15:33:41 +07:00
  • 0f1f3eb457 fix(runner): fatal on permanent WDA drop during hierarchy fetch pj 2026-04-23 17:48:18 +07:00
  • 6bc3de1241 fix(sidecar): extract warmup + add one-shot WDA reconnect on IOException pj 2026-04-23 17:48:02 +07:00
  • f0a5abd767 fix(merge): resolve conflicts from master; keep WDA warmup + real healthy() check pj 2026-04-23 17:38:19 +07:00
  • 97154cf580 feat(ios): launch via XCTest with env vars for hierarchy/tap access (#39) pj 2026-04-23 17:35:31 +07:00
  • 0c347d3783 fix(sdk-ios): check semaphore wait result; resolve port from args and env; register extractors before start ios-driver-env-launch pj 2026-04-23 17:33:56 +07:00
  • 787aae2ba0 test(cli): add tests for ios platform flag and ios-device flag parsing pj 2026-04-23 17:33:52 +07:00
  • 768acdf240 fix(ios): replace LaunchApp with BootedUDID; simctl launch moved to XCTest path pj 2026-04-23 17:33:39 +07:00
  • e16ab7ca0b feat(testrun): launch iOS app via XCTest with env vars instead of simctl pj 2026-04-23 17:33:32 +07:00
  • 03fad58860 feat(sidecar): add IosDriverBackend using Maestro IOSDriver + env pass-through pj 2026-04-23 17:33:26 +07:00
  • f446439e33 feat(driver): add env param to Launch interface and all implementations pj 2026-04-23 17:33:19 +07:00
  • 3a6979a9db feat(proto): add env map to LaunchRequest pj 2026-04-23 17:33:16 +07:00
  • 007dcddd69 feat(ios): iOS e2e support — Kotlin Native SDK + simulator driver + test-ios (#38) pj 2026-04-23 17:29:53 +07:00
  • 07b84c965e docs(testrun): note WDA warmup location above WaitForHealth pj 2026-04-23 17:27:51 +07:00
  • 788dd94bc5 fix(runner): surface clear message on WDA connection drop pj 2026-04-23 17:27:49 +07:00
  • f05bdbd0ba fix(sidecar): warm up WDA after health check to absorb startup race pj 2026-04-23 17:27:09 +07:00
  • 9180388f9a fix(sidecar): IosDriverBackend.healthy() returns true; WDA liveness checked in open() pj 2026-04-23 16:49:31 +07:00
  • 071fe3e521 fix(ios): propagate error from BootedUDID instead of silently swallowing pj 2026-04-23 16:49:25 +07:00
  • 55ad503856 test(ios): add unit tests for pickSimulator and iOS flag parsing pj 2026-04-23 16:35:39 +07:00
  • bf7ac5c3e5 chore(ios): remove dead LaunchApp function pj 2026-04-23 16:35:03 +07:00
  • 0320edb91e fix(folio-ios): register snapshot extractors before starting agent pj 2026-04-23 16:34:42 +07:00
  • b36167cf47 fix(sdk-ios): check semaphore wait result and throw on snapshot timeout pj 2026-04-23 16:34:32 +07:00
  • 73dc7948ab fix(sidecar): pick free WDA port instead of hardcoded 9100 pj 2026-04-23 16:34:19 +07:00
  • a70c865afa fix(sidecar): include exception type in gRPC error description pj 2026-04-23 16:05:39 +07:00
  • 5b7415d2ea fix(sidecar): use LocalIOSDevice (WDA+simctl) + stop before relaunch pj 2026-04-23 16:05:13 +07:00
  • f1fba36a28 feat(sidecar): wire env map in DriverService + IosDriverBackend in Main pj 2026-04-23 15:53:54 +07:00
  • 9338b240b2 feat(sidecar): add IosDriverBackend using Maestro IOSDriver + env pass-through pj 2026-04-23 15:53:47 +07:00
  • bff3a49324 feat(testrun): launch iOS app via XCTest with env vars instead of simctl pj 2026-04-23 15:49:51 +07:00
  • 003aba9ea2 feat(driver): add env param to Launch interface + all implementations pj 2026-04-23 15:49:47 +07:00
  • 8aa61a4927 feat(proto): add env map to LaunchRequest pj 2026-04-23 15:49:42 +07:00
  • c9aa1683df fix(testrun): simctl-first launch order for iOS; Maestro init after SDK connects ios-e2e-support pj 2026-04-23 15:15:23 +07:00
  • 016a959833 fix(sdk-ios): remove unavailable C macros; manual byte swap + no-cast warnings pj 2026-04-23 15:10:00 +07:00
  • 458e16d0e5 feat(folio-ios): add test-ios justfile recipe pj 2026-04-23 15:06:19 +07:00