Files
Michał Pierzchała 39cd4d346a refactor: route appstate through platform runtime (#1755)
* refactor: route appstate through platform runtime

* test: keep appstate capability fixture below complexity limit

* test: cover appstate required readiness fact

* fix: align appstate facts with boot readiness

* fix: keep appstate use declaration minimal

* fix: close appstate parity and ownership gaps

* docs: record final appstate size accounting

* fix: merge neutral runtime imports

* docs: align final appstate size totals

* fix: remove stale runtime dependency edges

* docs: correct appstate size accounting

* refactor: keep runtime-use factory internal

* docs: itemize runtime-use relocation

* fix: move appstate queries into runtime packages

* refactor: retire root foreground query paths

* refactor: share Android foreground parser ownership

* fix: preserve Android appstate parser precedence

* docs: keep appstate evidence in review artifacts

* fix: keep appstate runtime loading lazy

* fix: fail closed for stale limrun appstate

* fix: preserve limrun recovery and abort appstate

* fix: narrow limrun exact-owner recovery

* fix: allocate appstate cutover rule

* fix: reconcile appstate with merged main

* style: format harmony runtime test

* fix: allocate appstate rule id

* fix: allocate appstate layering rule

* fix: remove stale app command admissions

* fix: close appstate layering regressions

* fix: align Harmony capability parity with runtime facts

* test: cover limrun recovery-only readiness

* fix: keep Limrun recovery binding app-log only

* fix: parse Android app state in linear time
2026-08-12 16:55:50 +02:00
..

ADR index — read this when…

ADR Read when you touch…
0001 Provider-First Integration Scenarios integration testing strategy, provider transcripts, the scenario harness
0002 Persistent Platform Helper Sessions helper process lifecycle, keep-alive semantics
0003 Daemon Command Registry daemon routing, request-policy traits
0004 iOS Snapshot Backend Strategy snapshot capture plans, backend fallbacks, quality verdicts
0005 iOS Runner Interaction Lifecycle XCTest runner sessions, leases, adoption, idle-stop
0006 Daemon RPC Protocol Version remote daemon HTTP/JSON-RPC compatibility
0007 Remote Device Leases leases, tenancy, provider-owned devices
0008 Command Descriptor Registry adding/changing a command, any surface projection (CLI/MCP/client/batch), timeout policy
0009 Apple Platform Consolidation Apple platform family, apple/appleOs axes, the apple-leak guard
0010 Error system conventions error codes, hints, normalizeError, typed error signals
0011 Interaction Guarantee Contract interaction dispatch paths, fast paths, guards, the guarantee matrix, parity tables
0012 Interactive Replay replay healing/--update, diagnostic resolution disclosure, bounded .ad target-binding evidence, bounded divergence wire/error handling, plan-bound replay-only --from semantics, and agent-supervised re-record repair ("heal-by-doing")
0013 Unified Gesture Plans gesture API/routing, contact topology, multi-touch geometry, native pointer injection, two-finger pan
0014 Session Ref-Frame Lifetime ref authorization epochs, complete/partial issuance, pre-side-effect expiration, replay/batch compatibility, and cross-platform stale-mutation policy
0015 Direct Maestro Compatibility Engine Maestro YAML parsing/execution, compatibility observation policy, conformance, performance gates, gesture integration
0016 Active-Session Script Publication publishing an armed open-to-destination .ad script without closing its live session
0017 Parameterized Recorded Inputs safely authoring sensitive fill inputs as ${VAR} placeholders across recording, replay, and repair
0018 Unified Request Event Journal (Proposed) event/diagnostic vocabulary, journal scopes and sinks, progress-channel separation, observability-only state
0019 Request-Bound Platform Runtime platform-package boundaries/composition, device discovery, runtime facts/facets, request binding, provider ownership, platform-shaped session resources, durable reattachment, daemon-handler migration

ADRs record why; the registries and gates they describe are the living source of truth — when prose and a registry disagree, the registry wins and the ADR needs a follow-up.

Shape conventions, so consulting an ADR stays cheap:

  • Normative rules first, terse. Status, then a "Rules at a glance" summary a reader can stop after; full contracts and rationale below it.
  • Rationale and refuted alternatives stay in the ADR — they are what stops re-litigating settled ideas — but below the fold.
  • Process history is deleted once complete, not archived in-file. Migration plans, per-step landing tables, and point-in-time status change-logs go to git history; the Status section keeps one line saying so plus any accepted, still-relevant waiver or evidence gap.
  • Once a rule is gate-enforced, the ADR keeps the why and points at the gate rather than restating the rule's details.