Maintainer decision D1290: replay stays on the Go maestro-runner engine; close the integration seams instead of building the native executor (#388 postponed → escalation path).
Phases: (1) version pin + checksum + quirks manifest + doctor surfacing, upgrade ritual gated on the golden replay set (catches the B223/#369 class at upgrade time); (2) proactive blind-probe — skip the ~40s doomed WDA attempt on iOS 26, route straight to the CDP fallback; (3) widen fallback grammar per-need — text selectors, maestro_run/suite coverage (absorbs #334), optional x-rn hybrid asserts executed fallback-side; (4) host-side keyboard dismissal in the replay path — B223 neutralized without upstream (relates #371, #379); (5) single-step/no-relaunch iteration mode (absorbs #240) + WDA warm-reuse investigation.
Un-postpone trigger for #388 (written into both specs): if the fallback-grammar fence keeps moving, grow the executor, not the fallback.
Spec: https://github.com/Lykhoyda/rn-dev-agent/blob/limestone-malpais/docs/stories/13-maestro-runner-seamless-integration.md (PR #381)
Impact: replay feels first-party on the proven engine · Effort: M (phases land independently) · Depends: — · Refs: D1290, #317, #334, #240, #358, #369, #371, #379, #227
Maintainer decision D1290: replay stays on the Go maestro-runner engine; close the integration seams instead of building the native executor (#388 postponed → escalation path).
Phases: (1) version pin + checksum + quirks manifest + doctor surfacing, upgrade ritual gated on the golden replay set (catches the B223/#369 class at upgrade time); (2) proactive blind-probe — skip the ~40s doomed WDA attempt on iOS 26, route straight to the CDP fallback; (3) widen fallback grammar per-need — text selectors, maestro_run/suite coverage (absorbs #334), optional x-rn hybrid asserts executed fallback-side; (4) host-side keyboard dismissal in the replay path — B223 neutralized without upstream (relates #371, #379); (5) single-step/no-relaunch iteration mode (absorbs #240) + WDA warm-reuse investigation.
Un-postpone trigger for #388 (written into both specs): if the fallback-grammar fence keeps moving, grow the executor, not the fallback.
Spec: https://github.com/Lykhoyda/rn-dev-agent/blob/limestone-malpais/docs/stories/13-maestro-runner-seamless-integration.md (PR #381)
Impact: replay feels first-party on the proven engine · Effort: M (phases land independently) · Depends: — · Refs: D1290, #317, #334, #240, #358, #369, #371, #379, #227