Open Notepad, then refuse a target that expired

On 16 September a typed 'open Notepad' was verified in 2.3 s and bound as a window referent. About a minute later a follow-up on the same window was refused, because its identity lease had expired.

LIVE-PROVEN , rung 6 of 8 What this run supports. Recorded 16 September 2026.

Footage pending

This run is documented from its recorded evidence. Footage has not been published: capture waits for the machine to be free of local model measurements, and every clip is reviewed for private information first.

Asked

What was asked

Open Notepad, then act on that window again about a minute later.

Result

What happened

JARVIS launched or focused Notepad, re-read the window, verified it in 2.3 s and bound it as the referent window:notepad. When the owner's own input took focus during a launch, the launch settled by window census instead of retrying. The later follow-up was refused with 'target identity expired', the bound of the 20-second identity lease.

Pipeline

Architecture path

  1. Owner request (typed inlet)
  2. Lane classifier
  3. App catalogue and live window census
  4. Target lease (20 s)
  5. PolicyEngine.decide
  6. UI Automation effect
  7. Independent re-read
  8. Receipt and referent binding

What this proves

  • On the owner's machine, 'open Notepad' completed with a verified postcondition in 2.3 s when focus was granted.
  • A window referent that has outlived its identity lease is refused, not guessed.
  • When the owner's own input takes focus, JARVIS yields instead of retrying the effect.

What it does not prove

  • One recorded pass is not reliability.
  • Recorded on 2026-09-16; a recorded run is not a current reading.
  • Resizing a window by voice was not proven in this pass.
  • It says nothing about arbitrary installed applications.

Context

On 16 September 2026 the owner ran a closure pass that classified each interaction category on the real machine as PROVEN_LIVE, IMPLEMENTED_UNPROVEN, BROKEN, BLOCKED or NOT_IMPLEMENTED. A PROVEN_LIVE row meant the whole chain, from owner intent to context update, was driven on the machine in that pass and read back. The DESKTOP row was one of them.

The run

The request came through the typed inlet of the normal launcher. JARVIS resolved “Notepad” through its application catalogue and a live census of open windows. It took a target lease on the window, passed the step through the policy engine and ran it through UI Automation. Then it read the window back independently. With focus granted, the open was verified in 2.3 s, and the window was bound in working context as window:notepad, so a later “it” or “that window” could refer to it.

Two further behaviours were recorded. When the owner’s own typing or clicking took focus during a launch, JARVIS did not fight it. The launch settled by census, and the effect was not retried. About a minute later a follow-up on the same window was refused with “target identity expired”. Window identity is a lease of 20 seconds, based on handle, process ID, class and process-creation generation, never on the title. The capability model records that bound as “the lease’s own bound” and the owner’s design, and nothing was changed to make the follow-up succeed.

The evidence

The DESKTOP row of docs/analysis/JARVIS_CAPABILITY_MODEL_2026-09-16.md, committed in f6aec1cf1, records the timing, the referent binding and the refusal. No footage of this run exists yet.

The limits

This is one pass on one application. The refusal is correct by design, but it also means a follow-up after 20 seconds has to re-resolve the window. The same row lists resizing by voice as unproven. The registry keeps opening and closing applications at IMPLEMENTED, because a registry probe would change the owner’s screen. This page records what happened on 16 September. It does not claim that the same result would hold today.